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

Time bar (total: 2.2s)

analyze0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
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 7 to 7 computations (0% saved)

sample633.0ms (28.9%)

Memory
29.1MiB live, 861.3MiB allocated
Samples
476.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 128.0ms
ival-div: 72.0ms (56.4% of total)
ival-sub: 42.0ms (32.9% of total)
ival-true: 5.0ms (3.9% of total)
exact: 4.0ms (3.1% of total)
ival-assert: 3.0ms (2.4% of total)
Bogosity

preprocess25.0ms (1.2%)

Memory
13.9MiB live, 52.1MiB allocated
Algorithm
egg-herbie
Rules
128×accelerator-lowering-fma.f32
128×accelerator-lowering-fma.f64
80×*-lowering-*.f32
80×*-lowering-*.f64
60×sub-neg
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01434
13332
27830
316130
428230
534530
635130
055
175
2175
3255
4375
5565
6925
71245
81795
92105
102435
112445
02444
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))
(+ x (* y -1/4))
(- (neg x) (/ y 4))
(- (* y -1/4) x)
(- x (/ (neg y) 4))
(+ x (* y 1/4))
(neg (- (neg x) (/ y 4)))
(+ x (* y 1/4))
(neg (- x (/ (neg y) 4)))
(- (* y -1/4) x)
(- y (/ x 4))
(+ y (* x -1/4))

explain58.0ms (2.7%)

Memory
-34.0MiB live, 138.9MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(-.f64 x (/.f64 y #s(literal 4 binary64)))
00-0-y
00-0-(/.f64 y #s(literal 4 binary64))
00-0-#s(literal 4 binary64)
00-0-x
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
20.0ms512×0valid
Compiler

Compiled 40 to 24 computations (40% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-div: 3.0ms (39.1% of total)
ival-sub: 3.0ms (39.1% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

eval0.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Compiler

Compiled 7 to 5 computations (28.6% saved)

prune1.0ms (0%)

Memory
4.0MiB live, 3.9MiB allocated
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)

simplify12.0ms (0.5%)

Memory
4.1MiB live, 43.5MiB allocated
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
128×accelerator-lowering-fma.f32
128×accelerator-lowering-fma.f64
80×*-lowering-*.f32
80×*-lowering-*.f64
40×+-lowering-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0511
1711
21711
32511
43711
55611
69211
712411
817911
921011
1024311
1124411
024410
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)

localize16.0ms (0.7%)

Memory
8.7MiB live, 49.8MiB allocated
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)))
Samples
9.0ms256×0valid
Compiler

Compiled 13 to 7 computations (46.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.0ms
ival-div: 2.0ms (57.9% of total)
ival-sub: 1.0ms (29% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series2.0ms (0.1%)

Memory
7.6MiB live, 7.6MiB allocated
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
0.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)

rewrite303.0ms (13.8%)

Memory
3.5MiB live, 547.1MiB allocated
Algorithm
batch-egg-rewrite
Rules
3 368×accelerator-lowering-fma.f32
3 368×accelerator-lowering-fma.f64
3 224×*-lowering-*.f32
3 224×*-lowering-*.f64
2 912×/-lowering-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058
1308
22468
340618
081527
Stop Event
iter limit
node limit
Counts
2 → 130
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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))))
(+.f64 (*.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal 4 binary64))))) (neg.f64 (/.f64 (/.f64 (*.f64 y y) #s(literal 16 binary64)) (+.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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))))
(-.f64 (*.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal 4 binary64))))) (/.f64 (/.f64 (*.f64 y y) #s(literal 16 binary64)) (+.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 x (+.f64 x (/.f64 y #s(literal 4 binary64)))) (neg.f64 (/.f64 (/.f64 (*.f64 y y) #s(literal 16 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(fma.f64 x (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))))
(fma.f64 y #s(literal -1/4 binary64) x)
(fma.f64 (/.f64 y #s(literal 4 binary64)) #s(literal -1 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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 (*.f64 y y) #s(literal 16 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(fma.f64 (*.f64 x x) (/.f64 x (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 #s(literal 1/4 binary64) (-.f64 #s(literal 0 binary64) y) x)
(fma.f64 #s(literal 1/4 binary64) (pow.f64 (neg.f64 (/.f64 #s(literal 1 binary64) y)) #s(literal -1 binary64)) x)
(fma.f64 #s(literal -1 binary64) (/.f64 y #s(literal 4 binary64)) x)
(fma.f64 #s(literal -1/4 binary64) y x)
(fma.f64 #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) y)) 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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 (*.f64 y y) #s(literal 16 binary64)) (+.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 (*.f64 y y) #s(literal 16 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 (*.f64 y y)) #s(literal 64 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 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)) (-.f64 (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))))
(fma.f64 (/.f64 (*.f64 x (*.f64 x x)) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y y) #s(literal 16 binary64)) (*.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (+.f64 x (/.f64 y #s(literal 4 binary64))))))) (-.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))) (neg.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))))
(neg.f64 (/.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -16 binary64) y))) (-.f64 #s(literal 0 binary64) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))))
(neg.f64 (/.f64 (+.f64 (neg.f64 (*.f64 x x)) (/.f64 (*.f64 y y) #s(literal 16 binary64))) (+.f64 x (/.f64 y #s(literal 4 binary64)))))
(/.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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))))
(/.f64 (+.f64 (neg.f64 (*.f64 x x)) (/.f64 (*.f64 y y) #s(literal 16 binary64))) (-.f64 #s(literal 0 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 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))
(/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64))) (+.f64 (/.f64 (*.f64 y y) #s(literal 16 binary64)) (-.f64 (*.f64 x x) (/.f64 x (/.f64 #s(literal -4 binary64) y)))))
(/.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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 4096 binary64) (*.f64 y (*.f64 y y))))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 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 (*.f64 y y) #s(literal 16 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y y) #s(literal 16 binary64)))))))
(/.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 (*.f64 y y) #s(literal 16 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 (*.f64 y y) #s(literal 16 binary64)))) (*.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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 4096 binary64) (*.f64 y (*.f64 y y))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y y) #s(literal 16 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y y) #s(literal 16 binary64))))) (+.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 (*.f64 y y) #s(literal 16 binary64))) (+.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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))))
(/.f64 (neg.f64 (+.f64 (neg.f64 (*.f64 x x)) (/.f64 (*.f64 y y) #s(literal 16 binary64)))) (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 x (/.f64 y #s(literal 4 binary64))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (*.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))))) (*.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (*.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))))) (+.f64 (*.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))) (+.f64 (*.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))) (*.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))))))
(/.f64 (-.f64 (*.f64 (*.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal 4 binary64))))) (*.f64 (*.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal 4 binary64))))) (*.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal 4 binary64))))))) (/.f64 (/.f64 (*.f64 y (*.f64 y y)) (/.f64 #s(literal 4096 binary64) (*.f64 y (*.f64 y y)))) (*.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 (*.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal 4 binary64))))) (*.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (+.f64 (*.f64 (/.f64 (/.f64 (*.f64 y y) #s(literal 16 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (/.f64 (/.f64 (*.f64 y y) #s(literal 16 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))) (*.f64 (*.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal 4 binary64))))) (/.f64 (/.f64 (*.f64 y y) #s(literal 16 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64))))))))
(/.f64 (-.f64 (/.f64 (*.f64 y y) #s(literal 16 binary64)) (*.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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))) (*.f64 (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))))) (+.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))) (/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 64 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal 4 binary64))))) (*.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (*.f64 (/.f64 (/.f64 (*.f64 y y) #s(literal 16 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))) (/.f64 (/.f64 (*.f64 y y) #s(literal 16 binary64)) (+.f64 x (/.f64 y #s(literal 4 binary64)))))) (+.f64 (*.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal 4 binary64))))) (/.f64 (/.f64 (*.f64 y y) #s(literal 16 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))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 4096 binary64) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 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 (*.f64 y y) #s(literal 16 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y y) #s(literal 16 binary64))))))
(/.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 (*.f64 y y) #s(literal 16 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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))))
(/.f64 (-.f64 (neg.f64 (*.f64 x x)) (/.f64 y (/.f64 #s(literal -16 binary64) y))) (-.f64 #s(literal 0 binary64) (+.f64 x (/.f64 y #s(literal 4 binary64)))))
(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 x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))))
(*.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))) (/.f64 (+.f64 x (/.f64 y #s(literal -4 binary64))) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))))
(*.f64 (+.f64 (neg.f64 (*.f64 x x)) (/.f64 (*.f64 y y) #s(literal 16 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 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 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 (*.f64 y y)) #s(literal 64 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 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64)) (-.f64 (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 (*.f64 y y) #s(literal 16 binary64)) (*.f64 (+.f64 x (/.f64 y #s(literal 4 binary64))) (+.f64 x (/.f64 y #s(literal 4 binary64))))))) (-.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #s(literal 4 binary64))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 y (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 (+.f64 x (/.f64 y #s(literal 4 binary64)))) #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 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 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 (*.f64 y y) #s(literal 16 binary64)) (+.f64 (*.f64 x x) (/.f64 (*.f64 y y) #s(literal 16 binary64)))))))
(*.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 (*.f64 y y) #s(literal 16 binary64)))))
(exp.f64 (log.f64 (/.f64 y #s(literal 4 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))
(/.f64 (exp.f64 (log.f64 (-.f64 #s(literal 0 binary64) y))) (exp.f64 (log.f64 #s(literal -4 binary64))))
(/.f64 (exp.f64 (log.f64 y)) (exp.f64 (log.f64 #s(literal 4 binary64))))
(/.f64 (exp.f64 (log.f64 #s(literal -1 binary64))) (exp.f64 (log.f64 (/.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))
(pow.f64 (/.f64 #s(literal 16 binary64) (*.f64 y y)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (/.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal 4 binary64) y)))
(*.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 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) y)) #s(literal 1 binary64)))
(*.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 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 0 binary64) y) #s(literal 1 binary64)))
(*.f64 #s(literal -1/4 binary64) (pow.f64 (/.f64 #s(literal 1 binary64) (-.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 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)))
(*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) y)) #s(literal -1 binary64)) #s(literal -1/4 binary64))
(*.f64 (exp.f64 (log.f64 (-.f64 #s(literal 0 binary64) y))) (exp.f64 (log.f64 #s(literal -1/4 binary64))))
(*.f64 (exp.f64 (log.f64 y)) (exp.f64 (log.f64 #s(literal 1/4 binary64))))
(*.f64 (exp.f64 (log.f64 #s(literal 1/4 binary64))) (exp.f64 (log.f64 y)))

simplify343.0ms (15.6%)

Memory
9.8MiB live, 318.4MiB allocated
Algorithm
egg-herbie
Rules
3 160×accelerator-lowering-fma.f32
3 160×accelerator-lowering-fma.f64
2 584×*-lowering-*.f32
2 584×*-lowering-*.f64
2 384×/-lowering-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025138
168138
2170138
3455138
41250138
52461138
63264138
73600138
83896138
94079138
105224138
116020138
126788138
137056138
147836138
08372120
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))

eval18.0ms (0.8%)

Memory
6.0MiB live, 44.1MiB allocated
Compiler

Compiled 3 719 to 386 computations (89.6% saved)

prune19.0ms (0.9%)

Memory
-3.2MiB live, 37.8MiB allocated
Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1642166
Fresh000
Picked011
Done000
Total1643167
Accuracy
100.0%
Counts
167 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 x (/.f64 y #s(literal 4 binary64)))
50.7%
(*.f64 #s(literal -1/4 binary64) y)
49.8%
x
Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify3.0ms (0.1%)

Memory
4.0MiB live, 4.0MiB allocated
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

localize14.0ms (0.7%)

Memory
-13.1MiB live, 23.7MiB allocated
Localize:

Found 1 expressions of interest:

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

Compiled 8 to 6 computations (25% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.0ms
ival-mult: 2.0ms (92.4% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
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)

rewrite8.0ms (0.4%)

Memory
12.8MiB live, 12.8MiB allocated
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%)

Memory
11.6MiB live, 11.6MiB allocated
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)

eval4.0ms (0.2%)

Memory
-33.4MiB live, 3.2MiB allocated
Compiler

Compiled 44 to 5 computations (88.6% saved)

prune3.0ms (0.1%)

Memory
5.8MiB live, 5.9MiB allocated
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)))
50.7%
(*.f64 #s(literal -1/4 binary64) y)
49.8%
x
Compiler

Compiled 26 to 18 computations (30.8% saved)

regimes8.0ms (0.4%)

Memory
17.0MiB live, 17.0MiB allocated
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:

2.0ms
(-.f64 x (/.f64 y #s(literal 4 binary64)))
2.0ms
(/.f64 y #s(literal 4 binary64))
2.0ms
x
2.0ms
y
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%)

Memory
7.9MiB live, 7.9MiB allocated
Counts
2 → 3
Calls
Call 1
Inputs
x
(*.f64 #s(literal -1/4 binary64) y)
Outputs
(*.f64 #s(literal -1/4 binary64) y)
x
(*.f64 #s(literal -1/4 binary64) y)
Calls

2 calls:

2.0ms
y
2.0ms
x
Results
AccuracySegmentsBranch
77.8%3x
81.8%3y
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes5.0ms (0.2%)

Memory
-28.4MiB live, 10.0MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

2 calls:

3.0ms
x
1.0ms
y
Results
AccuracySegmentsBranch
49.8%1x
49.8%1y
Compiler

Compiled 6 to 4 computations (33.3% saved)

bsearch20.0ms (0.9%)

Memory
38.2MiB live, 38.2MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
9.0ms
6547521631283004.0
9.766869886170877e+21
9.0ms
-1.4501053150581276e-13
-3.0049991865601227e-19
Samples
9.0ms288×0valid
Compiler

Compiled 190 to 154 computations (18.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-div: 2.0ms (53.8% of total)
ival-sub: 1.0ms (26.9% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify38.0ms (1.7%)

Memory
-47.3MiB live, 23.5MiB allocated
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 y #s(literal -7098843361278085/40564819207303340847894502572032 binary64)) (*.f64 #s(literal -1/4 binary64) y) (if (<=.f64 y #s(literal 38000000000000000 binary64)) x (*.f64 #s(literal -1/4 binary64) y)))
x
Outputs
(-.f64 x (/.f64 y #s(literal 4 binary64)))
(if (<=.f64 y #s(literal -7098843361278085/40564819207303340847894502572032 binary64)) (*.f64 #s(literal -1/4 binary64) y) (if (<=.f64 y #s(literal 38000000000000000 binary64)) x (*.f64 #s(literal -1/4 binary64) y)))
(if (<=.f64 y #s(literal -7098843361278085/40564819207303340847894502572032 binary64)) (*.f64 y #s(literal -1/4 binary64)) (if (<=.f64 y #s(literal 38000000000000000 binary64)) x (*.f64 y #s(literal -1/4 binary64))))
x

soundness619.0ms (28.3%)

Memory
-12.8MiB live, 380.2MiB allocated
Rules
3 160×accelerator-lowering-fma.f32
3 160×accelerator-lowering-fma.f64
2 584×*-lowering-*.f32
2 584×*-lowering-*.f64
2 384×/-lowering-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025138
168138
2170138
3455138
41250138
52461138
63264138
73600138
83896138
94079138
105224138
116020138
126788138
137056138
147836138
08372120
Stop Event
done
iter limit
node limit
Compiler

Compiled 34 to 21 computations (38.2% saved)

preprocess28.0ms (1.3%)

Memory
30.8MiB live, 68.7MiB allocated
Compiler

Compiled 60 to 36 computations (40% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...