Diagrams.ThreeD.Shapes:frustum from diagrams-lib-1.3.0.3, B

Time bar (total: 3.9s)

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 11 to 7 computations (36.4% saved)

sample870.0ms (22.3%)

Results
635.0ms6587×body256valid
217.0ms1669×body256infinite
Bogosity

preprocess215.0ms (5.5%)

Algorithm
egg-herbie
Rules
2166×fma-def
860×fma-neg
484×distribute-rgt-in
372×unsub-neg
342×distribute-lft-in
Problems
256×No Errors
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
036377
178321
2237317
3843317
41878317
53213317
63517317
73549317
83549317
94184317
104184317
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 x (*.f64 (-.f64 y x) z))
(+.f64 x (*.f64 (-.f64 y x) z))
(+.f64 (neg.f64 x) (*.f64 (-.f64 y (neg.f64 x)) z))
(+.f64 x (*.f64 (-.f64 (neg.f64 y) x) z))
(+.f64 x (*.f64 (-.f64 y x) (neg.f64 z)))
(neg.f64 (+.f64 (neg.f64 x) (*.f64 (-.f64 y (neg.f64 x)) z)))
(neg.f64 (+.f64 x (*.f64 (-.f64 (neg.f64 y) x) z)))
(neg.f64 (+.f64 x (*.f64 (-.f64 y x) (neg.f64 z))))
(+.f64 y (*.f64 (-.f64 x y) z))
(+.f64 z (*.f64 (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 z x) y))
Outputs
(+.f64 x (*.f64 (-.f64 y x) z))
(fma.f64 (-.f64 y x) z x)
(+.f64 x (*.f64 (-.f64 y x) z))
(fma.f64 (-.f64 y x) z x)
(+.f64 (neg.f64 x) (*.f64 (-.f64 y (neg.f64 x)) z))
(+.f64 (neg.f64 x) (*.f64 z (-.f64 y (neg.f64 x))))
(-.f64 (*.f64 z (+.f64 x y)) x)
(fma.f64 z (+.f64 x y) (neg.f64 x))
(+.f64 x (*.f64 (-.f64 (neg.f64 y) x) z))
(+.f64 x (*.f64 z (-.f64 (neg.f64 y) x)))
(-.f64 x (*.f64 z (+.f64 x y)))
(fma.f64 z (-.f64 (neg.f64 x) y) x)
(fma.f64 z (-.f64 (neg.f64 y) x) x)
(+.f64 x (*.f64 (-.f64 y x) (neg.f64 z)))
(-.f64 x (*.f64 (-.f64 y x) z))
(fma.f64 z (-.f64 x y) x)
(neg.f64 (+.f64 (neg.f64 x) (*.f64 (-.f64 y (neg.f64 x)) z)))
(+.f64 x (*.f64 z (-.f64 (neg.f64 y) x)))
(-.f64 x (*.f64 z (+.f64 x y)))
(fma.f64 z (-.f64 (neg.f64 x) y) x)
(fma.f64 z (-.f64 (neg.f64 y) x) x)
(neg.f64 (+.f64 x (*.f64 (-.f64 (neg.f64 y) x) z)))
(+.f64 (neg.f64 x) (*.f64 z (-.f64 y (neg.f64 x))))
(-.f64 (*.f64 z (+.f64 x y)) x)
(fma.f64 z (+.f64 x y) (neg.f64 x))
(neg.f64 (+.f64 x (*.f64 (-.f64 y x) (neg.f64 z))))
(-.f64 (*.f64 (-.f64 y x) z) x)
(fma.f64 (-.f64 y x) z (neg.f64 x))
(neg.f64 (fma.f64 z (-.f64 x y) x))
(+.f64 y (*.f64 (-.f64 x y) z))
(+.f64 y (*.f64 z (-.f64 x y)))
(fma.f64 z (-.f64 x y) y)
(+.f64 z (*.f64 (-.f64 y z) x))
(+.f64 z (*.f64 x (-.f64 y z)))
(fma.f64 x (-.f64 y z) z)
(+.f64 x (*.f64 (-.f64 z x) y))
(+.f64 x (*.f64 y (-.f64 z x)))
(fma.f64 y (-.f64 z x) x)
Compiler

Compiled 32 to 13 computations (59.4% saved)

eval0.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

prune2.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (-.f64 y x) z x)
100.0%
(+.f64 x (*.f64 (-.f64 y x) z))
100.0%
(fma.f64 (-.f64 y x) z x)
100.0%
(+.f64 x (*.f64 (-.f64 y x) z))
Compiler

Compiled 38 to 22 computations (42.1% saved)

localize41.0ms (1.1%)

Localize:

Found 2 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 (-.f64 y x) z)
100.0%
(+.f64 x (*.f64 (-.f64 y x) z))
Compiler

Compiled 34 to 8 computations (76.5% saved)

series5.0ms (0.1%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
y
@-inf
(+.f64 x (*.f64 (-.f64 y x) z))
0.0ms
x
@inf
(+.f64 x (*.f64 (-.f64 y x) z))
0.0ms
z
@inf
(+.f64 x (*.f64 (-.f64 y x) z))
0.0ms
z
@-inf
(+.f64 x (*.f64 (-.f64 y x) z))
0.0ms
x
@-inf
(+.f64 x (*.f64 (-.f64 y x) z))

rewrite338.0ms (8.7%)

Algorithm
batch-egg-rewrite
Rules
810×fma-def
806×log1p-expm1-u
806×expm1-log1p-u
734×log-prod
642×pow-prod-down
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01253
114649
2212749
Stop Event
node limit
Counts
2 → 93
Calls
Call 1
Inputs
(+.f64 x (*.f64 (-.f64 y x) z))
(*.f64 (-.f64 y x) z)
Outputs
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y x) z x))) 1)
(-.f64 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 (-.f64 y x) z))) (/.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2) (-.f64 x (*.f64 (-.f64 y x) z))))
(*.f64 (fma.f64 (-.f64 y x) z x) 1)
(*.f64 (fma.f64 (-.f64 y x) z x) (log.f64 (exp.f64 1)))
(*.f64 1 (fma.f64 (-.f64 y x) z x))
(*.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x)) 2) (cbrt.f64 (fma.f64 (-.f64 y x) z x)))
(*.f64 (sqrt.f64 (fma.f64 (-.f64 y x) z x)) (sqrt.f64 (fma.f64 (-.f64 y x) z x)))
(*.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2))))
(*.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2)) (/.f64 1 (-.f64 x (*.f64 (-.f64 y x) z))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3))))
(/.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 y x) z)) (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3)) (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2) (-.f64 (pow.f64 x 2) (*.f64 (*.f64 x (-.f64 y x)) z))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2)) (-.f64 x (*.f64 (-.f64 y x) z)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3))) (neg.f64 (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2))) (neg.f64 (-.f64 x (*.f64 (-.f64 y x) z))))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2) (pow.f64 x 2)) (fma.f64 (-.f64 y x) z (neg.f64 x)))
(pow.f64 (fma.f64 (-.f64 y x) z x) 1)
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x)) 3)
(pow.f64 (pow.f64 (fma.f64 (-.f64 y x) z x) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 (-.f64 y x) z x) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 (-.f64 y x) z x)) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3))) -1)
(pow.f64 (/.f64 (-.f64 x (*.f64 (-.f64 y x) z)) (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 (-.f64 y x) z x) 2))
(log.f64 (exp.f64 (fma.f64 (-.f64 y x) z x)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y x) z x))))
(log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 z) (-.f64 y x))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) (+.f64 1 (expm1.f64 x))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z))) (exp.f64 x)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z))) (+.f64 1 (expm1.f64 x))))
(cbrt.f64 (pow.f64 (fma.f64 (-.f64 y x) z x) 3))
(expm1.f64 (log1p.f64 (fma.f64 (-.f64 y x) z x)))
(exp.f64 (log.f64 (fma.f64 (-.f64 y x) z x)))
(exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) z x)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) z x)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (-.f64 y x) z x))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (-.f64 y x) z x))) 2))
(log1p.f64 (expm1.f64 (fma.f64 (-.f64 y x) z x)))
(fma.f64 x 1 (*.f64 (-.f64 y x) z))
(fma.f64 (-.f64 y x) z x)
(fma.f64 z (-.f64 y x) x)
(fma.f64 (*.f64 (-.f64 y x) z) 1 x)
(fma.f64 1 x (*.f64 (-.f64 y x) z))
(fma.f64 1 (*.f64 (-.f64 y x) z) x)
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) z) x)
(fma.f64 (cbrt.f64 (*.f64 (-.f64 y x) z)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) z)) 2) x)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) z)) 2) (cbrt.f64 (*.f64 (-.f64 y x) z)) x)
(fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 y x) z))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 y x) z))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (-.f64 y x)) x)
(fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) z) x)
(fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) z)) (sqrt.f64 (*.f64 (-.f64 y x) z)) x)
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 y x) z))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (-.f64 y x)) x)
(fma.f64 (*.f64 (-.f64 y x) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) x)
(fma.f64 (*.f64 (-.f64 y x) (sqrt.f64 z)) (sqrt.f64 z) x)
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)) x)
(fma.f64 (*.f64 z (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)) x)
(+.f64 0 (*.f64 (-.f64 y x) z))
(+.f64 (*.f64 z y) (*.f64 z (neg.f64 x)))
(+.f64 (*.f64 y z) (*.f64 (neg.f64 x) z))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))) (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 y x) z))) 1)
(/.f64 (*.f64 z (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 x y) (pow.f64 y 2)))
(/.f64 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 x y))
(/.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) z) (fma.f64 x (+.f64 x y) (pow.f64 y 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 x y))
(pow.f64 (*.f64 (-.f64 y x) z) 1)
(pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) z)) 3)
(pow.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) z)) 2)
(sqrt.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2))
(log.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z))))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3))
(expm1.f64 (log1p.f64 (*.f64 (-.f64 y x) z)))
(exp.f64 (log.f64 (*.f64 (-.f64 y x) z)))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) z)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) z)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 y x) z))) 3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) z)) 3) 1/3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (-.f64 y x) z))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) z))) 2))
(log1p.f64 (expm1.f64 (*.f64 (-.f64 y x) z)))
(fma.f64 y z (*.f64 (neg.f64 x) z))
(fma.f64 z y (*.f64 z (neg.f64 x)))

simplify151.0ms (3.9%)

Algorithm
egg-herbie
Rules
1754×fma-def
790×log-prod
648×unswap-sqr
496×hypot-def
460×times-frac
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02405952
15545105
217375014
373505014
Stop Event
node limit
Counts
165 → 122
Calls
Call 1
Inputs
(*.f64 y z)
(+.f64 (*.f64 x (+.f64 1 (*.f64 -1 z))) (*.f64 y z))
(+.f64 (*.f64 x (+.f64 1 (*.f64 -1 z))) (*.f64 y z))
(+.f64 (*.f64 x (+.f64 1 (*.f64 -1 z))) (*.f64 y z))
(*.f64 x (+.f64 1 (*.f64 -1 z)))
(+.f64 (*.f64 x (+.f64 1 (*.f64 -1 z))) (*.f64 y z))
(+.f64 (*.f64 x (+.f64 1 (*.f64 -1 z))) (*.f64 y z))
(+.f64 (*.f64 x (+.f64 1 (*.f64 -1 z))) (*.f64 y z))
(*.f64 -1 (*.f64 x (-.f64 z 1)))
(+.f64 (*.f64 -1 (*.f64 x (-.f64 z 1))) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x (-.f64 z 1))) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x (-.f64 z 1))) (*.f64 y z))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(*.f64 y z)
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(*.f64 y z)
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
x
(+.f64 x (*.f64 z (-.f64 y x)))
(+.f64 x (*.f64 z (-.f64 y x)))
(+.f64 x (*.f64 z (-.f64 y x)))
(*.f64 z (-.f64 y x))
(+.f64 x (*.f64 z (-.f64 y x)))
(+.f64 x (*.f64 z (-.f64 y x)))
(+.f64 x (*.f64 z (-.f64 y x)))
(*.f64 z (-.f64 y x))
(+.f64 x (*.f64 z (-.f64 y x)))
(+.f64 x (*.f64 z (-.f64 y x)))
(+.f64 x (*.f64 z (-.f64 y x)))
(*.f64 -1 (*.f64 x z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 -1 (*.f64 x z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 -1 (*.f64 x z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y x) z x))) 1)
(-.f64 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 (-.f64 y x) z))) (/.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2) (-.f64 x (*.f64 (-.f64 y x) z))))
(*.f64 (fma.f64 (-.f64 y x) z x) 1)
(*.f64 (fma.f64 (-.f64 y x) z x) (log.f64 (exp.f64 1)))
(*.f64 1 (fma.f64 (-.f64 y x) z x))
(*.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x)) 2) (cbrt.f64 (fma.f64 (-.f64 y x) z x)))
(*.f64 (sqrt.f64 (fma.f64 (-.f64 y x) z x)) (sqrt.f64 (fma.f64 (-.f64 y x) z x)))
(*.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2))))
(*.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2)) (/.f64 1 (-.f64 x (*.f64 (-.f64 y x) z))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3))))
(/.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 y x) z)) (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3)) (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2) (-.f64 (pow.f64 x 2) (*.f64 (*.f64 x (-.f64 y x)) z))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2)) (-.f64 x (*.f64 (-.f64 y x) z)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3))) (neg.f64 (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2))) (neg.f64 (-.f64 x (*.f64 (-.f64 y x) z))))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2) (pow.f64 x 2)) (fma.f64 (-.f64 y x) z (neg.f64 x)))
(pow.f64 (fma.f64 (-.f64 y x) z x) 1)
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x)) 3)
(pow.f64 (pow.f64 (fma.f64 (-.f64 y x) z x) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 (-.f64 y x) z x) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 (-.f64 y x) z x)) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3))) -1)
(pow.f64 (/.f64 (-.f64 x (*.f64 (-.f64 y x) z)) (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 (-.f64 y x) z x) 2))
(log.f64 (exp.f64 (fma.f64 (-.f64 y x) z x)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y x) z x))))
(log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 z) (-.f64 y x))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) (+.f64 1 (expm1.f64 x))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z))) (exp.f64 x)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z))) (+.f64 1 (expm1.f64 x))))
(cbrt.f64 (pow.f64 (fma.f64 (-.f64 y x) z x) 3))
(expm1.f64 (log1p.f64 (fma.f64 (-.f64 y x) z x)))
(exp.f64 (log.f64 (fma.f64 (-.f64 y x) z x)))
(exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) z x)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) z x)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (-.f64 y x) z x))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (-.f64 y x) z x))) 2))
(log1p.f64 (expm1.f64 (fma.f64 (-.f64 y x) z x)))
(fma.f64 x 1 (*.f64 (-.f64 y x) z))
(fma.f64 (-.f64 y x) z x)
(fma.f64 z (-.f64 y x) x)
(fma.f64 (*.f64 (-.f64 y x) z) 1 x)
(fma.f64 1 x (*.f64 (-.f64 y x) z))
(fma.f64 1 (*.f64 (-.f64 y x) z) x)
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) z) x)
(fma.f64 (cbrt.f64 (*.f64 (-.f64 y x) z)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) z)) 2) x)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) z)) 2) (cbrt.f64 (*.f64 (-.f64 y x) z)) x)
(fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 y x) z))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 y x) z))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (-.f64 y x)) x)
(fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) z) x)
(fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) z)) (sqrt.f64 (*.f64 (-.f64 y x) z)) x)
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 y x) z))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (-.f64 y x)) x)
(fma.f64 (*.f64 (-.f64 y x) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) x)
(fma.f64 (*.f64 (-.f64 y x) (sqrt.f64 z)) (sqrt.f64 z) x)
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)) x)
(fma.f64 (*.f64 z (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)) x)
(+.f64 0 (*.f64 (-.f64 y x) z))
(+.f64 (*.f64 z y) (*.f64 z (neg.f64 x)))
(+.f64 (*.f64 y z) (*.f64 (neg.f64 x) z))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))) (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 y x) z))) 1)
(/.f64 (*.f64 z (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 x y) (pow.f64 y 2)))
(/.f64 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 x y))
(/.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) z) (fma.f64 x (+.f64 x y) (pow.f64 y 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 x y))
(pow.f64 (*.f64 (-.f64 y x) z) 1)
(pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) z)) 3)
(pow.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) z)) 2)
(sqrt.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2))
(log.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z))))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3))
(expm1.f64 (log1p.f64 (*.f64 (-.f64 y x) z)))
(exp.f64 (log.f64 (*.f64 (-.f64 y x) z)))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) z)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) z)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 y x) z))) 3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) z)) 3) 1/3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (-.f64 y x) z))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) z))) 2))
(log1p.f64 (expm1.f64 (*.f64 (-.f64 y x) z)))
(fma.f64 y z (*.f64 (neg.f64 x) z))
(fma.f64 z y (*.f64 z (neg.f64 x)))
Outputs
(*.f64 y z)
(+.f64 (*.f64 x (+.f64 1 (*.f64 -1 z))) (*.f64 y z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 (*.f64 x (+.f64 1 (*.f64 -1 z))) (*.f64 y z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 (*.f64 x (+.f64 1 (*.f64 -1 z))) (*.f64 y z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 x (+.f64 1 (*.f64 -1 z)))
(*.f64 x (+.f64 1 (neg.f64 z)))
(*.f64 x (-.f64 1 z))
(+.f64 (*.f64 x (+.f64 1 (*.f64 -1 z))) (*.f64 y z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 (*.f64 x (+.f64 1 (*.f64 -1 z))) (*.f64 y z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 (*.f64 x (+.f64 1 (*.f64 -1 z))) (*.f64 y z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 -1 (*.f64 x (-.f64 z 1)))
(*.f64 x (+.f64 1 (neg.f64 z)))
(*.f64 x (-.f64 1 z))
(+.f64 (*.f64 -1 (*.f64 x (-.f64 z 1))) (*.f64 y z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 x (-.f64 z 1))) (*.f64 y z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 x (-.f64 z 1))) (*.f64 y z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 x (+.f64 1 (neg.f64 z)))
(*.f64 x (-.f64 1 z))
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 y z)
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 y z)
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
x
(+.f64 x (*.f64 z (-.f64 y x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (*.f64 z (-.f64 y x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (*.f64 z (-.f64 y x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 z (-.f64 y x))
(+.f64 x (*.f64 z (-.f64 y x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (*.f64 z (-.f64 y x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (*.f64 z (-.f64 y x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 z (-.f64 y x))
(+.f64 x (*.f64 z (-.f64 y x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (*.f64 z (-.f64 y x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 x (*.f64 z (-.f64 y x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 -1 (*.f64 x z))
(neg.f64 (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 -1 (*.f64 x z))
(neg.f64 (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 -1 (*.f64 x z))
(neg.f64 (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y x) z x))) 1)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(-.f64 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 (-.f64 y x) z))) (/.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2) (-.f64 x (*.f64 (-.f64 y x) z))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (-.f64 x (*.f64 z (-.f64 y x))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (fma.f64 z (-.f64 x y) x))
(*.f64 (fma.f64 (-.f64 y x) z x) 1)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 (fma.f64 (-.f64 y x) z x) (log.f64 (exp.f64 1)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 1 (fma.f64 (-.f64 y x) z x))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x)) 2))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x)) 2) (cbrt.f64 (fma.f64 (-.f64 y x) z x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 (sqrt.f64 (fma.f64 (-.f64 y x) z x)) (sqrt.f64 (fma.f64 (-.f64 y x) z x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(*.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 y x)) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 (*.f64 z (-.f64 y x)) (-.f64 (*.f64 z (-.f64 y x)) x) (pow.f64 x 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 x (fma.f64 z (-.f64 x y) x) (pow.f64 (*.f64 z (-.f64 y x)) 2)))
(*.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2)) (/.f64 1 (-.f64 x (*.f64 (-.f64 y x) z))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (-.f64 x (*.f64 z (-.f64 y x))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (fma.f64 z (-.f64 x y) x))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3))))
(*.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 y x)) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 (*.f64 z (-.f64 y x)) (-.f64 (*.f64 z (-.f64 y x)) x) (pow.f64 x 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 x (fma.f64 z (-.f64 x y) x) (pow.f64 (*.f64 z (-.f64 y x)) 2)))
(/.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 y x) z)) (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (-.f64 x (*.f64 z (-.f64 y x))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (fma.f64 z (-.f64 x y) x))
(/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3)) (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 y x)) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 (*.f64 z (-.f64 y x)) (-.f64 (*.f64 z (-.f64 y x)) x) (pow.f64 x 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 x (fma.f64 z (-.f64 x y) x) (pow.f64 (*.f64 z (-.f64 y x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2) (-.f64 (pow.f64 x 2) (*.f64 (*.f64 x (-.f64 y x)) z))))
(*.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 y x)) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 (*.f64 z (-.f64 y x)) (-.f64 (*.f64 z (-.f64 y x)) x) (pow.f64 x 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 x (fma.f64 z (-.f64 x y) x) (pow.f64 (*.f64 z (-.f64 y x)) 2)))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2)) (-.f64 x (*.f64 (-.f64 y x) z)))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (-.f64 x (*.f64 z (-.f64 y x))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (fma.f64 z (-.f64 x y) x))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3))) (neg.f64 (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 y x)) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 (*.f64 z (-.f64 y x)) (-.f64 (*.f64 z (-.f64 y x)) x) (pow.f64 x 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 x (fma.f64 z (-.f64 x y) x) (pow.f64 (*.f64 z (-.f64 y x)) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2))) (neg.f64 (-.f64 x (*.f64 (-.f64 y x) z))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (-.f64 x (*.f64 z (-.f64 y x))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (fma.f64 z (-.f64 x y) x))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2) (pow.f64 x 2)) (fma.f64 (-.f64 y x) z (neg.f64 x)))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (-.f64 x (*.f64 z (-.f64 y x))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (fma.f64 z (-.f64 x y) x))
(pow.f64 (fma.f64 (-.f64 y x) z x) 1)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x)) 3)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(pow.f64 (pow.f64 (fma.f64 (-.f64 y x) z x) 2) 1/2)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(pow.f64 (pow.f64 (fma.f64 (-.f64 y x) z x) 3) 1/3)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(pow.f64 (sqrt.f64 (fma.f64 (-.f64 y x) z x)) 2)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(pow.f64 (/.f64 (fma.f64 (*.f64 (-.f64 y x) z) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) (pow.f64 x 3))) -1)
(*.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 y x)) (fma.f64 (-.f64 y x) z (neg.f64 x)) (pow.f64 x 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 (*.f64 z (-.f64 y x)) (-.f64 (*.f64 z (-.f64 y x)) x) (pow.f64 x 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 x (fma.f64 z (-.f64 x y) x) (pow.f64 (*.f64 z (-.f64 y x)) 2)))
(pow.f64 (/.f64 (-.f64 x (*.f64 (-.f64 y x) z)) (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 (-.f64 y x) z) 2))) -1)
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (-.f64 x (*.f64 z (-.f64 y x))))
(/.f64 (-.f64 (pow.f64 x 2) (pow.f64 (*.f64 z (-.f64 y x)) 2)) (fma.f64 z (-.f64 x y) x))
(sqrt.f64 (pow.f64 (fma.f64 (-.f64 y x) z x) 2))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(log.f64 (exp.f64 (fma.f64 (-.f64 y x) z x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y x) z x))))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z)))))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 z) (-.f64 y x))))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z)))))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(log.f64 (*.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) (+.f64 1 (expm1.f64 x))))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z))) (exp.f64 x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z))) (+.f64 1 (expm1.f64 x))))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(cbrt.f64 (pow.f64 (fma.f64 (-.f64 y x) z x) 3))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(expm1.f64 (log1p.f64 (fma.f64 (-.f64 y x) z x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(exp.f64 (log.f64 (fma.f64 (-.f64 y x) z x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) z x)) 1))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) z x)) 1) 1))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (-.f64 y x) z x))) 3))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (-.f64 y x) z x))) 1/3))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (-.f64 y x) z x))) 2))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(log1p.f64 (expm1.f64 (fma.f64 (-.f64 y x) z x)))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 x 1 (*.f64 (-.f64 y x) z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (-.f64 y x) z x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 z (-.f64 y x) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 (*.f64 (-.f64 y x) z) 1 x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 1 x (*.f64 (-.f64 y x) z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 1 (*.f64 (-.f64 y x) z) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) z) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (cbrt.f64 (*.f64 (-.f64 y x) z)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) z)) 2) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) z)) 2) (cbrt.f64 (*.f64 (-.f64 y x) z)) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 y x) z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 y x) z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (-.f64 y x)) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) z) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) z)) (sqrt.f64 (*.f64 (-.f64 y x) z)) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 y x) z))
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (-.f64 y x)) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (*.f64 (-.f64 y x) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (*.f64 (-.f64 y x) (sqrt.f64 z)) (sqrt.f64 z) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(fma.f64 (*.f64 z (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)) x)
(fma.f64 x (+.f64 1 (neg.f64 z)) (*.f64 y z))
(fma.f64 z (-.f64 y x) x)
(+.f64 0 (*.f64 (-.f64 y x) z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 z y) (*.f64 z (neg.f64 x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 (neg.f64 x) z))
(*.f64 z (-.f64 y x))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))) (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(*.f64 z (-.f64 y x))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 y x) z))) 1)
(*.f64 z (-.f64 y x))
(/.f64 (*.f64 z (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (/.f64 (fma.f64 x (+.f64 y x) (pow.f64 y 2)) z))
(*.f64 (/.f64 z (fma.f64 x (+.f64 y x) (pow.f64 y 2))) (-.f64 (pow.f64 y 3) (pow.f64 x 3)))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (/.f64 z (fma.f64 x (+.f64 y x) (pow.f64 y 2))))
(/.f64 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 x y))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (/.f64 (+.f64 y x) z))
(*.f64 (/.f64 z (+.f64 y x)) (-.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 z (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x)))
(/.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) z) (fma.f64 x (+.f64 x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (/.f64 (fma.f64 x (+.f64 y x) (pow.f64 y 2)) z))
(*.f64 (/.f64 z (fma.f64 x (+.f64 y x) (pow.f64 y 2))) (-.f64 (pow.f64 y 3) (pow.f64 x 3)))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (/.f64 z (fma.f64 x (+.f64 y x) (pow.f64 y 2))))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 x y))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (/.f64 (+.f64 y x) z))
(*.f64 (/.f64 z (+.f64 y x)) (-.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 z (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x)))
(pow.f64 (*.f64 (-.f64 y x) z) 1)
(*.f64 z (-.f64 y x))
(pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) z)) 3)
(*.f64 z (-.f64 y x))
(pow.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2) 1/2)
(*.f64 z (-.f64 y x))
(pow.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3) 1/3)
(*.f64 z (-.f64 y x))
(pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) z)) 2)
(*.f64 z (-.f64 y x))
(sqrt.f64 (pow.f64 (*.f64 (-.f64 y x) z) 2))
(*.f64 z (-.f64 y x))
(log.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))
(*.f64 z (-.f64 y x))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) z))))
(*.f64 z (-.f64 y x))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 y x) z) 3))
(*.f64 z (-.f64 y x))
(expm1.f64 (log1p.f64 (*.f64 (-.f64 y x) z)))
(*.f64 z (-.f64 y x))
(exp.f64 (log.f64 (*.f64 (-.f64 y x) z)))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) z)) 1))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) z)) 1) 1))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 y x) z))) 3))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) z)) 3) 1/3))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (-.f64 y x) z))) 1/3))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) z))) 2))
(*.f64 z (-.f64 y x))
(log1p.f64 (expm1.f64 (*.f64 (-.f64 y x) z)))
(*.f64 z (-.f64 y x))
(fma.f64 y z (*.f64 (neg.f64 x) z))
(*.f64 z (-.f64 y x))
(fma.f64 z y (*.f64 z (neg.f64 x)))
(*.f64 z (-.f64 y x))

eval90.0ms (2.3%)

Compiler

Compiled 1614 to 590 computations (63.4% saved)

prune66.0ms (1.7%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New1184122
Fresh000
Picked022
Done000
Total1186124
Accuracy
100.0%
Counts
124 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (-.f64 y x) z x)
100.0%
(+.f64 x (*.f64 (-.f64 y x) z))
61.4%
(*.f64 z (-.f64 y x))
37.7%
(*.f64 y z)
65.1%
(*.f64 x (-.f64 1 z))
40.3%
x
100.0%
(fma.f64 (-.f64 y x) z x)
100.0%
(+.f64 x (*.f64 (-.f64 y x) z))
61.4%
(*.f64 z (-.f64 y x))
37.7%
(*.f64 y z)
65.1%
(*.f64 x (-.f64 1 z))
40.3%
x
Compiler

Compiled 90 to 58 computations (35.6% saved)

localize116.0ms (3%)

Localize:

Found 2 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 z (-.f64 y x))
100.0%
(*.f64 x (-.f64 1 z))
Compiler

Compiled 31 to 13 computations (58.1% saved)

series3.0ms (0.1%)

Counts
2 → 36
Calls

15 calls:

TimeVariablePointExpression
1.0ms
x
@0
(*.f64 x (-.f64 1 z))
0.0ms
x
@inf
(*.f64 x (-.f64 1 z))
0.0ms
z
@inf
(*.f64 x (-.f64 1 z))
0.0ms
x
@-inf
(*.f64 x (-.f64 1 z))
0.0ms
z
@-inf
(*.f64 x (-.f64 1 z))

rewrite93.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
982×prod-diff
873×log1p-expm1-u
873×expm1-log1p-u
854×log-prod
536×fma-def
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01441
117441
2228041
Stop Event
node limit
Counts
2 → 60
Calls
Call 1
Inputs
(*.f64 x (-.f64 1 z))
(*.f64 z (-.f64 y x))
Outputs
(+.f64 x (*.f64 x (neg.f64 z)))
(+.f64 x (*.f64 (neg.f64 z) x))
(+.f64 0 (*.f64 x (-.f64 1 z)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x)) (cbrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 x (-.f64 1 z)))) 1)
(/.f64 (*.f64 x (-.f64 1 (pow.f64 z 3))) (fma.f64 z (+.f64 1 z) 1))
(/.f64 (*.f64 x (-.f64 1 (pow.f64 z 2))) (+.f64 1 z))
(/.f64 (*.f64 (-.f64 1 (pow.f64 z 3)) x) (fma.f64 z (+.f64 1 z) 1))
(/.f64 (*.f64 (-.f64 1 (pow.f64 z 2)) x) (+.f64 1 z))
(pow.f64 (*.f64 x (-.f64 1 z)) 1)
(pow.f64 (cbrt.f64 (*.f64 x (-.f64 1 z))) 3)
(pow.f64 (pow.f64 (*.f64 x (-.f64 1 z)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 x (-.f64 1 z))) 2)
(sqrt.f64 (pow.f64 (*.f64 x (-.f64 1 z)) 2))
(log.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 1 z)))))
(cbrt.f64 (pow.f64 (*.f64 x (-.f64 1 z)) 3))
(cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (-.f64 1 z) 3)))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 1 z) 3) (pow.f64 x 3)))
(expm1.f64 (log1p.f64 (*.f64 x (-.f64 1 z))))
(exp.f64 (log.f64 (*.f64 x (-.f64 1 z))))
(exp.f64 (*.f64 (log.f64 (*.f64 x (-.f64 1 z))) 1))
(log1p.f64 (expm1.f64 (*.f64 x (-.f64 1 z))))
(fma.f64 x 1 (*.f64 x (neg.f64 z)))
(fma.f64 x 1 (*.f64 (neg.f64 z) x))
(fma.f64 1 x (*.f64 x (neg.f64 z)))
(fma.f64 1 x (*.f64 (neg.f64 z) x))
(fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 x (neg.f64 z)))
(fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (neg.f64 z) x))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 x (neg.f64 z)))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (neg.f64 z) x))
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 x (neg.f64 z)))
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (neg.f64 z) x))
(+.f64 0 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 z y) (*.f64 z (neg.f64 x)))
(+.f64 (*.f64 y z) (*.f64 (neg.f64 x) z))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))) (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (-.f64 y x)))) 1)
(/.f64 (*.f64 z (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 x y) (pow.f64 y 2)))
(/.f64 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 x y))
(/.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) z) (fma.f64 x (+.f64 x y) (pow.f64 y 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 x y))
(pow.f64 (*.f64 z (-.f64 y x)) 1)
(pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 3)
(pow.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) 2)
(sqrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 2))
(log.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 y x)))))
(cbrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3))
(cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (-.f64 y x) 3)))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 y x) 3) (pow.f64 z 3)))
(expm1.f64 (log1p.f64 (*.f64 z (-.f64 y x))))
(exp.f64 (log.f64 (*.f64 z (-.f64 y x))))
(exp.f64 (*.f64 (log.f64 (*.f64 z (-.f64 y x))) 1))
(log1p.f64 (expm1.f64 (*.f64 z (-.f64 y x))))
(fma.f64 z y (*.f64 z (neg.f64 x)))
(fma.f64 y z (*.f64 (neg.f64 x) z))

simplify126.0ms (3.2%)

Algorithm
egg-herbie
Rules
896×fma-def
810×log-prod
798×distribute-lft-in
782×distribute-rgt-in
624×unswap-sqr
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01602497
13422290
29912215
348412167
Stop Event
node limit
Counts
96 → 89
Calls
Call 1
Inputs
x
(+.f64 x (*.f64 -1 (*.f64 x z)))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 -1 (*.f64 x z))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 -1 (*.f64 x z))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 -1 (*.f64 x z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 -1 (*.f64 x z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 -1 (*.f64 x z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 x (*.f64 x (neg.f64 z)))
(+.f64 x (*.f64 (neg.f64 z) x))
(+.f64 0 (*.f64 x (-.f64 1 z)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x)) (cbrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 x (-.f64 1 z)))) 1)
(/.f64 (*.f64 x (-.f64 1 (pow.f64 z 3))) (fma.f64 z (+.f64 1 z) 1))
(/.f64 (*.f64 x (-.f64 1 (pow.f64 z 2))) (+.f64 1 z))
(/.f64 (*.f64 (-.f64 1 (pow.f64 z 3)) x) (fma.f64 z (+.f64 1 z) 1))
(/.f64 (*.f64 (-.f64 1 (pow.f64 z 2)) x) (+.f64 1 z))
(pow.f64 (*.f64 x (-.f64 1 z)) 1)
(pow.f64 (cbrt.f64 (*.f64 x (-.f64 1 z))) 3)
(pow.f64 (pow.f64 (*.f64 x (-.f64 1 z)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 x (-.f64 1 z))) 2)
(sqrt.f64 (pow.f64 (*.f64 x (-.f64 1 z)) 2))
(log.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 1 z)))))
(cbrt.f64 (pow.f64 (*.f64 x (-.f64 1 z)) 3))
(cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (-.f64 1 z) 3)))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 1 z) 3) (pow.f64 x 3)))
(expm1.f64 (log1p.f64 (*.f64 x (-.f64 1 z))))
(exp.f64 (log.f64 (*.f64 x (-.f64 1 z))))
(exp.f64 (*.f64 (log.f64 (*.f64 x (-.f64 1 z))) 1))
(log1p.f64 (expm1.f64 (*.f64 x (-.f64 1 z))))
(fma.f64 x 1 (*.f64 x (neg.f64 z)))
(fma.f64 x 1 (*.f64 (neg.f64 z) x))
(fma.f64 1 x (*.f64 x (neg.f64 z)))
(fma.f64 1 x (*.f64 (neg.f64 z) x))
(fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 x (neg.f64 z)))
(fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (neg.f64 z) x))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 x (neg.f64 z)))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (neg.f64 z) x))
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 x (neg.f64 z)))
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (neg.f64 z) x))
(+.f64 0 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 z y) (*.f64 z (neg.f64 x)))
(+.f64 (*.f64 y z) (*.f64 (neg.f64 x) z))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))) (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (-.f64 y x)))) 1)
(/.f64 (*.f64 z (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 x y) (pow.f64 y 2)))
(/.f64 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 x y))
(/.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) z) (fma.f64 x (+.f64 x y) (pow.f64 y 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 x y))
(pow.f64 (*.f64 z (-.f64 y x)) 1)
(pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 3)
(pow.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) 2)
(sqrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 2))
(log.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 y x)))))
(cbrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3))
(cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (-.f64 y x) 3)))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 y x) 3) (pow.f64 z 3)))
(expm1.f64 (log1p.f64 (*.f64 z (-.f64 y x))))
(exp.f64 (log.f64 (*.f64 z (-.f64 y x))))
(exp.f64 (*.f64 (log.f64 (*.f64 z (-.f64 y x))) 1))
(log1p.f64 (expm1.f64 (*.f64 z (-.f64 y x))))
(fma.f64 z y (*.f64 z (neg.f64 x)))
(fma.f64 y z (*.f64 (neg.f64 x) z))
Outputs
x
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(*.f64 -1 (*.f64 x z))
(*.f64 x (neg.f64 z))
(*.f64 z (neg.f64 x))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(*.f64 -1 (*.f64 x z))
(*.f64 x (neg.f64 z))
(*.f64 z (neg.f64 x))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(+.f64 x (*.f64 -1 (*.f64 x z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(*.f64 -1 (*.f64 x z))
(*.f64 x (neg.f64 z))
(*.f64 z (neg.f64 x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 -1 (*.f64 x z))
(*.f64 x (neg.f64 z))
(*.f64 z (neg.f64 x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 -1 (*.f64 x z))
(*.f64 x (neg.f64 z))
(*.f64 z (neg.f64 x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 x (*.f64 x (neg.f64 z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(+.f64 x (*.f64 (neg.f64 z) x))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(+.f64 0 (*.f64 x (-.f64 1 z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x)) (cbrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(-.f64 (exp.f64 (log1p.f64 (*.f64 x (-.f64 1 z)))) 1)
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(/.f64 (*.f64 x (-.f64 1 (pow.f64 z 3))) (fma.f64 z (+.f64 1 z) 1))
(/.f64 x (/.f64 (fma.f64 z (+.f64 z 1) 1) (-.f64 1 (pow.f64 z 3))))
(/.f64 (-.f64 1 (pow.f64 z 3)) (/.f64 (fma.f64 z (+.f64 z 1) 1) x))
(*.f64 (-.f64 1 (pow.f64 z 3)) (/.f64 x (fma.f64 z (+.f64 z 1) 1)))
(/.f64 (*.f64 x (-.f64 1 (pow.f64 z 2))) (+.f64 1 z))
(/.f64 (-.f64 1 (pow.f64 z 2)) (/.f64 (+.f64 z 1) x))
(*.f64 (/.f64 x (+.f64 z 1)) (-.f64 1 (pow.f64 z 2)))
(*.f64 x (/.f64 (-.f64 1 (pow.f64 z 2)) (+.f64 z 1)))
(/.f64 (*.f64 (-.f64 1 (pow.f64 z 3)) x) (fma.f64 z (+.f64 1 z) 1))
(/.f64 x (/.f64 (fma.f64 z (+.f64 z 1) 1) (-.f64 1 (pow.f64 z 3))))
(/.f64 (-.f64 1 (pow.f64 z 3)) (/.f64 (fma.f64 z (+.f64 z 1) 1) x))
(*.f64 (-.f64 1 (pow.f64 z 3)) (/.f64 x (fma.f64 z (+.f64 z 1) 1)))
(/.f64 (*.f64 (-.f64 1 (pow.f64 z 2)) x) (+.f64 1 z))
(/.f64 (-.f64 1 (pow.f64 z 2)) (/.f64 (+.f64 z 1) x))
(*.f64 (/.f64 x (+.f64 z 1)) (-.f64 1 (pow.f64 z 2)))
(*.f64 x (/.f64 (-.f64 1 (pow.f64 z 2)) (+.f64 z 1)))
(pow.f64 (*.f64 x (-.f64 1 z)) 1)
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(pow.f64 (cbrt.f64 (*.f64 x (-.f64 1 z))) 3)
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(pow.f64 (pow.f64 (*.f64 x (-.f64 1 z)) 3) 1/3)
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(pow.f64 (sqrt.f64 (*.f64 x (-.f64 1 z))) 2)
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(sqrt.f64 (pow.f64 (*.f64 x (-.f64 1 z)) 2))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(log.f64 (pow.f64 (exp.f64 (-.f64 1 z)) x))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 1 z)))))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(cbrt.f64 (pow.f64 (*.f64 x (-.f64 1 z)) 3))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (-.f64 1 z) 3)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 1 z) 3) (pow.f64 x 3)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(expm1.f64 (log1p.f64 (*.f64 x (-.f64 1 z))))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(exp.f64 (log.f64 (*.f64 x (-.f64 1 z))))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(exp.f64 (*.f64 (log.f64 (*.f64 x (-.f64 1 z))) 1))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(log1p.f64 (expm1.f64 (*.f64 x (-.f64 1 z))))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(fma.f64 x 1 (*.f64 x (neg.f64 z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(fma.f64 x 1 (*.f64 (neg.f64 z) x))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(fma.f64 1 x (*.f64 x (neg.f64 z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(fma.f64 1 x (*.f64 (neg.f64 z) x))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 x (neg.f64 z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (neg.f64 z) x))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 x (neg.f64 z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (neg.f64 z) x))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 x (neg.f64 z)))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (neg.f64 z) x))
(*.f64 (+.f64 (neg.f64 z) 1) x)
(*.f64 x (-.f64 1 z))
(+.f64 0 (*.f64 z (-.f64 y x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 z y) (*.f64 z (neg.f64 x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 (neg.f64 x) z))
(*.f64 z (-.f64 y x))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))) (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(*.f64 z (-.f64 y x))
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (-.f64 y x)))) 1)
(*.f64 z (-.f64 y x))
(/.f64 (*.f64 z (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (/.f64 (fma.f64 x (+.f64 x y) (pow.f64 y 2)) z))
(*.f64 (/.f64 z (fma.f64 x (+.f64 x y) (pow.f64 y 2))) (-.f64 (pow.f64 y 3) (pow.f64 x 3)))
(*.f64 z (/.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (fma.f64 x (+.f64 x y) (pow.f64 y 2))))
(/.f64 z (/.f64 (fma.f64 x (+.f64 x y) (pow.f64 y 2)) (-.f64 (pow.f64 y 3) (pow.f64 x 3))))
(/.f64 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 x y))
(/.f64 z (/.f64 (+.f64 x y) (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (/.f64 z (+.f64 x y)) (-.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 z (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 x y)))
(/.f64 z (/.f64 1 (-.f64 y x)))
(/.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) z) (fma.f64 x (+.f64 x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (/.f64 (fma.f64 x (+.f64 x y) (pow.f64 y 2)) z))
(*.f64 (/.f64 z (fma.f64 x (+.f64 x y) (pow.f64 y 2))) (-.f64 (pow.f64 y 3) (pow.f64 x 3)))
(*.f64 z (/.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (fma.f64 x (+.f64 x y) (pow.f64 y 2))))
(/.f64 z (/.f64 (fma.f64 x (+.f64 x y) (pow.f64 y 2)) (-.f64 (pow.f64 y 3) (pow.f64 x 3))))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 x y))
(/.f64 z (/.f64 (+.f64 x y) (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (/.f64 z (+.f64 x y)) (-.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 z (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 x y)))
(/.f64 z (/.f64 1 (-.f64 y x)))
(pow.f64 (*.f64 z (-.f64 y x)) 1)
(*.f64 z (-.f64 y x))
(pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 3)
(*.f64 z (-.f64 y x))
(pow.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) 1/3)
(*.f64 z (-.f64 y x))
(pow.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) 2)
(*.f64 z (-.f64 y x))
(sqrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 2))
(*.f64 z (-.f64 y x))
(log.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))
(*.f64 z (-.f64 y x))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 y x)))))
(*.f64 z (-.f64 y x))
(cbrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3))
(*.f64 z (-.f64 y x))
(cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (-.f64 y x) 3)))
(*.f64 z (-.f64 y x))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 y x) 3) (pow.f64 z 3)))
(*.f64 z (-.f64 y x))
(expm1.f64 (log1p.f64 (*.f64 z (-.f64 y x))))
(*.f64 z (-.f64 y x))
(exp.f64 (log.f64 (*.f64 z (-.f64 y x))))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (log.f64 (*.f64 z (-.f64 y x))) 1))
(*.f64 z (-.f64 y x))
(log1p.f64 (expm1.f64 (*.f64 z (-.f64 y x))))
(*.f64 z (-.f64 y x))
(fma.f64 z y (*.f64 z (neg.f64 x)))
(*.f64 z (-.f64 y x))
(fma.f64 y z (*.f64 (neg.f64 x) z))
(*.f64 z (-.f64 y x))

eval19.0ms (0.5%)

Compiler

Compiled 894 to 463 computations (48.2% saved)

prune17.0ms (0.4%)

Pruning

8 alts after pruning (3 fresh and 5 done)

PrunedKeptTotal
New87289
Fresh011
Picked033
Done022
Total87895
Accuracy
100.0%
Counts
95 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (-.f64 y x) z x)
61.2%
(/.f64 z (/.f64 1 (-.f64 y x)))
100.0%
(+.f64 x (*.f64 (-.f64 y x) z))
61.4%
(*.f64 z (-.f64 y x))
27.3%
(*.f64 z (neg.f64 x))
37.7%
(*.f64 y z)
65.1%
(*.f64 x (-.f64 1 z))
40.3%
x
100.0%
(fma.f64 (-.f64 y x) z x)
61.2%
(/.f64 z (/.f64 1 (-.f64 y x)))
100.0%
(+.f64 x (*.f64 (-.f64 y x) z))
61.4%
(*.f64 z (-.f64 y x))
27.3%
(*.f64 z (neg.f64 x))
37.7%
(*.f64 y z)
65.1%
(*.f64 x (-.f64 1 z))
40.3%
x
Compiler

Compiled 124 to 82 computations (33.9% saved)

localize108.0ms (2.8%)

Localize:

Found 2 expressions with local error:

NewAccuracyProgram
100.0%
(/.f64 1 (-.f64 y x))
99.6%
(/.f64 z (/.f64 1 (-.f64 y x)))
Compiler

Compiled 31 to 13 computations (58.1% saved)

series3.0ms (0.1%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
0.0ms
y
@0
(/.f64 1 (-.f64 y x))
0.0ms
x
@inf
(/.f64 1 (-.f64 y x))
0.0ms
y
@inf
(/.f64 1 (-.f64 y x))
0.0ms
x
@0
(/.f64 1 (-.f64 y x))
0.0ms
x
@-inf
(/.f64 1 (-.f64 y x))

rewrite93.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
772×log1p-expm1-u
772×expm1-log1p-u
766×prod-diff
746×log-prod
390×fma-def
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01347
115641
2213141
Stop Event
node limit
Counts
2 → 86
Calls
Call 1
Inputs
(/.f64 z (/.f64 1 (-.f64 y x)))
(/.f64 1 (-.f64 y x))
Outputs
(+.f64 0 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 z y) (*.f64 z (neg.f64 x)))
(+.f64 (*.f64 y z) (*.f64 (neg.f64 x) z))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))) (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (-.f64 y x)))) 1)
(*.f64 z (-.f64 y x))
(*.f64 1 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) z)
(*.f64 (*.f64 z (-.f64 y x)) 1)
(*.f64 (*.f64 z (-.f64 y x)) (log.f64 (exp.f64 1)))
(*.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 2) (cbrt.f64 (*.f64 z (-.f64 y x))))
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (-.f64 y x)))
(*.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) (sqrt.f64 (*.f64 z (-.f64 y x))))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (-.f64 y x)))
(*.f64 (neg.f64 z) (/.f64 1 (/.f64 -1 (-.f64 y x))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y x) -2))) (/.f64 z (/.f64 1 (cbrt.f64 (-.f64 y x)))))
(*.f64 (/.f64 1 (pow.f64 (-.f64 y x) -1/2)) (/.f64 z (pow.f64 (-.f64 y x) -1/2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 1 (-.f64 y x))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 (pow.f64 (-.f64 y x) -2))) (cbrt.f64 (*.f64 z (-.f64 y x))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (-.f64 y x) -1/2)) (/.f64 (cbrt.f64 z) (pow.f64 (-.f64 y x) -1/2)))
(*.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 1 (-.f64 y x))))
(*.f64 (/.f64 (sqrt.f64 z) (cbrt.f64 (pow.f64 (-.f64 y x) -2))) (/.f64 (sqrt.f64 z) (/.f64 1 (cbrt.f64 (-.f64 y x)))))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)))
(*.f64 (*.f64 z (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)))
(*.f64 (/.f64 z -1) (neg.f64 (-.f64 y x)))
(pow.f64 (*.f64 z (-.f64 y x)) 1)
(pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 3)
(pow.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) 2)
(pow.f64 (/.f64 1 (*.f64 z (-.f64 y x))) -1)
(pow.f64 (/.f64 (/.f64 1 (*.f64 z (-.f64 y x))) 1) -1)
(neg.f64 (/.f64 z (/.f64 -1 (-.f64 y x))))
(sqrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 2))
(log.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 y x)))))
(cbrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3))
(cbrt.f64 (/.f64 (pow.f64 z 3) (pow.f64 (-.f64 y x) -3)))
(expm1.f64 (log1p.f64 (*.f64 z (-.f64 y x))))
(exp.f64 (log.f64 (*.f64 z (-.f64 y x))))
(exp.f64 (*.f64 (log.f64 (*.f64 z (-.f64 y x))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 z (-.f64 y x))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z (-.f64 y x)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z (-.f64 y x)))) 2))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 z (-.f64 y x)))) -1))
(log1p.f64 (expm1.f64 (*.f64 z (-.f64 y x))))
(fma.f64 z y (*.f64 z (neg.f64 x)))
(fma.f64 y z (*.f64 (neg.f64 x) z))
(+.f64 0 (/.f64 1 (-.f64 y x)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y x)))) (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y x)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y x))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (-.f64 y x))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (-.f64 y x))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (-.f64 y x)))) 1)
(*.f64 1 (/.f64 1 (-.f64 y x)))
(*.f64 (/.f64 1 (-.f64 y x)) 1)
(*.f64 (/.f64 1 (-.f64 y x)) (log.f64 (exp.f64 1)))
(*.f64 -1 (/.f64 -1 (-.f64 y x)))
(*.f64 (/.f64 1 (cbrt.f64 (-.f64 y x))) (cbrt.f64 (pow.f64 (-.f64 y x) -2)))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 y x) -2)) (/.f64 1 (cbrt.f64 (-.f64 y x))))
(*.f64 (pow.f64 (-.f64 y x) -1/2) (pow.f64 (-.f64 y x) -1/2))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (/.f64 1 (cbrt.f64 (-.f64 y x))))
(*.f64 (/.f64 1 (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 y x) (pow.f64 y 2)))
(*.f64 (/.f64 1 (-.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 y x))
(pow.f64 (-.f64 y x) -1)
(pow.f64 (/.f64 1 (-.f64 y x)) 1)
(pow.f64 (/.f64 1 (cbrt.f64 (-.f64 y x))) 3)
(pow.f64 (pow.f64 (-.f64 y x) -3) 1/3)
(pow.f64 (pow.f64 (-.f64 y x) -1/2) 2)
(pow.f64 (sqrt.f64 (-.f64 y x)) -2)
(pow.f64 (neg.f64 (neg.f64 (-.f64 y x))) -1)
(sqrt.f64 (pow.f64 (-.f64 y x) -2))
(log.f64 (exp.f64 (/.f64 1 (-.f64 y x))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (-.f64 y x)))))
(cbrt.f64 (pow.f64 (-.f64 y x) -3))
(expm1.f64 (log1p.f64 (/.f64 1 (-.f64 y x))))
(exp.f64 (neg.f64 (log.f64 (-.f64 y x))))
(exp.f64 (*.f64 (log.f64 (-.f64 y x)) -1))
(exp.f64 (*.f64 (neg.f64 (log.f64 (-.f64 y x))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 y x)) 1) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 y x)) -1) 1))
(exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (-.f64 y x))) 1) 1))
(exp.f64 (*.f64 (neg.f64 (log.f64 (cbrt.f64 (-.f64 y x)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 y x) -3)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 y x) -1/2)) 2))
(log1p.f64 (expm1.f64 (/.f64 1 (-.f64 y x))))

simplify93.0ms (2.4%)

Algorithm
egg-herbie
Rules
1390×times-frac
1048×fma-def
842×associate-*r/
778×unswap-sqr
710×distribute-lft-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02494287
15734154
217253983
Stop Event
node limit
Counts
146 → 130
Calls
Call 1
Inputs
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 -1 (*.f64 x z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 -1 (*.f64 x z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 -1 (*.f64 x z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(/.f64 -1 x)
(-.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (/.f64 1 x))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) (/.f64 1 x))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (*.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 x 4))))) (/.f64 1 x))
(/.f64 1 y)
(+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (pow.f64 x 2) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 y 3)) (/.f64 (pow.f64 x 3) (pow.f64 y 4)))))
(/.f64 1 y)
(+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (pow.f64 x 2) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 y 3)) (/.f64 (pow.f64 x 3) (pow.f64 y 4)))))
(/.f64 1 y)
(+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (pow.f64 x 2) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 y 3)) (/.f64 (pow.f64 x 3) (pow.f64 y 4)))))
(/.f64 -1 x)
(-.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (/.f64 1 x))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) (/.f64 1 x))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (*.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 x 4))))) (/.f64 1 x))
(/.f64 -1 x)
(-.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (/.f64 1 x))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) (/.f64 1 x))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (*.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 x 4))))) (/.f64 1 x))
(+.f64 0 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 z y) (*.f64 z (neg.f64 x)))
(+.f64 (*.f64 y z) (*.f64 (neg.f64 x) z))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))) (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (-.f64 y x)))) 1)
(*.f64 z (-.f64 y x))
(*.f64 1 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) z)
(*.f64 (*.f64 z (-.f64 y x)) 1)
(*.f64 (*.f64 z (-.f64 y x)) (log.f64 (exp.f64 1)))
(*.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 2) (cbrt.f64 (*.f64 z (-.f64 y x))))
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (-.f64 y x)))
(*.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) (sqrt.f64 (*.f64 z (-.f64 y x))))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (-.f64 y x)))
(*.f64 (neg.f64 z) (/.f64 1 (/.f64 -1 (-.f64 y x))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y x) -2))) (/.f64 z (/.f64 1 (cbrt.f64 (-.f64 y x)))))
(*.f64 (/.f64 1 (pow.f64 (-.f64 y x) -1/2)) (/.f64 z (pow.f64 (-.f64 y x) -1/2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 1 (-.f64 y x))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 (pow.f64 (-.f64 y x) -2))) (cbrt.f64 (*.f64 z (-.f64 y x))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (-.f64 y x) -1/2)) (/.f64 (cbrt.f64 z) (pow.f64 (-.f64 y x) -1/2)))
(*.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 1 (-.f64 y x))))
(*.f64 (/.f64 (sqrt.f64 z) (cbrt.f64 (pow.f64 (-.f64 y x) -2))) (/.f64 (sqrt.f64 z) (/.f64 1 (cbrt.f64 (-.f64 y x)))))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)))
(*.f64 (*.f64 z (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)))
(*.f64 (/.f64 z -1) (neg.f64 (-.f64 y x)))
(pow.f64 (*.f64 z (-.f64 y x)) 1)
(pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 3)
(pow.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) 2)
(pow.f64 (/.f64 1 (*.f64 z (-.f64 y x))) -1)
(pow.f64 (/.f64 (/.f64 1 (*.f64 z (-.f64 y x))) 1) -1)
(neg.f64 (/.f64 z (/.f64 -1 (-.f64 y x))))
(sqrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 2))
(log.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 y x)))))
(cbrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3))
(cbrt.f64 (/.f64 (pow.f64 z 3) (pow.f64 (-.f64 y x) -3)))
(expm1.f64 (log1p.f64 (*.f64 z (-.f64 y x))))
(exp.f64 (log.f64 (*.f64 z (-.f64 y x))))
(exp.f64 (*.f64 (log.f64 (*.f64 z (-.f64 y x))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 z (-.f64 y x))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z (-.f64 y x)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z (-.f64 y x)))) 2))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 z (-.f64 y x)))) -1))
(log1p.f64 (expm1.f64 (*.f64 z (-.f64 y x))))
(fma.f64 z y (*.f64 z (neg.f64 x)))
(fma.f64 y z (*.f64 (neg.f64 x) z))
(+.f64 0 (/.f64 1 (-.f64 y x)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y x)))) (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y x)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y x))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (-.f64 y x))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (-.f64 y x))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (-.f64 y x)))) 1)
(*.f64 1 (/.f64 1 (-.f64 y x)))
(*.f64 (/.f64 1 (-.f64 y x)) 1)
(*.f64 (/.f64 1 (-.f64 y x)) (log.f64 (exp.f64 1)))
(*.f64 -1 (/.f64 -1 (-.f64 y x)))
(*.f64 (/.f64 1 (cbrt.f64 (-.f64 y x))) (cbrt.f64 (pow.f64 (-.f64 y x) -2)))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 y x) -2)) (/.f64 1 (cbrt.f64 (-.f64 y x))))
(*.f64 (pow.f64 (-.f64 y x) -1/2) (pow.f64 (-.f64 y x) -1/2))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (/.f64 1 (cbrt.f64 (-.f64 y x))))
(*.f64 (/.f64 1 (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 y x) (pow.f64 y 2)))
(*.f64 (/.f64 1 (-.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 y x))
(pow.f64 (-.f64 y x) -1)
(pow.f64 (/.f64 1 (-.f64 y x)) 1)
(pow.f64 (/.f64 1 (cbrt.f64 (-.f64 y x))) 3)
(pow.f64 (pow.f64 (-.f64 y x) -3) 1/3)
(pow.f64 (pow.f64 (-.f64 y x) -1/2) 2)
(pow.f64 (sqrt.f64 (-.f64 y x)) -2)
(pow.f64 (neg.f64 (neg.f64 (-.f64 y x))) -1)
(sqrt.f64 (pow.f64 (-.f64 y x) -2))
(log.f64 (exp.f64 (/.f64 1 (-.f64 y x))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (-.f64 y x)))))
(cbrt.f64 (pow.f64 (-.f64 y x) -3))
(expm1.f64 (log1p.f64 (/.f64 1 (-.f64 y x))))
(exp.f64 (neg.f64 (log.f64 (-.f64 y x))))
(exp.f64 (*.f64 (log.f64 (-.f64 y x)) -1))
(exp.f64 (*.f64 (neg.f64 (log.f64 (-.f64 y x))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 y x)) 1) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 y x)) -1) 1))
(exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (-.f64 y x))) 1) 1))
(exp.f64 (*.f64 (neg.f64 (log.f64 (cbrt.f64 (-.f64 y x)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 y x) -3)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 y x) -1/2)) 2))
(log1p.f64 (expm1.f64 (/.f64 1 (-.f64 y x))))
Outputs
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 -1 (*.f64 x z))
(neg.f64 (*.f64 z x))
(*.f64 x (neg.f64 z))
(*.f64 z (neg.f64 x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 -1 (*.f64 x z))
(neg.f64 (*.f64 z x))
(*.f64 x (neg.f64 z))
(*.f64 z (neg.f64 x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(*.f64 -1 (*.f64 x z))
(neg.f64 (*.f64 z x))
(*.f64 x (neg.f64 z))
(*.f64 z (neg.f64 x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 y z))
(*.f64 z (-.f64 y x))
(/.f64 -1 x)
(-.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (/.f64 1 x))
(-.f64 (neg.f64 (/.f64 y (pow.f64 x 2))) (/.f64 1 x))
(fma.f64 -1 (/.f64 y (pow.f64 x 2)) (/.f64 -1 x))
(-.f64 (/.f64 -1 x) (/.f64 y (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) (/.f64 1 x))
(-.f64 (*.f64 -1 (+.f64 (/.f64 y (pow.f64 x 2)) (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) (/.f64 1 x))
(fma.f64 -1 (+.f64 (/.f64 y (pow.f64 x 2)) (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (/.f64 -1 x))
(-.f64 (/.f64 -1 x) (*.f64 (+.f64 (/.f64 y x) 1) (/.f64 y (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (*.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 x 4))))) (/.f64 1 x))
(-.f64 (fma.f64 -1 (/.f64 y (pow.f64 x 2)) (*.f64 -1 (+.f64 (/.f64 (pow.f64 y 2) (pow.f64 x 3)) (/.f64 (pow.f64 y 3) (pow.f64 x 4))))) (/.f64 1 x))
(+.f64 (-.f64 (-.f64 (/.f64 (neg.f64 y) (pow.f64 x 2)) (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (/.f64 (pow.f64 y 3) (pow.f64 x 4))) (/.f64 -1 x))
(-.f64 (-.f64 (/.f64 -1 x) (*.f64 (+.f64 (/.f64 y x) 1) (/.f64 y (pow.f64 x 2)))) (/.f64 (pow.f64 y 3) (pow.f64 x 4)))
(/.f64 1 y)
(+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (pow.f64 x 2) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (*.f64 (+.f64 (/.f64 x y) 1) (/.f64 x (pow.f64 y 2))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 y 3)) (/.f64 (pow.f64 x 3) (pow.f64 y 4)))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (pow.f64 x 3) (pow.f64 y 4)))))
(+.f64 (/.f64 1 y) (+.f64 (*.f64 (+.f64 (/.f64 x y) 1) (/.f64 x (pow.f64 y 2))) (/.f64 (pow.f64 x 3) (pow.f64 y 4))))
(/.f64 1 y)
(+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (pow.f64 x 2) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (*.f64 (+.f64 (/.f64 x y) 1) (/.f64 x (pow.f64 y 2))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 y 3)) (/.f64 (pow.f64 x 3) (pow.f64 y 4)))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (pow.f64 x 3) (pow.f64 y 4)))))
(+.f64 (/.f64 1 y) (+.f64 (*.f64 (+.f64 (/.f64 x y) 1) (/.f64 x (pow.f64 y 2))) (/.f64 (pow.f64 x 3) (pow.f64 y 4))))
(/.f64 1 y)
(+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (pow.f64 x 2) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (*.f64 (+.f64 (/.f64 x y) 1) (/.f64 x (pow.f64 y 2))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 y 3)) (/.f64 (pow.f64 x 3) (pow.f64 y 4)))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (pow.f64 x 3) (pow.f64 y 4)))))
(+.f64 (/.f64 1 y) (+.f64 (*.f64 (+.f64 (/.f64 x y) 1) (/.f64 x (pow.f64 y 2))) (/.f64 (pow.f64 x 3) (pow.f64 y 4))))
(/.f64 -1 x)
(-.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (/.f64 1 x))
(-.f64 (neg.f64 (/.f64 y (pow.f64 x 2))) (/.f64 1 x))
(fma.f64 -1 (/.f64 y (pow.f64 x 2)) (/.f64 -1 x))
(-.f64 (/.f64 -1 x) (/.f64 y (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) (/.f64 1 x))
(-.f64 (*.f64 -1 (+.f64 (/.f64 y (pow.f64 x 2)) (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) (/.f64 1 x))
(fma.f64 -1 (+.f64 (/.f64 y (pow.f64 x 2)) (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (/.f64 -1 x))
(-.f64 (/.f64 -1 x) (*.f64 (+.f64 (/.f64 y x) 1) (/.f64 y (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (*.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 x 4))))) (/.f64 1 x))
(-.f64 (fma.f64 -1 (/.f64 y (pow.f64 x 2)) (*.f64 -1 (+.f64 (/.f64 (pow.f64 y 2) (pow.f64 x 3)) (/.f64 (pow.f64 y 3) (pow.f64 x 4))))) (/.f64 1 x))
(+.f64 (-.f64 (-.f64 (/.f64 (neg.f64 y) (pow.f64 x 2)) (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (/.f64 (pow.f64 y 3) (pow.f64 x 4))) (/.f64 -1 x))
(-.f64 (-.f64 (/.f64 -1 x) (*.f64 (+.f64 (/.f64 y x) 1) (/.f64 y (pow.f64 x 2)))) (/.f64 (pow.f64 y 3) (pow.f64 x 4)))
(/.f64 -1 x)
(-.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (/.f64 1 x))
(-.f64 (neg.f64 (/.f64 y (pow.f64 x 2))) (/.f64 1 x))
(fma.f64 -1 (/.f64 y (pow.f64 x 2)) (/.f64 -1 x))
(-.f64 (/.f64 -1 x) (/.f64 y (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) (/.f64 1 x))
(-.f64 (*.f64 -1 (+.f64 (/.f64 y (pow.f64 x 2)) (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) (/.f64 1 x))
(fma.f64 -1 (+.f64 (/.f64 y (pow.f64 x 2)) (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (/.f64 -1 x))
(-.f64 (/.f64 -1 x) (*.f64 (+.f64 (/.f64 y x) 1) (/.f64 y (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (*.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 x 4))))) (/.f64 1 x))
(-.f64 (fma.f64 -1 (/.f64 y (pow.f64 x 2)) (*.f64 -1 (+.f64 (/.f64 (pow.f64 y 2) (pow.f64 x 3)) (/.f64 (pow.f64 y 3) (pow.f64 x 4))))) (/.f64 1 x))
(+.f64 (-.f64 (-.f64 (/.f64 (neg.f64 y) (pow.f64 x 2)) (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (/.f64 (pow.f64 y 3) (pow.f64 x 4))) (/.f64 -1 x))
(-.f64 (-.f64 (/.f64 -1 x) (*.f64 (+.f64 (/.f64 y x) 1) (/.f64 y (pow.f64 x 2)))) (/.f64 (pow.f64 y 3) (pow.f64 x 4)))
(+.f64 0 (*.f64 z (-.f64 y x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 z y) (*.f64 z (neg.f64 x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 (neg.f64 x) z))
(*.f64 z (-.f64 y x))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))) (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))
(*.f64 z (-.f64 y x))
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (-.f64 y x)))) 1)
(*.f64 z (-.f64 y x))
(*.f64 z (-.f64 y x))
(*.f64 1 (*.f64 z (-.f64 y x)))
(*.f64 z (-.f64 y x))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 (*.f64 z (-.f64 y x)) 1)
(*.f64 z (-.f64 y x))
(*.f64 (*.f64 z (-.f64 y x)) (log.f64 (exp.f64 1)))
(*.f64 z (-.f64 y x))
(*.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 2))
(*.f64 z (-.f64 y x))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 2) (cbrt.f64 (*.f64 z (-.f64 y x))))
(*.f64 z (-.f64 y x))
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (-.f64 y x)))
(*.f64 z (-.f64 y x))
(*.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) (sqrt.f64 (*.f64 z (-.f64 y x))))
(*.f64 z (-.f64 y x))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (-.f64 y x)))
(*.f64 z (-.f64 y x))
(*.f64 (neg.f64 z) (/.f64 1 (/.f64 -1 (-.f64 y x))))
(*.f64 z (-.f64 y x))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y x) -2))) (/.f64 z (/.f64 1 (cbrt.f64 (-.f64 y x)))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y x) -2))) (*.f64 (/.f64 z 1) (cbrt.f64 (-.f64 y x))))
(/.f64 (*.f64 z (cbrt.f64 (-.f64 y x))) (cbrt.f64 (pow.f64 (-.f64 y x) -2)))
(*.f64 z (/.f64 (cbrt.f64 (-.f64 y x)) (cbrt.f64 (pow.f64 (-.f64 y x) -2))))
(*.f64 (/.f64 1 (pow.f64 (-.f64 y x) -1/2)) (/.f64 z (pow.f64 (-.f64 y x) -1/2)))
(*.f64 z (-.f64 y x))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 1 (-.f64 y x))))
(*.f64 z (-.f64 y x))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 (pow.f64 (-.f64 y x) -2))) (cbrt.f64 (*.f64 z (-.f64 y x))))
(*.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 (pow.f64 (-.f64 y x) -2))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (-.f64 y x) -1/2)) (/.f64 (cbrt.f64 z) (pow.f64 (-.f64 y x) -1/2)))
(*.f64 z (-.f64 y x))
(*.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 1 (-.f64 y x))))
(*.f64 z (-.f64 y x))
(*.f64 (/.f64 (sqrt.f64 z) (cbrt.f64 (pow.f64 (-.f64 y x) -2))) (/.f64 (sqrt.f64 z) (/.f64 1 (cbrt.f64 (-.f64 y x)))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y x) -2))) (*.f64 (/.f64 z 1) (cbrt.f64 (-.f64 y x))))
(/.f64 (*.f64 z (cbrt.f64 (-.f64 y x))) (cbrt.f64 (pow.f64 (-.f64 y x) -2)))
(*.f64 z (/.f64 (cbrt.f64 (-.f64 y x)) (cbrt.f64 (pow.f64 (-.f64 y x) -2))))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)))
(*.f64 z (-.f64 y x))
(*.f64 (*.f64 z (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)))
(*.f64 z (-.f64 y x))
(*.f64 (/.f64 z -1) (neg.f64 (-.f64 y x)))
(*.f64 z (-.f64 y x))
(pow.f64 (*.f64 z (-.f64 y x)) 1)
(*.f64 z (-.f64 y x))
(pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 3)
(*.f64 z (-.f64 y x))
(pow.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) 1/3)
(*.f64 z (-.f64 y x))
(pow.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) 2)
(*.f64 z (-.f64 y x))
(pow.f64 (/.f64 1 (*.f64 z (-.f64 y x))) -1)
(*.f64 z (-.f64 y x))
(pow.f64 (/.f64 (/.f64 1 (*.f64 z (-.f64 y x))) 1) -1)
(*.f64 z (-.f64 y x))
(neg.f64 (/.f64 z (/.f64 -1 (-.f64 y x))))
(*.f64 z (-.f64 y x))
(sqrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 2))
(*.f64 z (-.f64 y x))
(log.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))
(*.f64 z (-.f64 y x))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 y x)))))
(*.f64 z (-.f64 y x))
(cbrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3))
(*.f64 z (-.f64 y x))
(cbrt.f64 (/.f64 (pow.f64 z 3) (pow.f64 (-.f64 y x) -3)))
(expm1.f64 (log1p.f64 (*.f64 z (-.f64 y x))))
(*.f64 z (-.f64 y x))
(exp.f64 (log.f64 (*.f64 z (-.f64 y x))))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (log.f64 (*.f64 z (-.f64 y x))) 1))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 z (-.f64 y x))) 1) 1))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z (-.f64 y x)))) 3))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3)) 1/3))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z (-.f64 y x)))) 2))
(*.f64 z (-.f64 y x))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 z (-.f64 y x)))) -1))
(*.f64 z (-.f64 y x))
(log1p.f64 (expm1.f64 (*.f64 z (-.f64 y x))))
(*.f64 z (-.f64 y x))
(fma.f64 z y (*.f64 z (neg.f64 x)))
(*.f64 z (-.f64 y x))
(fma.f64 y z (*.f64 (neg.f64 x) z))
(*.f64 z (-.f64 y x))
(+.f64 0 (/.f64 1 (-.f64 y x)))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y x)))) (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y x)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y x))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y x)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y x))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (/.f64 -1 (-.f64 x y))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (-.f64 y x))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (-.f64 y x))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (-.f64 y x))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (/.f64 -1 (-.f64 x y))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (-.f64 y x)))) 1)
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(*.f64 1 (/.f64 1 (-.f64 y x)))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(*.f64 (/.f64 1 (-.f64 y x)) 1)
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(*.f64 (/.f64 1 (-.f64 y x)) (log.f64 (exp.f64 1)))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(*.f64 -1 (/.f64 -1 (-.f64 y x)))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(*.f64 (/.f64 1 (cbrt.f64 (-.f64 y x))) (cbrt.f64 (pow.f64 (-.f64 y x) -2)))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 y x) -2)) (/.f64 1 (cbrt.f64 (-.f64 y x))))
(/.f64 (cbrt.f64 (pow.f64 (-.f64 y x) -2)) (cbrt.f64 (-.f64 y x)))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 y x) -2)) (/.f64 1 (cbrt.f64 (-.f64 y x))))
(/.f64 (cbrt.f64 (pow.f64 (-.f64 y x) -2)) (cbrt.f64 (-.f64 y x)))
(*.f64 (pow.f64 (-.f64 y x) -1/2) (pow.f64 (-.f64 y x) -1/2))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (/.f64 1 (cbrt.f64 (-.f64 y x))))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(*.f64 (/.f64 1 (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 y x) (pow.f64 y 2)))
(/.f64 (*.f64 1 (fma.f64 x (+.f64 y x) (pow.f64 y 2))) (-.f64 (pow.f64 y 3) (pow.f64 x 3)))
(/.f64 (fma.f64 x (+.f64 y x) (pow.f64 y 2)) (-.f64 (pow.f64 y 3) (pow.f64 x 3)))
(*.f64 (/.f64 1 (-.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 y x))
(*.f64 (+.f64 y x) (/.f64 1 (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(/.f64 (+.f64 y x) (-.f64 (pow.f64 y 2) (pow.f64 x 2)))
(pow.f64 (-.f64 y x) -1)
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(pow.f64 (/.f64 1 (-.f64 y x)) 1)
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(pow.f64 (/.f64 1 (cbrt.f64 (-.f64 y x))) 3)
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(pow.f64 (pow.f64 (-.f64 y x) -3) 1/3)
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(pow.f64 (pow.f64 (-.f64 y x) -1/2) 2)
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(pow.f64 (sqrt.f64 (-.f64 y x)) -2)
(pow.f64 (neg.f64 (neg.f64 (-.f64 y x))) -1)
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(sqrt.f64 (pow.f64 (-.f64 y x) -2))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(log.f64 (exp.f64 (/.f64 1 (-.f64 y x))))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (-.f64 y x)))))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(cbrt.f64 (pow.f64 (-.f64 y x) -3))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(expm1.f64 (log1p.f64 (/.f64 1 (-.f64 y x))))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(exp.f64 (neg.f64 (log.f64 (-.f64 y x))))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(exp.f64 (*.f64 (log.f64 (-.f64 y x)) -1))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(exp.f64 (*.f64 (neg.f64 (log.f64 (-.f64 y x))) 1))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 y x)) 1) -1))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 y x)) -1) 1))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (-.f64 y x))) 1) 1))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(exp.f64 (*.f64 (neg.f64 (log.f64 (cbrt.f64 (-.f64 y x)))) 3))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 y x) -3)) 1/3))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 y x) -1/2)) 2))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))
(log1p.f64 (expm1.f64 (/.f64 1 (-.f64 y x))))
(/.f64 1 (-.f64 y x))
(/.f64 -1 (-.f64 x y))

eval29.0ms (0.7%)

Compiler

Compiled 1590 to 814 computations (48.8% saved)

prune22.0ms (0.6%)

Pruning

8 alts after pruning (2 fresh and 6 done)

PrunedKeptTotal
New1291130
Fresh011
Picked112
Done055
Total1308138
Accuracy
100.0%
Counts
138 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (-.f64 y x) z x)
37.7%
(/.f64 z (/.f64 1 y))
100.0%
(+.f64 x (*.f64 (-.f64 y x) z))
61.4%
(*.f64 z (-.f64 y x))
27.3%
(*.f64 z (neg.f64 x))
37.7%
(*.f64 y z)
65.1%
(*.f64 x (-.f64 1 z))
40.3%
x
100.0%
(fma.f64 (-.f64 y x) z x)
37.7%
(/.f64 z (/.f64 1 y))
100.0%
(+.f64 x (*.f64 (-.f64 y x) z))
61.4%
(*.f64 z (-.f64 y x))
27.3%
(*.f64 z (neg.f64 x))
37.7%
(*.f64 y z)
65.1%
(*.f64 x (-.f64 1 z))
40.3%
x
Compiler

Compiled 120 to 80 computations (33.3% saved)

localize49.0ms (1.3%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
99.6%
(/.f64 z (/.f64 1 y))
Compiler

Compiled 15 to 10 computations (33.3% saved)

series3.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
y
@inf
(/.f64 z (/.f64 1 y))
0.0ms
z
@0
(/.f64 z (/.f64 1 y))
0.0ms
y
@0
(/.f64 z (/.f64 1 y))
0.0ms
z
@-inf
(/.f64 z (/.f64 1 y))
0.0ms
y
@-inf
(/.f64 z (/.f64 1 y))

rewrite74.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
708×unpow-prod-down
478×log-prod
470×cbrt-prod
442×log1p-expm1-u
442×expm1-log1p-u
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01019
110413
2130113
Stop Event
node limit
Counts
1 → 67
Calls
Call 1
Inputs
(/.f64 z (/.f64 1 y))
Outputs
(+.f64 0 (*.f64 z y))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) z)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) z))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) z))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) z))))
(-.f64 (+.f64 1 (*.f64 z y)) 1)
(*.f64 z y)
(*.f64 1 (*.f64 z y))
(*.f64 y z)
(*.f64 (*.f64 z y) 1)
(*.f64 (*.f64 z y) (log.f64 (E.f64)))
(*.f64 (cbrt.f64 (*.f64 z y)) (pow.f64 (cbrt.f64 (*.f64 z y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) 2) (cbrt.f64 (*.f64 z y)))
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) y))
(*.f64 (sqrt.f64 (*.f64 z y)) (sqrt.f64 (*.f64 z y)))
(*.f64 (sqrt.f64 y) (/.f64 z (pow.f64 y -1/2)))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) y))
(*.f64 (neg.f64 z) (/.f64 1 (/.f64 -1 y)))
(*.f64 (pow.f64 (/.f64 1 (cbrt.f64 y)) -2) (/.f64 z (/.f64 1 (cbrt.f64 y))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 1 y)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (cbrt.f64 y) -2)) (cbrt.f64 (*.f64 z y)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 y -1/2)) (/.f64 (cbrt.f64 z) (pow.f64 y -1/2)))
(*.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 1 y)))
(*.f64 (/.f64 (sqrt.f64 z) (pow.f64 (cbrt.f64 y) -2)) (/.f64 (sqrt.f64 z) (/.f64 1 (cbrt.f64 y))))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y))
(*.f64 (*.f64 z (sqrt.f64 y)) (sqrt.f64 y))
(*.f64 (/.f64 z -1) (neg.f64 y))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 z y))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 z y))) 3))
(*.f64 (pow.f64 1 1/3) (*.f64 z y))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (*.f64 z y) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (*.f64 z y) 3)) 1/3))
(*.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 z y) 2) z) 1/3) (cbrt.f64 y))
(*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 z y) (cbrt.f64 (*.f64 z y))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 z y))))
(*.f64 (pow.f64 (pow.f64 (*.f64 z y) 5/2) 1/3) (cbrt.f64 (sqrt.f64 (*.f64 z y))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 1 (*.f64 z y))) 2) -1) (cbrt.f64 (*.f64 z y)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 z) -2) -1) (pow.f64 (/.f64 (/.f64 1 y) (cbrt.f64 z)) -1))
(*.f64 (pow.f64 (pow.f64 z -1/2) -1) (pow.f64 (/.f64 (/.f64 1 y) (sqrt.f64 z)) -1))
(*.f64 (pow.f64 (/.f64 (pow.f64 (cbrt.f64 y) -2) 1) -1) (pow.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) z) -1))
(*.f64 (pow.f64 (/.f64 (pow.f64 (cbrt.f64 y) -2) (pow.f64 (cbrt.f64 z) 2)) -1) (pow.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) (cbrt.f64 z)) -1))
(*.f64 (pow.f64 (/.f64 (pow.f64 (cbrt.f64 y) -2) (sqrt.f64 z)) -1) (pow.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) (sqrt.f64 z)) -1))
(*.f64 (pow.f64 (/.f64 (pow.f64 y -1/2) 1) -1) (pow.f64 (/.f64 (pow.f64 y -1/2) z) -1))
(*.f64 (pow.f64 (/.f64 (pow.f64 y -1/2) (pow.f64 (cbrt.f64 z) 2)) -1) (pow.f64 (/.f64 (pow.f64 y -1/2) (cbrt.f64 z)) -1))
(*.f64 (pow.f64 (/.f64 (pow.f64 y -1/2) (sqrt.f64 z)) -1) (pow.f64 (/.f64 (pow.f64 y -1/2) (sqrt.f64 z)) -1))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 z y) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 z y) 3))))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 z y) 2) z)) (cbrt.f64 y))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (*.f64 z y) (cbrt.f64 (*.f64 z y))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 z y))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 z y) 5/2)) (cbrt.f64 (sqrt.f64 (*.f64 z y))))
(pow.f64 (*.f64 z y) 1)
(pow.f64 (cbrt.f64 (*.f64 z y)) 3)
(pow.f64 (pow.f64 (*.f64 z y) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 z y) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 z y)) 2)
(pow.f64 (/.f64 1 (*.f64 z y)) -1)
(pow.f64 (E.f64) (log.f64 (*.f64 z y)))
(pow.f64 (/.f64 (pow.f64 z 3) (pow.f64 y -3)) 1/3)
(pow.f64 (/.f64 (/.f64 1 (*.f64 z y)) 1) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 z y))) 2)) (cbrt.f64 (log.f64 (*.f64 z y))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 z y)))) (sqrt.f64 (log.f64 (*.f64 z y))))
(neg.f64 (/.f64 z (/.f64 -1 y)))
(sqrt.f64 (pow.f64 (*.f64 z y) 2))
(log.f64 (pow.f64 (exp.f64 y) z))
(cbrt.f64 (pow.f64 (*.f64 z y) 3))
(cbrt.f64 (/.f64 (pow.f64 z 3) (pow.f64 y -3)))
(expm1.f64 (log1p.f64 (*.f64 z y)))
(exp.f64 (log.f64 (*.f64 z y)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z y))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 z y))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z y))) 2))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 z y))) -1))
(log1p.f64 (expm1.f64 (*.f64 z y)))

simplify79.0ms (2%)

Algorithm
egg-herbie
Rules
1120×log-prod
766×unswap-sqr
666×fma-def
654×fma-neg
592×log-div
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02061979
15081838
215061804
363361764
Stop Event
node limit
Counts
91 → 91
Calls
Call 1
Inputs
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(+.f64 0 (*.f64 z y))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) z)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) z))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) z))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) z))))
(-.f64 (+.f64 1 (*.f64 z y)) 1)
(*.f64 z y)
(*.f64 1 (*.f64 z y))
(*.f64 y z)
(*.f64 (*.f64 z y) 1)
(*.f64 (*.f64 z y) (log.f64 (E.f64)))
(*.f64 (cbrt.f64 (*.f64 z y)) (pow.f64 (cbrt.f64 (*.f64 z y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) 2) (cbrt.f64 (*.f64 z y)))
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) y))
(*.f64 (sqrt.f64 (*.f64 z y)) (sqrt.f64 (*.f64 z y)))
(*.f64 (sqrt.f64 y) (/.f64 z (pow.f64 y -1/2)))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) y))
(*.f64 (neg.f64 z) (/.f64 1 (/.f64 -1 y)))
(*.f64 (pow.f64 (/.f64 1 (cbrt.f64 y)) -2) (/.f64 z (/.f64 1 (cbrt.f64 y))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 1 y)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (cbrt.f64 y) -2)) (cbrt.f64 (*.f64 z y)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 y -1/2)) (/.f64 (cbrt.f64 z) (pow.f64 y -1/2)))
(*.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 1 y)))
(*.f64 (/.f64 (sqrt.f64 z) (pow.f64 (cbrt.f64 y) -2)) (/.f64 (sqrt.f64 z) (/.f64 1 (cbrt.f64 y))))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y))
(*.f64 (*.f64 z (sqrt.f64 y)) (sqrt.f64 y))
(*.f64 (/.f64 z -1) (neg.f64 y))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 z y))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 z y))) 3))
(*.f64 (pow.f64 1 1/3) (*.f64 z y))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (*.f64 z y) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (*.f64 z y) 3)) 1/3))
(*.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 z y) 2) z) 1/3) (cbrt.f64 y))
(*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 z y) (cbrt.f64 (*.f64 z y))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 z y))))
(*.f64 (pow.f64 (pow.f64 (*.f64 z y) 5/2) 1/3) (cbrt.f64 (sqrt.f64 (*.f64 z y))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 1 (*.f64 z y))) 2) -1) (cbrt.f64 (*.f64 z y)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 z) -2) -1) (pow.f64 (/.f64 (/.f64 1 y) (cbrt.f64 z)) -1))
(*.f64 (pow.f64 (pow.f64 z -1/2) -1) (pow.f64 (/.f64 (/.f64 1 y) (sqrt.f64 z)) -1))
(*.f64 (pow.f64 (/.f64 (pow.f64 (cbrt.f64 y) -2) 1) -1) (pow.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) z) -1))
(*.f64 (pow.f64 (/.f64 (pow.f64 (cbrt.f64 y) -2) (pow.f64 (cbrt.f64 z) 2)) -1) (pow.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) (cbrt.f64 z)) -1))
(*.f64 (pow.f64 (/.f64 (pow.f64 (cbrt.f64 y) -2) (sqrt.f64 z)) -1) (pow.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) (sqrt.f64 z)) -1))
(*.f64 (pow.f64 (/.f64 (pow.f64 y -1/2) 1) -1) (pow.f64 (/.f64 (pow.f64 y -1/2) z) -1))
(*.f64 (pow.f64 (/.f64 (pow.f64 y -1/2) (pow.f64 (cbrt.f64 z) 2)) -1) (pow.f64 (/.f64 (pow.f64 y -1/2) (cbrt.f64 z)) -1))
(*.f64 (pow.f64 (/.f64 (pow.f64 y -1/2) (sqrt.f64 z)) -1) (pow.f64 (/.f64 (pow.f64 y -1/2) (sqrt.f64 z)) -1))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 z y) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 z y) 3))))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 z y) 2) z)) (cbrt.f64 y))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (*.f64 z y) (cbrt.f64 (*.f64 z y))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 z y))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 z y) 5/2)) (cbrt.f64 (sqrt.f64 (*.f64 z y))))
(pow.f64 (*.f64 z y) 1)
(pow.f64 (cbrt.f64 (*.f64 z y)) 3)
(pow.f64 (pow.f64 (*.f64 z y) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 z y) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 z y)) 2)
(pow.f64 (/.f64 1 (*.f64 z y)) -1)
(pow.f64 (E.f64) (log.f64 (*.f64 z y)))
(pow.f64 (/.f64 (pow.f64 z 3) (pow.f64 y -3)) 1/3)
(pow.f64 (/.f64 (/.f64 1 (*.f64 z y)) 1) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 z y))) 2)) (cbrt.f64 (log.f64 (*.f64 z y))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 z y)))) (sqrt.f64 (log.f64 (*.f64 z y))))
(neg.f64 (/.f64 z (/.f64 -1 y)))
(sqrt.f64 (pow.f64 (*.f64 z y) 2))
(log.f64 (pow.f64 (exp.f64 y) z))
(cbrt.f64 (pow.f64 (*.f64 z y) 3))
(cbrt.f64 (/.f64 (pow.f64 z 3) (pow.f64 y -3)))
(expm1.f64 (log1p.f64 (*.f64 z y)))
(exp.f64 (log.f64 (*.f64 z y)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z y))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 z y))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z y))) 2))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 z y))) -1))
(log1p.f64 (expm1.f64 (*.f64 z y)))
Outputs
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
(+.f64 0 (*.f64 z y))
(*.f64 y z)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) z)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) z))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) z)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) z))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) z))))
(*.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) z))) 3)
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) z))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) z))))
(*.f64 y z)
(-.f64 (+.f64 1 (*.f64 z y)) 1)
(*.f64 y z)
(*.f64 z y)
(*.f64 y z)
(*.f64 1 (*.f64 z y))
(*.f64 y z)
(*.f64 y z)
(*.f64 (*.f64 z y) 1)
(*.f64 y z)
(*.f64 (*.f64 z y) (log.f64 (E.f64)))
(*.f64 y z)
(*.f64 (cbrt.f64 (*.f64 z y)) (pow.f64 (cbrt.f64 (*.f64 z y)) 2))
(*.f64 y z)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) 2) (cbrt.f64 (*.f64 z y)))
(*.f64 y z)
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) y))
(*.f64 y z)
(*.f64 (sqrt.f64 (*.f64 z y)) (sqrt.f64 (*.f64 z y)))
(*.f64 y z)
(*.f64 (sqrt.f64 y) (/.f64 z (pow.f64 y -1/2)))
(*.f64 (/.f64 (sqrt.f64 y) (pow.f64 y -1/2)) z)
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) y))
(*.f64 y z)
(*.f64 (neg.f64 z) (/.f64 1 (/.f64 -1 y)))
(*.f64 y z)
(*.f64 (pow.f64 (/.f64 1 (cbrt.f64 y)) -2) (/.f64 z (/.f64 1 (cbrt.f64 y))))
(*.f64 y z)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 1 y)))
(*.f64 y z)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (cbrt.f64 y) -2)) (cbrt.f64 (*.f64 z y)))
(*.f64 (cbrt.f64 (*.f64 y z)) (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (cbrt.f64 y) -2)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 y z)) (pow.f64 (cbrt.f64 z) 2)) (pow.f64 (cbrt.f64 y) -2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 y -1/2)) (/.f64 (cbrt.f64 z) (pow.f64 y -1/2)))
(/.f64 (/.f64 z (pow.f64 y -1/2)) (pow.f64 y -1/2))
(/.f64 z (*.f64 (pow.f64 y -1/2) (pow.f64 y -1/2)))
(*.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 1 y)))
(*.f64 y z)
(*.f64 (/.f64 (sqrt.f64 z) (pow.f64 (cbrt.f64 y) -2)) (/.f64 (sqrt.f64 z) (/.f64 1 (cbrt.f64 y))))
(*.f64 y z)
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y))
(*.f64 y z)
(*.f64 (*.f64 z (sqrt.f64 y)) (sqrt.f64 y))
(*.f64 y z)
(*.f64 (/.f64 z -1) (neg.f64 y))
(*.f64 y z)
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 z y))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 z y))) 3))
(*.f64 y z)
(*.f64 (pow.f64 1 1/3) (*.f64 z y))
(*.f64 y z)
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (*.f64 z y) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (*.f64 z y) 3)) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 y z) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 y z) 3))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 y z) 3/2)) (cbrt.f64 (pow.f64 (*.f64 y z) 3/2)))
(pow.f64 (pow.f64 (pow.f64 (*.f64 y z) 3/2) 1/6) 4)
(*.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 z y) 2) z) 1/3) (cbrt.f64 y))
(*.f64 (cbrt.f64 y) (cbrt.f64 (*.f64 z (pow.f64 (*.f64 y z) 2))))
(*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 z y) (cbrt.f64 (*.f64 z y))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 z y))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 z (*.f64 y (cbrt.f64 (*.f64 y z)))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 y z))))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 4) 2)) (cbrt.f64 (cbrt.f64 (*.f64 y z))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 8)) (cbrt.f64 (cbrt.f64 (*.f64 y z))))
(*.f64 (pow.f64 (pow.f64 (*.f64 z y) 5/2) 1/3) (cbrt.f64 (sqrt.f64 (*.f64 z y))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 y z) 5/2)) (cbrt.f64 (sqrt.f64 (*.f64 y z))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 1 (*.f64 z y))) 2) -1) (cbrt.f64 (*.f64 z y)))
(*.f64 (cbrt.f64 (*.f64 y z)) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 1 (*.f64 y z))) 2)))
(/.f64 (*.f64 1 (cbrt.f64 (*.f64 y z))) (pow.f64 (cbrt.f64 (/.f64 1 (*.f64 y z))) 2))
(/.f64 (cbrt.f64 (*.f64 y z)) (pow.f64 (cbrt.f64 (/.f64 1 (*.f64 y z))) 2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 z) -2) -1) (pow.f64 (/.f64 (/.f64 1 y) (cbrt.f64 z)) -1))
(*.f64 y z)
(*.f64 (pow.f64 (pow.f64 z -1/2) -1) (pow.f64 (/.f64 (/.f64 1 y) (sqrt.f64 z)) -1))
(*.f64 (/.f64 1 (pow.f64 z -1/2)) (/.f64 1 (/.f64 1 (*.f64 y (sqrt.f64 z)))))
(/.f64 (*.f64 y (sqrt.f64 z)) (pow.f64 z -1/2))
(*.f64 (pow.f64 (/.f64 (pow.f64 (cbrt.f64 y) -2) 1) -1) (pow.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) z) -1))
(*.f64 y z)
(*.f64 (pow.f64 (/.f64 (pow.f64 (cbrt.f64 y) -2) (pow.f64 (cbrt.f64 z) 2)) -1) (pow.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) (cbrt.f64 z)) -1))
(*.f64 y z)
(*.f64 (pow.f64 (/.f64 (pow.f64 (cbrt.f64 y) -2) (sqrt.f64 z)) -1) (pow.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) (sqrt.f64 z)) -1))
(*.f64 y z)
(*.f64 (pow.f64 (/.f64 (pow.f64 y -1/2) 1) -1) (pow.f64 (/.f64 (pow.f64 y -1/2) z) -1))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 y -1/2)) (/.f64 (cbrt.f64 z) (pow.f64 y -1/2)))
(/.f64 (/.f64 z (pow.f64 y -1/2)) (pow.f64 y -1/2))
(/.f64 z (*.f64 (pow.f64 y -1/2) (pow.f64 y -1/2)))
(*.f64 (pow.f64 (/.f64 (pow.f64 y -1/2) (pow.f64 (cbrt.f64 z) 2)) -1) (pow.f64 (/.f64 (pow.f64 y -1/2) (cbrt.f64 z)) -1))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 y -1/2)) (/.f64 (cbrt.f64 z) (pow.f64 y -1/2)))
(/.f64 (/.f64 z (pow.f64 y -1/2)) (pow.f64 y -1/2))
(/.f64 z (*.f64 (pow.f64 y -1/2) (pow.f64 y -1/2)))
(*.f64 (pow.f64 (/.f64 (pow.f64 y -1/2) (sqrt.f64 z)) -1) (pow.f64 (/.f64 (pow.f64 y -1/2) (sqrt.f64 z)) -1))
(pow.f64 (/.f64 (pow.f64 y -1/2) (sqrt.f64 z)) -2)
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 z y) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 z y) 3))))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 y z) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 y z) 3))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 y z) 3/2)) (cbrt.f64 (pow.f64 (*.f64 y z) 3/2)))
(pow.f64 (pow.f64 (pow.f64 (*.f64 y z) 3/2) 1/6) 4)
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 z y) 2) z)) (cbrt.f64 y))
(*.f64 (cbrt.f64 y) (cbrt.f64 (*.f64 z (pow.f64 (*.f64 y z) 2))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (*.f64 z y) (cbrt.f64 (*.f64 z y))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 z y))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 z (*.f64 y (cbrt.f64 (*.f64 y z)))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 y z))))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 4) 2)) (cbrt.f64 (cbrt.f64 (*.f64 y z))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 8)) (cbrt.f64 (cbrt.f64 (*.f64 y z))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 z y) 5/2)) (cbrt.f64 (sqrt.f64 (*.f64 z y))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 y z) 5/2)) (cbrt.f64 (sqrt.f64 (*.f64 y z))))
(pow.f64 (*.f64 z y) 1)
(*.f64 y z)
(pow.f64 (cbrt.f64 (*.f64 z y)) 3)
(*.f64 y z)
(pow.f64 (pow.f64 (*.f64 z y) 2) 1/2)
(*.f64 y z)
(pow.f64 (pow.f64 (*.f64 z y) 3) 1/3)
(*.f64 y z)
(pow.f64 (sqrt.f64 (*.f64 z y)) 2)
(*.f64 y z)
(pow.f64 (/.f64 1 (*.f64 z y)) -1)
(*.f64 y z)
(pow.f64 (E.f64) (log.f64 (*.f64 z y)))
(*.f64 y z)
(pow.f64 (/.f64 (pow.f64 z 3) (pow.f64 y -3)) 1/3)
(cbrt.f64 (/.f64 (pow.f64 z 3) (pow.f64 y -3)))
(pow.f64 (/.f64 (/.f64 1 (*.f64 z y)) 1) -1)
(*.f64 y z)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 z y))) 2)) (cbrt.f64 (log.f64 (*.f64 z y))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 y z))) 2)) (cbrt.f64 (log.f64 (*.f64 y z))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 z y)))) (sqrt.f64 (log.f64 (*.f64 z y))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 y z)))) (sqrt.f64 (log.f64 (*.f64 y z))))
(neg.f64 (/.f64 z (/.f64 -1 y)))
(*.f64 y z)
(sqrt.f64 (pow.f64 (*.f64 z y) 2))
(*.f64 y z)
(log.f64 (pow.f64 (exp.f64 y) z))
(*.f64 y z)
(cbrt.f64 (pow.f64 (*.f64 z y) 3))
(*.f64 y z)
(cbrt.f64 (/.f64 (pow.f64 z 3) (pow.f64 y -3)))
(expm1.f64 (log1p.f64 (*.f64 z y)))
(*.f64 y z)
(exp.f64 (log.f64 (*.f64 z y)))
(*.f64 y z)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z y))) 3))
(*.f64 y z)
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 z y))) 1/3))
(*.f64 y z)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z y))) 2))
(*.f64 y z)
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 z y))) -1))
(*.f64 y z)
(log1p.f64 (expm1.f64 (*.f64 z y)))
(*.f64 y z)

eval83.0ms (2.1%)

Compiler

Compiled 976 to 489 computations (49.9% saved)

prune16.0ms (0.4%)

Pruning

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New91091
Fresh011
Picked011
Done066
Total91899
Accuracy
100.0%
Counts
99 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (-.f64 y x) z x)
37.7%
(/.f64 z (/.f64 1 y))
100.0%
(+.f64 x (*.f64 (-.f64 y x) z))
61.4%
(*.f64 z (-.f64 y x))
27.3%
(*.f64 z (neg.f64 x))
37.7%
(*.f64 y z)
65.1%
(*.f64 x (-.f64 1 z))
40.3%
x
Compiler

Compiled 106 to 60 computations (43.4% saved)

regimes62.0ms (1.6%)

Counts
9 → 1
Calls
Call 1
Inputs
x
(*.f64 y z)
(*.f64 z (neg.f64 x))
(*.f64 x (-.f64 1 z))
(*.f64 z (-.f64 y x))
(/.f64 z (/.f64 1 y))
(+.f64 x (*.f64 (-.f64 y x) z))
(/.f64 z (/.f64 1 (-.f64 y x)))
(fma.f64 (-.f64 y x) z x)
Outputs
(fma.f64 (-.f64 y x) z x)
Calls

4 calls:

40.0ms
z
8.0ms
x
6.0ms
y
5.0ms
(+.f64 x (*.f64 (-.f64 y x) z))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1z
100.0%1(+.f64 x (*.f64 (-.f64 y x) z))
Compiler

Compiled 68 to 35 computations (48.5% saved)

regimes87.0ms (2.2%)

Counts
8 → 1
Calls
Call 1
Inputs
x
(*.f64 y z)
(*.f64 z (neg.f64 x))
(*.f64 x (-.f64 1 z))
(*.f64 z (-.f64 y x))
(/.f64 z (/.f64 1 y))
(+.f64 x (*.f64 (-.f64 y x) z))
(/.f64 z (/.f64 1 (-.f64 y x)))
Outputs
(+.f64 x (*.f64 (-.f64 y x) z))
Calls

4 calls:

68.0ms
z
6.0ms
x
6.0ms
y
5.0ms
(+.f64 x (*.f64 (-.f64 y x) z))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1z
100.0%1(+.f64 x (*.f64 (-.f64 y x) z))
Compiler

Compiled 62 to 34 computations (45.2% saved)

regimes75.0ms (1.9%)

Counts
6 → 3
Calls
Call 1
Inputs
x
(*.f64 y z)
(*.f64 z (neg.f64 x))
(*.f64 x (-.f64 1 z))
(*.f64 z (-.f64 y x))
(/.f64 z (/.f64 1 y))
Outputs
(*.f64 z (-.f64 y x))
(*.f64 x (-.f64 1 z))
(*.f64 z (-.f64 y x))
Calls

3 calls:

40.0ms
x
19.0ms
y
15.0ms
z
Results
AccuracySegmentsBranch
81.8%3x
79.8%3y
84.4%3z
Compiler

Compiled 38 to 23 computations (39.5% saved)

regimes50.0ms (1.3%)

Counts
4 → 3
Calls
Call 1
Inputs
x
(*.f64 y z)
(*.f64 z (neg.f64 x))
(*.f64 x (-.f64 1 z))
Outputs
(*.f64 y z)
(*.f64 x (-.f64 1 z))
(*.f64 y z)
Calls

3 calls:

17.0ms
x
16.0ms
y
15.0ms
z
Results
AccuracySegmentsBranch
79.4%3y
78.4%3x
68.3%3z
Compiler

Compiled 28 to 18 computations (35.7% saved)

regimes74.0ms (1.9%)

Counts
3 → 5
Calls
Call 1
Inputs
x
(*.f64 y z)
(*.f64 z (neg.f64 x))
Outputs
(*.f64 z (neg.f64 x))
(*.f64 y z)
x
(*.f64 y z)
(*.f64 z (neg.f64 x))
Calls

3 calls:

33.0ms
y
20.0ms
x
20.0ms
z
Results
AccuracySegmentsBranch
69.0%5z
61.6%6x
65.2%9y
Compiler

Compiled 23 to 15 computations (34.8% saved)

regimes9.0ms (0.2%)

Counts
2 → 3
Calls
Call 1
Inputs
x
(*.f64 y z)
Outputs
(*.f64 y z)
x
(*.f64 y z)
Calls

1 calls:

9.0ms
z
Results
AccuracySegmentsBranch
61.0%3z
Compiler

Compiled 11 to 7 computations (36.4% saved)

regimes9.0ms (0.2%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

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

3 calls:

3.0ms
x
3.0ms
z
3.0ms
y
Results
AccuracySegmentsBranch
40.3%1y
40.3%1x
40.3%1z
Compiler

Compiled 16 to 12 computations (25% saved)

bsearch35.0ms (0.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
16.0ms
3.007660109099454e-93
3.602901707073341e-84
19.0ms
-1.852636620685397e-5
-4.088770205251195e-17
Results
31.0ms304×body256valid
Compiler

Compiled 358 to 258 computations (27.9% saved)

bsearch26.0ms (0.7%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
16.0ms
1.3140016011928563e+20
1.909816375118173e+25
10.0ms
-2.5746125692219336e+168
-3.535615559685137e+167
Results
20.0ms207×body256valid
3.0ms33×body256infinite
Compiler

Compiled 256 to 191 computations (25.4% saved)

bsearch67.0ms (1.7%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
12.0ms
3.479870225649395e+63
7.315560749917931e+64
17.0ms
3.007660109099454e-93
3.602901707073341e-84
20.0ms
-1.852636620685397e-5
-4.088770205251195e-17
17.0ms
-2.3891379064538295e+171
-1.555001041730465e+166
Results
52.0ms490×body256valid
7.0ms70×body256infinite
Compiler

Compiled 484 to 358 computations (26% saved)

bsearch37.0ms (0.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
16.0ms
3.007660109099454e-93
3.602901707073341e-84
20.0ms
-1.852636620685397e-5
-4.088770205251195e-17
Results
33.0ms304×body256valid
Compiler

Compiled 244 to 182 computations (25.4% saved)

simplify11.0ms (0.3%)

Algorithm
egg-herbie
Rules
16×*-commutative
12×+-commutative
10×sub-neg
neg-mul-1
if-if-or-not
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
053357
183357
294357
3100357
4102357
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(fma.f64 (-.f64 y x) z x)
(+.f64 x (*.f64 (-.f64 y x) z))
(if (<=.f64 z -8878048987794933/9444732965739290427392) (*.f64 z (-.f64 y x)) (if (<=.f64 z 5686851884435831/2187250724783011924372502227117621365353169430893212436425770606409952999199375923223513177023053824) (*.f64 x (-.f64 1 z)) (*.f64 z (-.f64 y x))))
(if (<=.f64 y -360000000000000024374087888738679169048054415217178867329180333784685934005906251520338758811313988863264998693200660992246167450524377861258621417378328047293904715776) (*.f64 y z) (if (<=.f64 y 2100000000000000125829120) (*.f64 x (-.f64 1 z)) (*.f64 y z)))
(if (<=.f64 z -6299999999999999667119917021021971615280942602297626863999701159240972684979762003302887513313498072188476057521247108358597212790240138433622356158709552455424931790848) (*.f64 z (neg.f64 x)) (if (<=.f64 z -8160249282398747/151115727451828646838272) (*.f64 y z) (if (<=.f64 z 3827688768370271/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) x (if (<=.f64 z 12999999999999999838714955923636283878810902511598638411286577152) (*.f64 y z) (*.f64 z (neg.f64 x))))))
(if (<=.f64 z -6989102394647075/9444732965739290427392) (*.f64 y z) (if (<=.f64 z 3827688768370271/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) x (*.f64 y z)))
x
Outputs
(fma.f64 (-.f64 y x) z x)
(+.f64 x (*.f64 (-.f64 y x) z))
(if (<=.f64 z -8878048987794933/9444732965739290427392) (*.f64 z (-.f64 y x)) (if (<=.f64 z 5686851884435831/2187250724783011924372502227117621365353169430893212436425770606409952999199375923223513177023053824) (*.f64 x (-.f64 1 z)) (*.f64 z (-.f64 y x))))
(if (or (<=.f64 z -8878048987794933/9444732965739290427392) (not (<=.f64 z 5686851884435831/2187250724783011924372502227117621365353169430893212436425770606409952999199375923223513177023053824))) (*.f64 (-.f64 y x) z) (*.f64 x (-.f64 1 z)))
(if (<=.f64 y -360000000000000024374087888738679169048054415217178867329180333784685934005906251520338758811313988863264998693200660992246167450524377861258621417378328047293904715776) (*.f64 y z) (if (<=.f64 y 2100000000000000125829120) (*.f64 x (-.f64 1 z)) (*.f64 y z)))
(if (or (<=.f64 y -360000000000000024374087888738679169048054415217178867329180333784685934005906251520338758811313988863264998693200660992246167450524377861258621417378328047293904715776) (not (<=.f64 y 2100000000000000125829120))) (*.f64 y z) (*.f64 x (-.f64 1 z)))
(if (<=.f64 z -6299999999999999667119917021021971615280942602297626863999701159240972684979762003302887513313498072188476057521247108358597212790240138433622356158709552455424931790848) (*.f64 z (neg.f64 x)) (if (<=.f64 z -8160249282398747/151115727451828646838272) (*.f64 y z) (if (<=.f64 z 3827688768370271/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) x (if (<=.f64 z 12999999999999999838714955923636283878810902511598638411286577152) (*.f64 y z) (*.f64 z (neg.f64 x))))))
(if (<=.f64 z -6299999999999999667119917021021971615280942602297626863999701159240972684979762003302887513313498072188476057521247108358597212790240138433622356158709552455424931790848) (*.f64 x (neg.f64 z)) (if (<=.f64 z -8160249282398747/151115727451828646838272) (*.f64 y z) (if (<=.f64 z 3827688768370271/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) x (if (<=.f64 z 12999999999999999838714955923636283878810902511598638411286577152) (*.f64 y z) (*.f64 x (neg.f64 z))))))
(if (<=.f64 z -6989102394647075/9444732965739290427392) (*.f64 y z) (if (<=.f64 z 3827688768370271/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) x (*.f64 y z)))
(if (or (<=.f64 z -6989102394647075/9444732965739290427392) (not (<=.f64 z 3827688768370271/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912))) (*.f64 y z) x)
x
Compiler

Compiled 115 to 72 computations (37.4% saved)

soundness494.0ms (12.6%)

Rules
2166×fma-def
1754×fma-def
896×fma-def
860×fma-neg
810×log-prod
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
036377
178321
2237317
3843317
41878317
53213317
63517317
73549317
83549317
94184317
104184317
02405952
15545105
217375014
373505014
01602497
13422290
29912215
348412167
Stop Event
node limit
node limit
saturated
Compiler

Compiled 64 to 34 computations (46.9% saved)

end0.0ms (0%)

preprocess65.0ms (1.7%)

Compiler

Compiled 214 to 110 computations (48.6% saved)

Profiling

Loading profile data...