Data.Colour.CIE:cieLAB from colour-2.3.3, C

Time bar (total: 3.2s)

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-add: 0.0ms (0% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

sample974.0ms (30.7%)

Results
804.0ms8256×0valid
Precisions
Click to see histograms. Total time spent on operations: 256.0ms
ival-div: 170.0ms (66.4% of total)
ival-add: 74.0ms (28.9% of total)
const: 10.0ms (3.9% of total)
backward-pass: 2.0ms (0.8% of total)
Bogosity

preprocess27.0ms (0.9%)

Algorithm
egg-herbie
Rules
292×fnmadd-define
288×fnmsub-define
288×fmsub-define
226×fmm-def
140×sum3-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01434
13430
27930
323525
455624
588224
6106724
7108824
055
165
065
Stop Event
iter limit
saturated
saturated
Calls
Call 1
Inputs
(+ x (/ y 500))
Outputs
(+ x (/ y 500))
(+.f64 x (/.f64 y #s(literal 500 binary64)))
Call 2
Inputs
(+ x (/ y 500))
(+ (neg x) (/ y 500))
(+ x (/ (neg y) 500))
(neg (+ (neg x) (/ y 500)))
(neg (+ x (/ (neg y) 500)))
(+ y (/ x 500))
Outputs
(+ x (/ y 500))
(fma y 1/500 x)
(+ (neg x) (/ y 500))
(fnmsub y -1/500 x)
(+ x (/ (neg y) 500))
(fma y -1/500 x)
(neg (+ (neg x) (/ y 500)))
(fma y -1/500 x)
(neg (+ x (/ (neg y) 500)))
(fnmsub y -1/500 x)
(+ y (/ x 500))
(fma x 1/500 y)

explain74.0ms (2.3%)

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

Compiled 35 to 17 computations (51.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-div: 5.0ms (61.3% of total)
ival-add: 3.0ms (36.8% of total)
const: 1.0ms (12.3% 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 500 binary64)))
Compiler

Compiled 7 to 5 computations (28.6% saved)

simplify6.0ms (0.2%)

Algorithm
egg-herbie
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
cost-diff0
(/.f64 y #s(literal 500 binary64))
cost-diff0
(+.f64 x (/.f64 y #s(literal 500 binary64)))
Rules
+-lowering-+.f64
+-lowering-+.f32
/-lowering-/.f32
/-lowering-/.f64
+-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0511
1611
0611
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(+ x (/ y 500))
x
(/ y 500)
y
500
Outputs
(+ x (/ y 500))
(+.f64 x (/.f64 y #s(literal 500 binary64)))
x
(/ y 500)
(/.f64 y #s(literal 500 binary64))
y
500
#s(literal 500 binary64)

localize20.0ms (0.6%)

Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(/.f64 y #s(literal 500 binary64))
accuracy100.0%
(+.f64 x (/.f64 y #s(literal 500 binary64)))
Results
15.0ms256×0valid
Compiler

Compiled 14 to 6 computations (57.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-add: 3.0ms (50.5% of total)
ival-div: 2.0ms (33.7% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series3.0ms (0.1%)

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

9 calls:

TimeVariablePointExpression
0.0ms
y
@-inf
(/ y 500)
0.0ms
x
@inf
(+ x (/ y 500))
0.0ms
y
@inf
(+ x (/ y 500))
0.0ms
y
@inf
(/ y 500)
0.0ms
x
@0
(+ x (/ y 500))

rewrite307.0ms (9.7%)

Algorithm
batch-egg-rewrite
Rules
3020×*-lowering-*.f32
3020×*-lowering-*.f64
1446×/-lowering-/.f32
1446×/-lowering-/.f64
1194×unpow-prod-down
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
058
1297
22497
339877
082807
Stop Event
iter limit
node limit
Counts
2 → 105
Calls
Call 1
Inputs
(+ x (/ y 500))
(/ y 500)
Outputs
(+.f64 x (/.f64 y #s(literal 500 binary64)))
(+.f64 (/.f64 y #s(literal 500 binary64)) x)
(+.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (neg.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64))))) #s(literal -1 binary64)))
(-.f64 x (/.f64 y #s(literal -500 binary64)))
(-.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(-.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(fma.f64 x #s(literal 1 binary64) (/.f64 y #s(literal 500 binary64)))
(fma.f64 x (/.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))) (neg.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(fma.f64 y #s(literal 1/500 binary64) x)
(fma.f64 (-.f64 #s(literal 0 binary64) y) #s(literal -1/500 binary64) x)
(fma.f64 (*.f64 x x) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (neg.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(fma.f64 #s(literal 1 binary64) x (/.f64 y #s(literal 500 binary64)))
(fma.f64 #s(literal 1 binary64) (/.f64 y #s(literal 500 binary64)) x)
(fma.f64 #s(literal 1/500 binary64) y x)
(fma.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y)))) (+.f64 x (/.f64 y #s(literal 500 binary64))) (neg.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(fma.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64)))) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 500 binary64)) (+.f64 x (/.f64 y #s(literal 500 binary64))))) (neg.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(neg.f64 (/.f64 (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))))))
(neg.f64 (/.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y))) (-.f64 #s(literal 0 binary64) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(neg.f64 (/.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64)))) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y)))))
(neg.f64 (/.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y)))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(/.f64 (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64))) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64)))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x))))
(/.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y))) (+.f64 x (/.f64 y #s(literal -500 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64))))))
(/.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64)))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y)))))
(/.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y)))) (-.f64 #s(literal 0 binary64) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(/.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 1953125000000000000000000 binary64))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))) (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x)))))))
(/.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) (-.f64 (/.f64 y #s(literal 500 binary64)) x))
(/.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 15625000000000000 binary64))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 15625000000000000 binary64))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))))))
(/.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) #s(literal 62500000000 binary64))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (+.f64 x (/.f64 y #s(literal -500 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 1953125000000000000000000 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x))))) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 15625000000000000 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64))) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 15625000000000000 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) #s(literal 62500000000 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64))))) (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))))))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y))))) (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(/.f64 (neg.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x))) (neg.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64))))) (+.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))) (*.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64))))) (*.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))) (+.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(/.f64 (*.f64 (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64))) #s(literal 1 binary64)) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))))
(/.f64 (*.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y))) #s(literal 1 binary64)) (+.f64 x (/.f64 y #s(literal -500 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 1953125000000000000000000 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))))) (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x))))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 15625000000000000 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))))) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 15625000000000000 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal -500 binary64))))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))))
(/.f64 (*.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) #s(literal 62500000000 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal -500 binary64))))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64)))) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x))) #s(literal -1 binary64))
(*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(*.f64 (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y)))))
(*.f64 (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))) (*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))))))
(*.f64 (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))) (/.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y)))))
(*.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64))))
(*.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y))) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(*.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))))))
(*.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y)))) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y)))) (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64)))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y)))) #s(literal -1 binary64)))
(*.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(*.f64 (/.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y))) (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y)))) (+.f64 x (/.f64 y #s(literal 500 binary64))))
(*.f64 (/.f64 (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64))) (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y)) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y)) (-.f64 (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y)) (*.f64 x x)))))
(*.f64 (/.f64 (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))) (-.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))))
(*.f64 (/.f64 (+.f64 (*.f64 x x) (/.f64 y (/.f64 #s(literal -250000 binary64) y))) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64)))) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal 500 binary64)) (+.f64 x (/.f64 y #s(literal 500 binary64))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))) (+.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 1953125000000000000000000 binary64)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x)))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x x) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 500 binary64) y))) (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 15625000000000000 binary64)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/125000000 binary64)))))
(*.f64 (pow.f64 (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 15625000000000000 binary64)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))))))
(*.f64 (pow.f64 (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) #s(literal 62500000000 binary64)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 500 binary64) y)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 y #s(literal 500 binary64))) #s(literal 1 binary64)))
(-.f64 #s(literal 0 binary64) (/.f64 y #s(literal -500 binary64)))
(neg.f64 (/.f64 y #s(literal -500 binary64)))
(neg.f64 (*.f64 (/.f64 y #s(literal -500 binary64)) #s(literal 1 binary64)))
(/.f64 y #s(literal 500 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) y) #s(literal -500 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y))
(/.f64 #s(literal 1/500 binary64) (/.f64 #s(literal 1 binary64) y))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -500 binary64) y))
(pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64))
(pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1 binary64))
(*.f64 y #s(literal 1/500 binary64))
(*.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) y) #s(literal -1/500 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 y #s(literal 500 binary64)))
(*.f64 #s(literal 1/500 binary64) y)
(*.f64 #s(literal 1/500 binary64) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) y)))
(*.f64 #s(literal 1/500 binary64) (pow.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) y)) #s(literal 1 binary64)))
(*.f64 #s(literal 1/500 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 -500 binary64)))
(*.f64 #s(literal -1 binary64) (pow.f64 (/.f64 y #s(literal -500 binary64)) #s(literal 1 binary64)))
(*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) y))
(*.f64 #s(literal -1/500 binary64) (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1 binary64)))
(*.f64 #s(literal -1/500 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/500 binary64))
(*.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1 binary64)) #s(literal -1/500 binary64))
(*.f64 (pow.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (/.f64 y #s(literal 500 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/500 binary64))

simplify149.0ms (4.7%)

Algorithm
egg-herbie
Rules
1544×fnmadd-define
1404×fmsub-define
1344×fnmsub-define
1318×fma-lowering-fma.f32
1318×fma-lowering-fma.f64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
023138
168120
2160120
3441120
41347120
53754120
66031120
08030120
Stop Event
iter limit
node limit
Counts
36 → 36
Calls
Call 1
Inputs
(* 1/500 y)
(+ x (* 1/500 y))
(+ x (* 1/500 y))
(+ x (* 1/500 y))
x
(* x (+ 1 (* 1/500 (/ y x))))
(* x (+ 1 (* 1/500 (/ y x))))
(* x (+ 1 (* 1/500 (/ y x))))
x
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
x
(+ x (* 1/500 y))
(+ x (* 1/500 y))
(+ x (* 1/500 y))
(* 1/500 y)
(* y (+ 1/500 (/ x y)))
(* y (+ 1/500 (/ x y)))
(* y (+ 1/500 (/ x y)))
(* 1/500 y)
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
Outputs
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
x
(* x (+ 1 (* 1/500 (/ y x))))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* x (+ 1 (* 1/500 (/ y x))))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* x (+ 1 (* 1/500 (/ y x))))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
x
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
x
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* y (+ 1/500 (/ x y)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* y (+ 1/500 (/ x y)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* y (+ 1/500 (/ x y)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)

eval16.0ms (0.5%)

Compiler

Compiled 2711 to 308 computations (88.6% saved)

prune16.0ms (0.5%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1374141
Fresh000
Picked011
Done000
Total1375142
Accuracy
100.0%
Counts
142 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 y #s(literal 1/500 binary64) x)
100.0%
(+.f64 x (/.f64 y #s(literal 500 binary64)))
99.8%
(+.f64 x (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y)))
52.2%
(*.f64 #s(literal 1/500 binary64) y)
48.4%
x
Compiler

Compiled 30 to 22 computations (26.7% saved)

simplify5.0ms (0.2%)

Algorithm
egg-herbie
Localize:

Found 5 expressions of interest:

NewMetricScoreProgram
cost-diff6272
(fma.f64 y #s(literal 1/500 binary64) x)
cost-diff0
(/.f64 #s(literal 500 binary64) y)
cost-diff128
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y))
cost-diff128
(+.f64 x (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y)))
cost-diff0
(*.f64 #s(literal 1/500 binary64) y)
Rules
fma-lowering-fma.f32
fma-define
+-lowering-+.f64
/-lowering-/.f32
/-lowering-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01127
11827
21927
01927
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
x
(* 1/500 y)
1/500
y
(+ x (/ 1 (/ 500 y)))
x
(/ 1 (/ 500 y))
1
(/ 500 y)
500
y
(+ (* y 1/500) x)
y
1/500
x
Outputs
x
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
1/500
#s(literal 1/500 binary64)
y
(+ x (/ 1 (/ 500 y)))
(+.f64 x (*.f64 #s(literal 1/500 binary64) y))
x
(/ 1 (/ 500 y))
(*.f64 #s(literal 1/500 binary64) y)
1
#s(literal 1 binary64)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
500
#s(literal 500 binary64)
y
(+ (* y 1/500) x)
(+.f64 x (*.f64 #s(literal 1/500 binary64) y))
y
1/500
#s(literal 1/500 binary64)
x

localize56.0ms (1.8%)

Localize:

Found 5 expressions of interest:

NewMetricScoreProgram
accuracy99.9%
(fma.f64 y #s(literal 1/500 binary64) x)
accuracy100.0%
(/.f64 #s(literal 500 binary64) y)
accuracy100.0%
(+.f64 x (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y)))
accuracy99.2%
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y))
accuracy99.8%
(*.f64 #s(literal 1/500 binary64) y)
Results
42.0ms256×0valid
Compiler

Compiled 35 to 11 computations (68.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 22.0ms
...c/correct-round.rkt:119:19: 7.0ms (32.1% of total)
ival-div: 4.0ms (18.3% of total)
ival-mult: 4.0ms (18.3% of total)
compiled-spec: 4.0ms (18.3% of total)
ival-add: 3.0ms (13.8% of total)
const: 1.0ms (4.6% of total)
backward-pass: 0.0ms (0% of total)

series2.0ms (0.1%)

Counts
5 → 84
Calls
Call 1
Inputs
#<alt (* 1/500 y)>
#<alt (+ x (/ 1 (/ 500 y)))>
#<alt (/ 1 (/ 500 y))>
#<alt (/ 500 y)>
#<alt (+ (* y 1/500) x)>
Outputs
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (+ x (* 1/500 y))>
#<alt (+ x (* 1/500 y))>
#<alt (+ x (* 1/500 y))>
#<alt x>
#<alt (* x (+ 1 (* 1/500 (/ y x))))>
#<alt (* x (+ 1 (* 1/500 (/ y x))))>
#<alt (* x (+ 1 (* 1/500 (/ y x))))>
#<alt x>
#<alt (* -1 (* x (- (* -1/500 (/ y x)) 1)))>
#<alt (* -1 (* x (- (* -1/500 (/ y x)) 1)))>
#<alt (* -1 (* x (- (* -1/500 (/ y x)) 1)))>
#<alt x>
#<alt (+ x (* 1/500 y))>
#<alt (+ x (* 1/500 y))>
#<alt (+ x (* 1/500 y))>
#<alt (* 1/500 y)>
#<alt (* y (+ 1/500 (/ x y)))>
#<alt (* y (+ 1/500 (/ x y)))>
#<alt (* y (+ 1/500 (/ x y)))>
#<alt (* 1/500 y)>
#<alt (* -1 (* y (- (* -1 (/ x y)) 1/500)))>
#<alt (* -1 (* y (- (* -1 (/ x y)) 1/500)))>
#<alt (* -1 (* y (- (* -1 (/ x y)) 1/500)))>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (/ 500 y)>
#<alt (/ 500 y)>
#<alt (/ 500 y)>
#<alt (/ 500 y)>
#<alt (/ 500 y)>
#<alt (/ 500 y)>
#<alt (/ 500 y)>
#<alt (/ 500 y)>
#<alt (/ 500 y)>
#<alt (/ 500 y)>
#<alt (/ 500 y)>
#<alt (/ 500 y)>
#<alt x>
#<alt (+ x (* 1/500 y))>
#<alt (+ x (* 1/500 y))>
#<alt (+ x (* 1/500 y))>
#<alt (* 1/500 y)>
#<alt (* y (+ 1/500 (/ x y)))>
#<alt (* y (+ 1/500 (/ x y)))>
#<alt (* y (+ 1/500 (/ x y)))>
#<alt (* 1/500 y)>
#<alt (* -1 (* y (- (* -1 (/ x y)) 1/500)))>
#<alt (* -1 (* y (- (* -1 (/ x y)) 1/500)))>
#<alt (* -1 (* y (- (* -1 (/ x y)) 1/500)))>
#<alt (* 1/500 y)>
#<alt (+ x (* 1/500 y))>
#<alt (+ x (* 1/500 y))>
#<alt (+ x (* 1/500 y))>
#<alt x>
#<alt (* x (+ 1 (* 1/500 (/ y x))))>
#<alt (* x (+ 1 (* 1/500 (/ y x))))>
#<alt (* x (+ 1 (* 1/500 (/ y x))))>
#<alt x>
#<alt (* -1 (* x (- (* -1/500 (/ y x)) 1)))>
#<alt (* -1 (* x (- (* -1/500 (/ y x)) 1)))>
#<alt (* -1 (* x (- (* -1/500 (/ y x)) 1)))>
Calls

21 calls:

TimeVariablePointExpression
0.0ms
y
@0
(/ 500 y)
0.0ms
y
@inf
(/ 500 y)
0.0ms
y
@-inf
(/ 500 y)
0.0ms
y
@inf
(* 1/500 y)
0.0ms
x
@0
(+ x (/ 1 (/ 500 y)))

rewrite243.0ms (7.7%)

Algorithm
batch-egg-rewrite
Rules
2664×*-lowering-*.f32
2664×*-lowering-*.f64
1832×/-lowering-/.f32
1832×/-lowering-/.f64
1820×fnmadd-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01117
16217
244417
3577117
0816917
Stop Event
iter limit
node limit
Counts
5 → 249
Calls
Call 1
Inputs
(* 1/500 y)
(+ x (/ 1 (/ 500 y)))
(/ 1 (/ 500 y))
(/ 500 y)
(+ (* y 1/500) x)
Outputs
(exp.f64 (log.f64 (/.f64 y #s(literal 500 binary64))))
(-.f64 #s(literal 0 binary64) (/.f64 y #s(literal -500 binary64)))
(neg.f64 (/.f64 y #s(literal -500 binary64)))
(/.f64 #s(literal 1/500 binary64) (/.f64 #s(literal 1 binary64) y))
(/.f64 y #s(literal 500 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y))
(/.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -500 binary64) y))
(/.f64 (-.f64 #s(literal 0 binary64) y) #s(literal -500 binary64))
(/.f64 #s(literal -1/500 binary64) (/.f64 #s(literal -1 binary64) y))
(/.f64 (/.f64 y #s(literal -500 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1 binary64))
(pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64))
(pow.f64 (/.f64 #s(literal 250000 binary64) (*.f64 y y)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) #s(literal 2 binary64))
(*.f64 #s(literal 1/500 binary64) y)
(*.f64 y #s(literal 1/500 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 y #s(literal 500 binary64)))
(*.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 y #s(literal -500 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) y) #s(literal -1/500 binary64))
(*.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) (/.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) (*.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) y))
(*.f64 #s(literal -1/500 binary64) (pow.f64 (/.f64 #s(literal -1 binary64) y) #s(literal -1 binary64)))
(*.f64 #s(literal -1/500 binary64) (/.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1 binary64)))
(*.f64 (/.f64 y #s(literal -500 binary64)) #s(literal -1 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64))) (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)))
(+.f64 x (/.f64 y #s(literal 500 binary64)))
(+.f64 (/.f64 y #s(literal 500 binary64)) x)
(+.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (neg.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(+.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (neg.f64 (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))
(-.f64 x (/.f64 y #s(literal -500 binary64)))
(-.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(-.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(fma.f64 #s(literal 1/500 binary64) y x)
(fma.f64 y #s(literal 1/500 binary64) x)
(fma.f64 #s(literal 1 binary64) (/.f64 y #s(literal 500 binary64)) x)
(fma.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64) x)
(fma.f64 #s(literal -1 binary64) (/.f64 y #s(literal -500 binary64)) x)
(fma.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) x)
(fma.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) y) x)
(neg.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (+.f64 (*.f64 (*.f64 y y) #s(literal -1/250000 binary64)) (neg.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64))))))))
(neg.f64 (/.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(neg.f64 (/.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(neg.f64 (/.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64)))) #s(literal 1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64))))))
(/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))
(/.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))
(/.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) (-.f64 (/.f64 y #s(literal 500 binary64)) x))
(/.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)))) (+.f64 (*.f64 (*.f64 y y) #s(literal -1/250000 binary64)) (neg.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))))))
(/.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)) #s(literal 125000000 binary64)) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))) (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x 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)) #s(literal 125000000 binary64)) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))) (+.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y))))))))
(/.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y))))))
(/.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))))))
(/.f64 (-.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x)))))
(/.f64 (-.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (+.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))))))
(/.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y)))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))))
(/.f64 (-.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (*.f64 x x))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(/.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)) #s(literal 125000000 binary64)) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x))))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(/.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)) #s(literal 125000000 binary64)) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y)))))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y)))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) #s(literal 1 binary64)) (*.f64 (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(/.f64 (*.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y)))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 x (*.f64 x (*.f64 x x)))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))))) (neg.f64 (+.f64 (*.f64 (*.f64 y y) #s(literal -1/250000 binary64)) (neg.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64))))) (+.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))) (*.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (+.f64 (*.f64 (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (*.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64))))) (*.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))) (+.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (*.f64 (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))) (+.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))
(/.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) #s(literal 1 binary64)) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))
(/.f64 (*.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))) #s(literal 1 binary64)) (+.f64 x (/.f64 y #s(literal -500 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) #s(literal 1 binary64)) (-.f64 (/.f64 y #s(literal 500 binary64)) x))
(/.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)) #s(literal 125000000 binary64)) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))) (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x))))))
(/.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)) #s(literal 125000000 binary64)) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))) (+.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y)))))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal -1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))))
(/.f64 (*.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y)))) (/.f64 #s(literal -1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (+.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 x (*.f64 x (*.f64 x x)))) (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64)))) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64))))
(*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))
(*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))
(*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(*.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(*.f64 (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))) (*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))))
(*.f64 (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))) (/.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(*.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))) (/.f64 #s(literal -1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(*.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(*.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 y y) #s(literal -1/250000 binary64)) (neg.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64))))))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)))
(*.f64 (/.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x))) (+.f64 x (/.f64 y #s(literal 500 binary64))))
(*.f64 (/.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))) (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64)))) (+.f64 x (/.f64 y #s(literal 500 binary64))))
(*.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (+.f64 (*.f64 (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)) (-.f64 (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)) (*.f64 x x)))))
(*.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal -500 binary64)) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))
(*.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (+.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))) (*.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))) (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))))))) (+.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))) (-.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))))
(*.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (-.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))) (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64))))))) (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(*.f64 (/.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y))))) (+.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x (+.f64 x (/.f64 y #s(literal 500 binary64))))))
(*.f64 (/.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x)))) (+.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x (+.f64 x (/.f64 y #s(literal 500 binary64))))))
(exp.f64 (log.f64 (/.f64 y #s(literal 500 binary64))))
(-.f64 #s(literal 0 binary64) (/.f64 y #s(literal -500 binary64)))
(neg.f64 (/.f64 y #s(literal -500 binary64)))
(/.f64 #s(literal 1/500 binary64) (/.f64 #s(literal 1 binary64) y))
(/.f64 y #s(literal 500 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y))
(/.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -500 binary64) y))
(/.f64 (-.f64 #s(literal 0 binary64) y) #s(literal -500 binary64))
(/.f64 #s(literal -1/500 binary64) (/.f64 #s(literal -1 binary64) y))
(/.f64 (/.f64 y #s(literal -500 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1 binary64))
(pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64))
(pow.f64 (/.f64 #s(literal 250000 binary64) (*.f64 y y)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) #s(literal 2 binary64))
(*.f64 #s(literal 1/500 binary64) y)
(*.f64 y #s(literal 1/500 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 y #s(literal 500 binary64)))
(*.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 y #s(literal -500 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) y) #s(literal -1/500 binary64))
(*.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) (/.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) (*.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) y))
(*.f64 #s(literal -1/500 binary64) (pow.f64 (/.f64 #s(literal -1 binary64) y) #s(literal -1 binary64)))
(*.f64 #s(literal -1/500 binary64) (/.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1 binary64)))
(*.f64 (/.f64 y #s(literal -500 binary64)) #s(literal -1 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64))) (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)))
(exp.f64 (log.f64 (/.f64 #s(literal 500 binary64) y)))
(exp.f64 (*.f64 (log.f64 (/.f64 y #s(literal 500 binary64))) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (/.f64 #s(literal -500 binary64) y))
(neg.f64 (/.f64 #s(literal -500 binary64) y))
(/.f64 #s(literal 1 binary64) (/.f64 y #s(literal 500 binary64)))
(/.f64 #s(literal 500 binary64) y)
(/.f64 (/.f64 #s(literal 500 binary64) y) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 y #s(literal -500 binary64)))
(/.f64 #s(literal -500 binary64) (-.f64 #s(literal 0 binary64) y))
(/.f64 (/.f64 #s(literal -500 binary64) y) #s(literal -1 binary64))
(/.f64 (/.f64 #s(literal 1 binary64) y) #s(literal 1/500 binary64))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64))) (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal 1 binary64))
(pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y))
(*.f64 #s(literal 500 binary64) (/.f64 #s(literal 1 binary64) y))
(*.f64 (/.f64 #s(literal 500 binary64) y) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -500 binary64) y))
(*.f64 #s(literal -500 binary64) (/.f64 #s(literal -1 binary64) y))
(*.f64 #s(literal -500 binary64) (*.f64 (/.f64 #s(literal -1 binary64) y) #s(literal 1 binary64)))
(*.f64 #s(literal -500 binary64) (/.f64 (/.f64 #s(literal -1 binary64) y) #s(literal 1 binary64)))
(*.f64 #s(literal -500 binary64) (/.f64 (/.f64 #s(literal 1 binary64) y) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -500 binary64) y) #s(literal -1 binary64))
(*.f64 (/.f64 #s(literal 1 binary64) y) #s(literal 500 binary64))
(*.f64 (/.f64 #s(literal -1 binary64) y) #s(literal -500 binary64))
(*.f64 (pow.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal -1/2 binary64)))
(+.f64 x (/.f64 y #s(literal 500 binary64)))
(+.f64 (/.f64 y #s(literal 500 binary64)) x)
(+.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (neg.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(+.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (neg.f64 (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))
(-.f64 x (/.f64 y #s(literal -500 binary64)))
(-.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(-.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(fma.f64 #s(literal 1/500 binary64) y x)
(fma.f64 y #s(literal 1/500 binary64) x)
(fma.f64 #s(literal 1 binary64) (/.f64 y #s(literal 500 binary64)) x)
(fma.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64) x)
(fma.f64 #s(literal -1 binary64) (/.f64 y #s(literal -500 binary64)) x)
(fma.f64 (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) (pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1/2 binary64)) x)
(fma.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) y) x)
(neg.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (+.f64 (*.f64 (*.f64 y y) #s(literal -1/250000 binary64)) (neg.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64))))))))
(neg.f64 (/.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(neg.f64 (/.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(neg.f64 (/.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64)))) #s(literal 1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64))))))
(/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))
(/.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))
(/.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) (-.f64 (/.f64 y #s(literal 500 binary64)) x))
(/.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)))) (+.f64 (*.f64 (*.f64 y y) #s(literal -1/250000 binary64)) (neg.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))))))
(/.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)) #s(literal 125000000 binary64)) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))) (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x 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)) #s(literal 125000000 binary64)) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))) (+.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y))))))))
(/.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y))))))
(/.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))))))
(/.f64 (-.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (*.f64 (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x)))))
(/.f64 (-.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (+.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))))))
(/.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y)))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))))
(/.f64 (-.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (*.f64 y (*.f64 y #s(literal 1/250000 binary64))))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (*.f64 x x))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(/.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)) #s(literal 125000000 binary64)) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x))))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(/.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)) #s(literal 125000000 binary64)) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y)))))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y)))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) #s(literal 1 binary64)) (*.f64 (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(/.f64 (*.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y)))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 x (*.f64 x (*.f64 x x)))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))))) (neg.f64 (+.f64 (*.f64 (*.f64 y y) #s(literal -1/250000 binary64)) (neg.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64))))) (+.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))) (*.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (+.f64 (*.f64 (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (*.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64))))) (*.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))) (+.f64 (/.f64 (*.f64 x x) (+.f64 x (/.f64 y #s(literal -500 binary64)))) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (*.f64 (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))) (+.f64 (/.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))
(/.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) #s(literal 1 binary64)) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))
(/.f64 (*.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))) #s(literal 1 binary64)) (+.f64 x (/.f64 y #s(literal -500 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) #s(literal 1 binary64)) (-.f64 (/.f64 y #s(literal 500 binary64)) x))
(/.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)) #s(literal 125000000 binary64)) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))) (+.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x))))))
(/.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)) #s(literal 125000000 binary64)) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))) (+.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y)))))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal -1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))))
(/.f64 (*.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y)))) (/.f64 #s(literal -1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (+.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 x (*.f64 x (*.f64 x x)))) (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x))) (+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64)))) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (+.f64 x (/.f64 y #s(literal 500 binary64))))
(*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (*.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))
(*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))
(*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (+.f64 x (/.f64 y #s(literal -500 binary64)))))
(*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (/.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(*.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(*.f64 (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))) (*.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))))))
(*.f64 (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y))) (/.f64 (+.f64 x (/.f64 y #s(literal 500 binary64))) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))))
(*.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))) (/.f64 #s(literal -1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(*.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))
(*.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 y y) #s(literal -1/250000 binary64)) (neg.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64))))))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x x) (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)))) (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 y #s(literal 500 binary64)) x)) (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)))
(*.f64 (/.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x))) (+.f64 x (/.f64 y #s(literal 500 binary64))))
(*.f64 (/.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))) (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64)))) (+.f64 x (/.f64 y #s(literal 500 binary64))))
(*.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (+.f64 (*.f64 (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (-.f64 (/.f64 y #s(literal 500 binary64)) x)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))) (+.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)) (-.f64 (/.f64 (+.f64 x (/.f64 y #s(literal -500 binary64))) (/.f64 #s(literal -500 binary64) y)) (*.f64 x x)))))
(*.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 (-.f64 (/.f64 y #s(literal 500 binary64)) x) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))) (+.f64 (*.f64 x x) (*.f64 (/.f64 y #s(literal -500 binary64)) (-.f64 (/.f64 y #s(literal 500 binary64)) x))))
(*.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (+.f64 (*.f64 #s(literal 1/15625000000000000 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))) (*.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))) (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))))))) (+.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))) (-.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))) (*.f64 y (*.f64 y #s(literal 1/250000 binary64)))))))
(*.f64 (/.f64 (+.f64 (*.f64 x (*.f64 x x)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64))) (-.f64 (*.f64 #s(literal 1/62500000000 binary64) (*.f64 (*.f64 y y) (*.f64 y y))) (*.f64 (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64)))) (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64))))))) (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x (+.f64 x (/.f64 y #s(literal -500 binary64))))))
(*.f64 (/.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 y y) #s(literal -1/250000 binary64))) (+.f64 (*.f64 x (*.f64 x x)) (*.f64 #s(literal -1/125000000 binary64) (*.f64 y (*.f64 y y))))) (+.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x (+.f64 x (/.f64 y #s(literal 500 binary64))))))
(*.f64 (/.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x x)) (-.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal 125000000 binary64)) (*.f64 x (*.f64 x x)))) (+.f64 (*.f64 y (*.f64 y #s(literal 1/250000 binary64))) (*.f64 x (+.f64 x (/.f64 y #s(literal 500 binary64))))))

simplify150.0ms (4.7%)

Algorithm
egg-herbie
Rules
1544×fnmadd-define
1404×fmsub-define
1344×fnmsub-define
1340×*-lowering-*.f32
1340×*-lowering-*.f64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
025312
170276
2162276
3441276
41344276
53720276
66038276
08060276
Stop Event
iter limit
node limit
Counts
84 → 84
Calls
Call 1
Inputs
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(+ x (* 1/500 y))
(+ x (* 1/500 y))
(+ x (* 1/500 y))
x
(* x (+ 1 (* 1/500 (/ y x))))
(* x (+ 1 (* 1/500 (/ y x))))
(* x (+ 1 (* 1/500 (/ y x))))
x
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
x
(+ x (* 1/500 y))
(+ x (* 1/500 y))
(+ x (* 1/500 y))
(* 1/500 y)
(* y (+ 1/500 (/ x y)))
(* y (+ 1/500 (/ x y)))
(* y (+ 1/500 (/ x y)))
(* 1/500 y)
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(/ 500 y)
(/ 500 y)
(/ 500 y)
(/ 500 y)
(/ 500 y)
(/ 500 y)
(/ 500 y)
(/ 500 y)
(/ 500 y)
(/ 500 y)
(/ 500 y)
(/ 500 y)
x
(+ x (* 1/500 y))
(+ x (* 1/500 y))
(+ x (* 1/500 y))
(* 1/500 y)
(* y (+ 1/500 (/ x y)))
(* y (+ 1/500 (/ x y)))
(* y (+ 1/500 (/ x y)))
(* 1/500 y)
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(* 1/500 y)
(+ x (* 1/500 y))
(+ x (* 1/500 y))
(+ x (* 1/500 y))
x
(* x (+ 1 (* 1/500 (/ y x))))
(* x (+ 1 (* 1/500 (/ y x))))
(* x (+ 1 (* 1/500 (/ y x))))
x
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
Outputs
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
x
(* x (+ 1 (* 1/500 (/ y x))))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* x (+ 1 (* 1/500 (/ y x))))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* x (+ 1 (* 1/500 (/ y x))))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
x
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
x
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* y (+ 1/500 (/ x y)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* y (+ 1/500 (/ x y)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* y (+ 1/500 (/ x y)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
(/ 500 y)
(/.f64 #s(literal 500 binary64) y)
x
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* y (+ 1/500 (/ x y)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* y (+ 1/500 (/ x y)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* y (+ 1/500 (/ x y)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* -1 (* y (- (* -1 (/ x y)) 1/500)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(+ x (* 1/500 y))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
x
(* x (+ 1 (* 1/500 (/ y x))))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* x (+ 1 (* 1/500 (/ y x))))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* x (+ 1 (* 1/500 (/ y x))))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
x
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)
(* -1 (* x (- (* -1/500 (/ y x)) 1)))
(+.f64 (*.f64 #s(literal 1/500 binary64) y) x)

eval35.0ms (1.1%)

Compiler

Compiled 6944 to 415 computations (94% saved)

prune26.0ms (0.8%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New3321333
Fresh000
Picked134
Done011
Total3335338
Accuracy
100.0%
Counts
338 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 y #s(literal 1/500 binary64) x)
52.3%
(/.f64 y #s(literal 500 binary64))
100.0%
(+.f64 x (/.f64 y #s(literal 500 binary64)))
99.8%
(+.f64 x (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y)))
48.4%
x
Compiler

Compiled 30 to 22 computations (26.7% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Localize:

Found 1 expressions of interest:

NewMetricScoreProgram
cost-diff0
(/.f64 y #s(literal 500 binary64))
Rules
/-lowering-/.f32
/-lowering-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035
035
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(/ y 500)
y
500
Outputs
(/ y 500)
(/.f64 y #s(literal 500 binary64))
y
500
#s(literal 500 binary64)

localize18.0ms (0.6%)

Localize:

Found 1 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(/.f64 y #s(literal 500 binary64))
Results
14.0ms256×0valid
Compiler

Compiled 8 to 5 computations (37.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.0ms
ival-div: 2.0ms (75.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 (/ y 500)>
Outputs
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
#<alt (* 1/500 y)>
Calls

3 calls:

TimeVariablePointExpression
0.0ms
y
@0
(/ y 500)
0.0ms
y
@inf
(/ y 500)
0.0ms
y
@-inf
(/ y 500)

rewrite183.0ms (5.8%)

Algorithm
batch-egg-rewrite
Rules
2328×*-lowering-*.f32
2328×*-lowering-*.f64
1932×/-lowering-/.f32
1932×/-lowering-/.f64
1454×frac-times
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
033
1133
2393
31453
46563
564693
081893
Stop Event
iter limit
node limit
Counts
1 → 236
Calls
Call 1
Inputs
(/ y 500)
Outputs
(+.f64 #s(literal 0 binary64) (/.f64 y #s(literal 500 binary64)))
(+.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 0 binary64))
(exp.f64 (log.f64 (/.f64 y #s(literal 500 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 y #s(literal 500 binary64))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 250000 binary64) (*.f64 y y))) #s(literal -1/2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 #s(literal 500 binary64) y)) #s(literal -1/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 #s(literal 500 binary64) y)) #s(literal -1/2 binary64)) (*.f64 (log.f64 (/.f64 #s(literal 500 binary64) y)) #s(literal -1/2 binary64))))
(-.f64 #s(literal 0 binary64) (/.f64 y #s(literal 500 binary64)))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 #s(literal -500 binary64) (*.f64 y y))) (/.f64 y #s(literal 500 binary64)))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 y #s(literal -500 binary64))) (/.f64 y #s(literal 500 binary64)))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (*.f64 y y) #s(literal 250000 binary64))) (/.f64 y #s(literal 500 binary64)))
(neg.f64 (/.f64 y #s(literal 500 binary64)))
(/.f64 y #s(literal 500 binary64))
(/.f64 y #s(literal -500 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 500 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) y) #s(literal -500 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 y y) #s(literal 250000 binary64)) (/.f64 (*.f64 y (*.f64 y y)) #s(literal -125000000 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 y #s(literal 500 binary64)) (/.f64 (*.f64 y y) #s(literal 250000 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 y y) (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))))))
(/.f64 #s(literal 1 binary64) (/.f64 y (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y)))))
(/.f64 #s(literal 1/500 binary64) (/.f64 #s(literal 1 binary64) y))
(/.f64 #s(literal 1/500 binary64) (/.f64 #s(literal -1 binary64) y))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal 500 binary64) y))
(/.f64 #s(literal -1/500 binary64) (/.f64 #s(literal 1 binary64) y))
(/.f64 #s(literal -1/500 binary64) (/.f64 #s(literal -1 binary64) y))
(/.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64))
(/.f64 (/.f64 y #s(literal 500 binary64)) #s(literal -1 binary64))
(/.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(literal 500 binary64) (*.f64 y y)))
(/.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(literal -500 binary64) (*.f64 y y)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (*.f64 #s(literal 500 binary64) (*.f64 y y)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (*.f64 #s(literal -500 binary64) (*.f64 y y)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 500 binary64) (*.f64 y y))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -500 binary64) (*.f64 y y))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 500 binary64) (*.f64 y y))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal -500 binary64) (*.f64 y y))))
(/.f64 (*.f64 y y) (*.f64 y #s(literal 500 binary64)))
(/.f64 (*.f64 y y) (*.f64 y #s(literal -500 binary64)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (*.f64 y #s(literal 500 binary64)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (*.f64 y #s(literal -500 binary64)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (*.f64 #s(literal 1 binary64) (*.f64 y #s(literal 500 binary64))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (*.f64 #s(literal 1 binary64) (*.f64 y #s(literal -500 binary64))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (*.f64 #s(literal -1 binary64) (*.f64 y #s(literal 500 binary64))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (*.f64 #s(literal -1 binary64) (*.f64 y #s(literal -500 binary64))))
(/.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 500 binary64) y)))
(/.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal -125000000 binary64)) (/.f64 (*.f64 y y) #s(literal 250000 binary64)))
(/.f64 (/.f64 (*.f64 y y) #s(literal 250000 binary64)) (/.f64 y #s(literal 500 binary64)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (*.f64 (*.f64 #s(literal -500 binary64) (*.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (*.f64 (*.f64 #s(literal 500 binary64) (*.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 y #s(literal -500 binary64)) (*.f64 y y)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 y #s(literal 500 binary64)) (*.f64 y y)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 #s(literal -500 binary64) (*.f64 y y)) (*.f64 y (*.f64 y y))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 y #s(literal -500 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 #s(literal 500 binary64) (*.f64 y y)) (*.f64 y (*.f64 y y))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 y #s(literal 500 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))
(/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) (*.f64 y y))
(/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) (-.f64 #s(literal 0 binary64) (*.f64 y y)))
(/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) y)
(/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) (-.f64 #s(literal 0 binary64) y))
(/.f64 (*.f64 #s(literal 1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) (*.f64 y y))
(/.f64 (*.f64 #s(literal 1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) (-.f64 #s(literal 0 binary64) (*.f64 y y)))
(/.f64 (*.f64 #s(literal 1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) y)
(/.f64 (*.f64 #s(literal 1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) (-.f64 #s(literal 0 binary64) y))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) #s(literal 1/500 binary64)) (*.f64 y y))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) #s(literal 1/500 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 y y)))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) #s(literal 1/500 binary64)) y)
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) #s(literal 1/500 binary64)) (-.f64 #s(literal 0 binary64) y))
(/.f64 (neg.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))))) (*.f64 y y))
(/.f64 (neg.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))))) (-.f64 #s(literal 0 binary64) (*.f64 y y)))
(/.f64 (neg.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y)))) y)
(/.f64 (neg.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y)))) (-.f64 #s(literal 0 binary64) y))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) #s(literal -500 binary64)) y)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) #s(literal -500 binary64)) (*.f64 y y))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) #s(literal 500 binary64)) y)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) #s(literal 500 binary64)) (*.f64 y y))
(/.f64 (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/500 binary64)) (*.f64 y y))
(/.f64 (*.f64 (*.f64 y (*.f64 y y)) #s(literal -1/500 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 y y)))
(/.f64 (*.f64 (*.f64 y y) #s(literal -1/500 binary64)) y)
(/.f64 (*.f64 (*.f64 y y) #s(literal -1/500 binary64)) (-.f64 #s(literal 0 binary64) y))
(/.f64 (*.f64 #s(literal -1/500 binary64) (*.f64 y (*.f64 y y))) (*.f64 y y))
(/.f64 (*.f64 #s(literal -1/500 binary64) (*.f64 y (*.f64 y y))) (-.f64 #s(literal 0 binary64) (*.f64 y y)))
(/.f64 (*.f64 #s(literal -1/500 binary64) (*.f64 y y)) y)
(/.f64 (*.f64 #s(literal -1/500 binary64) (*.f64 y y)) (-.f64 #s(literal 0 binary64) y))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))))) (*.f64 y y))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y)))) y)
(/.f64 (*.f64 #s(literal 1/500 binary64) (*.f64 y (*.f64 y y))) (*.f64 y y))
(/.f64 (*.f64 #s(literal 1/500 binary64) (*.f64 y (*.f64 y y))) (-.f64 #s(literal 0 binary64) (*.f64 y y)))
(/.f64 (*.f64 #s(literal 1/500 binary64) (*.f64 y y)) y)
(/.f64 (*.f64 #s(literal 1/500 binary64) (*.f64 y y)) (-.f64 #s(literal 0 binary64) y))
(/.f64 (*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))))) (*.f64 y y))
(/.f64 (*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y)))) y)
(/.f64 (*.f64 (*.f64 y (*.f64 y y)) #s(literal 1/500 binary64)) (*.f64 y y))
(/.f64 (*.f64 (*.f64 y (*.f64 y y)) #s(literal 1/500 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 y y)))
(/.f64 (*.f64 (*.f64 y y) #s(literal 1/500 binary64)) y)
(/.f64 (*.f64 (*.f64 y y) #s(literal 1/500 binary64)) (-.f64 #s(literal 0 binary64) y))
(/.f64 (*.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) #s(literal 1 binary64)) (*.f64 y y))
(/.f64 (*.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) #s(literal 1 binary64)) y)
(/.f64 (*.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) #s(literal -1 binary64)) (*.f64 y y))
(/.f64 (*.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) #s(literal -1 binary64)) y)
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) (*.f64 y (*.f64 y y)))) (*.f64 y y))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) (*.f64 y y))) y)
(/.f64 (/.f64 #s(literal 1/500 binary64) (pow.f64 y #s(literal -1/2 binary64))) (pow.f64 y #s(literal -1/2 binary64)))
(/.f64 (/.f64 #s(literal 1/500 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y (*.f64 y y)))) (*.f64 y y))
(/.f64 (/.f64 #s(literal 1/500 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y y))) y)
(/.f64 (/.f64 #s(literal -1 binary64) (/.f64 #s(literal -500 binary64) (*.f64 y (*.f64 y y)))) (*.f64 y y))
(/.f64 (/.f64 #s(literal -1 binary64) (/.f64 #s(literal -500 binary64) (*.f64 y y))) y)
(/.f64 (/.f64 #s(literal -1/500 binary64) (/.f64 #s(literal -1 binary64) (*.f64 y (*.f64 y y)))) (*.f64 y y))
(/.f64 (/.f64 #s(literal -1/500 binary64) (/.f64 #s(literal -1 binary64) (*.f64 y y))) y)
(/.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) y) y)
(/.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) (-.f64 #s(literal 0 binary64) y)) (-.f64 #s(literal 0 binary64) y))
(/.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) #s(literal 1 binary64)) (*.f64 y y))
(/.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) #s(literal -1 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 y y)))
(/.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) #s(literal 1 binary64)) y)
(/.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) #s(literal -1 binary64)) (-.f64 #s(literal 0 binary64) y))
(/.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) (pow.f64 y #s(literal 1/2 binary64))) (pow.f64 y #s(literal 1/2 binary64)))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -500 binary64) (*.f64 y (*.f64 y y)))) (*.f64 y y))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -500 binary64) (*.f64 y y))) y)
(/.f64 (/.f64 #s(literal 1/500 binary64) (/.f64 #s(literal -1 binary64) (*.f64 y (*.f64 y y)))) (*.f64 y y))
(/.f64 (/.f64 #s(literal 1/500 binary64) (/.f64 #s(literal -1 binary64) (*.f64 y y))) y)
(/.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 #s(literal 500 binary64) y))) (sqrt.f64 (/.f64 #s(literal 500 binary64) y)))
(/.f64 (/.f64 #s(literal -1 binary64) (/.f64 #s(literal 500 binary64) (*.f64 y (*.f64 y y)))) (*.f64 y y))
(/.f64 (/.f64 #s(literal -1 binary64) (/.f64 #s(literal 500 binary64) (*.f64 y y))) y)
(/.f64 (/.f64 #s(literal -1/500 binary64) (pow.f64 y #s(literal -1/2 binary64))) (pow.f64 y #s(literal -1/2 binary64)))
(/.f64 (/.f64 #s(literal -1/500 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y (*.f64 y y)))) (*.f64 y y))
(/.f64 (/.f64 #s(literal -1/500 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y y))) y)
(pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1 binary64))
(pow.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 #s(literal 250000 binary64) (*.f64 y y)) #s(literal -1/2 binary64))
(pow.f64 (/.f64 (*.f64 y y) #s(literal 250000 binary64)) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal 500 binary64) y)))
(*.f64 y #s(literal 1/500 binary64))
(*.f64 y #s(literal -1/500 binary64))
(*.f64 y (pow.f64 (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64)) #s(literal 2 binary64)))
(*.f64 y (*.f64 (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64)) (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64))))
(*.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1/500 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) y) #s(literal -1/500 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) y) (*.f64 (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64)) (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64))))
(*.f64 #s(literal 1 binary64) (/.f64 y #s(literal 500 binary64)))
(*.f64 #s(literal 1/500 binary64) y)
(*.f64 #s(literal 1/500 binary64) (-.f64 #s(literal 0 binary64) y))
(*.f64 #s(literal -1 binary64) (/.f64 y #s(literal 500 binary64)))
(*.f64 #s(literal -1/500 binary64) y)
(*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) y))
(*.f64 (/.f64 y #s(literal 500 binary64)) #s(literal 1 binary64))
(*.f64 (/.f64 y #s(literal 500 binary64)) #s(literal -1 binary64))
(*.f64 (*.f64 y (*.f64 y y)) (/.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (/.f64 #s(literal -1/500 binary64) (*.f64 y y)))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal -500 binary64) (*.f64 y y))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 500 binary64) (*.f64 y y))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal -1/500 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/500 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal -500 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 500 binary64)))
(*.f64 (*.f64 y y) (/.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) y)))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (/.f64 #s(literal -1/500 binary64) y))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (/.f64 #s(literal 1 binary64) (*.f64 y #s(literal -500 binary64))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (/.f64 #s(literal 1 binary64) (*.f64 y #s(literal 500 binary64))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (*.f64 (/.f64 #s(literal 1 binary64) y) #s(literal -1/500 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (*.f64 (/.f64 #s(literal 1 binary64) y) #s(literal 1/500 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (/.f64 (/.f64 #s(literal 1 binary64) y) #s(literal -500 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (/.f64 (/.f64 #s(literal 1 binary64) y) #s(literal 500 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))))
(*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) (/.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) (neg.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))))
(*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))) #s(literal 1 binary64)))
(*.f64 (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64)) (*.f64 (pow.f64 y #s(literal 1/2 binary64)) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))))
(*.f64 (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64)) (*.f64 (pow.f64 y #s(literal 1/2 binary64)) (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))))
(*.f64 (pow.f64 y #s(literal 1/2 binary64)) (*.f64 (pow.f64 y #s(literal 1/2 binary64)) #s(literal 1/500 binary64)))
(*.f64 (pow.f64 y #s(literal 1/2 binary64)) (*.f64 (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64)) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))))
(*.f64 (pow.f64 y #s(literal 1/2 binary64)) (*.f64 (pow.f64 y #s(literal 1/2 binary64)) #s(literal -1/500 binary64)))
(*.f64 (pow.f64 y #s(literal 1/2 binary64)) (*.f64 (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64)) (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))))
(*.f64 (pow.f64 y #s(literal 1/2 binary64)) (/.f64 (pow.f64 y #s(literal 1/2 binary64)) #s(literal 500 binary64)))
(*.f64 (pow.f64 y #s(literal 1/2 binary64)) (/.f64 (pow.f64 y #s(literal 1/2 binary64)) #s(literal -500 binary64)))
(*.f64 (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64)) (*.f64 (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1/2 binary64)) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))))
(*.f64 (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64)) (*.f64 (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1/2 binary64)) (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))))
(*.f64 (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1/2 binary64)) (*.f64 (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64)) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))))
(*.f64 (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1/2 binary64)) (*.f64 (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64)) (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))))
(*.f64 (pow.f64 #s(literal -1 binary64) #s(literal -1/2 binary64)) (/.f64 y #s(literal 500 binary64)))
(*.f64 (/.f64 (*.f64 y (*.f64 y y)) #s(literal -125000000 binary64)) (/.f64 #s(literal 250000 binary64) (*.f64 y y)))
(*.f64 (/.f64 (*.f64 y y) #s(literal 250000 binary64)) (/.f64 #s(literal 500 binary64) y))
(*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/4 binary64)) (*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/4 binary64)) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))))
(*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/4 binary64)) (*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/4 binary64)) (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))))
(*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))) (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))))
(*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (*.f64 y y)))
(*.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) (/.f64 #s(literal 1 binary64) y))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 #s(literal 500 binary64) y)) #s(literal -1 binary64)) (pow.f64 (sqrt.f64 (/.f64 #s(literal 500 binary64) y)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) (*.f64 y (*.f64 y y))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 y y)))
(*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) (*.f64 y y)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) y))
(*.f64 (pow.f64 (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64)) #s(literal 2 binary64)) y)
(*.f64 (pow.f64 (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 #s(literal -1 binary64) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (/.f64 y #s(literal 500 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal -500 binary64) (*.f64 y (*.f64 y y))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 y y)))
(*.f64 (pow.f64 (/.f64 #s(literal -500 binary64) (*.f64 y y)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) y))
(*.f64 (*.f64 #s(literal 1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (*.f64 y y)))
(*.f64 (*.f64 #s(literal 1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) (/.f64 #s(literal 1 binary64) y))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (pow.f64 y #s(literal 1/2 binary64))) (/.f64 #s(literal -1/500 binary64) (pow.f64 y #s(literal 1/2 binary64))))
(*.f64 (/.f64 #s(literal -1/500 binary64) y) (-.f64 #s(literal 0 binary64) (*.f64 y y)))
(*.f64 (/.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) y)) (*.f64 y y))
(*.f64 (/.f64 #s(literal -1/500 binary64) (pow.f64 y #s(literal 1/2 binary64))) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y y)) (pow.f64 y #s(literal 1/2 binary64))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y))) #s(literal 1 binary64)) (/.f64 #s(literal -1/500 binary64) (*.f64 y y)))
(*.f64 (*.f64 (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64)) (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64))) y)
(*.f64 (*.f64 (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64)) (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64))) (-.f64 #s(literal 0 binary64) y))
(*.f64 (*.f64 (pow.f64 #s(literal -1 binary64) #s(literal -1/2 binary64)) (pow.f64 #s(literal -1 binary64) #s(literal -1/2 binary64))) (/.f64 y #s(literal 500 binary64)))
(*.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/500 binary64) (pow.f64 y #s(literal 1/2 binary64))) (pow.f64 y #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal -1 binary64) (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))
(*.f64 (*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64))) (pow.f64 y #s(literal 1/2 binary64)))
(*.f64 (*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) (pow.f64 y #s(literal 1/2 binary64))) (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64)))
(*.f64 (*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64))) (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1/2 binary64))) (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64)))
(*.f64 (*.f64 (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/4 binary64))) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/4 binary64)))
(*.f64 (*.f64 #s(literal -1/500 binary64) (pow.f64 y #s(literal 1/2 binary64))) (pow.f64 y #s(literal 1/2 binary64)))
(*.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))) (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64))) (pow.f64 y #s(literal 1/2 binary64)))
(*.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))) (pow.f64 y #s(literal 1/2 binary64))) (pow.f64 #s(literal 500 binary64) #s(literal -1/2 binary64)))
(*.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))) (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64))) (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))) (pow.f64 (-.f64 #s(literal 0 binary64) y) #s(literal 1/2 binary64))) (pow.f64 #s(literal -500 binary64) #s(literal -1/2 binary64)))
(*.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))) (pow.f64 #s(literal -1 binary64) #s(literal -1/2 binary64))) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))
(*.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64))) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/4 binary64))) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/4 binary64)))
(*.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) y))
(*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 #s(literal 500 binary64) y))) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 y (*.f64 y (*.f64 y y))))
(*.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 y y))
(*.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y (*.f64 y y))))) (-.f64 #s(literal 0 binary64) (*.f64 y y)))
(*.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) (-.f64 #s(literal 0 binary64) (*.f64 y (*.f64 y y)))) (-.f64 #s(literal 0 binary64) (*.f64 y y)))
(*.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) (-.f64 #s(literal 0 binary64) (*.f64 y y))) (-.f64 #s(literal 0 binary64) y))
(*.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) (*.f64 y (*.f64 y y))) (*.f64 y y))
(*.f64 (/.f64 (*.f64 #s(literal -1/500 binary64) (-.f64 #s(literal 0 binary64) (*.f64 y y))) (*.f64 y y)) y)
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))) (pow.f64 (/.f64 #s(literal 500 binary64) y) #s(literal -1/2 binary64)))

simplify9.0ms (0.3%)

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/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
(* 1/500 y)
Outputs
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)
(* 1/500 y)
(*.f64 #s(literal 1/500 binary64) y)

eval38.0ms (1.2%)

Compiler

Compiled 2816 to 451 computations (84% saved)

prune41.0ms (1.3%)

Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New2480248
Fresh000
Picked011
Done044
Total2485253
Accuracy
100.0%
Counts
253 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 y #s(literal 1/500 binary64) x)
52.3%
(/.f64 y #s(literal 500 binary64))
100.0%
(+.f64 x (/.f64 y #s(literal 500 binary64)))
99.8%
(+.f64 x (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y)))
48.4%
x
Compiler

Compiled 55 to 34 computations (38.2% saved)

regimes11.0ms (0.3%)

Counts
6 → 1
Calls
Call 1
Inputs
x
(*.f64 #s(literal 1/500 binary64) y)
(/.f64 y #s(literal 500 binary64))
(+.f64 x (/.f64 y #s(literal 500 binary64)))
(+.f64 x (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 500 binary64) y)))
(fma.f64 y #s(literal 1/500 binary64) x)
Outputs
(+.f64 x (/.f64 y #s(literal 500 binary64)))
Calls

4 calls:

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

Compiled 18 to 13 computations (27.8% saved)

regimes6.0ms (0.2%)

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

3 calls:

2.0ms
x
2.0ms
(/.f64 y #s(literal 500 binary64))
2.0ms
y
Results
AccuracySegmentsBranch
77.9%3x
75.9%3y
75.9%3(/.f64 y #s(literal 500 binary64))
Compiler

Compiled 11 to 8 computations (27.3% saved)

regimes2.0ms (0.1%)

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

1 calls:

2.0ms
x
Results
AccuracySegmentsBranch
77.8%3x
Compiler

Compiled 3 to 2 computations (33.3% saved)

regimes16.0ms (0.5%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

2 calls:

14.0ms
y
1.0ms
x
Results
AccuracySegmentsBranch
48.4%1y
48.4%1x
Compiler

Compiled 6 to 4 computations (33.3% saved)

bsearch21.0ms (0.7%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
11.0ms
3.1963838805349587e+30
9.886809461407213e+40
8.0ms
-8.132891355585598e-33
-8.28730237768407e-35
Results
11.0ms272×0valid
Compiler

Compiled 182 to 145 computations (20.3% saved)

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

bsearch37.0ms (1.2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
27.0ms
3.1963838805349587e+30
9.886809461407213e+40
8.0ms
-8.132891355585598e-33
-8.28730237768407e-35
Results
27.0ms272×0valid
Compiler

Compiled 182 to 145 computations (20.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
ival-div: 18.0ms (89.8% of total)
ival-add: 1.0ms (5% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

simplify8.0ms (0.2%)

Algorithm
egg-herbie
Rules
if-if-or-not_binary32
*-commutative_binary64
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01932
12732
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 x (/.f64 y #s(literal 500 binary64)))
(if (<=.f64 x #s(literal -2572242881702389/11692013098647223345629478661730264157247460343808 binary64)) x (if (<=.f64 x #s(literal 7099999999999999831558361972736 binary64)) (/.f64 y #s(literal 500 binary64)) x))
(if (<=.f64 x #s(literal -8476709496519237/1461501637330902918203684832716283019655932542976 binary64)) x (if (<=.f64 x #s(literal 10199999999999999657041806403643985887232 binary64)) (*.f64 #s(literal 1/500 binary64) y) x))
x
Outputs
(+.f64 x (/.f64 y #s(literal 500 binary64)))
(if (<=.f64 x #s(literal -2572242881702389/11692013098647223345629478661730264157247460343808 binary64)) x (if (<=.f64 x #s(literal 7099999999999999831558361972736 binary64)) (/.f64 y #s(literal 500 binary64)) x))
(if (<=.f64 x #s(literal -8476709496519237/1461501637330902918203684832716283019655932542976 binary64)) x (if (<=.f64 x #s(literal 10199999999999999657041806403643985887232 binary64)) (*.f64 #s(literal 1/500 binary64) y) x))
(if (<=.f64 x #s(literal -8476709496519237/1461501637330902918203684832716283019655932542976 binary64)) x (if (<=.f64 x #s(literal 10199999999999999657041806403643985887232 binary64)) (*.f64 y #s(literal 1/500 binary64)) x))
x

soundness638.0ms (20.1%)

Rules
2664×*-lowering-*.f32
2664×*-lowering-*.f64
1832×/-lowering-/.f32
1832×/-lowering-/.f64
1820×fnmadd-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01117
16217
244417
3577117
0816917
023138
168120
2160120
3441120
41347120
53754120
66031120
08030120
Stop Event
done
iter limit
node limit
iter limit
node limit
Compiler

Compiled 58 to 37 computations (36.2% saved)

preprocess31.0ms (1%)

Compiler

Compiled 82 to 48 computations (41.5% saved)

end0.0ms (0%)

Profiling

Loading profile data...