Diagrams.Solve.Polynomial:quartForm from diagrams-solve-0.1, E

Time bar (total: 2.1s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 8 to 6 computations (25% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
ival-div: 0.0ms (0% of total)
ival-sub: 0.0ms (0% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

sample670.0ms (32.4%)

Results
506.0ms8256×0valid
Precisions
Click to see histograms. Total time spent on operations: 172.0ms
ival-div: 86.0ms (50% of total)
ival-sub: 73.0ms (42.4% of total)
const: 11.0ms (6.4% of total)
backward-pass: 3.0ms (1.7% of total)
Bogosity

preprocess44.0ms (2.1%)

Algorithm
egg-herbie
Rules
300×fnmsub-define
298×fmsub-define
290×fnmadd-define
244×fmm-def
196×fnmadd-define
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01434
13332
28030
318124
449324
589424
6110024
7111224
055
175
2175
3265
4405
5764
61464
72464
83444
95194
106544
117134
127214
07214
Stop Event
iter limit
saturated
saturated
Calls
Call 1
Inputs
(- x (/ y 4))
Outputs
(- x (/ y 4))
(-.f64 x (/.f64 y #s(literal 4 binary64)))
Call 2
Inputs
(- x (/ y 4))
(- (neg x) (/ y 4))
(- x (/ (neg y) 4))
(neg (- (neg x) (/ y 4)))
(neg (- x (/ (neg y) 4)))
(- y (/ x 4))
Outputs
(- x (/ y 4))
(fma y -1/4 x)
(- (neg x) (/ y 4))
(fnmsub y 1/4 x)
(- x (/ (neg y) 4))
(fma y 1/4 x)
(neg (- (neg x) (/ y 4)))
(fma y 1/4 x)
(neg (- x (/ (neg y) 4)))
(fnmsub y 1/4 x)
(- y (/ x 4))
(fma x -1/4 y)

explain115.0ms (5.6%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-x
00-0-(/.f64 y #s(literal 4 binary64))
00-0-#s(literal 4 binary64)
00-0-y
00-0-(-.f64 x (/.f64 y #s(literal 4 binary64)))
Results
94.0ms512×0valid
Compiler

Compiled 35 to 17 computations (51.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-div: 4.0ms (44.7% of total)
ival-sub: 4.0ms (44.7% of total)
const: 1.0ms (11.2% of total)
backward-pass: 0.0ms (0% of total)

eval0.0ms (0%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 x (/.f64 y #s(literal 4 binary64)))
Compiler

Compiled 7 to 5 computations (28.6% saved)

simplify56.0ms (2.7%)

Algorithm
egg-herbie
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
cost-diff0
(/.f64 y #s(literal 4 binary64))
cost-diff0
(-.f64 x (/.f64 y #s(literal 4 binary64)))
Rules
196×fnmadd-define
150×sum3-define
136×fnmsub-define
136×fmsub-define
128×fma-lowering-fma.f32
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0511
1711
21711
32611
44011
57610
614610
724610
834410
951910
1065410
1171310
1272110
072110
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(- x (/ y 4))
x
(/ y 4)
y
4
Outputs
(- x (/ y 4))
(-.f64 x (/.f64 y #s(literal 4 binary64)))
x
(/ y 4)
(/.f64 y #s(literal 4 binary64))
y
4
#s(literal 4 binary64)

localize135.0ms (6.6%)

Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(/.f64 y #s(literal 4 binary64))
accuracy100.0%
(-.f64 x (/.f64 y #s(literal 4 binary64)))
Results
130.0ms256×0valid
Compiler

Compiled 14 to 6 computations (57.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-div: 2.0ms (43% of total)
ival-sub: 2.0ms (43% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series2.0ms (0.1%)

Counts
2 → 36
Calls
Call 1
Inputs
#<alt (- x (/ y 4))>
#<alt (/ y 4)>
Outputs
#<alt (* -1/4 y)>
#<alt (- x (* 1/4 y))>
#<alt (- x (* 1/4 y))>
#<alt (- x (* 1/4 y))>
#<alt x>
#<alt (* x (+ 1 (* -1/4 (/ y x))))>
#<alt (* x (+ 1 (* -1/4 (/ y x))))>
#<alt (* x (+ 1 (* -1/4 (/ y x))))>
#<alt x>
#<alt (* -1 (* x (- (* 1/4 (/ y x)) 1)))>
#<alt (* -1 (* x (- (* 1/4 (/ y x)) 1)))>
#<alt (* -1 (* x (- (* 1/4 (/ y x)) 1)))>
#<alt x>
#<alt (+ x (* -1/4 y))>
#<alt (+ x (* -1/4 y))>
#<alt (+ x (* -1/4 y))>
#<alt (* -1/4 y)>
#<alt (* y (- (/ x y) 1/4))>
#<alt (* y (- (/ x y) 1/4))>
#<alt (* y (- (/ x y) 1/4))>
#<alt (* -1/4 y)>
#<alt (* -1 (* y (+ 1/4 (* -1 (/ x y)))))>
#<alt (* -1 (* y (+ 1/4 (* -1 (/ x y)))))>
#<alt (* -1 (* y (+ 1/4 (* -1 (/ x y)))))>
#<alt (* 1/4 y)>
#<alt (* 1/4 y)>
#<alt (* 1/4 y)>
#<alt (* 1/4 y)>
#<alt (* 1/4 y)>
#<alt (* 1/4 y)>
#<alt (* 1/4 y)>
#<alt (* 1/4 y)>
#<alt (* 1/4 y)>
#<alt (* 1/4 y)>
#<alt (* 1/4 y)>
#<alt (* 1/4 y)>
Calls

9 calls:

TimeVariablePointExpression
1.0ms
y
@-inf
(/ y 4)
0.0ms
y
@inf
(- x (/ y 4))
0.0ms
x
@inf
(- x (/ y 4))
0.0ms
y
@0
(- x (/ y 4))
0.0ms
y
@inf
(/ y 4)

rewrite308.0ms (14.9%)

Algorithm
batch-egg-rewrite
Rules
3186×*-lowering-*.f32
3186×*-lowering-*.f64
1548×/-lowering-/.f32
1548×/-lowering-/.f64
1266×unpow-prod-down
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
058
1308
22547
343017
084127
Stop Event
iter limit
node limit
Counts
2 → 113
Calls
Call 1
Inputs
(- x (/ y 4))
(/ y 4)
Outputs
(+.f64 x (/.f64 y #s(literal -4 binary64)))
(+.f64 (/.f64 y #s(literal -4 binary64)) x)
(+.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(+.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (neg.f64 (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1 binary64) (-.f64 x (/.f64 y #s(literal 4 binary64))))) #s(literal -1 binary64)))
(-.f64 x (/.f64 y #s(literal 4 binary64)))
(-.f64 #s(literal 0 binary64) (-.f64 (/.f64 y #s(literal 4 binary64)) x))
(-.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))))
(-.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))
(-.f64 (+.f64 x #s(literal 0 binary64)) (/.f64 y #s(literal 4 binary64)))
(fma.f64 x #s(literal 1 binary64) (/.f64 y #s(literal -4 binary64)))
(fma.f64 x (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(fma.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal 4 binary64)))) (neg.f64 (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(fma.f64 y #s(literal -1/4 binary64) x)
(fma.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1/4 binary64) x)
(fma.f64 (*.f64 x (*.f64 x x)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(fma.f64 (*.f64 x x) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (neg.f64 (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(fma.f64 (*.f64 x x) (/.f64 x (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(fma.f64 #s(literal 1 binary64) x (/.f64 y #s(literal -4 binary64)))
(fma.f64 #s(literal -1 binary64) (/.f64 y #s(literal 4 binary64)) x)
(fma.f64 (pow.f64 x #s(literal 3/2 binary64)) (/.f64 (pow.f64 x #s(literal 3/2 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(fma.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (*.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (*.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (+.f64 x (/.f64 y #s(literal 4 binary64)))))))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (-.f64 (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (*.f64 x x)))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(fma.f64 (/.f64 (*.f64 x (*.f64 x x)) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (*.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (+.f64 x (/.f64 y #s(literal 4 binary64))))))) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal -4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(fma.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -16 binary64) y)))) (-.f64 x (/.f64 y #s(literal 4 binary64))) (neg.f64 (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(fma.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)))) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 4 binary64)) x) (/.f64 #s(literal 4 binary64) y))) (neg.f64 (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(neg.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(neg.f64 (/.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -16 binary64) y))) (+.f64 (/.f64 y #s(literal -4 binary64)) (neg.f64 x))))
(neg.f64 (/.f64 (+.f64 (neg.f64 (*.f64 x (*.f64 x x))) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))))
(neg.f64 (/.f64 (+.f64 (neg.f64 (*.f64 x x)) (/.f64 y (/.f64 #s(literal 16 binary64) y))) (+.f64 x (/.f64 y #s(literal 4 binary64)))))
(/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))) (+.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (-.f64 (*.f64 x x) (/.f64 x (/.f64 #s(literal -4 binary64) y)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 x (/.f64 y #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 1 binary64)))
(/.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -16 binary64) y))) (+.f64 x (/.f64 y #s(literal 4 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 x (/.f64 y #s(literal 4 binary64))))))
(/.f64 (+.f64 (neg.f64 (*.f64 x (*.f64 x x))) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))))
(/.f64 (+.f64 (neg.f64 (*.f64 x x)) (/.f64 y (/.f64 #s(literal 16 binary64) y))) (+.f64 (/.f64 y #s(literal -4 binary64)) (neg.f64 x)))
(/.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) #s(literal 262144 binary64))) (*.f64 (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (+.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))))
(/.f64 (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(literal 1/4096 binary64) (*.f64 y (*.f64 y y))))) (*.f64 (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)))))
(/.f64 (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(literal 1/4096 binary64) (*.f64 y (*.f64 y y))))) (*.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal 16 binary64) y)))))))
(/.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) #s(literal 256 binary64))) (*.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal 16 binary64) y)))))
(/.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (*.f64 (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)))) (*.f64 (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (*.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (/.f64 y (/.f64 #s(literal 16 binary64) y)))) (*.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (+.f64 x (/.f64 y #s(literal 4 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) #s(literal 262144 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(literal 1/4096 binary64) (*.f64 y (*.f64 y y))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(literal 1/4096 binary64) (*.f64 y (*.f64 y y))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal 16 binary64) y))))) (+.f64 x (/.f64 y #s(literal 4 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) #s(literal 256 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal 16 binary64) y))) (+.f64 x (/.f64 y #s(literal 4 binary64)))))
(/.f64 (*.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -16 binary64) y))) #s(literal 1 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))
(/.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))) #s(literal 1 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(/.f64 (neg.f64 (+.f64 (neg.f64 (*.f64 x (*.f64 x x))) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)))) (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(/.f64 (neg.f64 (+.f64 (neg.f64 (*.f64 x x)) (/.f64 y (/.f64 #s(literal 16 binary64) y)))) (neg.f64 (+.f64 (/.f64 y #s(literal -4 binary64)) (neg.f64 x))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) #s(literal 3 binary64)) (pow.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))) (+.f64 (*.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))) (*.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (+.f64 (*.f64 (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (*.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(/.f64 (-.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (*.f64 x x)) (-.f64 (/.f64 y #s(literal -4 binary64)) x))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))) (*.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))))) (+.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (*.f64 (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (+.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (/.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) #s(literal 262144 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))) (+.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(literal 1/4096 binary64) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(literal 1/4096 binary64) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal 16 binary64) y))))))
(/.f64 (*.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) #s(literal 256 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal 16 binary64) y))))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 1 binary64)) #s(literal -1 binary64))
(*.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))))
(*.f64 (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (*.f64 (-.f64 x (/.f64 y #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(*.f64 (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (/.f64 (-.f64 x (/.f64 y #s(literal 4 binary64))) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))))
(*.f64 #s(literal 1 binary64) (-.f64 x (/.f64 y #s(literal 4 binary64))))
(*.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -16 binary64) y))) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 4 binary64)))))
(*.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (*.f64 (-.f64 x (/.f64 y #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(*.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (/.f64 (-.f64 x (/.f64 y #s(literal 4 binary64))) (+.f64 x (/.f64 y #s(literal 4 binary64)))))
(*.f64 (+.f64 (neg.f64 (*.f64 x (*.f64 x x))) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(*.f64 (+.f64 (neg.f64 (*.f64 x x)) (/.f64 y (/.f64 #s(literal 16 binary64) y))) (/.f64 #s(literal 1 binary64) (+.f64 (/.f64 y #s(literal -4 binary64)) (neg.f64 x))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -16 binary64) y))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -16 binary64) y)))) #s(literal -1 binary64)))
(*.f64 (/.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -16 binary64) y))) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)))) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 4 binary64)) x) (/.f64 #s(literal 4 binary64) y))))
(*.f64 (/.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -16 binary64) y))) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -16 binary64) y)))) (-.f64 x (/.f64 y #s(literal 4 binary64))))
(*.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))) (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (*.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (*.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (+.f64 x (/.f64 y #s(literal 4 binary64)))))))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (-.f64 (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (*.f64 x x)))))
(*.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (*.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (+.f64 x (/.f64 y #s(literal 4 binary64))))))) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal -4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) #s(literal 262144 binary64)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 4 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(literal 1/4096 binary64) (*.f64 y (*.f64 y y)))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)))))
(*.f64 (pow.f64 (/.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(literal 1/4096 binary64) (*.f64 y (*.f64 y y)))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 y (/.f64 #s(literal 16 binary64) y)) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal 16 binary64) y)))))))
(*.f64 (pow.f64 (/.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) #s(literal 256 binary64)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal 16 binary64) y)))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 4 binary64) y)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 y #s(literal 4 binary64))) #s(literal 1 binary64)))
(-.f64 #s(literal 0 binary64) (/.f64 y #s(literal -4 binary64)))
(neg.f64 (/.f64 y #s(literal -4 binary64)))
(neg.f64 (*.f64 (/.f64 y #s(literal -4 binary64)) #s(literal 1 binary64)))
(/.f64 y #s(literal 4 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) y) #s(literal -4 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) y))
(/.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) y))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -4 binary64) y))
(pow.f64 (/.f64 y #s(literal 4 binary64)) #s(literal 1 binary64))
(pow.f64 (/.f64 #s(literal 4 binary64) y) #s(literal -1 binary64))
(*.f64 y #s(literal 1/4 binary64))
(*.f64 (/.f64 y #s(literal 4 binary64)) #s(literal 1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) y) #s(literal -1/4 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 y #s(literal 4 binary64)))
(*.f64 #s(literal 1/4 binary64) y)
(*.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) y)))
(*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) y) #s(literal 1 binary64)) #s(literal -1 binary64)))
(*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) y)) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 y #s(literal -4 binary64)))
(*.f64 #s(literal -1 binary64) (pow.f64 (/.f64 y #s(literal -4 binary64)) #s(literal 1 binary64)))
(*.f64 #s(literal -1/4 binary64) (-.f64 #s(literal 0 binary64) y))
(*.f64 #s(literal -1/4 binary64) (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) y)) #s(literal -1 binary64)))
(*.f64 #s(literal -1/4 binary64) (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) y)) #s(literal 1/4 binary64))
(*.f64 (pow.f64 (/.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64)) (pow.f64 (/.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) y)) #s(literal -1 binary64)) #s(literal -1/4 binary64))
(*.f64 (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1 binary64)) #s(literal -1/4 binary64))
(*.f64 (pow.f64 (pow.f64 (/.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (/.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))

simplify120.0ms (5.8%)

Algorithm
egg-herbie
Rules
2256×fnmadd-define
1614×fma-define
1120×*-lowering-*.f32
1120×*-lowering-*.f64
1112×fma-lowering-fma.f32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
025138
170120
2187120
3552120
41613120
54131120
08139120
Stop Event
iter limit
node limit
Counts
36 → 36
Calls
Call 1
Inputs
(* -1/4 y)
(- x (* 1/4 y))
(- x (* 1/4 y))
(- x (* 1/4 y))
x
(* x (+ 1 (* -1/4 (/ y x))))
(* x (+ 1 (* -1/4 (/ y x))))
(* x (+ 1 (* -1/4 (/ y x))))
x
(* -1 (* x (- (* 1/4 (/ y x)) 1)))
(* -1 (* x (- (* 1/4 (/ y x)) 1)))
(* -1 (* x (- (* 1/4 (/ y x)) 1)))
x
(+ x (* -1/4 y))
(+ x (* -1/4 y))
(+ x (* -1/4 y))
(* -1/4 y)
(* y (- (/ x y) 1/4))
(* y (- (/ x y) 1/4))
(* y (- (/ x y) 1/4))
(* -1/4 y)
(* -1 (* y (+ 1/4 (* -1 (/ x y)))))
(* -1 (* y (+ 1/4 (* -1 (/ x y)))))
(* -1 (* y (+ 1/4 (* -1 (/ x y)))))
(* 1/4 y)
(* 1/4 y)
(* 1/4 y)
(* 1/4 y)
(* 1/4 y)
(* 1/4 y)
(* 1/4 y)
(* 1/4 y)
(* 1/4 y)
(* 1/4 y)
(* 1/4 y)
(* 1/4 y)
Outputs
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(- x (* 1/4 y))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(- x (* 1/4 y))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(- x (* 1/4 y))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
x
(* x (+ 1 (* -1/4 (/ y x))))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(* x (+ 1 (* -1/4 (/ y x))))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(* x (+ 1 (* -1/4 (/ y x))))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
x
(* -1 (* x (- (* 1/4 (/ y x)) 1)))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(* -1 (* x (- (* 1/4 (/ y x)) 1)))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(* -1 (* x (- (* 1/4 (/ y x)) 1)))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
x
(+ x (* -1/4 y))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(+ x (* -1/4 y))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(+ x (* -1/4 y))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* y (- (/ x y) 1/4))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(* y (- (/ x y) 1/4))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(* y (- (/ x y) 1/4))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* -1 (* y (+ 1/4 (* -1 (/ x y)))))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(* -1 (* y (+ 1/4 (* -1 (/ x y)))))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(* -1 (* y (+ 1/4 (* -1 (/ x y)))))
(+.f64 (*.f64 #s(literal -1/4 binary64) y) x)
(* 1/4 y)
(*.f64 y #s(literal 1/4 binary64))
(* 1/4 y)
(*.f64 y #s(literal 1/4 binary64))
(* 1/4 y)
(*.f64 y #s(literal 1/4 binary64))
(* 1/4 y)
(*.f64 y #s(literal 1/4 binary64))
(* 1/4 y)
(*.f64 y #s(literal 1/4 binary64))
(* 1/4 y)
(*.f64 y #s(literal 1/4 binary64))
(* 1/4 y)
(*.f64 y #s(literal 1/4 binary64))
(* 1/4 y)
(*.f64 y #s(literal 1/4 binary64))
(* 1/4 y)
(*.f64 y #s(literal 1/4 binary64))
(* 1/4 y)
(*.f64 y #s(literal 1/4 binary64))
(* 1/4 y)
(*.f64 y #s(literal 1/4 binary64))
(* 1/4 y)
(*.f64 y #s(literal 1/4 binary64))

eval15.0ms (0.7%)

Compiler

Compiled 3431 to 339 computations (90.1% saved)

prune24.0ms (1.1%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1472149
Fresh000
Picked011
Done000
Total1473150
Accuracy
100.0%
Counts
150 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 x (/.f64 y #s(literal 4 binary64)))
48.0%
(*.f64 #s(literal -1/4 binary64) y)
53.6%
x
Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify4.0ms (0.2%)

Algorithm
egg-herbie
Localize:

Found 1 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal -1/4 binary64) y)
Rules
*-lowering-*.f32
*-lowering-*.f64
*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046
156
056
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
x
(* -1/4 y)
-1/4
y
Outputs
x
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
-1/4
#s(literal -1/4 binary64)
y

localize17.0ms (0.8%)

Localize:

Found 1 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 #s(literal -1/4 binary64) y)
Results
10.0ms256×0valid
Compiler

Compiled 9 to 5 computations (44.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.0ms
ival-mult: 2.0ms (80.8% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series0.0ms (0%)

Counts
1 → 12
Calls
Call 1
Inputs
#<alt (* -1/4 y)>
Outputs
#<alt (* -1/4 y)>
#<alt (* -1/4 y)>
#<alt (* -1/4 y)>
#<alt (* -1/4 y)>
#<alt (* -1/4 y)>
#<alt (* -1/4 y)>
#<alt (* -1/4 y)>
#<alt (* -1/4 y)>
#<alt (* -1/4 y)>
#<alt (* -1/4 y)>
#<alt (* -1/4 y)>
#<alt (* -1/4 y)>
Calls

3 calls:

TimeVariablePointExpression
0.0ms
y
@0
(* -1/4 y)
0.0ms
y
@inf
(* -1/4 y)
0.0ms
y
@-inf
(* -1/4 y)

rewrite10.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
*-lowering-*.f32
*-lowering-*.f64
*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
033
143
043
Stop Event
iter limit
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(* -1/4 y)
Outputs
(*.f64 #s(literal -1/4 binary64) y)
(*.f64 y #s(literal -1/4 binary64))

simplify4.0ms (0.2%)

Algorithm
egg-herbie
Rules
*-lowering-*.f32
*-lowering-*.f64
*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0336
1436
0436
Stop Event
iter limit
saturated
Counts
12 → 12
Calls
Call 1
Inputs
(* -1/4 y)
(* -1/4 y)
(* -1/4 y)
(* -1/4 y)
(* -1/4 y)
(* -1/4 y)
(* -1/4 y)
(* -1/4 y)
(* -1/4 y)
(* -1/4 y)
(* -1/4 y)
(* -1/4 y)
Outputs
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)
(* -1/4 y)
(*.f64 #s(literal -1/4 binary64) y)

eval1.0ms (0.1%)

Compiler

Compiled 44 to 5 computations (88.6% saved)

prune2.0ms (0.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New14014
Fresh000
Picked022
Done011
Total14317
Accuracy
100.0%
Counts
17 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 x (/.f64 y #s(literal 4 binary64)))
48.0%
(*.f64 #s(literal -1/4 binary64) y)
53.6%
x
Compiler

Compiled 26 to 18 computations (30.8% saved)

regimes12.0ms (0.6%)

Counts
3 → 1
Calls
Call 1
Inputs
x
(*.f64 #s(literal -1/4 binary64) y)
(-.f64 x (/.f64 y #s(literal 4 binary64)))
Outputs
(-.f64 x (/.f64 y #s(literal 4 binary64)))
Calls

4 calls:

5.0ms
(/.f64 y #s(literal 4 binary64))
3.0ms
(-.f64 x (/.f64 y #s(literal 4 binary64)))
2.0ms
y
2.0ms
x
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1(-.f64 x (/.f64 y #s(literal 4 binary64)))
100.0%1(/.f64 y #s(literal 4 binary64))
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes3.0ms (0.2%)

Counts
2 → 3
Calls
Call 1
Inputs
x
(*.f64 #s(literal -1/4 binary64) y)
Outputs
x
(*.f64 #s(literal -1/4 binary64) y)
x
Calls

2 calls:

2.0ms
x
2.0ms
y
Results
AccuracySegmentsBranch
78.8%3x
78.0%3y
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes5.0ms (0.3%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
x
Outputs
x
Calls

2 calls:

4.0ms
y
1.0ms
x
Results
AccuracySegmentsBranch
53.6%1y
53.6%1x
Compiler

Compiled 6 to 4 computations (33.3% saved)

bsearch26.0ms (1.3%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
11.0ms
8958407.71317688
4387589543.968237
14.0ms
-2.595035637807251e-73
-5.063212630901755e-98
Results
14.0ms304×0valid
Compiler

Compiled 202 to 161 computations (20.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-div: 2.0ms (44.7% of total)
ival-sub: 2.0ms (44.7% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

simplify9.0ms (0.4%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01319
11919
22819
33419
43919
54119
Stop Event
saturated
Calls
Call 1
Inputs
(-.f64 x (/.f64 y #s(literal 4 binary64)))
(if (<=.f64 x #s(literal -4058157609103859/15914343565113172548972231940698266883214596825515126958094847260581103904401068017057792 binary64)) x (if (<=.f64 x #s(literal 46000000 binary64)) (*.f64 #s(literal -1/4 binary64) y) x))
x
Outputs
(-.f64 x (/.f64 y #s(literal 4 binary64)))
(if (<=.f64 x #s(literal -4058157609103859/15914343565113172548972231940698266883214596825515126958094847260581103904401068017057792 binary64)) x (if (<=.f64 x #s(literal 46000000 binary64)) (*.f64 #s(literal -1/4 binary64) y) x))
(if (<=.f64 x #s(literal -4058157609103859/15914343565113172548972231940698266883214596825515126958094847260581103904401068017057792 binary64)) x (if (<=.f64 x #s(literal 46000000 binary64)) (*.f64 y #s(literal -1/4 binary64)) x))
x

soundness454.0ms (22%)

Rules
2256×fnmadd-define
1614×fma-define
1120×*-lowering-*.f32
1120×*-lowering-*.f64
1112×fma-lowering-fma.f32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
025138
170120
2187120
3552120
41613120
54131120
08139120
Stop Event
done
iter limit
node limit
Compiler

Compiled 32 to 21 computations (34.4% saved)

preprocess26.0ms (1.3%)

Compiler

Compiled 56 to 36 computations (35.7% saved)

end0.0ms (0%)

Profiling

Loading profile data...