Details

Time bar (total: 18.3s)

analyze516.0ms (2.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
6.2%93.6%0.2%9
9.4%90.4%0.2%10
12.5%85.6%1.9%11
17.2%79.4%3.4%12
Compiler

Compiled 14 to 9 computations (35.7% saved)

sample1.3s (7.3%)

Results
898.0ms8256×body256valid
426.0ms3913×body256invalid

preprocess70.0ms (0.4%)

Algorithm
egg-herbie
Rules
832×unsub-neg_binary64
438×+-commutative_binary64
318×associate--r-_binary64
308×distribute-rgt-in_binary64
286×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02991
15677
216277
360877
4257777
5431677
6712177
044
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
3
Call 2
Inputs
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(+.f64 y (*.f64 (-.f64 x z) (-.f64 t y)))
(+.f64 z (*.f64 (-.f64 y x) (-.f64 t z)))
(+.f64 t (*.f64 (-.f64 y z) (-.f64 x t)))
(+.f64 x (*.f64 (-.f64 z y) (-.f64 t x)))
(+.f64 x (*.f64 (-.f64 t z) (-.f64 y x)))
(+.f64 x (*.f64 (-.f64 y t) (-.f64 z x)))
Outputs
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 y (*.f64 (-.f64 x z) (-.f64 t y)))
(fma.f64 (-.f64 x z) (-.f64 t y) y)
(+.f64 z (*.f64 (-.f64 y x) (-.f64 t z)))
(fma.f64 (-.f64 y x) (-.f64 t z) z)
(+.f64 t (*.f64 (-.f64 y z) (-.f64 x t)))
(fma.f64 (-.f64 y z) (-.f64 x t) t)
(+.f64 x (*.f64 (-.f64 z y) (-.f64 t x)))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 z y)))
(fma.f64 (-.f64 t x) (-.f64 z y) x)
(+.f64 x (*.f64 (-.f64 t z) (-.f64 y x)))
(+.f64 x (*.f64 (-.f64 y x) (-.f64 t z)))
(fma.f64 (-.f64 y x) (-.f64 t z) x)
(+.f64 x (*.f64 (-.f64 y t) (-.f64 z x)))
(fma.f64 (-.f64 y t) (-.f64 z x) x)
Compiler

Compiled 17 to 12 computations (29.4% saved)

simplify264.0ms (1.4%)

Algorithm
egg-herbie
Rules
2262×fma-neg_binary64
697×fma-def_binary64
683×unsub-neg_binary64
303×distribute-rgt-in_binary64
280×sub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0913
11511
23711
312311
447111
5155711
6303411
7414811
8518011
9543811
10544911
11544911
12549111
13549111
14549111
15776511
16776511
17776511
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
Outputs
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)

eval1.0ms (0%)

Compiler

Compiled 21 to 9 computations (57.1% saved)

prune1.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.0b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(fma.f64 (-.f64 y z) (-.f64 t x) x)
0.0b
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
Compiler

Compiled 25 to 15 computations (40% saved)

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
0.0b
(*.f64 (-.f64 y z) (-.f64 t x))
Compiler

Compiled 30 to 8 computations (73.3% saved)

series10.0ms (0.1%)

Counts
2 → 96
Calls

24 calls:

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

rewrite72.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
543×log-prod_binary64
520×fma-def_binary64
444×pow-prod-down_binary64
303×pow2_binary64
239×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0923
120821
2323121
Stop Event
node limit
Counts
2 → 99
Calls
Call 1
Inputs
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t (-.f64 y z)) (*.f64 (neg.f64 x) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 t x)) (*.f64 (neg.f64 z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 t x) y) (*.f64 (-.f64 t x) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 t x)) (-.f64 y z))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 t x)) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 t x)) (-.f64 y z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 t x)) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 y z) (-.f64 t x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) (-.f64 (pow.f64 t 3) (pow.f64 x 3))) (*.f64 (fma.f64 z (+.f64 y z) (*.f64 y y)) (fma.f64 t t (*.f64 x (+.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (pow.f64 t 3) (pow.f64 x 3))) (*.f64 (+.f64 y z) (fma.f64 t t (*.f64 x (+.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) (-.f64 (*.f64 t t) (*.f64 x x))) (*.f64 (fma.f64 z (+.f64 y z) (*.f64 y y)) (+.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 t t) (*.f64 x x))) (*.f64 (+.f64 y z) (+.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 t 3) (pow.f64 x 3)) (-.f64 (pow.f64 y 3) (pow.f64 z 3))) (*.f64 (fma.f64 t t (*.f64 x (+.f64 t x))) (fma.f64 z (+.f64 y z) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 t t) (*.f64 x x)) (-.f64 (pow.f64 y 3) (pow.f64 z 3))) (*.f64 (+.f64 t x) (fma.f64 z (+.f64 y z) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 t 3) (pow.f64 x 3)) (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 (fma.f64 t t (*.f64 x (+.f64 t x))) (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 t t) (*.f64 x x)) (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 (+.f64 t x) (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) (-.f64 t x)) (fma.f64 z (+.f64 y z) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 t 3) (pow.f64 x 3)) (-.f64 y z)) (fma.f64 t t (*.f64 x (+.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 t t) (*.f64 x x)) (-.f64 y z)) (+.f64 t x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y z) (-.f64 (pow.f64 t 3) (pow.f64 x 3))) (fma.f64 t t (*.f64 x (+.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y z) (-.f64 (*.f64 t t) (*.f64 x x))) (+.f64 t x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 t x) (-.f64 (pow.f64 y 3) (pow.f64 z 3))) (fma.f64 z (+.f64 y z) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z))) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (-.f64 t x)) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (-.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (-.f64 t x) (*.f64 (neg.f64 z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) t (*.f64 (-.f64 y z) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (-.f64 y z) (*.f64 (neg.f64 x) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 t x) y (*.f64 (-.f64 t x) (neg.f64 z)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))) (/.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2) (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 y z) (-.f64 t x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 2) (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) (sqrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3)) (/.f64 1 (fma.f64 x x (*.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (-.f64 (*.f64 (-.f64 y z) (-.f64 t x)) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2)) (/.f64 1 (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x x (*.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (-.f64 (*.f64 (-.f64 y z) (-.f64 t x)) x))) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3)) (fma.f64 x x (*.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (-.f64 (*.f64 (-.f64 y z) (-.f64 t x)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3)) (+.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2) (-.f64 (*.f64 x x) (*.f64 x (*.f64 (-.f64 y z) (-.f64 t x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2)) (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3))) (neg.f64 (fma.f64 x x (*.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (-.f64 (*.f64 (-.f64 y z) (-.f64 t x)) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2))) (neg.f64 (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2) (*.f64 x x)) (-.f64 (*.f64 (-.f64 y z) (-.f64 t x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x x (*.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (-.f64 (*.f64 (-.f64 y z) (-.f64 t x)) x))) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 (-.f64 t x)) (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (-.f64 t x)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (-.f64 t x)) (-.f64 y z)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (-.f64 t x)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) (-.f64 t x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 t x) (-.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y z) (-.f64 t x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 2) (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 t x) 2)) (*.f64 (cbrt.f64 (-.f64 t x)) (-.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 y z) 2)) (*.f64 (cbrt.f64 (-.f64 y z)) (-.f64 t x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) (sqrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 t x)) (*.f64 (sqrt.f64 (-.f64 t x)) (-.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) (-.f64 t x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (cbrt.f64 (pow.f64 (-.f64 t x) 2))) (cbrt.f64 (-.f64 t x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (sqrt.f64 (-.f64 t x))) (sqrt.f64 (-.f64 t x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 t x) (cbrt.f64 (pow.f64 (-.f64 y z) 2))) (cbrt.f64 (-.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 t x) (sqrt.f64 (-.f64 y z))) (sqrt.f64 (-.f64 y z)) x)))))

simplify319.0ms (1.7%)

Algorithm
egg-herbie
Rules
2719×fma-neg_binary64
401×unsub-neg_binary64
314×fma-def_binary64
292×associate-+l-_binary64
276×sub-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0391500
11051169
2241935
3740929
41834929
53843929
64481929
74671929
84709929
94709929
105045929
115088929
125088929
137108929
147108929
157108929
Stop Event
saturated
Counts
195 → 125
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 z (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 y (-.f64 t x)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 y (-.f64 t x)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 y (-.f64 t x)) x))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 y (-.f64 t x)) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x)
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
Outputs
(*.f64 -1 (*.f64 z (-.f64 t x)))
(neg.f64 (*.f64 z (-.f64 t x)))
(*.f64 z (neg.f64 (-.f64 t x)))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 y (-.f64 t x))
(*.f64 (-.f64 t x) y)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 y (-.f64 t x))
(*.f64 (-.f64 t x) y)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 y (-.f64 t x))
(*.f64 (-.f64 t x) y)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(neg.f64 (*.f64 z (-.f64 t x)))
(*.f64 z (neg.f64 (-.f64 t x)))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(neg.f64 (*.f64 z (-.f64 t x)))
(*.f64 z (neg.f64 (-.f64 t x)))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 (neg.f64 (-.f64 y z)) x)
(*.f64 x (neg.f64 (-.f64 y z)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 (neg.f64 (-.f64 y z)) x)
(*.f64 x (neg.f64 (-.f64 y z)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 (neg.f64 (-.f64 y z)) x)
(*.f64 x (neg.f64 (-.f64 y z)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 z (-.f64 t x)) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(*.f64 x (+.f64 1 (neg.f64 (-.f64 y z))))
(-.f64 x (*.f64 x (-.f64 y z)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x))
(*.f64 x (+.f64 1 (neg.f64 (-.f64 y z))))
(-.f64 x (*.f64 x (-.f64 y z)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) x)
(fma.f64 -1 (*.f64 z (-.f64 t x)) x)
(fma.f64 (neg.f64 z) (-.f64 t x) x)
(fma.f64 z (fma.f64 -1 t x) x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 y (-.f64 t x)) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 y (-.f64 t x)) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 y (-.f64 t x)) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 y (-.f64 t x))
(*.f64 (-.f64 t x) y)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 y (-.f64 t x))
(*.f64 (-.f64 t x) y)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 y (-.f64 t x)) x)
(fma.f64 y (-.f64 t x) x)
(fma.f64 (-.f64 t x) y x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 -1 (*.f64 z (-.f64 t x)))
(neg.f64 (*.f64 z (-.f64 t x)))
(*.f64 z (neg.f64 (-.f64 t x)))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 -1 (*.f64 z (-.f64 t x)))
(neg.f64 (*.f64 z (-.f64 t x)))
(*.f64 z (neg.f64 (-.f64 t x)))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x)
(*.f64 x (+.f64 1 (neg.f64 (-.f64 y z))))
(-.f64 x (*.f64 x (-.f64 y z)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 x (+.f64 1 (neg.f64 (-.f64 y z)))))
(-.f64 (fma.f64 t (-.f64 y z) x) (*.f64 x (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)

localize9.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 (-.f64 y z) (-.f64 t x) x)
Compiler

Compiled 22 to 7 computations (68.2% saved)

series4.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
y
@inf
(fma.f64 (-.f64 y z) (-.f64 t x) x)
0.0ms
t
@-inf
(fma.f64 (-.f64 y z) (-.f64 t x) x)
0.0ms
x
@-inf
(fma.f64 (-.f64 y z) (-.f64 t x) x)
0.0ms
t
@inf
(fma.f64 (-.f64 y z) (-.f64 t x) x)
0.0ms
y
@-inf
(fma.f64 (-.f64 y z) (-.f64 t x) x)

rewrite56.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
782×prod-diff_binary64
449×log-prod_binary64
341×fma-def_binary64
332×pow-prod-down_binary64
261×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0811
118011
2263611
Stop Event
node limit
Counts
1 → 30
Calls
Call 1
Inputs
(fma.f64 (-.f64 y z) (-.f64 t x) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 y z) (-.f64 t x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (-.f64 y z) (-.f64 t x) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 y z) (-.f64 t x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 2) (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) (sqrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2) (-.f64 (*.f64 x x) (*.f64 (*.f64 (-.f64 y z) (-.f64 t x)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2) (*.f64 x x)) (-.f64 (*.f64 (-.f64 y z) (-.f64 t x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (exp.f64 (*.f64 (-.f64 y z) (-.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (*.f64 (-.f64 y z) (-.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (-.f64 y z) (-.f64 t x))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 1))))))

simplify289.0ms (1.6%)

Algorithm
egg-herbie
Rules
2702×fma-neg_binary64
409×unsub-neg_binary64
318×fma-def_binary64
288×associate-+l-_binary64
286×sub-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
036753
1100569
2239488
3735485
41817485
53817485
64447485
74637485
84675485
94675485
105011485
115067485
125067485
137101485
147101485
157101485
Stop Event
saturated
Counts
78 → 51
Calls
Call 1
Inputs
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 y (-.f64 t x)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 y (-.f64 t x)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 y (-.f64 t x)) x))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 x (*.f64 y (-.f64 t x))))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 y (-.f64 t x)) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x)
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
Outputs
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) x)
(fma.f64 -1 (*.f64 (-.f64 t x) z) x)
(-.f64 x (*.f64 (-.f64 t x) z))
(fma.f64 z (fma.f64 -1 t x) x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 y (-.f64 t x)) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 y (-.f64 t x)) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 y (-.f64 t x)) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 y (-.f64 t x))
(*.f64 (-.f64 t x) y)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 y (-.f64 t x))
(*.f64 (-.f64 t x) y)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 y (-.f64 t x)) x)
(fma.f64 y (-.f64 t x) x)
(fma.f64 (-.f64 t x) y x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 -1 (*.f64 z (-.f64 t x)))
(neg.f64 (*.f64 (-.f64 t x) z))
(*.f64 (-.f64 t x) (neg.f64 z))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 -1 (*.f64 z (-.f64 t x)))
(neg.f64 (*.f64 (-.f64 t x) z))
(*.f64 (-.f64 t x) (neg.f64 z))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 x (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x)
(fma.f64 -1 (*.f64 x (-.f64 y z)) x)
(-.f64 x (*.f64 x (-.f64 y z)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(fma.f64 -1 (*.f64 x (-.f64 y z)) x)
(-.f64 x (*.f64 x (-.f64 y z)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x))
(fma.f64 -1 (*.f64 x (-.f64 y z)) x)
(-.f64 x (*.f64 x (-.f64 y z)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (fma.f64 y (-.f64 t x) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)

eval31.0ms (0.2%)

Compiler

Compiled 2622 to 668 computations (74.5% saved)

prune35.0ms (0.2%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New16412176
Fresh000
Picked101
Done101
Total16612178
Error
0b
Counts
178 → 12
Alt Table
Click to see full alt table
StatusErrorProgram
25.0b
(fma.f64 z (-.f64 x t) x)
34.5b
(/.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2))))
0.0b
(+.f64 x (+.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x))))
28.5b
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
24.2b
(fma.f64 (-.f64 t x) y x)
1.0b
(+.f64 x (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 3))
37.7b
(*.f64 (-.f64 t x) y)
34.4b
(*.f64 t (-.f64 y z))
25.5b
(+.f64 x (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 y z)))
20.7b
(+.f64 x (*.f64 t (-.f64 y z)))
38.7b
(*.f64 z (-.f64 x t))
28.5b
(+.f64 x (*.f64 x (-.f64 z y)))
Compiler

Compiled 332 to 204 computations (38.6% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x)))
0.0b
(*.f64 (-.f64 y z) t)
0.0b
(*.f64 (-.f64 y z) (neg.f64 x))
0.0b
(+.f64 x (+.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x))))
Compiler

Compiled 50 to 10 computations (80% saved)

series22.0ms (0.1%)

Counts
4 → 168
Calls

42 calls:

TimeVariablePointExpression
4.0ms
x
@-inf
(*.f64 (-.f64 y z) (neg.f64 x))
2.0ms
y
@inf
(+.f64 x (+.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x))))
1.0ms
x
@0
(+.f64 x (+.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x))))
1.0ms
y
@0
(+.f64 x (+.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x))))
1.0ms
z
@-inf
(+.f64 x (+.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x))))

rewrite103.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
722×fma-def_binary64
636×log-prod_binary64
401×fma-neg_binary64
224×expm1-udef_binary64
224×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01143
125835
2413835
Stop Event
node limit
Counts
4 → 324
Calls
Call 1
Inputs
(+.f64 x (+.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x))))
(*.f64 (-.f64 y z) (neg.f64 x))
(*.f64 (-.f64 y z) t)
(+.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 y z) (+.f64 x t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 (-.f64 y z) t x) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 (-.f64 y z) (+.f64 x t)))) (/.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (-.f64 x (*.f64 (-.f64 y z) (+.f64 x t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 y z) (+.f64 x t) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)) 2) (cbrt.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)) (sqrt.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 y z) (+.f64 x t)) (fma.f64 (-.f64 y z) (+.f64 x t) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2)) (/.f64 1 (-.f64 x (*.f64 (-.f64 y z) (+.f64 x t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (-.f64 y z) (+.f64 x t)) (fma.f64 (-.f64 y z) (+.f64 x t) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 y z) (+.f64 x t))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 3)) (fma.f64 (*.f64 (-.f64 y z) (+.f64 x t)) (fma.f64 (-.f64 y z) (+.f64 x t) x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 3)) (+.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (-.f64 (*.f64 x x) (*.f64 x (*.f64 (-.f64 y z) (+.f64 x t))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2)) (-.f64 x (*.f64 (-.f64 y z) (+.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 3))) (neg.f64 (fma.f64 (*.f64 (-.f64 y z) (+.f64 x t)) (fma.f64 (-.f64 y z) (+.f64 x t) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2))) (neg.f64 (-.f64 x (*.f64 (-.f64 y z) (+.f64 x t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 (-.f64 y z) t x) 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (fma.f64 (fma.f64 (-.f64 y z) t x) (fma.f64 (-.f64 y z) t x) (-.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2) (*.f64 (fma.f64 (-.f64 y z) t x) (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (*.f64 x x)) (fma.f64 (-.f64 y z) (+.f64 x t) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (fma.f64 (-.f64 y z) t x) (fma.f64 (-.f64 y z) t x) (pow.f64 (*.f64 x (-.f64 y z)) 2)) (fma.f64 (-.f64 y z) (+.f64 x t) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (-.f64 y z) (+.f64 x t)) (fma.f64 (-.f64 y z) (+.f64 x t) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (*.f64 (-.f64 y z) (+.f64 x t))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (fma.f64 (-.f64 y z) t x)) (pow.f64 (exp.f64 x) (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (*.f64 (exp.f64 x) (pow.f64 (exp.f64 t) (-.f64 y z))) (pow.f64 (exp.f64 x) (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (fma.f64 (-.f64 y z) t x)) (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (*.f64 (exp.f64 x) (pow.f64 (exp.f64 t) (-.f64 y z))) (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 y z)) (+.f64 x t)) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (+.f64 x t)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (/.f64 (pow.f64 (exp.f64 t) (-.f64 y z)) (pow.f64 (exp.f64 x) (-.f64 y z))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 y z)) (+.f64 x t)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (+.f64 x t)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (/.f64 (pow.f64 (exp.f64 t) (-.f64 y z)) (pow.f64 (exp.f64 x) (-.f64 y z))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 (-.f64 y z)) (+.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (+.f64 x t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (+.f64 x t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (/.f64 (pow.f64 (exp.f64 t) (-.f64 y z)) (pow.f64 (exp.f64 x) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (/.f64 (pow.f64 (exp.f64 t) (-.f64 y z)) (pow.f64 (exp.f64 x) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) (-.f64 y z)) (exp.f64 (fma.f64 (-.f64 y z) t x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z)))) (exp.f64 (fma.f64 (-.f64 y z) t x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) (-.f64 y z)) (*.f64 (exp.f64 x) (pow.f64 (exp.f64 t) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z)))) (*.f64 (exp.f64 x) (pow.f64 (exp.f64 t) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (+.f64 x t)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 t) (-.f64 y z)) (pow.f64 (exp.f64 x) (-.f64 y z))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (-.f64 y z)) (+.f64 x t)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (+.f64 x t)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 t) (-.f64 y z)) (pow.f64 (exp.f64 x) (-.f64 y z))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (exp.f64 x) (pow.f64 (exp.f64 t) (-.f64 y z))) (pow.f64 (exp.f64 x) (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (-.f64 y z) t x)) (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (exp.f64 x) (pow.f64 (exp.f64 t) (-.f64 y z))) (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y z) (+.f64 x t) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x -1 (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) x (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) t (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) (+.f64 x t) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) t) 1 (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (-.f64 y z)) 1 (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y z) t) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (-.f64 y z)) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y z) (+.f64 x t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (-.f64 y z) t x) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (/.f64 1 (*.f64 (-.f64 y z) (+.f64 x t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (*.f64 (cbrt.f64 (-.f64 y z)) x) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (*.f64 (cbrt.f64 (-.f64 y z)) (+.f64 x t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (*.f64 (cbrt.f64 (-.f64 y z)) t) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (neg.f64 (cbrt.f64 x)) (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (-.f64 y z)) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (cbrt.f64 (*.f64 x (-.f64 y z))) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t t)) (*.f64 (cbrt.f64 t) (-.f64 y z)) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 2) (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) 2) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) 2) (cbrt.f64 (*.f64 (-.f64 y z) t)) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) x) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) (+.f64 x t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) t) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (neg.f64 (sqrt.f64 x)) (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (-.f64 y z)) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (-.f64 y z))) (sqrt.f64 (*.f64 x (-.f64 y z))) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) (-.f64 y z)) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (sqrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 (-.f64 y z) t)) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y z) t) 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (/.f64 1 (-.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (*.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z))))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 x (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 x (-.f64 y z)) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x t) (-.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 y z) t x) 1 (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 y z) t x)) (cbrt.f64 (fma.f64 (-.f64 y z) t x))) (cbrt.f64 (fma.f64 (-.f64 y z) t x)) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (-.f64 y z) t x)) (sqrt.f64 (fma.f64 (-.f64 y z) t x)) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 x (-.f64 y z)))) (-.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 x (-.f64 y z)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) -1) x (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (cbrt.f64 (-.f64 y z)) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (-.f64 y z))) (sqrt.f64 (-.f64 y z)) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (cbrt.f64 (*.f64 t t))) (cbrt.f64 t) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (sqrt.f64 t)) (sqrt.f64 t) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (cbrt.f64 (-.f64 y z)) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 (-.f64 y z))) (sqrt.f64 (-.f64 y z)) (fma.f64 x (-.f64 y z) x))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (*.f64 (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (*.f64 x (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z))) (cbrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (-.f64 y z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) x) (fma.f64 y y (*.f64 z (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) x) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (pow.f64 y 3) (pow.f64 z 3))) (fma.f64 y y (*.f64 z (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (*.f64 y y) (*.f64 z z))) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (-.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (-.f64 y z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (-.f64 y z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 x (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 (neg.f64 z) x))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y t) (*.f64 (neg.f64 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t y) (*.f64 t (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 t) (-.f64 y z))) (cbrt.f64 (pow.f64 (exp.f64 t) (-.f64 y z))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 t) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 t) (-.f64 y z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 t) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 y z) t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) t) (fma.f64 y y (*.f64 z (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) t) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 t (-.f64 (pow.f64 y 3) (pow.f64 z 3))) (fma.f64 y y (*.f64 z (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 t (-.f64 (*.f64 y y) (*.f64 z z))) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 y z) t) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y z) t) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 y z) t) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 t) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 y z) t) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 y z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 y z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 y z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 y z) t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y t (*.f64 (neg.f64 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t y (*.f64 t (neg.f64 z)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 y z) (+.f64 x t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 (-.f64 y z) t) 2) (*.f64 (-.f64 y z) (+.f64 x t))) (/.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2) (*.f64 (-.f64 y z) (+.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y z) (+.f64 x t))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (/.f64 1 (*.f64 (-.f64 y z) (+.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (*.f64 (cbrt.f64 (-.f64 y z)) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 2) (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (sqrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y z) t) 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (/.f64 1 (-.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (*.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x t) (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 x (-.f64 y z)))) (-.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (*.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z)))) (+.f64 (pow.f64 (*.f64 (-.f64 y z) t) 3) (pow.f64 (*.f64 x (-.f64 y z)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 (-.f64 y z) (+.f64 x t)) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (*.f64 (-.f64 y z) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y z) t) 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (-.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (*.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y z) t) 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (+.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2) (-.f64 (pow.f64 (*.f64 (-.f64 y z) t) 2) (*.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2)) (neg.f64 (*.f64 (-.f64 y z) (+.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y z) t) 3) (pow.f64 (*.f64 x (-.f64 y z)) 3))) (neg.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (*.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2) (pow.f64 (*.f64 (-.f64 y z) t) 2)) (-.f64 (*.f64 x (-.f64 y z)) (*.f64 (-.f64 y z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) (+.f64 x t)) (fma.f64 y y (*.f64 z (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 x t)) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (*.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z)))) (+.f64 (pow.f64 (*.f64 (-.f64 y z) t) 3) (pow.f64 (*.f64 x (-.f64 y z)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (-.f64 y z) (+.f64 x t)) (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (-.f64 y z)) (+.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (+.f64 x t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 t) (-.f64 y z)) (pow.f64 (exp.f64 x) (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) t))) (pow.f64 (exp.f64 x) (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 t) (-.f64 y z)) (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) t))) (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) t))) (pow.f64 (exp.f64 x) (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 t) (-.f64 y z)) (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) t))) (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z)))) (pow.f64 (exp.f64 t) (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) (-.f64 y z)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z)))) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 y z) (+.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 y z) (+.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 y z) (+.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) x (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) t (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) t (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) t (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) (+.f64 x t) (fma.f64 x (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) (+.f64 x t) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) (+.f64 x t) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (-.f64 y z) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (-.f64 y z) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (-.f64 y z) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) t) 1 (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) t) 1 (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) t) 1 (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (-.f64 y z)) 1 (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 1 (fma.f64 x (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 1 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y z) t) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y z) t) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (-.f64 y z)) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y z) (+.f64 x t)) (fma.f64 x (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y z) (+.f64 x t)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y z) (+.f64 x t)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (/.f64 1 (*.f64 (-.f64 y z) (+.f64 x t))) (fma.f64 x (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (/.f64 1 (*.f64 (-.f64 y z) (+.f64 x t))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (/.f64 1 (*.f64 (-.f64 y z) (+.f64 x t))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (*.f64 (cbrt.f64 (-.f64 y z)) x) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (*.f64 (cbrt.f64 (-.f64 y z)) (+.f64 x t)) (fma.f64 x (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (*.f64 (cbrt.f64 (-.f64 y z)) (+.f64 x t)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (*.f64 (cbrt.f64 (-.f64 y z)) (+.f64 x t)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (*.f64 (cbrt.f64 (-.f64 y z)) t) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (*.f64 (cbrt.f64 (-.f64 y z)) t) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (*.f64 (cbrt.f64 (-.f64 y z)) t) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (-.f64 y z)) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (cbrt.f64 (*.f64 x (-.f64 y z))) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t t)) (*.f64 (cbrt.f64 t) (-.f64 y z)) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t t)) (*.f64 (cbrt.f64 t) (-.f64 y z)) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t t)) (*.f64 (cbrt.f64 t) (-.f64 y z)) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 2) (fma.f64 x (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 2) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 2) (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (fma.f64 x (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 2) (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) 2) (cbrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) 2) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) 2) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) 2) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) 2) (cbrt.f64 (*.f64 (-.f64 y z) t)) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) 2) (cbrt.f64 (*.f64 (-.f64 y z) t)) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) t)) 2) (cbrt.f64 (*.f64 (-.f64 y z) t)) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) x) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) (+.f64 x t)) (fma.f64 x (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) (+.f64 x t)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) (+.f64 x t)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) t) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) t) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) t) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (-.f64 y z)) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (-.f64 y z))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) (-.f64 y z)) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) (-.f64 y z)) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) (-.f64 y z)) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (sqrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (fma.f64 x (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (sqrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (sqrt.f64 (*.f64 (-.f64 y z) (+.f64 x t))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 (-.f64 y z) t)) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 (-.f64 y z) t)) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 (-.f64 y z) t)) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y z) t) 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (/.f64 1 (-.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (*.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z))))) (fma.f64 x (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y z) t) 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (/.f64 1 (-.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (*.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y z) t) 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (/.f64 1 (-.f64 (pow.f64 (*.f64 (-.f64 y z) (+.f64 x t)) 2) (*.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z))))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 x (-.f64 y z)) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x t) (-.f64 y z) (fma.f64 x (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x t) (-.f64 y z) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x t) (-.f64 y z) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 x (-.f64 y z)))) (-.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 x (-.f64 y z)))) (fma.f64 x (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 x (-.f64 y z)))) (-.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 x (-.f64 y z)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 x (-.f64 y z)))) (-.f64 (sqrt.f64 (*.f64 (-.f64 y z) t)) (sqrt.f64 (*.f64 x (-.f64 y z)))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) -1) x (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (cbrt.f64 (-.f64 y z)) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (-.f64 y z))) (sqrt.f64 (-.f64 y z)) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (cbrt.f64 (*.f64 t t))) (cbrt.f64 t) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (cbrt.f64 (*.f64 t t))) (cbrt.f64 t) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (cbrt.f64 (*.f64 t t))) (cbrt.f64 t) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (sqrt.f64 t)) (sqrt.f64 t) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (sqrt.f64 t)) (sqrt.f64 t) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (cbrt.f64 (-.f64 y z)) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (cbrt.f64 (-.f64 y z)) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (cbrt.f64 (-.f64 y z)) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 (-.f64 y z))) (sqrt.f64 (-.f64 y z)) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 (-.f64 y z))) (sqrt.f64 (-.f64 y z)) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))) (cbrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 (-.f64 y z))) (sqrt.f64 (-.f64 y z)) (*.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z)))))))))

simplify224.0ms (1.2%)

Algorithm
egg-herbie
Rules
2390×fma-neg_binary64
863×fma-def_binary64
533×associate-+l-_binary64
525×sub-neg_binary64
492×unsub-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0702191
12101843
25391481
315201409
438741409
547231409
649621409
749741409
849741409
956091409
1059691409
1159691409
Stop Event
node limit
Counts
492 → 370
Calls
Call 1
Inputs
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (+.f64 (*.f64 z x) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (+.f64 (*.f64 z x) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (+.f64 (*.f64 z x) x)))
(*.f64 (+.f64 t (*.f64 -1 x)) y)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) x)))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y)) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y)) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y)) x)))
(+.f64 (*.f64 y t) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x)
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 y t)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 y t)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 y t)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (*.f64 z x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (*.f64 z x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (*.f64 z x)))
(*.f64 (+.f64 t (*.f64 -1 x)) y)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 (+.f64 t (*.f64 -1 x)) y)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 (+.f64 t (*.f64 -1 x)) y)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 (+.f64 t (*.f64 -1 x)) y)))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
Outputs
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x)
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x))
(*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x)
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y (+.f64 1 z)) x)) (*.f64 t (-.f64 y z)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x x))
(+.f64 x (*.f64 z (-.f64 x t)))
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (+.f64 (*.f64 z x) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (+.f64 (*.f64 z x) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (+.f64 (*.f64 z x) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 (+.f64 t (*.f64 -1 x)) y)
(*.f64 y (+.f64 t (neg.f64 x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))
(*.f64 y (+.f64 t (neg.f64 x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 y t) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 y t (fma.f64 -1 (*.f64 y x) x))
(fma.f64 y (-.f64 t x) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x)
(*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x)
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 t (-.f64 y z)) (+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (neg.f64 (-.f64 y z))) x))
(fma.f64 (neg.f64 (-.f64 y z)) x (fma.f64 t (-.f64 y z) x))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 t z))
(*.f64 (neg.f64 t) z)
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(*.f64 y t)
(*.f64 t y)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(*.f64 y t)
(*.f64 t y)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(*.f64 y t)
(*.f64 t y)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(*.f64 -1 (*.f64 t z))
(*.f64 (neg.f64 t) z)
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(*.f64 -1 (*.f64 t z))
(*.f64 (neg.f64 t) z)
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (*.f64 z x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (*.f64 z x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (*.f64 z x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(*.f64 (+.f64 t (*.f64 -1 x)) y)
(*.f64 y (+.f64 t (neg.f64 x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 (+.f64 t (*.f64 -1 x)) y)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 (+.f64 t (*.f64 -1 x)) y)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 (+.f64 t (*.f64 -1 x)) y)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))
(*.f64 y (+.f64 t (neg.f64 x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(*.f64 y (+.f64 t (neg.f64 x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 y z) x)) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(*.f64 -1 (*.f64 (-.f64 y z) x))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (+.f64 z (neg.f64 y)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 y z) x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 y z) (-.f64 t x))

localize6.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 t (-.f64 y z))
Compiler

Compiled 15 to 6 computations (60% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

9 calls:

TimeVariablePointExpression
0.0ms
z
@inf
(*.f64 t (-.f64 y z))
0.0ms
t
@0
(*.f64 t (-.f64 y z))
0.0ms
y
@inf
(*.f64 t (-.f64 y z))
0.0ms
y
@-inf
(*.f64 t (-.f64 y z))
0.0ms
t
@inf
(*.f64 t (-.f64 y z))

rewrite51.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
725×pow1_binary64
672×add-log-exp_binary64
672×log1p-expm1-u_binary64
672×expm1-log1p-u_binary64
657×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
11297
217847
Stop Event
node limit
Counts
1 → 19
Calls
Call 1
Inputs
(*.f64 t (-.f64 y z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y t) (*.f64 (neg.f64 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t y) (*.f64 t (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 t (-.f64 y z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) t) (fma.f64 y y (*.f64 z (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) t) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 t (-.f64 (pow.f64 y 3) (pow.f64 z 3))) (fma.f64 y y (*.f64 z (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 t (-.f64 (*.f64 y y) (*.f64 z z))) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 t (-.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 t (-.f64 y z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 t (-.f64 y z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 t (-.f64 y z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 t (-.f64 y z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 t) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 t (-.f64 y z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 t 3) (pow.f64 (-.f64 y z) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 y z) 3) (pow.f64 t 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 t (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 t (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 t (-.f64 y z))))))))

simplify27.0ms (0.2%)

Algorithm
egg-herbie
Rules
217×fma-def_binary64
132×fma-neg_binary64
43×cancel-sign-sub-inv_binary64
25×distribute-rgt-in_binary64
25×sub-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
09228
117210
235156
358156
486156
5138156
6254156
7410156
8579156
9733156
10747156
Stop Event
saturated
Counts
43 → 25
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 y t)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 y t)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 y t)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
Outputs
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(*.f64 y t)
(*.f64 t y)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(*.f64 y t)
(*.f64 t y)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(*.f64 y t)
(*.f64 t y)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y t))
(fma.f64 -1 (*.f64 t z) (*.f64 t y))
(-.f64 (*.f64 t y) (*.f64 t z))
(*.f64 t (-.f64 y z))

localize5.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (-.f64 t x) y)
Compiler

Compiled 15 to 6 computations (60% saved)

series4.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
y
@0
(*.f64 (-.f64 t x) y)
0.0ms
t
@0
(*.f64 (-.f64 t x) y)
0.0ms
t
@-inf
(*.f64 (-.f64 t x) y)
0.0ms
y
@inf
(*.f64 (-.f64 t x) y)
0.0ms
t
@inf
(*.f64 (-.f64 t x) y)

rewrite53.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
725×pow1_binary64
672×add-log-exp_binary64
672×log1p-expm1-u_binary64
672×expm1-log1p-u_binary64
657×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
11297
217847
Stop Event
node limit
Counts
1 → 19
Calls
Call 1
Inputs
(*.f64 (-.f64 t x) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t y) (*.f64 (neg.f64 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y t) (*.f64 y (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (-.f64 t x) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 t 3) (pow.f64 x 3)) y) (fma.f64 t t (*.f64 x (+.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 t t) (*.f64 x x)) y) (+.f64 t x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (pow.f64 t 3) (pow.f64 x 3))) (fma.f64 t t (*.f64 x (+.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (*.f64 t t) (*.f64 x x))) (+.f64 t x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 t x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 t x) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 t x) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 t x) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 t x) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 t x) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 t x) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (-.f64 t x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 t x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 t x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 t x) y)))))))

simplify30.0ms (0.2%)

Algorithm
egg-herbie
Rules
202×fma-def_binary64
124×fma-neg_binary64
43×cancel-sign-sub-inv_binary64
35×distribute-rgt-in_binary64
26×sub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
011330
122240
240240
361240
492240
5158240
6287240
7420240
8598240
9736240
10748240
Stop Event
saturated
Counts
55 → 25
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(*.f64 y t)
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(*.f64 y t)
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(*.f64 y t)
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(*.f64 y (-.f64 t x))
(*.f64 y (-.f64 t x))
(*.f64 y (-.f64 t x))
(*.f64 y (-.f64 t x))
(*.f64 y (-.f64 t x))
(*.f64 y (-.f64 t x))
(*.f64 y (-.f64 t x))
(*.f64 y (-.f64 t x))
(*.f64 y (-.f64 t x))
(*.f64 y (-.f64 t x))
(*.f64 y (-.f64 t x))
Outputs
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(*.f64 y t)
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(*.f64 y t)
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(*.f64 y t)
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(*.f64 y (-.f64 t x))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(fma.f64 y t (neg.f64 (*.f64 y x)))
(*.f64 y (-.f64 t x))
(fma.f64 y t (neg.f64 (*.f64 y x)))

localize7.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (*.f64 x (-.f64 z y)))
0.0b
(*.f64 x (-.f64 z y))
Compiler

Compiled 22 to 7 computations (68.2% saved)

series9.0ms (0%)

Counts
2 → 72
Calls

18 calls:

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

rewrite60.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
974×pow1_binary64
906×add-log-exp_binary64
906×log1p-expm1-u_binary64
906×expm1-log1p-u_binary64
88×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0717
115915
2240615
Stop Event
node limit
Counts
2 → 57
Calls
Call 1
Inputs
(*.f64 x (-.f64 z y))
(+.f64 x (*.f64 x (-.f64 z y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z x) (*.f64 (neg.f64 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x z) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (-.f64 z y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 z 3) (pow.f64 y 3)) x) (fma.f64 z z (*.f64 y (+.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) x) (+.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (pow.f64 z 3) (pow.f64 y 3))) (fma.f64 z z (*.f64 y (+.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (*.f64 z z) (*.f64 y y))) (+.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (-.f64 z y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (-.f64 z y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (-.f64 z y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (-.f64 z y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (-.f64 z y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (-.f64 z y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (-.f64 z y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x (-.f64 z y) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 x (-.f64 z y)))) (/.f64 (pow.f64 (*.f64 x (-.f64 z y)) 2) (-.f64 x (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 1 (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (-.f64 z y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (-.f64 z y) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (-.f64 z y) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) x)) (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) x)) 2) (cbrt.f64 (fma.f64 x (-.f64 z y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (-.f64 z y) x)) (sqrt.f64 (fma.f64 x (-.f64 z y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 z y)) 3)) (/.f64 1 (fma.f64 x x (*.f64 (*.f64 x (-.f64 z y)) (-.f64 (*.f64 x (-.f64 z y)) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 z y)) 2)) (/.f64 1 (-.f64 x (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 z y) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x x (*.f64 (*.f64 x (-.f64 z y)) (-.f64 (*.f64 x (-.f64 z y)) x))) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 z y)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 x (-.f64 z y))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 z y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 z y)) 3)) (fma.f64 x x (*.f64 (*.f64 x (-.f64 z y)) (-.f64 (*.f64 x (-.f64 z y)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 z y)) 3)) (+.f64 (pow.f64 (*.f64 x (-.f64 z y)) 2) (-.f64 (*.f64 x x) (*.f64 (*.f64 x x) (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 z y)) 2)) (-.f64 x (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 z y)) 3))) (neg.f64 (fma.f64 x x (*.f64 (*.f64 x (-.f64 z y)) (-.f64 (*.f64 x (-.f64 z y)) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 z y)) 2))) (neg.f64 (-.f64 x (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (-.f64 z y)) 2) (*.f64 x x)) (-.f64 (*.f64 x (-.f64 z y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (-.f64 z y) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (-.f64 z y) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (-.f64 z y) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (-.f64 z y) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x (-.f64 z y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x (-.f64 z y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (-.f64 z y) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (-.f64 z y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (-.f64 z y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (-.f64 z y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (-.f64 z y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z y) x x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (-.f64 z y)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x (-.f64 z y))) 2) (cbrt.f64 (*.f64 x (-.f64 z y))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (-.f64 z y))) (sqrt.f64 (*.f64 x (-.f64 z y))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 x (-.f64 z y)))))))

simplify54.0ms (0.3%)

Algorithm
egg-herbie
Rules
620×fma-def_binary64
243×fma-neg_binary64
110×distribute-rgt-in_binary64
103×unsub-neg_binary64
101×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
024573
162572
2138512
3322512
4708512
51427512
61955512
71959512
Stop Event
saturated
Counts
129 → 70
Calls
Call 1
Inputs
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 z x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 z x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
Outputs
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(fma.f64 -1 (*.f64 y x) x)
(-.f64 x (*.f64 y x))
(*.f64 x (-.f64 1 y))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 z x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 z x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) x)
(fma.f64 z x x)
(+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 x (+.f64 1 (-.f64 z y)))
(+.f64 x (*.f64 (-.f64 z y) x))
(fma.f64 (-.f64 z y) x x)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 y z)))
0.7b
(-.f64 (*.f64 y y) (*.f64 z z))
5.6b
(*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))
22.4b
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 y z))
Compiler

Compiled 70 to 12 computations (82.9% saved)

series44.0ms (0.2%)

Counts
4 → 168
Calls

42 calls:

TimeVariablePointExpression
7.0ms
y
@0
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 y z))
3.0ms
y
@inf
(*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))
2.0ms
t
@0
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 y z))
2.0ms
z
@0
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 y z))
2.0ms
y
@inf
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 y z))

rewrite259.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
880×fma-def_binary64
415×fma-neg_binary64
289×expm1-udef_binary64
289×log1p-udef_binary64
239×log-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01373
131249
2505847
Stop Event
node limit
Counts
4 → 352
Calls
Call 1
Inputs
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 y z))
(*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))
(-.f64 (*.f64 y y) (*.f64 z z))
(+.f64 x (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 y z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 y z) (-.f64 t x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 y y) (/.f64 (+.f64 y z) (-.f64 t x))) (/.f64 (*.f64 z z) (/.f64 (+.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 1 (/.f64 (+.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 (-.f64 t x) (/.f64 1 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 t x) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 1 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (/.f64 1 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 2) (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2) (*.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (/.f64 1 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) (sqrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (*.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (/.f64 1 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (neg.f64 (-.f64 t x))) (/.f64 1 (neg.f64 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 y z)) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y z) (-.f64 t x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1) (/.f64 (-.f64 t x) (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 t x) 1) (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 1) (/.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (cbrt.f64 (pow.f64 (+.f64 y z) 2))) (/.f64 (-.f64 t x) (cbrt.f64 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 t x) (cbrt.f64 (pow.f64 (+.f64 y z) 2))) (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (cbrt.f64 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 y z) 2))) (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (cbrt.f64 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2) (cbrt.f64 (pow.f64 (+.f64 y z) 2))) (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (cbrt.f64 (pow.f64 (+.f64 y z) 2))) (/.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (cbrt.f64 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (sqrt.f64 (+.f64 y z))) (/.f64 (-.f64 t x) (sqrt.f64 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 t x) (sqrt.f64 (+.f64 y z))) (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (sqrt.f64 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (+.f64 y z))) (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (sqrt.f64 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2) (sqrt.f64 (+.f64 y z))) (/.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (sqrt.f64 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (-.f64 (*.f64 y y) (*.f64 z z))) (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 (pow.f64 y 3) (pow.f64 z 3))) (fma.f64 y y (*.f64 z (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (*.f64 (-.f64 y z) (-.f64 t x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (neg.f64 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (-.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 (neg.f64 x) (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y y) (-.f64 t x)) (*.f64 (*.f64 z (neg.f64 z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) t) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 t x) (*.f64 y y)) (*.f64 (-.f64 t x) (*.f64 z (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 6) (pow.f64 z 6)) (-.f64 (pow.f64 t 3) (pow.f64 x 3))) (*.f64 (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4)) (fma.f64 x (+.f64 t x) (*.f64 t t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (-.f64 (pow.f64 t 3) (pow.f64 x 3))) (*.f64 (fma.f64 y y (*.f64 z z)) (fma.f64 x (+.f64 t x) (*.f64 t t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 6) (pow.f64 z 6)) (-.f64 (*.f64 t t) (*.f64 x x))) (*.f64 (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4)) (+.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (-.f64 (*.f64 t t) (*.f64 x x))) (*.f64 (fma.f64 y y (*.f64 z z)) (+.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 t 3) (pow.f64 x 3)) (-.f64 (pow.f64 y 6) (pow.f64 z 6))) (*.f64 (fma.f64 x (+.f64 t x) (*.f64 t t)) (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 t t) (*.f64 x x)) (-.f64 (pow.f64 y 6) (pow.f64 z 6))) (*.f64 (+.f64 t x) (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 t 3) (pow.f64 x 3)) (-.f64 (pow.f64 y 4) (pow.f64 z 4))) (*.f64 (fma.f64 x (+.f64 t x) (*.f64 t t)) (fma.f64 y y (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 t t) (*.f64 x x)) (-.f64 (pow.f64 y 4) (pow.f64 z 4))) (*.f64 (+.f64 t x) (fma.f64 y y (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 6) (pow.f64 z 6)) (-.f64 t x)) (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (-.f64 t x)) (fma.f64 y y (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 t 3) (pow.f64 x 3)) (-.f64 (*.f64 y y) (*.f64 z z))) (fma.f64 x (+.f64 t x) (*.f64 t t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 t t) (*.f64 x x)) (-.f64 (*.f64 y y) (*.f64 z z))) (+.f64 t x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (pow.f64 t 3) (pow.f64 x 3))) (fma.f64 x (+.f64 t x) (*.f64 t t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 t t) (*.f64 x x))) (+.f64 t x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 t x) (-.f64 (pow.f64 y 6) (pow.f64 z 6))) (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 t x) (-.f64 (pow.f64 y 4) (pow.f64 z 4))) (fma.f64 y y (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (-.f64 t x)) (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3) (pow.f64 (-.f64 t x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 t x) 3) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) (-.f64 t x) (*.f64 (*.f64 z (neg.f64 z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 z z)) t (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 (neg.f64 x) (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 t x) (*.f64 y y) (*.f64 (-.f64 t x) (*.f64 z (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) 1 (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) 1 (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y z) (*.f64 (-.f64 y z) (-.f64 t x)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y z) (*.f64 (-.f64 y z) (-.f64 t x)) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 t x)) 2) (*.f64 (cbrt.f64 (-.f64 t x)) (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 t x)) 2) (*.f64 (cbrt.f64 (-.f64 t x)) (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (*.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (-.f64 t x)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (*.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (-.f64 t x)) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2) (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2) (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 t x)) (*.f64 (sqrt.f64 (-.f64 t x)) (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 t x)) (*.f64 (sqrt.f64 (-.f64 t x)) (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (*.f64 (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (-.f64 t x)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (*.f64 (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (-.f64 t x)) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 (cbrt.f64 (-.f64 t x)) 2)) (cbrt.f64 (-.f64 t x)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 (cbrt.f64 (-.f64 t x)) 2)) (cbrt.f64 (-.f64 t x)) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (sqrt.f64 (-.f64 t x))) (sqrt.f64 (-.f64 t x)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (sqrt.f64 (-.f64 t x))) (sqrt.f64 (-.f64 t x)) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 t x) (+.f64 y z)) (-.f64 y z) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 t x) (+.f64 y z)) (-.f64 y z) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 t x) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2)) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 t x) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2)) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 t x) (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 t x) (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (*.f64 (-.f64 t x) (fma.f64 z (neg.f64 z) (*.f64 z z))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y y) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y y) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y y) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (neg.f64 z)) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y z) (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 y z) 2)) (*.f64 (cbrt.f64 (+.f64 y z)) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 y z)) (*.f64 (sqrt.f64 (+.f64 y z)) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 y 6) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (/.f64 1 (fma.f64 y y (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y z) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4)) (-.f64 (pow.f64 y 6) (pow.f64 z 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y y (*.f64 z z)) (-.f64 (pow.f64 y 4) (pow.f64 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 y 6) (pow.f64 z 6)) (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (fma.f64 y y (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 y 6) (pow.f64 z 6))) (neg.f64 (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4))) (neg.f64 (fma.f64 y y (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 y 6) (pow.f64 (*.f64 z (neg.f64 z)) 3)) (+.f64 (pow.f64 y 4) (-.f64 (*.f64 (*.f64 z (neg.f64 z)) (*.f64 z (neg.f64 z))) (*.f64 (*.f64 y y) (*.f64 z (neg.f64 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3) (pow.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 3)) (+.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (-.f64 (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 y 4) (*.f64 (*.f64 z (neg.f64 z)) (*.f64 z (neg.f64 z)))) (-.f64 (*.f64 y y) (*.f64 z (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z)))) (-.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 y z)) (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 z 3)) (-.f64 y z)) (fma.f64 y y (*.f64 z (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 y y) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 y y))) (pow.f64 (exp.f64 z) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 y) y) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 y y))) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y y))) (exp.f64 (*.f64 z (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y) y) (/.f64 1 (pow.f64 (exp.f64 z) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y y))) (/.f64 1 (pow.f64 (exp.f64 z) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 y y) (*.f64 z z)))) (exp.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 z (neg.f64 z))) (pow.f64 (exp.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 z) z)) (pow.f64 (exp.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 z (neg.f64 z))) (+.f64 1 (expm1.f64 (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 z) z)) (+.f64 1 (expm1.f64 (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z (neg.f64 z) (*.f64 z z))) (exp.f64 (-.f64 (*.f64 y y) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z (neg.f64 z) (*.f64 z z))) (+.f64 1 (expm1.f64 (-.f64 (*.f64 y y) (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y y (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y y (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y y (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y y (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) 1 (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) 1 (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) 1 (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) 1 (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (neg.f64 z) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1 (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1 (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1 (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1 (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1 (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y z) (-.f64 y z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y z) (-.f64 y z) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y z) (-.f64 y z) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y z) (-.f64 y z) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y z) (-.f64 y z) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y y) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y y) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y y) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y y) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (neg.f64 z)) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 y z) 2)) (*.f64 (cbrt.f64 (+.f64 y z)) (-.f64 y z)) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 y z) 2)) (*.f64 (cbrt.f64 (+.f64 y z)) (-.f64 y z)) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 y z) 2)) (*.f64 (cbrt.f64 (+.f64 y z)) (-.f64 y z)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 y z) 2)) (*.f64 (cbrt.f64 (+.f64 y z)) (-.f64 y z)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 y z) 2)) (*.f64 (cbrt.f64 (+.f64 y z)) (-.f64 y z)) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 z 4)) (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y z)) (*.f64 (sqrt.f64 (+.f64 y z)) (-.f64 y z)) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y z)) (*.f64 (sqrt.f64 (+.f64 y z)) (-.f64 y z)) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y z)) (*.f64 (sqrt.f64 (+.f64 y z)) (-.f64 y z)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y z)) (*.f64 (sqrt.f64 (+.f64 y z)) (-.f64 y z)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y z)) (*.f64 (sqrt.f64 (+.f64 y z)) (-.f64 y z)) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z)))) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 z) z (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 6) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4))) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 6) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4))) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 6) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 6) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 6) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (fma.f64 y y (*.f64 z z)) (pow.f64 y 4))) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (/.f64 1 (fma.f64 y y (*.f64 z z))) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (/.f64 1 (fma.f64 y y (*.f64 z z))) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (/.f64 1 (fma.f64 y y (*.f64 z z))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (/.f64 1 (fma.f64 y y (*.f64 z z))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (/.f64 1 (fma.f64 y y (*.f64 z z))) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) (+.f64 y z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) (+.f64 y z) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) (+.f64 y z) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) (+.f64 y z) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) (+.f64 y z) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 z (neg.f64 z))) (cbrt.f64 (*.f64 z (neg.f64 z)))) (cbrt.f64 (*.f64 z (neg.f64 z))) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 z (neg.f64 z) (*.f64 z z))) (cbrt.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)))) (cbrt.f64 (fma.f64 z (neg.f64 z) (*.f64 z z))) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z (neg.f64 z))) (sqrt.f64 (*.f64 z (neg.f64 z))) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 (sqrt.f64 (*.f64 z (neg.f64 z))) z) (hypot.f64 (sqrt.f64 (*.f64 z (neg.f64 z))) z) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 z z) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 z 4))) (pow.f64 (cbrt.f64 z) 2) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 z) 1) z (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 z) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 y y))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))) (/.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2) (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 y z) (-.f64 t x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 2) (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) (sqrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (fma.f64 (-.f64 y z) (-.f64 t x) (neg.f64 x)) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2)) (/.f64 1 (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (fma.f64 (-.f64 y z) (-.f64 t x) (neg.f64 x)) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3)) (fma.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (fma.f64 (-.f64 y z) (-.f64 t x) (neg.f64 x)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3)) (+.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2) (-.f64 (*.f64 x x) (*.f64 x (*.f64 (-.f64 y z) (-.f64 t x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2)) (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 3))) (neg.f64 (fma.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (fma.f64 (-.f64 y z) (-.f64 t x) (neg.f64 x)) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2))) (neg.f64 (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2) (*.f64 x x)) (fma.f64 (-.f64 y z) (-.f64 t x) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (*.f64 (-.f64 y z) (-.f64 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (-.f64 t x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (-.f64 t x)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (-.f64 y z) (-.f64 t x))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) (-.f64 t x)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y z) (-.f64 t x) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 1 (/.f64 (+.f64 y z) (-.f64 t x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 (-.f64 t x) (/.f64 1 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 t x) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 1 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (/.f64 1 (+.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y z) (-.f64 t x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 2) (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2) (*.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (/.f64 1 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 y z) (-.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) (sqrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (*.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (/.f64 1 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (neg.f64 (-.f64 t x))) (/.f64 1 (neg.f64 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (+.f64 y z)) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) (-.f64 t x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1) (/.f64 (-.f64 t x) (+.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 t x) 1) (-.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (+.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 1) (/.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (+.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (cbrt.f64 (pow.f64 (+.f64 y z) 2))) (/.f64 (-.f64 t x) (cbrt.f64 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 t x) (cbrt.f64 (pow.f64 (+.f64 y z) 2))) (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (cbrt.f64 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 y z) 2))) (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (cbrt.f64 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2) (cbrt.f64 (pow.f64 (+.f64 y z) 2))) (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (cbrt.f64 (pow.f64 (+.f64 y z) 2))) (/.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (cbrt.f64 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (sqrt.f64 (+.f64 y z))) (/.f64 (-.f64 t x) (sqrt.f64 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 t x) (sqrt.f64 (+.f64 y z))) (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (sqrt.f64 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (+.f64 y z))) (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (sqrt.f64 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) 2) (sqrt.f64 (+.f64 y z))) (/.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))) (sqrt.f64 (+.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (-.f64 (*.f64 y y) (*.f64 z z))) (-.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 (pow.f64 y 3) (pow.f64 z 3))) (fma.f64 y y (*.f64 z (-.f64 z y))) x)))))

simplify207.0ms (1.1%)

Algorithm
egg-herbie
Rules
691×fma-def_binary64
450×unsub-neg_binary64
393×associate-+l+_binary64
354×sub-neg_binary64
321×associate-+r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01363815
14783271
214472530
361772269
Stop Event
node limit
Counts
520 → 425
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 (-.f64 t x) z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) y)) (*.f64 y (-.f64 t x)))) (*.f64 -1 (/.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 -1 (/.f64 (*.f64 z (-.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))))) (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) y)) (*.f64 y (-.f64 t x))))) (*.f64 -1 (/.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) y)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) (*.f64 (-.f64 t x) (pow.f64 z 2))) y)) (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) (*.f64 (-.f64 t x) (pow.f64 z 2))) y)) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) (*.f64 (pow.f64 z 2) (-.f64 t x))) z) (pow.f64 y 2)) (*.f64 y (-.f64 t x)))))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 z (-.f64 x t)) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 (-.f64 (+.f64 (/.f64 t y) (*.f64 -1 (/.f64 (-.f64 t x) y))) (/.f64 x y)) (pow.f64 z 2)) (+.f64 (*.f64 z (-.f64 x t)) (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 (-.f64 (+.f64 (/.f64 t y) (*.f64 -1 (/.f64 (-.f64 t x) y))) (/.f64 x y)) (pow.f64 z 2)) (+.f64 (*.f64 z (-.f64 x t)) (+.f64 (*.f64 (-.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 t x) (pow.f64 y 2))) (/.f64 t (pow.f64 y 2)))) (pow.f64 z 3)) (*.f64 y (-.f64 t x)))))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))))
(/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)))
(*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(*.f64 (pow.f64 y 2) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(*.f64 (pow.f64 y 2) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(*.f64 (pow.f64 y 2) (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t)
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t)
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(pow.f64 y 2)
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(pow.f64 y 2)
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(pow.f64 y 2)
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z))
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x))
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x))
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x))
(*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x)
(+.f64 (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x))
(+.f64 (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x))
(+.f64 (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x))
(*.f64 -1 (*.f64 x (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (+.f64 1 (/.f64 (pow.f64 z 2) (+.f64 y z))))))
(+.f64 (*.f64 -1 (*.f64 x (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (+.f64 1 (/.f64 (pow.f64 z 2) (+.f64 y z)))))) (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 x (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (+.f64 1 (/.f64 (pow.f64 z 2) (+.f64 y z)))))) (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 x (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (+.f64 1 (/.f64 (pow.f64 z 2) (+.f64 y z)))))) (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 (*.f64 y (-.f64 t x)) x))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 (*.f64 y (-.f64 t x)) x))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 (*.f64 y (-.f64 t x)) x))
(*.f64 y (-.f64 t x))
(-.f64 (+.f64 x (*.f64 y (-.f64 t x))) (*.f64 z (-.f64 t x)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) y)) (+.f64 x (*.f64 y (-.f64 t x)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) y)) (*.f64 z (-.f64 t x))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 z (-.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))))) (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) y)) (+.f64 x (*.f64 y (-.f64 t x))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) y)) (*.f64 z (-.f64 t x))))
(*.f64 y (-.f64 t x))
(-.f64 (+.f64 x (*.f64 y (-.f64 t x))) (*.f64 z (-.f64 t x)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) (*.f64 (pow.f64 z 2) (-.f64 t x))) y)) (+.f64 x (*.f64 y (-.f64 t x)))) (*.f64 z (-.f64 t x)))
(-.f64 (+.f64 (/.f64 (*.f64 z (-.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) (*.f64 (-.f64 t x) (pow.f64 z 2)))) (pow.f64 y 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) (*.f64 (pow.f64 z 2) (-.f64 t x))) y)) (+.f64 x (*.f64 y (-.f64 t x))))) (*.f64 z (-.f64 t x)))
(+.f64 (*.f64 y (-.f64 t x)) x)
(+.f64 (*.f64 z (-.f64 x t)) (+.f64 x (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 (-.f64 (+.f64 (/.f64 t y) (*.f64 -1 (/.f64 (-.f64 t x) y))) (/.f64 x y)) (pow.f64 z 2)) (+.f64 (*.f64 z (-.f64 x t)) (+.f64 x (*.f64 y (-.f64 t x)))))
(+.f64 (*.f64 (-.f64 (+.f64 (/.f64 t y) (*.f64 -1 (/.f64 (-.f64 t x) y))) (/.f64 x y)) (pow.f64 z 2)) (+.f64 (*.f64 z (-.f64 x t)) (+.f64 (*.f64 (-.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 t x) (pow.f64 y 2))) (/.f64 t (pow.f64 y 2)))) (pow.f64 z 3)) (+.f64 x (*.f64 y (-.f64 t x))))))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x) (*.f64 -1 (*.f64 y (-.f64 t x))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x) (*.f64 -1 (*.f64 y (-.f64 t x))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x) (*.f64 -1 (*.f64 y (-.f64 t x))))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x) (*.f64 -1 (*.f64 y (-.f64 t x))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x) (*.f64 -1 (*.f64 y (-.f64 t x))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x) (*.f64 -1 (*.f64 y (-.f64 t x))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))) x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))) x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))) x))
(*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))) x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))) x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))) x))
(/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)) x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)) x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)) x))
Outputs
(*.f64 -1 (*.f64 (-.f64 t x) z))
(neg.f64 (*.f64 (-.f64 t x) z))
(*.f64 (-.f64 t x) (neg.f64 z))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 y (-.f64 t x))
(*.f64 (-.f64 t x) y)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) y)) (*.f64 y (-.f64 t x)))) (*.f64 -1 (/.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) y)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 -1 (/.f64 (*.f64 z (-.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))))) (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) y)) (*.f64 y (-.f64 t x))))) (*.f64 -1 (/.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) y)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 y (-.f64 t x))
(*.f64 (-.f64 t x) y)
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) (*.f64 (-.f64 t x) (pow.f64 z 2))) y)) (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) z)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) (*.f64 (-.f64 t x) (pow.f64 z 2))) y)) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) (*.f64 (pow.f64 z 2) (-.f64 t x))) z) (pow.f64 y 2)) (*.f64 y (-.f64 t x)))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 y (-.f64 t x))
(*.f64 (-.f64 t x) y)
(+.f64 (*.f64 z (-.f64 x t)) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 (-.f64 (+.f64 (/.f64 t y) (*.f64 -1 (/.f64 (-.f64 t x) y))) (/.f64 x y)) (pow.f64 z 2)) (+.f64 (*.f64 z (-.f64 x t)) (*.f64 y (-.f64 t x))))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 (-.f64 (+.f64 (/.f64 t y) (*.f64 -1 (/.f64 (-.f64 t x) y))) (/.f64 x y)) (pow.f64 z 2)) (+.f64 (*.f64 z (-.f64 x t)) (+.f64 (*.f64 (-.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 t x) (pow.f64 y 2))) (/.f64 t (pow.f64 y 2)))) (pow.f64 z 3)) (*.f64 y (-.f64 t x)))))
(fma.f64 (+.f64 (/.f64 t y) (-.f64 (neg.f64 (/.f64 (-.f64 t x) y)) (/.f64 x y))) (*.f64 z z) (fma.f64 z (-.f64 x t) (fma.f64 (-.f64 (/.f64 x (*.f64 y y)) (fma.f64 -1 (/.f64 (-.f64 t x) (*.f64 y y)) (/.f64 t (*.f64 y y)))) (pow.f64 z 3) (*.f64 (-.f64 t x) y))))
(fma.f64 (*.f64 z z) (+.f64 (/.f64 (neg.f64 (-.f64 t x)) y) (/.f64 (-.f64 t x) y)) (fma.f64 z (-.f64 x t) (fma.f64 (-.f64 (/.f64 x (*.f64 y y)) (-.f64 (/.f64 t (*.f64 y y)) (/.f64 (-.f64 t x) (*.f64 y y)))) (pow.f64 z 3) (*.f64 (-.f64 t x) y))))
(fma.f64 (+.f64 (/.f64 (-.f64 t x) (*.f64 y y)) (/.f64 (/.f64 (-.f64 x t) y) y)) (pow.f64 z 3) (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 (/.f64 x (*.f64 y y)) (/.f64 x (*.f64 y y))) (pow.f64 z 3) (*.f64 (-.f64 t x) (-.f64 y z)))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(neg.f64 (*.f64 (-.f64 t x) z))
(*.f64 (-.f64 t x) (neg.f64 z))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(neg.f64 (*.f64 (-.f64 t x) z))
(*.f64 (-.f64 t x) (neg.f64 z))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (*.f64 y (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) z) (*.f64 (-.f64 t x) y))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z)))
(/.f64 (neg.f64 (*.f64 x (-.f64 (*.f64 y y) (*.f64 z z)))) (+.f64 z y))
(*.f64 x (/.f64 (fma.f64 -1 (*.f64 y y) (*.f64 z z)) (+.f64 z y)))
(/.f64 (neg.f64 x) (/.f64 1 (-.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z))
(/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z))))
(*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)))
(*.f64 t (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)))
(/.f64 t (/.f64 1 (-.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z))
(/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z))))
(*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)))
(*.f64 t (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)))
(/.f64 t (/.f64 1 (-.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z))
(/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z))))
(*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)))
(*.f64 t (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)))
(/.f64 t (/.f64 1 (-.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z)))
(/.f64 (neg.f64 (*.f64 x (-.f64 (*.f64 y y) (*.f64 z z)))) (+.f64 z y))
(*.f64 x (/.f64 (fma.f64 -1 (*.f64 y y) (*.f64 z z)) (+.f64 z y)))
(/.f64 (neg.f64 x) (/.f64 1 (-.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z)))
(/.f64 (neg.f64 (*.f64 x (-.f64 (*.f64 y y) (*.f64 z z)))) (+.f64 z y))
(*.f64 x (/.f64 (fma.f64 -1 (*.f64 y y) (*.f64 z z)) (+.f64 z y)))
(/.f64 (neg.f64 x) (/.f64 1 (-.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)))
(fma.f64 -1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (/.f64 (+.f64 z y) x)) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(-.f64 (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x))
(*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x))
(*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x))
(*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x)))
(neg.f64 (*.f64 (-.f64 t x) (*.f64 z z)))
(*.f64 (*.f64 z z) (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(*.f64 (pow.f64 y 2) (-.f64 t x))
(*.f64 (-.f64 t x) (*.f64 y y))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(*.f64 (pow.f64 y 2) (-.f64 t x))
(*.f64 (-.f64 t x) (*.f64 y y))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(*.f64 (pow.f64 y 2) (-.f64 t x))
(*.f64 (-.f64 t x) (*.f64 y y))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x)))
(neg.f64 (*.f64 (-.f64 t x) (*.f64 z z)))
(*.f64 (*.f64 z z) (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x)))
(neg.f64 (*.f64 (-.f64 t x) (*.f64 z z)))
(*.f64 (*.f64 z z) (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))) (*.f64 (pow.f64 y 2) (-.f64 t x)))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x))
(neg.f64 (*.f64 x (-.f64 (*.f64 y y) (*.f64 z z))))
(*.f64 x (fma.f64 -1 (*.f64 y y) (*.f64 z z)))
(*.f64 x (-.f64 (*.f64 z z) (*.f64 y y)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t)
(*.f64 t (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 t (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t)
(*.f64 t (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 t (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2)))
(*.f64 t (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 t (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x))
(neg.f64 (*.f64 x (-.f64 (*.f64 y y) (*.f64 z z))))
(*.f64 x (fma.f64 -1 (*.f64 y y) (*.f64 z z)))
(*.f64 x (-.f64 (*.f64 z z) (*.f64 y y)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x))
(neg.f64 (*.f64 x (-.f64 (*.f64 y y) (*.f64 z z))))
(*.f64 x (fma.f64 -1 (*.f64 y y) (*.f64 z z)))
(*.f64 x (-.f64 (*.f64 z z) (*.f64 y y)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x)) (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(fma.f64 -1 (*.f64 (-.f64 t x) (*.f64 z z)) (*.f64 (-.f64 t x) (*.f64 y y)))
(*.f64 (-.f64 t x) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 (-.f64 t x) (*.f64 (+.f64 z y) (-.f64 y z)))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(pow.f64 y 2)
(*.f64 y y)
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(pow.f64 y 2)
(*.f64 y y)
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(pow.f64 y 2)
(*.f64 y y)
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(+.f64 (pow.f64 y 2) (*.f64 -1 (pow.f64 z 2)))
(-.f64 (*.f64 y y) (*.f64 z z))
(*.f64 (+.f64 z y) (-.f64 y z))
(/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z))
(/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z))))
(*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)))
(*.f64 t (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)))
(/.f64 t (/.f64 1 (-.f64 y z)))
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x)
(*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)))))
(*.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(fma.f64 x (/.f64 (fma.f64 -1 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x)
(-.f64 x (/.f64 x (/.f64 1 (-.f64 y z))))
(+.f64 (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)) (*.f64 (+.f64 1 (*.f64 -1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 y z)))) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(*.f64 -1 (*.f64 x (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (+.f64 1 (/.f64 (pow.f64 z 2) (+.f64 y z))))))
(*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)))))
(*.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(fma.f64 x (/.f64 (fma.f64 -1 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x)
(-.f64 x (/.f64 x (/.f64 1 (-.f64 y z))))
(+.f64 (*.f64 -1 (*.f64 x (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (+.f64 1 (/.f64 (pow.f64 z 2) (+.f64 y z)))))) (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 x (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (+.f64 1 (/.f64 (pow.f64 z 2) (+.f64 y z)))))) (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 x (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (+.f64 1 (/.f64 (pow.f64 z 2) (+.f64 y z)))))) (/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z)))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x)
(fma.f64 -1 (*.f64 (-.f64 t x) z) x)
(-.f64 x (*.f64 (-.f64 t x) z))
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 (*.f64 y (-.f64 t x)) x))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 (*.f64 y (-.f64 t x)) x))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) (+.f64 (*.f64 y (-.f64 t x)) x))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 y (-.f64 t x))
(*.f64 (-.f64 t x) y)
(-.f64 (+.f64 x (*.f64 y (-.f64 t x))) (*.f64 z (-.f64 t x)))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) y)) (+.f64 x (*.f64 y (-.f64 t x)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) y)) (*.f64 z (-.f64 t x))))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 z (-.f64 (*.f64 -1 (*.f64 (-.f64 t x) (pow.f64 z 2))) (*.f64 -1 (*.f64 (pow.f64 z 2) (-.f64 t x))))) (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) y)) (+.f64 x (*.f64 y (-.f64 t x))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) y)) (*.f64 z (-.f64 t x))))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 y (-.f64 t x))
(*.f64 (-.f64 t x) y)
(-.f64 (+.f64 x (*.f64 y (-.f64 t x))) (*.f64 z (-.f64 t x)))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) (*.f64 (pow.f64 z 2) (-.f64 t x))) y)) (+.f64 x (*.f64 y (-.f64 t x)))) (*.f64 z (-.f64 t x)))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(-.f64 (+.f64 (/.f64 (*.f64 z (-.f64 (*.f64 (pow.f64 z 2) (-.f64 t x)) (*.f64 (-.f64 t x) (pow.f64 z 2)))) (pow.f64 y 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 (-.f64 t x) (pow.f64 z 2)) (*.f64 (pow.f64 z 2) (-.f64 t x))) y)) (+.f64 x (*.f64 y (-.f64 t x))))) (*.f64 z (-.f64 t x)))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 y (-.f64 t x)) x)
(fma.f64 y (-.f64 t x) x)
(fma.f64 (-.f64 t x) y x)
(+.f64 (*.f64 z (-.f64 x t)) (+.f64 x (*.f64 y (-.f64 t x))))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 (-.f64 (+.f64 (/.f64 t y) (*.f64 -1 (/.f64 (-.f64 t x) y))) (/.f64 x y)) (pow.f64 z 2)) (+.f64 (*.f64 z (-.f64 x t)) (+.f64 x (*.f64 y (-.f64 t x)))))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 (-.f64 (+.f64 (/.f64 t y) (*.f64 -1 (/.f64 (-.f64 t x) y))) (/.f64 x y)) (pow.f64 z 2)) (+.f64 (*.f64 z (-.f64 x t)) (+.f64 (*.f64 (-.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 t x) (pow.f64 y 2))) (/.f64 t (pow.f64 y 2)))) (pow.f64 z 3)) (+.f64 x (*.f64 y (-.f64 t x))))))
(fma.f64 (+.f64 (/.f64 t y) (-.f64 (neg.f64 (/.f64 (-.f64 t x) y)) (/.f64 x y))) (*.f64 z z) (fma.f64 z (-.f64 x t) (fma.f64 (-.f64 (/.f64 x (*.f64 y y)) (fma.f64 -1 (/.f64 (-.f64 t x) (*.f64 y y)) (/.f64 t (*.f64 y y)))) (pow.f64 z 3) (fma.f64 y (-.f64 t x) x))))
(fma.f64 (*.f64 z z) (+.f64 (/.f64 (neg.f64 (-.f64 t x)) y) (/.f64 (-.f64 t x) y)) (fma.f64 z (-.f64 x t) (fma.f64 (-.f64 (/.f64 x (*.f64 y y)) (-.f64 (/.f64 t (*.f64 y y)) (/.f64 (-.f64 t x) (*.f64 y y)))) (pow.f64 z 3) (fma.f64 (-.f64 t x) y x))))
(fma.f64 (+.f64 (/.f64 (-.f64 t x) (*.f64 y y)) (/.f64 (/.f64 (-.f64 x t) y) y)) (pow.f64 z 3) (fma.f64 (-.f64 t x) (-.f64 y z) x))
(fma.f64 (-.f64 (/.f64 x (*.f64 y y)) (/.f64 x (*.f64 y y))) (pow.f64 z 3) (fma.f64 (-.f64 t x) (-.f64 y z) x))
(*.f64 -1 (*.f64 z (-.f64 t x)))
(neg.f64 (*.f64 (-.f64 t x) z))
(*.f64 (-.f64 t x) (neg.f64 z))
(*.f64 z (-.f64 x t))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x) (*.f64 -1 (*.f64 y (-.f64 t x))))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x) (*.f64 -1 (*.f64 y (-.f64 t x))))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x) (*.f64 -1 (*.f64 y (-.f64 t x))))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(*.f64 -1 (*.f64 z (-.f64 t x)))
(neg.f64 (*.f64 (-.f64 t x) z))
(*.f64 (-.f64 t x) (neg.f64 z))
(*.f64 z (-.f64 x t))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x) (*.f64 -1 (*.f64 y (-.f64 t x))))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x) (*.f64 -1 (*.f64 y (-.f64 t x))))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 t x))) x) (*.f64 -1 (*.f64 y (-.f64 t x))))
(-.f64 (fma.f64 y (-.f64 t x) x) (*.f64 (-.f64 t x) z))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) x)
(*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)))))
(*.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(fma.f64 x (/.f64 (fma.f64 -1 (*.f64 y y) (*.f64 z z)) (+.f64 z y)) x)
(-.f64 x (/.f64 x (/.f64 1 (-.f64 y z))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z))))
(/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z))))
(*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)))
(*.f64 t (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)))
(/.f64 t (/.f64 1 (-.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (*.f64 t (-.f64 (/.f64 (pow.f64 y 2) (+.f64 y z)) (/.f64 (pow.f64 z 2) (+.f64 y z)))) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(/.f64 (*.f64 t (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z))
(/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z))))
(*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y)))
(*.f64 t (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)))
(/.f64 t (/.f64 1 (-.f64 y z)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))) (+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) t) (+.f64 y z)) x))
(+.f64 (/.f64 t (/.f64 (+.f64 z y) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 x (+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))))
(fma.f64 x (-.f64 1 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))) (*.f64 t (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (+.f64 z y))))
(+.f64 x (*.f64 (/.f64 (*.f64 (+.f64 z y) (-.f64 y z)) (+.f64 z y)) (-.f64 t x)))
(+.f64 x (*.f64 (neg.f64 (/.f64 -1 (/.f64 1 (-.f64 y z)))) (-.f64 t x)))

eval580.0ms (3.2%)

Compiler

Compiled 19329 to 4842 computations (74.9% saved)

prune237.0ms (1.3%)

Pruning

18 alts after pruning (16 fresh and 2 done)

PrunedKeptTotal
New90015915
Fresh617
Picked101
Done224
Total90918927
Error
0b
Counts
927 → 18
Alt Table
Click to see full alt table
StatusErrorProgram
25.6b
(+.f64 x (*.f64 (/.f64 1 (+.f64 y z)) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))))
34.9b
(pow.f64 (cbrt.f64 (*.f64 t (-.f64 y z))) 3)
20.7b
(+.f64 x (/.f64 t (/.f64 1 (-.f64 y z))))
38.3b
(+.f64 (*.f64 z x) x)
47.6b
(*.f64 y t)
39.1b
(*.f64 x (-.f64 1 y))
0.0b
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 (-.f64 y z) t)))
38.7b
(*.f64 z (-.f64 x t))
37.7b
(*.f64 (-.f64 t x) y)
52.4b
(*.f64 x (neg.f64 y))
28.6b
(-.f64 x (/.f64 x (/.f64 1 (-.f64 y z))))
28.5b
(*.f64 (-.f64 (+.f64 1 z) y) x)
34.4b
(*.f64 t (-.f64 y z))
39.1b
(+.f64 x (*.f64 x (neg.f64 y)))
20.7b
(+.f64 x (*.f64 t (-.f64 y z)))
25.0b
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) x))
49.4b
(*.f64 t (neg.f64 z))
37.7b
(+.f64 (*.f64 y t) (*.f64 y (neg.f64 x)))
Compiler

Compiled 392 to 264 computations (32.7% saved)

localize23.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 (-.f64 y z) t))
0.0b
(*.f64 (-.f64 y z) t)
0.0b
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 (-.f64 y z) t)))
Compiler

Compiled 44 to 9 computations (79.5% saved)

series15.0ms (0.1%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
2.0ms
z
@0
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 (-.f64 y z) t)))
1.0ms
x
@inf
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 (-.f64 y z) t)))
1.0ms
x
@-inf
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 (-.f64 y z) t)))
1.0ms
z
@-inf
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 (-.f64 y z) t)))
1.0ms
t
@0
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 (-.f64 y z) t)))

rewrite98.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
522×log-prod_binary64
419×fma-def_binary64
398×pow-prod-down_binary64
287×pow2_binary64
198×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01035
122231
2323829
Stop Event
node limit
Counts
2 → 94
Calls
Call 1
Inputs
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 (-.f64 y z) t)))
(fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 (-.f64 y z) t))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))) (/.f64 (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 2) (-.f64 x (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))) (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))) 2) (cbrt.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))) (sqrt.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 3)) (/.f64 1 (fma.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) (-.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 2)) (/.f64 1 (-.f64 x (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) (-.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) (-.f64 (*.f64 x x) (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 3)) (fma.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) (-.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 3)) (+.f64 (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 2) (-.f64 (*.f64 x x) (*.f64 x (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 2)) (-.f64 x (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 3))) (neg.f64 (fma.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) (-.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 2))) (neg.f64 (-.f64 x (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 2) (*.f64 x x)) (-.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) (-.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) (-.f64 (*.f64 x x) (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (-.f64 y z) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) x (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (-.f64 y z)) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 y z) 2)) (*.f64 (cbrt.f64 (-.f64 y z)) x) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) 2) (cbrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) x) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) (sqrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 x (-.f64 y z)) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2) (cbrt.f64 (*.f64 x (-.f64 y z))) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (-.f64 y z))) (sqrt.f64 (*.f64 x (-.f64 y z))) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (fma.f64 (-.f64 y z) t x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 (-.f64 y z) t x))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 y z) t) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 y z)) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (-.f64 y z)) 1) (*.f64 (-.f64 y z) t))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) 2) (cbrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) (sqrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3) (pow.f64 (*.f64 (-.f64 y z) t) 3)) (+.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2) (-.f64 (pow.f64 (*.f64 (-.f64 y z) t) 2) (*.f64 (*.f64 x (-.f64 y z)) (*.f64 (-.f64 y z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2) (pow.f64 (*.f64 (-.f64 y z) t) 2)) (-.f64 (*.f64 x (-.f64 y z)) (*.f64 (-.f64 y z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (-.f64 y z)) t) (exp.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) t))) (exp.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 x (-.f64 y z))) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x (-.f64 y z) (*.f64 (-.f64 y z) t)))) 1/3))))))

simplify368.0ms (2%)

Algorithm
egg-herbie
Rules
2374×fma-neg_binary64
757×fma-def_binary64
542×unsub-neg_binary64
504×associate-+l-_binary64
494×sub-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0661534
12011219
25071001
31388929
43546929
54588929
64828929
74857929
84857929
95485929
105792929
115792929
127934929
137934929
147934929
Stop Event
saturated
Counts
190 → 129
Calls
Call 1
Inputs
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(*.f64 (-.f64 (+.f64 1 z) y) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x)))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (+.f64 (*.f64 z x) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (+.f64 (*.f64 z x) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (+.f64 (*.f64 z x) x)))
(*.f64 (+.f64 t (*.f64 -1 x)) y)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) x)))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y)) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y)) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y)) x)))
(+.f64 (*.f64 y t) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 (-.f64 z y) x) x)
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (*.f64 z x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (*.f64 z x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (*.f64 z x)))
(*.f64 (+.f64 t (*.f64 -1 x)) y)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 (+.f64 t (*.f64 -1 x)) y)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 (+.f64 t (*.f64 -1 x)) y)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 (+.f64 t (*.f64 -1 x)) y)))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
Outputs
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (+.f64 1 (-.f64 z y)) x)
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(*.f64 (+.f64 1 (-.f64 z y)) x)
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 t (-.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x x))
(+.f64 x (*.f64 z (-.f64 x t)))
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (+.f64 (*.f64 z x) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (+.f64 (*.f64 z x) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (+.f64 (*.f64 z x) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 (+.f64 t (*.f64 -1 x)) y)
(*.f64 y (+.f64 t (neg.f64 x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))
(*.f64 y (+.f64 t (neg.f64 x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 y t) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 y t (fma.f64 -1 (*.f64 y x) x))
(fma.f64 y (-.f64 t x) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (-.f64 z y) x) x)
(*.f64 (+.f64 1 (-.f64 z y)) x)
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 (-.f64 z y) x) (+.f64 (*.f64 t (-.f64 y z)) x))
(fma.f64 t (-.f64 y z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(fma.f64 t (-.f64 y z) (fma.f64 x (-.f64 z y) x))
(+.f64 x (*.f64 (-.f64 t x) (-.f64 y z)))
(fma.f64 (-.f64 t x) (-.f64 y z) x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (*.f64 z x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (*.f64 z x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (+.f64 t (*.f64 -1 x)) y) (*.f64 z x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(*.f64 (+.f64 t (*.f64 -1 x)) y)
(*.f64 y (+.f64 t (neg.f64 x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 (+.f64 t (*.f64 -1 x)) y)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 (+.f64 t (*.f64 -1 x)) y)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 (+.f64 t (*.f64 -1 x)) y)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))
(*.f64 y (+.f64 t (neg.f64 x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 t) x) y))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x)))
(*.f64 y (+.f64 t (neg.f64 x)))
(*.f64 y (-.f64 t x))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 (*.f64 y t) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(*.f64 (-.f64 z y) x)
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(*.f64 (-.f64 z y) x)
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(*.f64 (-.f64 z y) x)
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 t (-.f64 y z)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (*.f64 y (+.f64 t (neg.f64 x)))))
(fma.f64 z (-.f64 x t) (*.f64 y (-.f64 t x)))
(*.f64 (-.f64 t x) (-.f64 y z))
(*.f64 (-.f64 z y) (-.f64 x t))

localize4.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

localize6.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 z (-.f64 x t))
Compiler

Compiled 15 to 6 computations (60% saved)

series5.0ms (0%)

Counts
1 → 24
Calls

9 calls:

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

rewrite69.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
725×pow1_binary64
672×add-log-exp_binary64
672×log1p-expm1-u_binary64
672×expm1-log1p-u_binary64
657×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
11297
217847
Stop Event
node limit
Counts
1 → 19
Calls
Call 1
Inputs
(*.f64 z (-.f64 x t))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x z) (*.f64 (neg.f64 t) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z x) (*.f64 z (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 z (-.f64 x t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 x 3) (pow.f64 t 3)) z) (fma.f64 x x (*.f64 t (+.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 t t)) z) (+.f64 x t))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (-.f64 (pow.f64 x 3) (pow.f64 t 3))) (fma.f64 x x (*.f64 t (+.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 t t))) (+.f64 x t))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (-.f64 x t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (-.f64 x t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 z (-.f64 x t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 z (-.f64 x t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 z (-.f64 x t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 z) (-.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (-.f64 x t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (-.f64 x t) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 x t) 3) (pow.f64 z 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 z (-.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 z (-.f64 x t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 z (-.f64 x t))))))))

simplify31.0ms (0.2%)

Algorithm
egg-herbie
Rules
217×fma-def_binary64
132×fma-neg_binary64
43×cancel-sign-sub-inv_binary64
26×sub-neg_binary64
25×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
09228
117192
239156
357156
481156
5133156
6249156
7406156
8575156
9729156
10743156
Stop Event
saturated
Counts
43 → 24
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
Outputs
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(*.f64 z x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(*.f64 z x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(*.f64 z x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(fma.f64 -1 (*.f64 t z) (*.f64 z x))
(*.f64 z (+.f64 (neg.f64 t) x))
(*.f64 z (-.f64 x t))

localize8.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 t (-.f64 y z))
0.0b
(+.f64 x (*.f64 t (-.f64 y z)))
Compiler

Compiled 23 to 7 computations (69.6% saved)

series4.0ms (0%)

Counts
1 → 48
Calls

12 calls:

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

rewrite69.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
458×log-prod_binary64
404×prod-exp_binary64
369×fma-def_binary64
341×exp-prod_binary64
338×pow-prod-down_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0810
11788
226168
Stop Event
node limit
Counts
1 → 65
Calls
Call 1
Inputs
(+.f64 x (*.f64 t (-.f64 y z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 t (-.f64 y z) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 t (-.f64 y z)))) (/.f64 (pow.f64 (*.f64 t (-.f64 y z)) 2) (-.f64 x (*.f64 t (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 t (-.f64 y z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 t (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 t (-.f64 y z) x)) (pow.f64 (cbrt.f64 (fma.f64 t (-.f64 y z) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 t (-.f64 y z) x)) 2) (cbrt.f64 (fma.f64 t (-.f64 y z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 t (-.f64 y z) x)) (sqrt.f64 (fma.f64 t (-.f64 y z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 t (-.f64 y z)) 3)) (/.f64 1 (fma.f64 (*.f64 t (-.f64 y z)) (-.f64 (*.f64 t (-.f64 y z)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 t (-.f64 y z)) 2)) (/.f64 1 (-.f64 x (*.f64 t (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 t (-.f64 y z)) (-.f64 (*.f64 t (-.f64 y z)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 t (-.f64 y z)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 t (-.f64 y z))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 t (-.f64 y z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 t (-.f64 y z)) 3)) (fma.f64 (*.f64 t (-.f64 y z)) (-.f64 (*.f64 t (-.f64 y z)) x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 t (-.f64 y z)) 3)) (+.f64 (pow.f64 (*.f64 t (-.f64 y z)) 2) (-.f64 (*.f64 x x) (*.f64 (*.f64 x t) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 t (-.f64 y z)) 2)) (-.f64 x (*.f64 t (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 t (-.f64 y z)) 3))) (neg.f64 (fma.f64 (*.f64 t (-.f64 y z)) (-.f64 (*.f64 t (-.f64 y z)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 t (-.f64 y z)) 2))) (neg.f64 (-.f64 x (*.f64 t (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 t (-.f64 y z)) 2) (*.f64 x x)) (-.f64 (*.f64 t (-.f64 y z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 t (-.f64 y z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 t (-.f64 y z) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 t (-.f64 y z) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 t (-.f64 y z) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 t (-.f64 y z) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 t (-.f64 y z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 t (-.f64 y z)) (-.f64 (*.f64 t (-.f64 y z)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 t (-.f64 y z)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (*.f64 t (-.f64 y z))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 t (-.f64 y z)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 t (-.f64 y z) x))) 2)) (cbrt.f64 (log.f64 (fma.f64 t (-.f64 y z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 t (-.f64 y z) x)))) (sqrt.f64 (log.f64 (fma.f64 t (-.f64 y z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 t (-.f64 y z) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 t (-.f64 y z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 t (-.f64 y z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 t) (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 t (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 t (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t (-.f64 y z)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 t) (-.f64 y z)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t (-.f64 y z)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 t (-.f64 y z) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 t (-.f64 y z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 t (-.f64 y z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 t (-.f64 y z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 t (-.f64 y z) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 t (-.f64 y z) x))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 t (-.f64 y z) x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 t (-.f64 y z) x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 t (-.f64 y z) x)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 t (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (-.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y z) t x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (-.f64 y z)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 t (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t (-.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 t (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 t (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (*.f64 (cbrt.f64 (-.f64 y z)) t) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) (-.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t (-.f64 y z))) (pow.f64 (cbrt.f64 (*.f64 t (-.f64 y z))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t (-.f64 y z))) 2) (cbrt.f64 (*.f64 t (-.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 t (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y z)) (*.f64 (sqrt.f64 (-.f64 y z)) t) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) (-.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t (-.f64 y z))) (sqrt.f64 (*.f64 t (-.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (cbrt.f64 (-.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 (-.f64 y z))) (sqrt.f64 (-.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y z) (sqrt.f64 t)) (sqrt.f64 t) x)))))

simplify150.0ms (0.8%)

Algorithm
egg-herbie
Rules
285×fma-neg_binary64
284×fma-def_binary64
88×cancel-sign-sub-inv_binary64
51×distribute-rgt-in_binary64
45×associate--r+_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
015345
134344
261344
3104344
4157344
5263344
6506344
7759344
81006344
91214344
101232344
Stop Event
saturated
Counts
113 → 77
Calls
Call 1
Inputs
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
x
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
x
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
x
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 t z)) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(*.f64 y t)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(*.f64 y t)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 y t) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
Outputs
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
x
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
x
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
x
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 t (-.f64 y z)) x)
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) x)
(fma.f64 -1 (*.f64 t z) x)
(-.f64 x (*.f64 t z))
(fma.f64 t (neg.f64 z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(*.f64 y t)
(*.f64 t y)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(*.f64 y t)
(*.f64 t y)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 y t) x)
(fma.f64 y t x)
(fma.f64 t y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(*.f64 z (neg.f64 t))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(*.f64 z (neg.f64 t))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 y t) x))
(fma.f64 t (-.f64 y z) x)

localize14.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 z x) x)
0.0b
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) x))
Compiler

Compiled 35 to 13 computations (62.9% saved)

series6.0ms (0%)

Counts
2 → 42
Calls

15 calls:

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

rewrite119.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
763×fma-def_binary64
550×log-prod_binary64
416×pow-prod-down_binary64
406×fma-neg_binary64
277×pow2_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01017
122216
2331614
Stop Event
node limit
Counts
2 → 184
Calls
Call 1
Inputs
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) x))
(+.f64 (*.f64 z x) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 z x x) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 t z (fma.f64 z x x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (*.f64 t z) (fma.f64 z x x))) (/.f64 (pow.f64 (fma.f64 z x x) 2) (-.f64 (*.f64 t z) (fma.f64 z x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 t z (fma.f64 z x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 t z (fma.f64 z x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 t z (fma.f64 z x x))) (pow.f64 (cbrt.f64 (fma.f64 t z (fma.f64 z x x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 t z (fma.f64 z x x))) 2) (cbrt.f64 (fma.f64 t z (fma.f64 z x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 t z (fma.f64 z x x))) (sqrt.f64 (fma.f64 t z (fma.f64 z x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (fma.f64 z x x) 3)) (/.f64 1 (fma.f64 (fma.f64 z x x) (fma.f64 t z (fma.f64 z x x)) (pow.f64 (*.f64 t z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (fma.f64 z x x) 2)) (/.f64 1 (-.f64 (*.f64 t z) (fma.f64 z x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 z x x) (fma.f64 t z (fma.f64 z x x)) (pow.f64 (*.f64 t z) 2)) (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (fma.f64 z x x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 t z) (fma.f64 z x x)) (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (fma.f64 z x x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (fma.f64 z x x) 3)) (fma.f64 (fma.f64 z x x) (fma.f64 t z (fma.f64 z x x)) (pow.f64 (*.f64 t z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (fma.f64 z x x) 3)) (+.f64 (pow.f64 (fma.f64 z x x) 2) (-.f64 (pow.f64 (*.f64 t z) 2) (*.f64 (*.f64 t z) (fma.f64 z x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (fma.f64 z x x) 2)) (-.f64 (*.f64 t z) (fma.f64 z x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (fma.f64 z x x) 3))) (neg.f64 (fma.f64 (fma.f64 z x x) (fma.f64 t z (fma.f64 z x x)) (pow.f64 (*.f64 t z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (fma.f64 z x x) 2))) (neg.f64 (-.f64 (*.f64 t z) (fma.f64 z x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 z (fma.f64 -1 t x)) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (*.f64 z (fma.f64 -1 t x)) 2) (-.f64 (*.f64 x x) (*.f64 (*.f64 z (fma.f64 -1 t x)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 z x x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 t z (fma.f64 z x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z (fma.f64 -1 t x)) 2) (*.f64 x x)) (-.f64 (*.f64 z (fma.f64 -1 t x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 t z (fma.f64 z x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 t z (fma.f64 z x x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 t z (fma.f64 z x x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 t z (fma.f64 z x x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 t z (fma.f64 z x x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 z x x) (fma.f64 t z (fma.f64 z x x)) (pow.f64 (*.f64 t z) 2)) (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (fma.f64 z x x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 t z) (fma.f64 z x x)) (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (fma.f64 z x x) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 t z (fma.f64 z x x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 t z (fma.f64 z x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 t z (fma.f64 z x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 z x x))) (pow.f64 (exp.f64 t) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (fma.f64 z x x)) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 z x x))) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t z))) (exp.f64 (fma.f64 z x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 t) z) (+.f64 1 (expm1.f64 (fma.f64 z x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t z))) (+.f64 1 (expm1.f64 (fma.f64 z x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (exp.f64 (*.f64 z (fma.f64 -1 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (*.f64 z (fma.f64 -1 t x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (pow.f64 (*.f64 (exp.f64 t) (exp.f64 x)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (*.f64 (exp.f64 t) (exp.f64 x)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z x x))) (pow.f64 (exp.f64 t) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z x x)) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z x x))) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (*.f64 (exp.f64 t) (exp.f64 x)) z) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 z (fma.f64 -1 t x))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (*.f64 (exp.f64 t) (exp.f64 x)) z) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 t z (fma.f64 z x x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 t z (fma.f64 z x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 t z (fma.f64 z x x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 t z (fma.f64 z x x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 t z (fma.f64 z x x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 t z) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (neg.f64 z) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (*.f64 z -1) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z x (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (neg.f64 t) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (fma.f64 -1 t x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) -1 (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1 (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x z (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 z (fma.f64 -1 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (+.f64 z 1) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z x) 1 (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z x x) 1 (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t z) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 z (fma.f64 -1 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z x) (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z x x) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (fma.f64 -1 t x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z x)) (cbrt.f64 (pow.f64 (*.f64 z x) 2)) (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 z x) 2)) (cbrt.f64 (*.f64 z x)) (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z x x)) (cbrt.f64 (pow.f64 (fma.f64 z x x) 2)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 z x x) 2)) (cbrt.f64 (fma.f64 z x x)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t z)) (cbrt.f64 (pow.f64 (*.f64 t z) 2)) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 t z) 2)) (cbrt.f64 (*.f64 t z)) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 t z) 2)) (neg.f64 (cbrt.f64 (*.f64 t z))) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t t)) (*.f64 (cbrt.f64 t) z) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 z (fma.f64 -1 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 z (fma.f64 -1 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) z) (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) x) (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z x)) (sqrt.f64 (*.f64 z x)) (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z x x)) (sqrt.f64 (fma.f64 z x x)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (neg.f64 (sqrt.f64 (*.f64 t z))) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 t z)) -1) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 z (fma.f64 -1 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) z) (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) x) (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (-.f64 x (*.f64 z x)) (pow.f64 (*.f64 z x) 2))) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 z x) x)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 z 1) x (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 t) z (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (fma.f64 -1 t x)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (fma.f64 -1 t x))) 2) (cbrt.f64 (*.f64 z (fma.f64 -1 t x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z (fma.f64 -1 t x))) (sqrt.f64 (*.f64 z (fma.f64 -1 t x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 z) t (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 t z))) (sqrt.f64 (*.f64 t z)) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 t z) 2))) (cbrt.f64 (*.f64 t z)) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 x)) (sqrt.f64 x) (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 z)) (sqrt.f64 z) (+.f64 x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (cbrt.f64 (*.f64 t t))) (cbrt.f64 t) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 z 1) 1) x (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 z 1) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 z 1) (sqrt.f64 x)) (sqrt.f64 x) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 z) t (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (cbrt.f64 (pow.f64 (*.f64 t z) 2))) (cbrt.f64 (*.f64 t z)) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 (*.f64 t z))) (sqrt.f64 (*.f64 t z)) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 t) 1) z (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 t) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 t) (sqrt.f64 z)) (sqrt.f64 z) (fma.f64 z x x))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 z x x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 z x) 2) (-.f64 (*.f64 z x) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 z x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 z 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 z x x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 z x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 z x x)) (cbrt.f64 (pow.f64 (fma.f64 z x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 z x x) 2)) (cbrt.f64 (fma.f64 z x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 z x x)) (sqrt.f64 (fma.f64 z x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (-.f64 x (*.f64 z x)) (pow.f64 (*.f64 z x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 z x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 z 1) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 z 1) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 z 1) (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (-.f64 x (*.f64 z x)) (pow.f64 (*.f64 z x) 2)) (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 z x) x) (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 x 3)) (fma.f64 x (-.f64 x (*.f64 z x)) (pow.f64 (*.f64 z x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 x 3)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 z (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 x x)) (-.f64 (*.f64 z x) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 x 3))) (neg.f64 (fma.f64 x (-.f64 x (*.f64 z x)) (pow.f64 (*.f64 z x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 z x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z x) 2)) (-.f64 x (*.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 z x x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z x x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 z x x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 z x x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z x x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x (-.f64 x (*.f64 z x)) (pow.f64 (*.f64 z x) 2)) (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 x 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 z x) x) (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 x x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 z x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 z x x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 z x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z x))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 z) x) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z x))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 z x x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 z x x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 z x x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 z x x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 z x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z x x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x z x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z x) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z x)) (cbrt.f64 (pow.f64 (*.f64 z x) 2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 z x) 2)) (cbrt.f64 (*.f64 z x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z x)) (sqrt.f64 (*.f64 z x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 x)) (sqrt.f64 x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 z)) (sqrt.f64 z) x)))))

simplify49.0ms (0.3%)

Algorithm
egg-herbie
Rules
340×fma-def_binary64
254×fma-neg_binary64
59×cancel-sign-sub-inv_binary64
54×unsub-neg_binary64
46×distribute-rgt-in_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
027281
172261
2158261
3336261
4681261
51091261
61256261
71281261
81282261
Stop Event
saturated
Counts
226 → 199
Calls
Call 1
Inputs
(+.f64 (*.f64 z x) x)
(*.f64 -1 (*.f64 t z))
(*.f64 -1 (*.f64 t z))
x
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) x)
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) x)
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) x)
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (+.f64 1 z) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (+.f64 1 z) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (+.f64 1 z) x))
(*.f64 (+.f64 1 z) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (+.f64 1 z) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (+.f64 1 z) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (+.f64 1 z) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x)))
x
(*.f64 z x)
(*.f64 z x)
(*.f64 (+.f64 1 z) x)
(*.f64 (+.f64 1 z) x)
(*.f64 (+.f64 1 z) x)
(*.f64 (+.f64 1 z) x)
(*.f64 (+.f64 1 z) x)
(*.f64 (+.f64 1 z) x)
(*.f64 (+.f64 1 z) x)
(*.f64 (+.f64 1 z) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x))
Outputs
(+.f64 (*.f64 z x) x)
(fma.f64 z x x)
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 z t))
(*.f64 t (neg.f64 z))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 z t))
(*.f64 t (neg.f64 z))
x
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) x)
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) x)
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) x)
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) x)
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) x)
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) x)
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) x)
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) x)
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) x)
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 z t))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (+.f64 1 z) x))
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (+.f64 1 z) x))
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (+.f64 1 z) x))
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(*.f64 (+.f64 1 z) x)
(fma.f64 z x x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (+.f64 1 z) x))
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (+.f64 1 z) x))
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (+.f64 1 z) x))
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x))
(fma.f64 z x x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x)))
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x)))
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x)))
(fma.f64 (fma.f64 -1 t x) z x)
(fma.f64 z (-.f64 x t) x)
x
(*.f64 z x)
(*.f64 z x)
(*.f64 (+.f64 1 z) x)
(fma.f64 z x x)
(*.f64 (+.f64 1 z) x)
(fma.f64 z x x)
(*.f64 (+.f64 1 z) x)
(fma.f64 z x x)
(*.f64 (+.f64 1 z) x)
(fma.f64 z x x)
(*.f64 (+.f64 1 z) x)
(fma.f64 z x x)
(*.f64 (+.f64 1 z) x)
(fma.f64 z x x)
(*.f64 (+.f64 1 z) x)
(fma.f64 z x x)
(*.f64 (+.f64 1 z) x)
(fma.f64 z x x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x))
(fma.f64 z x x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x))
(fma.f64 z x x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x))
(fma.f64 z x x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) 1) x))
(fma.f64 z x x)

eval133.0ms (0.7%)

Compiler

Compiled 7097 to 2134 computations (69.9% saved)

prune138.0ms (0.8%)

Pruning

21 alts after pruning (17 fresh and 4 done)

PrunedKeptTotal
New4749483
Fresh3811
Picked101
Done246
Total48021501
Error
0b
Counts
501 → 21
Alt Table
Click to see full alt table
StatusErrorProgram
25.6b
(+.f64 x (*.f64 (/.f64 1 (+.f64 y z)) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))))
34.9b
(pow.f64 (cbrt.f64 (*.f64 t (-.f64 y z))) 3)
20.7b
(+.f64 x (/.f64 t (/.f64 1 (-.f64 y z))))
47.6b
(*.f64 y t)
48.9b
x
38.7b
(+.f64 (*.f64 z x) (*.f64 z (neg.f64 t)))
52.4b
(*.f64 x (neg.f64 y))
28.6b
(-.f64 x (/.f64 x (/.f64 1 (-.f64 y z))))
28.5b
(+.f64 (*.f64 (-.f64 z y) x) x)
49.4b
(*.f64 z (neg.f64 t))
33.9b
(+.f64 (*.f64 y t) x)
34.4b
(*.f64 t (-.f64 y z))
35.9b
(+.f64 x (*.f64 t (neg.f64 z)))
39.1b
(+.f64 x (*.f64 x (neg.f64 y)))
38.7b
(*.f64 z (-.f64 x t))
37.7b
(*.f64 (-.f64 t x) y)
39.1b
(*.f64 x (-.f64 1 y))
51.9b
(*.f64 z x)
38.3b
(*.f64 (+.f64 1 z) x)
15.2b
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 t (neg.f64 z))))
37.7b
(+.f64 (*.f64 y t) (*.f64 y (neg.f64 x)))
Compiler

Compiled 403 to 277 computations (31.3% saved)

localize16.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 t (neg.f64 z)))
0.0b
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 t (neg.f64 z))))
Compiler

Compiled 43 to 10 computations (76.7% saved)

series34.0ms (0.2%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
27.0ms
z
@0
(fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 t (neg.f64 z)))
0.0ms
y
@0
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 t (neg.f64 z))))
0.0ms
x
@0
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 t (neg.f64 z))))
0.0ms
x
@inf
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 t (neg.f64 z))))
0.0ms
z
@inf
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 t (neg.f64 z))))

rewrite69.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
524×log-prod_binary64
383×pow-prod-down_binary64
373×fma-def_binary64
281×pow2_binary64
194×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01133
124425
2361223
Stop Event
node limit
Counts
2 → 91
Calls
Call 1
Inputs
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 t (neg.f64 z))))
(fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 t (neg.f64 z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (fma.f64 x (+.f64 y z) (*.f64 t z)))) (/.f64 (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 2) (-.f64 x (fma.f64 x (+.f64 y z) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (+.f64 y z) (fma.f64 t z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))) (pow.f64 (cbrt.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))) 2) (cbrt.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))) (sqrt.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 3)) (/.f64 1 (fma.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) (-.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 2)) (/.f64 1 (-.f64 x (fma.f64 x (+.f64 y z) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) (-.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (fma.f64 x (+.f64 y z) (*.f64 t z))) (-.f64 (*.f64 x x) (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 3)) (fma.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) (-.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 3)) (+.f64 (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 2) (-.f64 (*.f64 x x) (*.f64 x (fma.f64 x (+.f64 y z) (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 2)) (-.f64 x (fma.f64 x (+.f64 y z) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 3))) (neg.f64 (fma.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) (-.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 2))) (neg.f64 (-.f64 x (fma.f64 x (+.f64 y z) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 2) (*.f64 x x)) (-.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) (-.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (fma.f64 x (+.f64 y z) (*.f64 t z))) (-.f64 (*.f64 x x) (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x (+.f64 y z) (fma.f64 t z x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (+.f64 y z) (fma.f64 t z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (fma.f64 x (+.f64 y z) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y z) x (fma.f64 t z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (fma.f64 x (+.f64 y z) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (+.f64 y z) (*.f64 t z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (+.f64 y z)) (fma.f64 t z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 y z)) 2) (*.f64 (cbrt.f64 (+.f64 y z)) x) (fma.f64 t z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (fma.f64 x (+.f64 y z) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (fma.f64 x (+.f64 y z) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) 2) (cbrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y z)) (*.f64 (sqrt.f64 (+.f64 y z)) x) (fma.f64 t z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (fma.f64 x (+.f64 y z) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) (sqrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 x (+.f64 y z)) (fma.f64 t z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x (+.f64 y z))) 2) (cbrt.f64 (*.f64 x (+.f64 y z))) (fma.f64 t z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (+.f64 y z))) (sqrt.f64 (*.f64 x (+.f64 y z))) (fma.f64 t z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y z) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 t z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y z) (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 t z x))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t z) (*.f64 x (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (+.f64 y z)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 x (+.f64 y z) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (+.f64 y z)) 1) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (+.f64 y z)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (+.f64 y z) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) 2) (cbrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) (sqrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x (+.f64 y z)) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 x (+.f64 y z)) 2) (-.f64 (pow.f64 (*.f64 t z) 2) (*.f64 (*.f64 x (+.f64 y z)) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (+.f64 y z)) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x (+.f64 y z) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (*.f64 x (+.f64 y z))) (pow.f64 (exp.f64 z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (*.f64 x (+.f64 y z))) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (exp.f64 (*.f64 x (+.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t z))) (exp.f64 (*.f64 x (+.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 x (+.f64 y z))) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (+.f64 y z) (*.f64 t z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x (+.f64 y z) (*.f64 t z))) 1))))))

simplify146.0ms (0.8%)

Algorithm
egg-herbie
Rules
1046×fma-neg_binary64
378×fma-def_binary64
181×unsub-neg_binary64
174×cancel-sign-sub-inv_binary64
173×sub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0481401
11461133
23571133
38411133
418501133
532301133
633681133
733731133
833731133
937971133
1037971133
Stop Event
saturated
Counts
187 → 122
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(*.f64 (-.f64 (+.f64 1 z) y) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x)))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x)))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x)))))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x)))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x)))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x)))))
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 (-.f64 z y) x) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (*.f64 -1 (*.f64 y x)))
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
Outputs
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (+.f64 1 (-.f64 z y)) x)
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 (+.f64 1 z) y) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(*.f64 (+.f64 1 (-.f64 z y)) x)
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x)))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x)))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x)))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x x))
(fma.f64 z (-.f64 x t) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x)))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x)))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x)))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x)))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x)))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x)))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(fma.f64 -1 (*.f64 y x) x)
(fma.f64 (neg.f64 y) x x)
(*.f64 x (-.f64 1 y))
(-.f64 x (*.f64 y x))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 (-.f64 z y) x) x)
(*.f64 (+.f64 1 (-.f64 z y)) x)
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 (-.f64 z y) x) x))
(fma.f64 -1 (*.f64 t z) (*.f64 (+.f64 1 (-.f64 z y)) x))
(-.f64 (fma.f64 x (-.f64 z y) x) (*.f64 t z))
(fma.f64 z (-.f64 x t) (*.f64 x (-.f64 1 y)))
(-.f64 x (fma.f64 t z (*.f64 x (-.f64 y z))))
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 z x))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (*.f64 -1 (*.f64 y x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (*.f64 -1 (*.f64 y x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (*.f64 -1 (*.f64 y x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 (+.f64 (*.f64 -1 t) x) z)
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (*.f64 -1 (*.f64 y x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (*.f64 -1 (*.f64 y x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 t) x) z) (*.f64 -1 (*.f64 y x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z))
(*.f64 z (fma.f64 -1 t x))
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (*.f64 -1 (*.f64 y x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (*.f64 -1 (*.f64 y x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 t (*.f64 -1 x)) z)) (*.f64 -1 (*.f64 y x)))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 (-.f64 z y) x)
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 (-.f64 z y) x)
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 (-.f64 z y) x)
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 (-.f64 z y) x))
(fma.f64 -1 (*.f64 t z) (fma.f64 z x (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 z (-.f64 x t)) (*.f64 y x))
(neg.f64 (fma.f64 x (-.f64 y z) (*.f64 t z)))

localize5.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (+.f64 1 z) x)
Compiler

Compiled 15 to 10 computations (33.3% saved)

series3.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite49.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
604×pow1_binary64
560×add-log-exp_binary64
560×log1p-expm1-u_binary64
560×expm1-log1p-u_binary64
549×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
11217
215207
Stop Event
node limit
Counts
1 → 19
Calls
Call 1
Inputs
(*.f64 (+.f64 1 z) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z x) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x z) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (+.f64 x (*.f64 z x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (pow.f64 z 3)) x) (+.f64 1 (-.f64 (*.f64 z z) z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (*.f64 z z)) x) (-.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 1 (pow.f64 z 3))) (+.f64 1 (-.f64 (*.f64 z z) z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 1 (*.f64 z z))) (-.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (*.f64 z x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x (*.f64 z x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 x (*.f64 z x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 x (*.f64 z x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 x (*.f64 z x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (+.f64 1 z)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 x (*.f64 z x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 x (*.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 x (*.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log1p.f64 z) (log.f64 x)))))))

simplify12.0ms (0.1%)

Algorithm
egg-herbie
Rules
14×fma-def_binary64
associate-*r*_binary64
associate-*l*_binary64
*-lft-identity_binary64
*-rgt-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0554
11154
21654
32254
42854
54154
64554
74754
Stop Event
saturated
Counts
31 → 23
Calls
Call 1
Inputs
x
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) x)
(*.f64 z x)
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) x)
(*.f64 z x)
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) x)
Outputs
x
(+.f64 (*.f64 z x) x)
(fma.f64 z x x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 z x x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 z x x)
(fma.f64 x z x)
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 z x) x)
(fma.f64 z x x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 z x x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 z x x)
(fma.f64 x z x)
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 z x) x)
(fma.f64 z x x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 z x x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 z x x)
(fma.f64 x z x)

localize8.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 (-.f64 z y) x) x)
0.0b
(*.f64 (-.f64 z y) x)
Compiler

Compiled 22 to 7 computations (68.2% saved)

series5.0ms (0%)

Counts
2 → 60
Calls

18 calls:

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

rewrite72.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
986×pow1_binary64
918×add-log-exp_binary64
917×log1p-expm1-u_binary64
917×expm1-log1p-u_binary64
89×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0715
116215
2245315
Stop Event
node limit
Counts
2 → 59
Calls
Call 1
Inputs
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 (-.f64 z y) x) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z x) (*.f64 (neg.f64 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x z) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 z y) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 z 3) (pow.f64 y 3)) x) (fma.f64 z z (*.f64 y (+.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) x) (+.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (pow.f64 z 3) (pow.f64 y 3))) (fma.f64 z z (*.f64 y (+.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (*.f64 z z) (*.f64 y y))) (+.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 z y) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 z y) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 z y) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 z y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 z y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 z y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 z y) x)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 z y) x x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2) (-.f64 (*.f64 (-.f64 z y) x) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 (-.f64 z y) x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (-.f64 z y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 z y) x x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 z y) x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 z y) x x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 z y) x x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 z y) x x)) 2) (cbrt.f64 (fma.f64 (-.f64 z y) x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 z y) x x)) (sqrt.f64 (fma.f64 (-.f64 z y) x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3) (pow.f64 x 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2) (*.f64 x (-.f64 x (*.f64 (-.f64 z y) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 (-.f64 z y) x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 z y) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (-.f64 z y) 1) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (-.f64 z y) 1) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (-.f64 z y) 1) (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2) (*.f64 x (-.f64 x (*.f64 (-.f64 z y) x)))) (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3) (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 (-.f64 z y) x) x) (-.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2) (*.f64 x (-.f64 x (*.f64 (-.f64 z y) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3) (pow.f64 x 3)) (+.f64 (*.f64 x x) (-.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2) (*.f64 (-.f64 z y) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2) (*.f64 x x)) (-.f64 (*.f64 (-.f64 z y) x) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3) (pow.f64 x 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2) (*.f64 x (-.f64 x (*.f64 (-.f64 z y) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 (-.f64 z y) x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z y) x) 2)) (-.f64 x (*.f64 (-.f64 z y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 z y) x x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 z y) x x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 z y) x x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 z y) x x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 z y) x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 z y) x x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 z y) x x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 z y) x x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 z y) x x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 z y) x x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 z y) x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z y) x x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (-.f64 z y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (-.f64 z y) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 z y) x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 z y) x)) 2) (cbrt.f64 (*.f64 (-.f64 z y) x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 z y) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 z y) x)) (sqrt.f64 (*.f64 (-.f64 z y) x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 z y) x))))))

simplify65.0ms (0.4%)

Algorithm
egg-herbie
Rules
620×fma-def_binary64
237×fma-neg_binary64
111×distribute-rgt-in_binary64
103×unsub-neg_binary64
101×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
023603
159488
2137428
3328428
4715428
51434428
61961428
71965428
Stop Event
saturated
Counts
119 → 73
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 z x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 z x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
Outputs
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(fma.f64 z x (neg.f64 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(fma.f64 -1 (*.f64 y x) x)
(-.f64 x (*.f64 y x))
(*.f64 x (-.f64 1 y))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) x)
(fma.f64 z x x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 x (neg.f64 y))
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(+.f64 (*.f64 z x) (+.f64 x (*.f64 -1 (*.f64 y x))))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (-.f64 z y)) 1) x))
(fma.f64 z x (fma.f64 -1 (*.f64 y x) x))
(*.f64 x (+.f64 z (-.f64 1 y)))
(fma.f64 x (-.f64 z y) x)

localize12.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (-.f64 y z))
0.0b
(-.f64 x (/.f64 x (/.f64 1 (-.f64 y z))))
0.2b
(/.f64 x (/.f64 1 (-.f64 y z)))
Compiler

Compiled 32 to 15 computations (53.1% saved)

series16.0ms (0.1%)

Counts
3 → 96
Calls

24 calls:

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

rewrite107.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
915×prod-diff_binary64
515×log-prod_binary64
354×fma-def_binary64
279×pow2_binary64
190×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0930
120724
2311124
Stop Event
node limit
Counts
3 → 241
Calls
Call 1
Inputs
(/.f64 x (/.f64 1 (-.f64 y z)))
(-.f64 x (/.f64 x (/.f64 1 (-.f64 y z))))
(/.f64 1 (-.f64 y z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (*.f64 (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (*.f64 x (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (-.f64 y z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2) (cbrt.f64 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 x (-.f64 y z))) (sqrt.f64 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (/.f64 1 (/.f64 -1 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x x)) 1) (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (cbrt.f64 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (-.f64 y z) -1/2)) (/.f64 x (pow.f64 (-.f64 y z) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2)) (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x -1) (neg.f64 (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (cbrt.f64 (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (sqrt.f64 (-.f64 y z))) (sqrt.f64 (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (-.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (-.f64 y z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (*.f64 x (-.f64 y z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 1 (*.f64 x (-.f64 y z))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x (/.f64 -1 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (-.f64 y z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 x (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 (neg.f64 z) x))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 x (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 x (-.f64 y z))) (fma.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 x (-.f64 y z))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 x (-.f64 y z))) (+.f64 (*.f64 x (neg.f64 (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 x (-.f64 y z))) (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 x (-.f64 y z))) (fma.f64 (neg.f64 x) (-.f64 y z) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 x (-.f64 y z))) (fma.f64 -1 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 x (-.f64 y z))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2)) (cbrt.f64 (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 x (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (neg.f64 (-.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (*.f64 (cbrt.f64 x) (-.f64 y z)) (cbrt.f64 (*.f64 x x))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 x) (-.f64 y z))) (cbrt.f64 (*.f64 x x)) (*.f64 (*.f64 (cbrt.f64 x) (-.f64 y z)) (cbrt.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (*.f64 (cbrt.f64 x) (-.f64 y z)) (cbrt.f64 (*.f64 x x))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 x) (-.f64 y z))) (cbrt.f64 (*.f64 x x)) (*.f64 (*.f64 (cbrt.f64 x) (-.f64 y z)) (cbrt.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 x) (-.f64 y z)) (cbrt.f64 (*.f64 x x))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 x) (-.f64 y z))) (cbrt.f64 (*.f64 x x)) (*.f64 (*.f64 (cbrt.f64 x) (-.f64 y z)) (cbrt.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (*.f64 (cbrt.f64 x) (-.f64 y z)) (cbrt.f64 (*.f64 x x))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 x) (-.f64 y z))) (cbrt.f64 (*.f64 x x)) (*.f64 (*.f64 (cbrt.f64 x) (-.f64 y z)) (cbrt.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (*.f64 (cbrt.f64 x) (-.f64 y z)) (cbrt.f64 (*.f64 x x))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 x) (-.f64 y z))) (cbrt.f64 (*.f64 x x)) (*.f64 (*.f64 (cbrt.f64 x) (-.f64 y z)) (cbrt.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (*.f64 (sqrt.f64 x) (-.f64 y z)) (sqrt.f64 x)))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 x) (-.f64 y z))) (sqrt.f64 x) (*.f64 (*.f64 (sqrt.f64 x) (-.f64 y z)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (*.f64 (sqrt.f64 x) (-.f64 y z)) (sqrt.f64 x)))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 x) (-.f64 y z))) (sqrt.f64 x) (*.f64 (*.f64 (sqrt.f64 x) (-.f64 y z)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 x) (-.f64 y z)) (sqrt.f64 x)))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 x) (-.f64 y z))) (sqrt.f64 x) (*.f64 (*.f64 (sqrt.f64 x) (-.f64 y z)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (*.f64 (sqrt.f64 x) (-.f64 y z)) (sqrt.f64 x)))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 x) (-.f64 y z))) (sqrt.f64 x) (*.f64 (*.f64 (sqrt.f64 x) (-.f64 y z)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (*.f64 (sqrt.f64 x) (-.f64 y z)) (sqrt.f64 x)))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 x) (-.f64 y z))) (sqrt.f64 x) (*.f64 (*.f64 (sqrt.f64 x) (-.f64 y z)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 1 (/.f64 -1 (-.f64 y z))) (neg.f64 x)))) (fma.f64 (neg.f64 (/.f64 1 (/.f64 -1 (-.f64 y z)))) (neg.f64 x) (*.f64 (/.f64 1 (/.f64 -1 (-.f64 y z))) (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 1 (/.f64 -1 (-.f64 y z))) (neg.f64 x)))) (fma.f64 (neg.f64 (/.f64 1 (/.f64 -1 (-.f64 y z)))) (neg.f64 x) (*.f64 (/.f64 1 (/.f64 -1 (-.f64 y z))) (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (/.f64 1 (/.f64 -1 (-.f64 y z))) (neg.f64 x)))) (fma.f64 (neg.f64 (/.f64 1 (/.f64 -1 (-.f64 y z)))) (neg.f64 x) (*.f64 (/.f64 1 (/.f64 -1 (-.f64 y z))) (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 1 (/.f64 -1 (-.f64 y z))) (neg.f64 x)))) (fma.f64 (neg.f64 (/.f64 1 (/.f64 -1 (-.f64 y z)))) (neg.f64 x) (*.f64 (/.f64 1 (/.f64 -1 (-.f64 y z))) (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 1 (/.f64 -1 (-.f64 y z))) (neg.f64 x)))) (fma.f64 (neg.f64 (/.f64 1 (/.f64 -1 (-.f64 y z)))) (neg.f64 x) (*.f64 (/.f64 1 (/.f64 -1 (-.f64 y z))) (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z)))) (/.f64 (cbrt.f64 (*.f64 x x)) 1) (*.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z)))) (/.f64 (cbrt.f64 (*.f64 x x)) 1) (*.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z)))) (/.f64 (cbrt.f64 (*.f64 x x)) 1) (*.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z)))) (/.f64 (cbrt.f64 (*.f64 x x)) 1) (*.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z)))) (/.f64 (cbrt.f64 (*.f64 x x)) 1) (*.f64 (/.f64 (cbrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z)))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z)))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z)))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z)))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z)))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (-.f64 y z))) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z))))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z))))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z))))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z))))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z))))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (/.f64 x (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 1 (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) (/.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z))))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z))))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z))))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z))))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z))))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2))) (*.f64 (/.f64 (sqrt.f64 x) (/.f64 1 (cbrt.f64 (-.f64 y z)))) (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 (-.f64 y z) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2)) (/.f64 1 (pow.f64 (-.f64 y z) -1/2))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2))) (/.f64 1 (pow.f64 (-.f64 y z) -1/2)) (*.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2)) (/.f64 1 (pow.f64 (-.f64 y z) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2)) (/.f64 1 (pow.f64 (-.f64 y z) -1/2))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2))) (/.f64 1 (pow.f64 (-.f64 y z) -1/2)) (*.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2)) (/.f64 1 (pow.f64 (-.f64 y z) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2)) (/.f64 1 (pow.f64 (-.f64 y z) -1/2))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2))) (/.f64 1 (pow.f64 (-.f64 y z) -1/2)) (*.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2)) (/.f64 1 (pow.f64 (-.f64 y z) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2)) (/.f64 1 (pow.f64 (-.f64 y z) -1/2))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2))) (/.f64 1 (pow.f64 (-.f64 y z) -1/2)) (*.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2)) (/.f64 1 (pow.f64 (-.f64 y z) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2)) (/.f64 1 (pow.f64 (-.f64 y z) -1/2))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2))) (/.f64 1 (pow.f64 (-.f64 y z) -1/2)) (*.f64 (/.f64 x (pow.f64 (-.f64 y z) -1/2)) (/.f64 1 (pow.f64 (-.f64 y z) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2)) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2))) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2)) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2)) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2))) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2)) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2)) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2))) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2)) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2)) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2))) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2)) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2)) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2))) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 (-.f64 y z) -1/2)) (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (-.f64 y z) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (neg.f64 (-.f64 y z)) (/.f64 x -1)))) (fma.f64 (neg.f64 (neg.f64 (-.f64 y z))) (/.f64 x -1) (*.f64 (neg.f64 (-.f64 y z)) (/.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (neg.f64 (-.f64 y z)) (/.f64 x -1)))) (fma.f64 (neg.f64 (neg.f64 (-.f64 y z))) (/.f64 x -1) (*.f64 (neg.f64 (-.f64 y z)) (/.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (neg.f64 (-.f64 y z)) (/.f64 x -1)))) (fma.f64 (neg.f64 (neg.f64 (-.f64 y z))) (/.f64 x -1) (*.f64 (neg.f64 (-.f64 y z)) (/.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (neg.f64 (-.f64 y z)) (/.f64 x -1)))) (fma.f64 (neg.f64 (neg.f64 (-.f64 y z))) (/.f64 x -1) (*.f64 (neg.f64 (-.f64 y z)) (/.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (neg.f64 (-.f64 y z)) (/.f64 x -1)))) (fma.f64 (neg.f64 (neg.f64 (-.f64 y z))) (/.f64 x -1) (*.f64 (neg.f64 (-.f64 y z)) (/.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (cbrt.f64 (-.f64 y z)) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (-.f64 y z))) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (*.f64 (cbrt.f64 (-.f64 y z)) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (cbrt.f64 (-.f64 y z)) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (-.f64 y z))) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (*.f64 (cbrt.f64 (-.f64 y z)) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (cbrt.f64 (-.f64 y z)) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (-.f64 y z))) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (*.f64 (cbrt.f64 (-.f64 y z)) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 (-.f64 y z)) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (-.f64 y z))) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (*.f64 (cbrt.f64 (-.f64 y z)) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 (-.f64 y z)) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (-.f64 y z))) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (*.f64 (cbrt.f64 (-.f64 y z)) (*.f64 x (pow.f64 (cbrt.f64 (-.f64 y z)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (sqrt.f64 (-.f64 y z)) (*.f64 x (sqrt.f64 (-.f64 y z)))))) (fma.f64 (neg.f64 (sqrt.f64 (-.f64 y z))) (*.f64 x (sqrt.f64 (-.f64 y z))) (*.f64 (sqrt.f64 (-.f64 y z)) (*.f64 x (sqrt.f64 (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (sqrt.f64 (-.f64 y z)) (*.f64 x (sqrt.f64 (-.f64 y z)))))) (fma.f64 (neg.f64 (sqrt.f64 (-.f64 y z))) (*.f64 x (sqrt.f64 (-.f64 y z))) (*.f64 (sqrt.f64 (-.f64 y z)) (*.f64 x (sqrt.f64 (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (sqrt.f64 (-.f64 y z)) (*.f64 x (sqrt.f64 (-.f64 y z)))))) (fma.f64 (neg.f64 (sqrt.f64 (-.f64 y z))) (*.f64 x (sqrt.f64 (-.f64 y z))) (*.f64 (sqrt.f64 (-.f64 y z)) (*.f64 x (sqrt.f64 (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (sqrt.f64 (-.f64 y z)) (*.f64 x (sqrt.f64 (-.f64 y z)))))) (fma.f64 (neg.f64 (sqrt.f64 (-.f64 y z))) (*.f64 x (sqrt.f64 (-.f64 y z))) (*.f64 (sqrt.f64 (-.f64 y z)) (*.f64 x (sqrt.f64 (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (sqrt.f64 (-.f64 y z)) (*.f64 x (sqrt.f64 (-.f64 y z)))))) (fma.f64 (neg.f64 (sqrt.f64 (-.f64 y z))) (*.f64 x (sqrt.f64 (-.f64 y z))) (*.f64 (sqrt.f64 (-.f64 y z)) (*.f64 x (sqrt.f64 (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 x (*.f64 x (-.f64 y z))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 x (*.f64 x (-.f64 y z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 x (*.f64 x (-.f64 y z)))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 x (*.f64 x (-.f64 y z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 x (-.f64 y z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 2) (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (sqrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (/.f64 1 (fma.f64 x x (*.f64 (*.f64 x (-.f64 y z)) (fma.f64 x (-.f64 y z) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 y z)) 2)) (/.f64 1 (fma.f64 x (-.f64 y z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 x (-.f64 y z)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x x (*.f64 (*.f64 x (-.f64 y z)) (fma.f64 x (-.f64 y z) x))) (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 y z)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (-.f64 y z) x) (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 y z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (fma.f64 x x (*.f64 (*.f64 x (-.f64 y z)) (fma.f64 x (-.f64 y z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 y z)) 2)) (fma.f64 x (-.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 y z)) 3))) (neg.f64 (fma.f64 x x (*.f64 (*.f64 x (-.f64 y z)) (fma.f64 x (-.f64 y z) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 y z)) 2))) (neg.f64 (fma.f64 x (-.f64 y z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (neg.f64 (-.f64 y z))) 3)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 x (neg.f64 (-.f64 y z))) 2) (*.f64 x (*.f64 x (neg.f64 (-.f64 y z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (neg.f64 (-.f64 y z))) 2)) (-.f64 x (*.f64 x (neg.f64 (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 x (*.f64 x (-.f64 y z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 x (*.f64 x (-.f64 y z))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x x (*.f64 (*.f64 x (-.f64 y z)) (fma.f64 x (-.f64 y z) x))) (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 y z)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x (-.f64 y z) x) (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 y z)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 x (*.f64 x (-.f64 y z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 x (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 x) (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (*.f64 x (neg.f64 (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (/.f64 1 (pow.f64 (exp.f64 x) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (/.f64 1 (pow.f64 (exp.f64 x) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 x (neg.f64 (-.f64 y z)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 x) (-.f64 y z))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 x (neg.f64 (-.f64 y z)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 x) (-.f64 y z))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 x (*.f64 x (-.f64 y z))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 x (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 x (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 x (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 x (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (neg.f64 (-.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 x (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 x (-.f64 y z))) (fma.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 x (-.f64 y z))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 x (-.f64 y z))) (+.f64 (*.f64 x (neg.f64 (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 x (-.f64 y z))) (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (neg.f64 (-.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 x (-.f64 y z))) 1 (fma.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 x (-.f64 y z))) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 x (-.f64 y z))) 1 (+.f64 (*.f64 x (neg.f64 (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 x (-.f64 y z))) 1 (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2) (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (*.f64 x (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (*.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (*.f64 x (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (*.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 2) (fma.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 2) (+.f64 (*.f64 x (neg.f64 (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 2) (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 2) (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (fma.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 2) (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 2) (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (+.f64 (*.f64 x (neg.f64 (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) 2) (cbrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (-.f64 y z))) (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 x (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (sqrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (fma.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (sqrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (sqrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (+.f64 (*.f64 x (neg.f64 (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (sqrt.f64 (-.f64 x (*.f64 x (-.f64 y z)))) (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 x (-.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 x) (-.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (/.f64 1 (fma.f64 x x (*.f64 (*.f64 x (-.f64 y z)) (fma.f64 x (-.f64 y z) x)))) (fma.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (/.f64 1 (fma.f64 x x (*.f64 (*.f64 x (-.f64 y z)) (fma.f64 x (-.f64 y z) x)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (/.f64 1 (fma.f64 x x (*.f64 (*.f64 x (-.f64 y z)) (fma.f64 x (-.f64 y z) x)))) (+.f64 (*.f64 x (neg.f64 (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (-.f64 y z)) 3)) (/.f64 1 (fma.f64 x x (*.f64 (*.f64 x (-.f64 y z)) (fma.f64 x (-.f64 y z) x)))) (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 y z)) 2)) (/.f64 1 (fma.f64 x (-.f64 y z) x)) (fma.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 y z)) 2)) (/.f64 1 (fma.f64 x (-.f64 y z) x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 y z)) 2)) (/.f64 1 (fma.f64 x (-.f64 y z) x)) (+.f64 (*.f64 x (neg.f64 (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 x (-.f64 y z)) 2)) (/.f64 1 (fma.f64 x (-.f64 y z) x)) (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x (neg.f64 (-.f64 y z)))) 2) (cbrt.f64 (*.f64 x (neg.f64 (-.f64 y z)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (neg.f64 (-.f64 y z)))) (sqrt.f64 (*.f64 x (neg.f64 (-.f64 y z)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 x (-.f64 y z)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 x (-.f64 y z)))) (fma.f64 (*.f64 x (neg.f64 (-.f64 y z))) 1 (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 x (-.f64 y z)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 x (-.f64 y z)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 x (-.f64 y z)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 x (-.f64 y z)))) (+.f64 (*.f64 x (neg.f64 (-.f64 y z))) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 x (-.f64 y z)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 x (-.f64 y z)))) (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 2)) (cbrt.f64 (*.f64 x (-.f64 y z))) x)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y z)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (-.f64 y z))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (-.f64 y z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (-.f64 y z))) (cbrt.f64 (pow.f64 (-.f64 y z) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 y z) -2)) (/.f64 1 (cbrt.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 y z) -1/2) (pow.f64 (-.f64 y z) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 -1 (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (pow.f64 y 3) (pow.f64 z 3))) (fma.f64 y y (*.f64 z (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 y z) (-.f64 y z))) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 y z)) 2)) (/.f64 1 (cbrt.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 y z) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (-.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (-.f64 y z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (-.f64 y z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 y z) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (neg.f64 (-.f64 y z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 y z) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (-.f64 y z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 y z)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (-.f64 y z))) 1))))))

simplify62.0ms (0.3%)

Algorithm
egg-herbie
Rules
772×fma-neg_binary64
749×associate-/l*_binary64
686×fma-def_binary64
630×associate-/r*_binary64
395×associate-*l/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0601077
11761058
2490950
31648908
Stop Event
node limit
Counts
337 → 271
Calls
Call 1
Inputs
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 -1 (*.f64 z x))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 -1 (*.f64 z x))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 -1 (*.f64 z x))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(-.f64 x (*.f64 -1 (*.f64 z x)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y x)) x) (*.f64 -1 (*.f64 z x)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y x)) x) (*.f64 -1 (*.f64 z x)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y x)) x) (*.f64 -1 (*.f64 z x)))
(*.f64 -1 (*.f64 y x))
(-.f64 (+.f64 x (*.f64 -1 (*.f64 y x))) (*.f64 -1 (*.f64 z x)))
(-.f64 (+.f64 x (*.f64 -1 (*.f64 y x))) (*.f64 -1 (*.f64 z x)))
(-.f64 (+.f64 x (*.f64 -1 (*.f64 y x))) (*.f64 -1 (*.f64 z x)))
(*.f64 -1 (*.f64 y x))
(-.f64 (+.f64 x (*.f64 -1 (*.f64 y x))) (*.f64 -1 (*.f64 z x)))
(-.f64 (+.f64 x (*.f64 -1 (*.f64 y x))) (*.f64 -1 (*.f64 z x)))
(-.f64 (+.f64 x (*.f64 -1 (*.f64 y x))) (*.f64 -1 (*.f64 z x)))
(-.f64 x (*.f64 y x))
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(*.f64 z x)
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(*.f64 z x)
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(/.f64 -1 z)
(-.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (/.f64 1 z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 z 3)))) (/.f64 1 z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 z 4))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 z 3))))) (/.f64 1 z))
(/.f64 1 y)
(+.f64 (/.f64 1 y) (/.f64 z (pow.f64 y 2)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (pow.f64 y 2)) (/.f64 (pow.f64 z 2) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 z 3) (pow.f64 y 4)) (/.f64 (pow.f64 z 2) (pow.f64 y 3)))))
(/.f64 1 y)
(+.f64 (/.f64 1 y) (/.f64 z (pow.f64 y 2)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (pow.f64 y 2)) (/.f64 (pow.f64 z 2) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 z 3) (pow.f64 y 4)) (/.f64 (pow.f64 z 2) (pow.f64 y 3)))))
(/.f64 1 y)
(+.f64 (/.f64 1 y) (/.f64 z (pow.f64 y 2)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (pow.f64 y 2)) (/.f64 (pow.f64 z 2) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 z 3) (pow.f64 y 4)) (/.f64 (pow.f64 z 2) (pow.f64 y 3)))))
(/.f64 -1 z)
(-.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (/.f64 1 z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 z 3)))) (/.f64 1 z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 z 4))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 z 3))))) (/.f64 1 z))
(/.f64 -1 z)
(-.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (/.f64 1 z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 z 3)))) (/.f64 1 z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 z 4))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 z 3))))) (/.f64 1 z))
Outputs
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 y z) x)
(*.f64 -1 (*.f64 z x))
(neg.f64 (*.f64 z x))
(*.f64 z (neg.f64 x))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(*.f64 -1 (*.f64 z x))
(neg.f64 (*.f64 z x))
(*.f64 z (neg.f64 x))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(*.f64 -1 (*.f64 z x))
(neg.f64 (*.f64 z x))
(*.f64 z (neg.f64 x))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x)))
(*.f64 (-.f64 y z) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 x (*.f64 -1 (*.f64 z x)))
(-.f64 x (neg.f64 (*.f64 z x)))
(fma.f64 z x x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y x)) x) (*.f64 -1 (*.f64 z x)))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y x)) x) (*.f64 -1 (*.f64 z x)))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y x)) x) (*.f64 -1 (*.f64 z x)))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(-.f64 (+.f64 x (*.f64 -1 (*.f64 y x))) (*.f64 -1 (*.f64 z x)))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 (+.f64 x (*.f64 -1 (*.f64 y x))) (*.f64 -1 (*.f64 z x)))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 (+.f64 x (*.f64 -1 (*.f64 y x))) (*.f64 -1 (*.f64 z x)))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(-.f64 (+.f64 x (*.f64 -1 (*.f64 y x))) (*.f64 -1 (*.f64 z x)))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 (+.f64 x (*.f64 -1 (*.f64 y x))) (*.f64 -1 (*.f64 z x)))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 (+.f64 x (*.f64 -1 (*.f64 y x))) (*.f64 -1 (*.f64 z x)))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 x (*.f64 y x))
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 z x)
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(*.f64 z x)
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(-.f64 (+.f64 (*.f64 z x) x) (*.f64 y x))
(*.f64 x (-.f64 (+.f64 z 1) y))
(-.f64 x (*.f64 (-.f64 y z) x))
(fma.f64 x (-.f64 z y) x)
(/.f64 -1 z)
(-.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (/.f64 1 z))
(-.f64 (neg.f64 (/.f64 y (*.f64 z z))) (/.f64 1 z))
(fma.f64 -1 (/.f64 y (*.f64 z z)) (/.f64 -1 z))
(-.f64 (/.f64 -1 z) (/.f64 y (*.f64 z z)))
(*.f64 (+.f64 (/.f64 y z) 1) (/.f64 -1 z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 z 3)))) (/.f64 1 z))
(-.f64 (*.f64 -1 (+.f64 (/.f64 y (*.f64 z z)) (/.f64 (*.f64 y y) (pow.f64 z 3)))) (/.f64 1 z))
(fma.f64 -1 (+.f64 (/.f64 y (*.f64 z z)) (/.f64 y (/.f64 (pow.f64 z 3) y))) (/.f64 -1 z))
(+.f64 (*.f64 (/.f64 y (*.f64 z z)) (-.f64 -1 (/.f64 y z))) (/.f64 -1 z))
(fma.f64 (/.f64 y (*.f64 z z)) (-.f64 -1 (/.f64 y z)) (/.f64 -1 z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 z 4))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 z 3))))) (/.f64 1 z))
(-.f64 (fma.f64 -1 (/.f64 y (*.f64 z z)) (fma.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 z 4)) (neg.f64 (/.f64 (*.f64 y y) (pow.f64 z 3))))) (/.f64 1 z))
(+.f64 (-.f64 (-.f64 (/.f64 (*.f64 (neg.f64 y) y) (pow.f64 z 3)) (/.f64 (pow.f64 y 3) (pow.f64 z 4))) (/.f64 y (*.f64 z z))) (/.f64 -1 z))
(+.f64 (-.f64 (*.f64 (/.f64 y (*.f64 z z)) (-.f64 -1 (/.f64 y z))) (/.f64 (pow.f64 y 3) (pow.f64 z 4))) (/.f64 -1 z))
(*.f64 (fma.f64 (/.f64 y z) (/.f64 y z) 1) (*.f64 (+.f64 (/.f64 y z) 1) (/.f64 -1 z)))
(/.f64 1 y)
(+.f64 (/.f64 1 y) (/.f64 z (pow.f64 y 2)))
(+.f64 (/.f64 1 y) (/.f64 z (*.f64 y y)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (pow.f64 y 2)) (/.f64 (pow.f64 z 2) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (*.f64 y y)) (/.f64 (*.f64 z z) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (*.f64 (+.f64 (/.f64 z y) 1) (/.f64 z (*.f64 y y))))
(fma.f64 (+.f64 (/.f64 z y) 1) (/.f64 z (*.f64 y y)) (/.f64 1 y))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 z 3) (pow.f64 y 4)) (/.f64 (pow.f64 z 2) (pow.f64 y 3)))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (*.f64 y y)) (+.f64 (/.f64 (*.f64 z z) (pow.f64 y 3)) (/.f64 (pow.f64 z 3) (pow.f64 y 4)))))
(+.f64 (+.f64 (/.f64 1 y) (/.f64 z (*.f64 y y))) (+.f64 (/.f64 (*.f64 z z) (pow.f64 y 3)) (/.f64 (pow.f64 z 3) (pow.f64 y 4))))
(+.f64 (/.f64 1 y) (+.f64 (*.f64 (+.f64 (/.f64 z y) 1) (/.f64 z (*.f64 y y))) (/.f64 (pow.f64 z 3) (pow.f64 y 4))))
(+.f64 (/.f64 1 y) (fma.f64 (+.f64 (/.f64 z y) 1) (/.f64 z (*.f64 y y)) (/.f64 (pow.f64 z 3) (pow.f64 y 4))))
(/.f64 1 y)
(+.f64 (/.f64 1 y) (/.f64 z (pow.f64 y 2)))
(+.f64 (/.f64 1 y) (/.f64 z (*.f64 y y)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (pow.f64 y 2)) (/.f64 (pow.f64 z 2) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (*.f64 y y)) (/.f64 (*.f64 z z) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (*.f64 (+.f64 (/.f64 z y) 1) (/.f64 z (*.f64 y y))))
(fma.f64 (+.f64 (/.f64 z y) 1) (/.f64 z (*.f64 y y)) (/.f64 1 y))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 z 3) (pow.f64 y 4)) (/.f64 (pow.f64 z 2) (pow.f64 y 3)))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (*.f64 y y)) (+.f64 (/.f64 (*.f64 z z) (pow.f64 y 3)) (/.f64 (pow.f64 z 3) (pow.f64 y 4)))))
(+.f64 (+.f64 (/.f64 1 y) (/.f64 z (*.f64 y y))) (+.f64 (/.f64 (*.f64 z z) (pow.f64 y 3)) (/.f64 (pow.f64 z 3) (pow.f64 y 4))))
(+.f64 (/.f64 1 y) (+.f64 (*.f64 (+.f64 (/.f64 z y) 1) (/.f64 z (*.f64 y y))) (/.f64 (pow.f64 z 3) (pow.f64 y 4))))
(+.f64 (/.f64 1 y) (fma.f64 (+.f64 (/.f64 z y) 1) (/.f64 z (*.f64 y y)) (/.f64 (pow.f64 z 3) (pow.f64 y 4))))
(/.f64 1 y)
(+.f64 (/.f64 1 y) (/.f64 z (pow.f64 y 2)))
(+.f64 (/.f64 1 y) (/.f64 z (*.f64 y y)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (pow.f64 y 2)) (/.f64 (pow.f64 z 2) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (*.f64 y y)) (/.f64 (*.f64 z z) (pow.f64 y 3))))
(+.f64 (/.f64 1 y) (*.f64 (+.f64 (/.f64 z y) 1) (/.f64 z (*.f64 y y))))
(fma.f64 (+.f64 (/.f64 z y) 1) (/.f64 z (*.f64 y y)) (/.f64 1 y))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 z 3) (pow.f64 y 4)) (/.f64 (pow.f64 z 2) (pow.f64 y 3)))))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 z (*.f64 y y)) (+.f64 (/.f64 (*.f64 z z) (pow.f64 y 3)) (/.f64 (pow.f64 z 3) (pow.f64 y 4)))))
(+.f64 (+.f64 (/.f64 1 y) (/.f64 z (*.f64 y y))) (+.f64 (/.f64 (*.f64 z z) (pow.f64 y 3)) (/.f64 (pow.f64 z 3) (pow.f64 y 4))))
(+.f64 (/.f64 1 y) (+.f64 (*.f64 (+.f64 (/.f64 z y) 1) (/.f64 z (*.f64 y y))) (/.f64 (pow.f64 z 3) (pow.f64 y 4))))
(+.f64 (/.f64 1 y) (fma.f64 (+.f64 (/.f64 z y) 1) (/.f64 z (*.f64 y y)) (/.f64 (pow.f64 z 3) (pow.f64 y 4))))
(/.f64 -1 z)
(-.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (/.f64 1 z))
(-.f64 (neg.f64 (/.f64 y (*.f64 z z))) (/.f64 1 z))
(fma.f64 -1 (/.f64 y (*.f64 z z)) (/.f64 -1 z))
(-.f64 (/.f64 -1 z) (/.f64 y (*.f64 z z)))
(*.f64 (+.f64 (/.f64 y z) 1) (/.f64 -1 z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 z 3)))) (/.f64 1 z))
(-.f64 (*.f64 -1 (+.f64 (/.f64 y (*.f64 z z)) (/.f64 (*.f64 y y) (pow.f64 z 3)))) (/.f64 1 z))
(fma.f64 -1 (+.f64 (/.f64 y (*.f64 z z)) (/.f64 y (/.f64 (pow.f64 z 3) y))) (/.f64 -1 z))
(+.f64 (*.f64 (/.f64 y (*.f64 z z)) (-.f64 -1 (/.f64 y z))) (/.f64 -1 z))
(fma.f64 (/.f64 y (*.f64 z z)) (-.f64 -1 (/.f64 y z)) (/.f64 -1 z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 z 4))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 z 3))))) (/.f64 1 z))
(-.f64 (fma.f64 -1 (/.f64 y (*.f64 z z)) (fma.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 z 4)) (neg.f64 (/.f64 (*.f64 y y) (pow.f64 z 3))))) (/.f64 1 z))
(+.f64 (-.f64 (-.f64 (/.f64 (*.f64 (neg.f64 y) y) (pow.f64 z 3)) (/.f64 (pow.f64 y 3) (pow.f64 z 4))) (/.f64 y (*.f64 z z))) (/.f64 -1 z))
(+.f64 (-.f64 (*.f64 (/.f64 y (*.f64 z z)) (-.f64 -1 (/.f64 y z))) (/.f64 (pow.f64 y 3) (pow.f64 z 4))) (/.f64 -1 z))
(*.f64 (fma.f64 (/.f64 y z) (/.f64 y z) 1) (*.f64 (+.f64 (/.f64 y z) 1) (/.f64 -1 z)))
(/.f64 -1 z)
(-.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (/.f64 1 z))
(-.f64 (neg.f64 (/.f64 y (*.f64 z z))) (/.f64 1 z))
(fma.f64 -1 (/.f64 y (*.f64 z z)) (/.f64 -1 z))
(-.f64 (/.f64 -1 z) (/.f64 y (*.f64 z z)))
(*.f64 (+.f64 (/.f64 y z) 1) (/.f64 -1 z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 z 3)))) (/.f64 1 z))
(-.f64 (*.f64 -1 (+.f64 (/.f64 y (*.f64 z z)) (/.f64 (*.f64 y y) (pow.f64 z 3)))) (/.f64 1 z))
(fma.f64 -1 (+.f64 (/.f64 y (*.f64 z z)) (/.f64 y (/.f64 (pow.f64 z 3) y))) (/.f64 -1 z))
(+.f64 (*.f64 (/.f64 y (*.f64 z z)) (-.f64 -1 (/.f64 y z))) (/.f64 -1 z))
(fma.f64 (/.f64 y (*.f64 z z)) (-.f64 -1 (/.f64 y z)) (/.f64 -1 z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 y (pow.f64 z 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 z 4))) (*.f64 -1 (/.f64 (pow.f64 y 2) (pow.f64 z 3))))) (/.f64 1 z))
(-.f64 (fma.f64 -1 (/.f64 y (*.f64 z z)) (fma.f64 -1 (/.f64 (pow.f64 y 3) (pow.f64 z 4)) (neg.f64 (/.f64 (*.f64 y y) (pow.f64 z 3))))) (/.f64 1 z))
(+.f64 (-.f64 (-.f64 (/.f64 (*.f64 (neg.f64 y) y) (pow.f64 z 3)) (/.f64 (pow.f64 y 3) (pow.f64 z 4))) (/.f64 y (*.f64 z z))) (/.f64 -1 z))
(+.f64 (-.f64 (*.f64 (/.f64 y (*.f64 z z)) (-.f64 -1 (/.f64 y z))) (/.f64 (pow.f64 y 3) (pow.f64 z 4))) (/.f64 -1 z))
(*.f64 (fma.f64 (/.f64 y z) (/.f64 y z) 1) (*.f64 (+.f64 (/.f64 y z) 1) (/.f64 -1 z)))

eval126.0ms (0.7%)

Compiler

Compiled 9577 to 3012 computations (68.5% saved)

prune166.0ms (0.9%)

Pruning

20 alts after pruning (12 fresh and 8 done)

PrunedKeptTotal
New4854489
Fresh4812
Picked011
Done178
Total49020510
Error
0b
Counts
510 → 20
Alt Table
Click to see full alt table
StatusErrorProgram
25.6b
(+.f64 x (*.f64 (/.f64 1 (+.f64 y z)) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))))
34.9b
(pow.f64 (cbrt.f64 (*.f64 t (-.f64 y z))) 3)
20.7b
(+.f64 x (/.f64 t (/.f64 1 (-.f64 y z))))
47.6b
(*.f64 y t)
39.1b
(-.f64 x (*.f64 y x))
28.6b
(-.f64 x (/.f64 x (/.f64 1 (-.f64 y z))))
28.5b
(+.f64 (*.f64 (-.f64 z y) x) x)
49.4b
(*.f64 z (neg.f64 t))
33.9b
(+.f64 (*.f64 y t) x)
34.4b
(*.f64 t (-.f64 y z))
15.2b
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
35.9b
(+.f64 x (*.f64 t (neg.f64 z)))
38.7b
(*.f64 z (-.f64 x t))
37.7b
(*.f64 (-.f64 t x) y)
48.9b
x
38.7b
(+.f64 (*.f64 z x) (*.f64 z (neg.f64 t)))
51.9b
(*.f64 z x)
52.4b
(*.f64 y (neg.f64 x))
38.3b
(*.f64 (+.f64 1 z) x)
37.7b
(+.f64 (*.f64 y t) (*.f64 y (neg.f64 x)))
Compiler

Compiled 209 to 142 computations (32.1% saved)

regimes171.0ms (0.9%)

Counts
42 → 1
Calls
Call 1
Inputs
x
x
(*.f64 z x)
(*.f64 y t)
(*.f64 y (neg.f64 x))
(*.f64 z (neg.f64 t))
(*.f64 x (neg.f64 y))
(*.f64 t (neg.f64 z))
(-.f64 x (*.f64 y x))
(+.f64 (*.f64 y t) x)
(*.f64 (+.f64 1 z) x)
(+.f64 (*.f64 z x) x)
(*.f64 x (-.f64 1 y))
(*.f64 z (-.f64 x t))
(*.f64 (-.f64 t x) y)
(*.f64 t (-.f64 y z))
(*.f64 z (-.f64 x t))
(+.f64 x (*.f64 t (neg.f64 z)))
(+.f64 x (*.f64 x (neg.f64 y)))
(+.f64 (*.f64 (-.f64 z y) x) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
(+.f64 x (*.f64 t (-.f64 y z)))
(+.f64 x (*.f64 x (-.f64 z y)))
(+.f64 (*.f64 z x) (*.f64 z (neg.f64 t)))
(+.f64 (*.f64 y t) (*.f64 y (neg.f64 x)))
(+.f64 x (/.f64 t (/.f64 1 (-.f64 y z))))
(-.f64 x (/.f64 x (/.f64 1 (-.f64 y z))))
(*.f64 (+.f64 1 (*.f64 -1 (-.f64 y z))) x)
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 z x) x))
(+.f64 x (+.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x))))
(+.f64 x (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x)) (+.f64 y z)))
(+.f64 x (*.f64 (/.f64 1 (+.f64 y z)) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 t x))))
(fma.f64 z (-.f64 x t) x)
(fma.f64 (-.f64 t x) y x)
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(-.f64 x (fma.f64 x (-.f64 y z) (*.f64 t z)))
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 t (neg.f64 z))))
(+.f64 x (fma.f64 (neg.f64 (-.f64 y z)) x (*.f64 (-.f64 y z) t)))
(/.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 y z) (-.f64 t x))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y z) (-.f64 t x)) 2))))
(pow.f64 (cbrt.f64 (*.f64 t (-.f64 y z))) 3)
(+.f64 x (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (-.f64 t x))) 3))
Outputs
(fma.f64 (-.f64 y z) (-.f64 t x) x)
Calls

6 calls:

40.0ms
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
25.0ms
y
23.0ms
x
22.0ms
(-.f64 y z)
21.0ms
z
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
0.0b1(-.f64 y z)
Compiler

Compiled 366 to 132 computations (63.9% saved)

regimes210.0ms (1.1%)

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

6 calls:

33.0ms
x
33.0ms
(-.f64 y z)
32.0ms
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
32.0ms
y
32.0ms
z
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
0.0b1(-.f64 y z)
Compiler

Compiled 278 to 109 computations (60.8% saved)

regimes319.0ms (1.7%)

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

6 calls:

126.0ms
y
80.0ms
x
52.0ms
z
17.0ms
t
16.0ms
(-.f64 y z)
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
0.0b1(-.f64 y z)
Compiler

Compiled 216 to 92 computations (57.4% saved)

regimes1.5s (8.1%)

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

6 calls:

374.0ms
(-.f64 y z)
333.0ms
(-.f64 y z)
321.0ms
y
196.0ms
t
179.0ms
z
Results
ErrorSegmentsBranch
9.9b3x
10.7b4y
13.4b3z
8.1b5t
14.2b8(-.f64 y z)
14.2b8(-.f64 y z)
Compiler

Compiled 190 to 83 computations (56.3% saved)

bsearch216.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
36.0ms
2.4112263516040276e-94
2.8578186823382596e-93
31.0ms
-2.501562771751601e-127
-3.2382065393645955e-129
113.0ms
-4.043733290272684e-84
-3.652592478288293e-90
37.0ms
-1.8634304916030509e-13
-7.039040487276624e-19
Compiler

Compiled 20 to 14 computations (30% saved)

regimes1.5s (8%)

Counts
21 → 7
Calls
Call 1
Inputs
x
x
(*.f64 z x)
(*.f64 y t)
(*.f64 y (neg.f64 x))
(*.f64 z (neg.f64 t))
(*.f64 x (neg.f64 y))
(*.f64 t (neg.f64 z))
(-.f64 x (*.f64 y x))
(+.f64 (*.f64 y t) x)
(*.f64 (+.f64 1 z) x)
(+.f64 (*.f64 z x) x)
(*.f64 x (-.f64 1 y))
(*.f64 z (-.f64 x t))
(*.f64 (-.f64 t x) y)
(*.f64 t (-.f64 y z))
(*.f64 z (-.f64 x t))
(+.f64 x (*.f64 t (neg.f64 z)))
(+.f64 x (*.f64 x (neg.f64 y)))
(+.f64 (*.f64 (-.f64 z y) x) x)
(*.f64 (-.f64 (+.f64 1 z) y) x)
Outputs
(*.f64 t (-.f64 y z))
(+.f64 (*.f64 (-.f64 z y) x) x)
(+.f64 (*.f64 y t) x)
(+.f64 (*.f64 (-.f64 z y) x) x)
(+.f64 (*.f64 y t) x)
(+.f64 (*.f64 (-.f64 z y) x) x)
(*.f64 t (-.f64 y z))
Calls

6 calls:

438.0ms
t
366.0ms
(-.f64 y z)
294.0ms
(-.f64 y z)
161.0ms
y
143.0ms
z
Results
ErrorSegmentsBranch
12.7b3x
14.1b4y
14.8b5z
11.5b7t
15.3b12(-.f64 y z)
15.3b12(-.f64 y z)
Compiler

Compiled 133 to 65 computations (51.1% saved)

bsearch462.0ms (2.5%)

Algorithm
binary-search
Steps
TimeLeftRight
46.0ms
9.751147846242511e-67
4.676433605406361e-65
206.0ms
-2.501562771751601e-127
-3.2382065393645955e-129
42.0ms
-4.043733290272684e-84
-3.652592478288293e-90
23.0ms
-1.8634304916030509e-13
-7.039040487276624e-19
19.0ms
-396863541848.92395
-1779597157.1859493
126.0ms
-3.818021561873065e+75
-1.8290726262579014e+68
Compiler

Compiled 218 to 149 computations (31.7% saved)

regimes1.2s (6.3%)

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

6 calls:

437.0ms
(-.f64 y z)
356.0ms
(-.f64 y z)
159.0ms
t
78.0ms
x
50.0ms
z
Results
ErrorSegmentsBranch
16.1b7x
14.1b4y
14.9b5z
17.6b8t
16.4b10(-.f64 y z)
16.4b10(-.f64 y z)
Compiler

Compiled 119 to 58 computations (51.3% saved)

bsearch95.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
19.0ms
9.693468110927702e+21
3.317163831141553e+22
52.0ms
1.168536305781518e-79
7.985480372912337e-77
24.0ms
-6.117468417710365e+31
-1.406605600899239e+22
Compiler

Compiled 20 to 14 computations (30% saved)

regimes1.2s (6.7%)

Counts
17 → 5
Calls
Call 1
Inputs
x
x
(*.f64 z x)
(*.f64 y t)
(*.f64 y (neg.f64 x))
(*.f64 z (neg.f64 t))
(*.f64 x (neg.f64 y))
(*.f64 t (neg.f64 z))
(-.f64 x (*.f64 y x))
(+.f64 (*.f64 y t) x)
(*.f64 (+.f64 1 z) x)
(+.f64 (*.f64 z x) x)
(*.f64 x (-.f64 1 y))
(*.f64 z (-.f64 x t))
(*.f64 (-.f64 t x) y)
(*.f64 t (-.f64 y z))
(*.f64 z (-.f64 x t))
Outputs
(*.f64 z (-.f64 x t))
(+.f64 (*.f64 y t) x)
(*.f64 z (-.f64 x t))
(*.f64 (-.f64 t x) y)
(*.f64 z (-.f64 x t))
Calls

6 calls:

318.0ms
(-.f64 y z)
272.0ms
z
213.0ms
t
178.0ms
y
161.0ms
(-.f64 y z)
Results
ErrorSegmentsBranch
16.1b7x
15.1b9y
14.9b5z
17.6b8t
16.4b10(-.f64 y z)
16.4b10(-.f64 y z)
Compiler

Compiled 107 to 56 computations (47.7% saved)

bsearch162.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
48.0ms
4.8015766641206366e+110
2.4529006004616905e+114
68.0ms
6.303397790622045e+78
2.569267831430597e+80
27.0ms
2.5867379082486357e-32
9.473462022323226e-32
19.0ms
-3.6248184983166162e-6
-5.59904563625452e-17
Compiler

Compiled 320 to 224 computations (30% saved)

regimes257.0ms (1.4%)

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

4 calls:

109.0ms
y
63.0ms
t
48.0ms
x
34.0ms
z
Results
ErrorSegmentsBranch
22.5b6x
22.2b10y
15.9b3z
23.4b7t
Compiler

Compiled 78 to 42 computations (46.2% saved)

bsearch42.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
20.0ms
2.5867379082486357e-32
9.473462022323226e-32
21.0ms
-3.6248184983166162e-6
-5.59904563625452e-17
Compiler

Compiled 20 to 14 computations (30% saved)

regimes188.0ms (1%)

Counts
13 → 7
Calls
Call 1
Inputs
x
x
(*.f64 z x)
(*.f64 y t)
(*.f64 y (neg.f64 x))
(*.f64 z (neg.f64 t))
(*.f64 x (neg.f64 y))
(*.f64 t (neg.f64 z))
(-.f64 x (*.f64 y x))
(+.f64 (*.f64 y t) x)
(*.f64 (+.f64 1 z) x)
(+.f64 (*.f64 z x) x)
(*.f64 x (-.f64 1 y))
Outputs
(+.f64 (*.f64 y t) x)
(*.f64 (+.f64 1 z) x)
(+.f64 (*.f64 y t) x)
(*.f64 (+.f64 1 z) x)
(-.f64 x (*.f64 y x))
(+.f64 (*.f64 y t) x)
(*.f64 z (neg.f64 t))
Calls

4 calls:

62.0ms
t
47.0ms
y
43.0ms
z
33.0ms
x
Results
ErrorSegmentsBranch
24.7b5x
25.0b6y
24.9b5z
23.4b7t
Compiler

Compiled 73 to 40 computations (45.2% saved)

bsearch234.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
115.0ms
2.3264207535386067e+67
8.902877968883539e+70
19.0ms
1.0211797162069412e-91
3.910063926466699e-91
19.0ms
2.6268324697022955e-229
1.1198903870046004e-219
23.0ms
-2.501562771751601e-127
-3.2382065393645955e-129
34.0ms
-6.1253058092683645e-61
-2.1097512925774977e-69
24.0ms
-1.8634304916030509e-13
-7.039040487276624e-19
Compiler

Compiled 172 to 126 computations (26.7% saved)

regimes158.0ms (0.9%)

Counts
10 → 6
Calls
Call 1
Inputs
x
x
(*.f64 z x)
(*.f64 y t)
(*.f64 y (neg.f64 x))
(*.f64 z (neg.f64 t))
(*.f64 x (neg.f64 y))
(*.f64 t (neg.f64 z))
(-.f64 x (*.f64 y x))
(+.f64 (*.f64 y t) x)
Outputs
(*.f64 z (neg.f64 t))
(*.f64 z x)
(*.f64 z (neg.f64 t))
(+.f64 (*.f64 y t) x)
(*.f64 z (neg.f64 t))
(*.f64 z x)
Calls

4 calls:

55.0ms
y
42.0ms
z
30.0ms
t
28.0ms
x
Results
ErrorSegmentsBranch
26.5b5x
27.5b8y
24.1b6z
26.6b4t
Compiler

Compiled 58 to 33 computations (43.1% saved)

bsearch276.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
61.0ms
2.569267831430597e+80
4.219425752168548e+81
18.0ms
2.5867379082486357e-32
9.473462022323226e-32
19.0ms
-6.393020503804921e-21
-4.2639266358459603e-38
19.0ms
-27333242142430776.0
-652112793157.9822
159.0ms
-1.1021249173541784e+52
-8.899235833141029e+46
Compiler

Compiled 292 to 222 computations (24% saved)

regimes181.0ms (1%)

Counts
9 → 11
Calls
Call 1
Inputs
x
x
(*.f64 z x)
(*.f64 y t)
(*.f64 y (neg.f64 x))
(*.f64 z (neg.f64 t))
(*.f64 x (neg.f64 y))
(*.f64 t (neg.f64 z))
(-.f64 x (*.f64 y x))
Outputs
(*.f64 z (neg.f64 t))
(*.f64 z x)
(*.f64 z (neg.f64 t))
(-.f64 x (*.f64 y x))
(*.f64 y t)
(-.f64 x (*.f64 y x))
(*.f64 y t)
(-.f64 x (*.f64 y x))
(*.f64 z (neg.f64 t))
(*.f64 y (neg.f64 x))
(*.f64 z x)
Calls

4 calls:

64.0ms
z
53.0ms
y
38.0ms
t
23.0ms
x
Results
ErrorSegmentsBranch
28.8b4x
29.8b9y
25.3b11z
30.0b7t
Compiler

Compiled 53 to 32 computations (39.6% saved)

bsearch633.0ms (3.5%)

Algorithm
10×binary-search
Steps
TimeLeftRight
93.0ms
2.8551886865131514e+85
3.597191157939357e+86
136.0ms
6.303397790622045e+78
2.569267831430597e+80
35.0ms
974.1585910149532
305776.41932169726
36.0ms
8.287880415110765e-250
5.415722196431918e-248
36.0ms
6.285836421106061e-279
1.178728292582594e-276
35.0ms
-1.9953223320530253e-275
-2.063930335436201e-276
36.0ms
-5.707731469368165e-249
-1.63122444562747e-257
29.0ms
-4.2639266358459603e-38
-8.692184014163234e-41
35.0ms
-27333242142430776.0
-652112793157.9822
161.0ms
-1.1021249173541784e+52
-8.899235833141029e+46
Compiler

Compiled 401 to 307 computations (23.4% saved)

regimes352.0ms (1.9%)

Counts
8 → 9
Calls
Call 1
Inputs
x
x
(*.f64 z x)
(*.f64 y t)
(*.f64 y (neg.f64 x))
(*.f64 z (neg.f64 t))
(*.f64 x (neg.f64 y))
(*.f64 t (neg.f64 z))
Outputs
(*.f64 y t)
x
(*.f64 z (neg.f64 t))
x
(*.f64 z (neg.f64 t))
x
(*.f64 z x)
(*.f64 y t)
(*.f64 y (neg.f64 x))
Calls

4 calls:

117.0ms
z
105.0ms
y
73.0ms
t
53.0ms
x
Results
ErrorSegmentsBranch
34.2b5x
30.1b9y
32.2b10z
35.5b7t
Compiler

Compiled 48 to 30 computations (37.5% saved)

bsearch214.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
77.0ms
7.153089959207463e+72
4.87000925373186e+74
18.0ms
3.725795680363493e+22
2.4974255933051184e+23
18.0ms
1.168536305781518e-79
7.985480372912337e-77
18.0ms
5.603206918980996e-144
1.3101009616331597e-142
19.0ms
1.672665252247644e-296
2.502957570320874e-293
18.0ms
-2.0783798613577392e-256
-8.666696001252821e-257
19.0ms
-1.8046586632987013e-236
-1.6706993835219422e-238
27.0ms
-1.0929092677532016e-17
-9.063480212144858e-23
Compiler

Compiled 139 to 105 computations (24.5% saved)

regimes90.0ms (0.5%)

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

4 calls:

29.0ms
t
24.0ms
y
20.0ms
z
15.0ms
x
Results
ErrorSegmentsBranch
36.2b4x
33.2b5y
36.6b5z
36.5b7t
Compiler

Compiled 36 to 24 computations (33.3% saved)

bsearch127.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
74.0ms
7.153089959207463e+72
4.87000925373186e+74
18.0ms
3.725795680363493e+22
2.4974255933051184e+23
18.0ms
1.168536305781518e-79
7.985480372912337e-77
18.0ms
-1.0929092677532016e-17
-9.063480212144858e-23
Compiler

Compiled 139 to 105 computations (24.5% saved)

regimes71.0ms (0.4%)

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

4 calls:

21.0ms
t
18.0ms
z
17.0ms
x
14.0ms
y
Results
ErrorSegmentsBranch
37.3b5x
35.8b4y
36.6b5z
37.8b6t
Compiler

Compiled 32 to 22 computations (31.3% saved)

bsearch54.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
18.0ms
3.725795680363493e+22
2.4974255933051184e+23
18.0ms
1.168536305781518e-79
7.985480372912337e-77
18.0ms
-1.0929092677532016e-17
-9.063480212144858e-23
Compiler

Compiled 20 to 14 computations (30% saved)

regimes43.0ms (0.2%)

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

4 calls:

12.0ms
t
10.0ms
z
10.0ms
y
10.0ms
x
Results
ErrorSegmentsBranch
47.2b3x
44.2b3y
38.6b3z
46.7b3t
Compiler

Compiled 29 to 21 computations (27.6% saved)

bsearch36.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
18.0ms
2.3860898821604816e-28
974.1585910149532
18.0ms
-3.6248184983166162e-6
-5.59904563625452e-17
Compiler

Compiled 20 to 14 computations (30% saved)

regimes14.0ms (0.1%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0.0b (-0%)

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

4 calls:

3.0ms
z
3.0ms
y
3.0ms
x
3.0ms
t
Results
ErrorSegmentsBranch
48.9b1x
48.9b1y
48.9b1z
48.9b1t
Compiler

Compiled 26 to 20 computations (23.1% saved)

simplify82.0ms (0.5%)

Algorithm
egg-herbie
Rules
111×distribute-rgt-neg-in_binary64
99×cancel-sign-sub-inv_binary64
72×distribute-lft-neg-in_binary64
72×distribute-lft-neg-out_binary64
72×neg-sub0_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0166798
1212794
2242794
3259794
4278794
5303794
6337794
7381794
8436794
9563794
10714794
11848794
12968794
131019794
141027794
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 x (+.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x))))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(if (<=.f64 t -14763617382276200/79228162514264337593543950336) (+.f64 x (*.f64 t (-.f64 y z))) (if (<=.f64 t -4422329284989061/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) (+.f64 (*.f64 (-.f64 z y) x) x) (if (<=.f64 t -780924995624001536/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (+.f64 x (*.f64 t (-.f64 y z))) (if (<=.f64 t 566286776344845/2348542582773833227889480596789337027375682548908319870707290971532209025114608443463698998384768703031934976) (+.f64 (*.f64 (-.f64 z y) x) x) (+.f64 x (*.f64 t (-.f64 y z)))))))
(if (<=.f64 t -3800000000000000243106032854800395460471132228635823791314029374573048233984) (*.f64 t (-.f64 y z)) (if (<=.f64 t -3251106134826385/8192) (+.f64 (*.f64 (-.f64 z y) x) x) (if (<=.f64 t -14763617382276200/79228162514264337593543950336) (+.f64 (*.f64 y t) x) (if (<=.f64 t -4422329284989061/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) (+.f64 (*.f64 (-.f64 z y) x) x) (if (<=.f64 t -780924995624001536/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (+.f64 (*.f64 y t) x) (if (<=.f64 t 462481728134503/474284397516047136454946754595585670566993857190463750305618264096412179005177856) (+.f64 (*.f64 (-.f64 z y) x) x) (*.f64 t (-.f64 y z))))))))
(if (<=.f64 y -61174684177103650192660390477824) (*.f64 (-.f64 t x) y) (if (<=.f64 y 249597840015223488/2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576) (+.f64 x (*.f64 t (neg.f64 z))) (if (<=.f64 y 9693468110927702261760) (*.f64 z (-.f64 x t)) (*.f64 (-.f64 t x) y))))
(if (<=.f64 z -4279430345734067/1180591620717411303424) (*.f64 z (-.f64 x t)) (if (<=.f64 z 37805216882512960/1461501637330902918203684832716283019655932542976) (+.f64 (*.f64 y t) x) (if (<=.f64 z 6399999999999999889808721443493494831855849261697017443454407693939913862938624) (*.f64 z (-.f64 x t)) (if (<=.f64 z 2400000000000000037342598710720423258243683352610547440087449393034001074795413687835964935796113874422895074082816) (*.f64 (-.f64 t x) y) (*.f64 z (-.f64 x t))))))
(if (<=.f64 z -4279430345734067/1180591620717411303424) (*.f64 z (-.f64 x t)) (if (<=.f64 z 37805216882512960/1461501637330902918203684832716283019655932542976) (+.f64 (*.f64 y t) x) (*.f64 z (-.f64 x t))))
(if (<=.f64 t -14763617382276200/79228162514264337593543950336) (+.f64 (*.f64 y t) x) (if (<=.f64 t -70926195687265376/115792089237316195423570985008687907853269984665640564039457584007913129639936) (*.f64 (+.f64 1 z) x) (if (<=.f64 t -780924995624001536/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (+.f64 (*.f64 y t) x) (if (<=.f64 t 3587226996885983/13656093558537941553315536467397135968552465044102979912491535998492748263050510482475893147384943187441520456895351276433180265787636459684584153195173539934402882722844701815732384329547395122644920353046295760858502651980751792724303620866048) (*.f64 (+.f64 1 z) x) (if (<=.f64 t 1873659412638203/18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992) (-.f64 x (*.f64 y x)) (if (<=.f64 t 88000000000000000252784238111017257668548839447657197610646004947746816) (+.f64 (*.f64 y t) x) (*.f64 z (neg.f64 t))))))))
(if (<=.f64 z -90000000000000001917884913691690719522339160064) (*.f64 z (neg.f64 t)) (if (<=.f64 z -27333242142430776) (*.f64 z x) (if (<=.f64 z -2175432148808828928/340282366920938463463374607431768211456) (*.f64 z (neg.f64 t)) (if (<=.f64 z 37805216882512960/1461501637330902918203684832716283019655932542976) (+.f64 (*.f64 y t) x) (if (<=.f64 z 4199999999999999711508812229219162195296324719516745105160030701536513925129961472) (*.f64 z (neg.f64 t)) (*.f64 z x))))))
(if (<=.f64 z -90000000000000001917884913691690719522339160064) (*.f64 z (neg.f64 t)) (if (<=.f64 z -27333242142430776) (*.f64 z x) (if (<=.f64 z -8168060695016531/191561942608236107294793378393788647952342390272950272) (*.f64 z (neg.f64 t)) (if (<=.f64 z -5751349106708787/1007641851683931820587806291420968258893675472328417820220872324040744595635843008946260940337480903424595632540239579541935629958157893251896932560850028184716008537290582817399466548302510149103210893455908181007667595468047259786297601506742546990374638711734272) (-.f64 x (*.f64 y x)) (if (<=.f64 z -3111206828770507/155925024182399985285654118206003012974019629721520120429886503315407179052262817639449841054112164147604878659702538690935346717843249504745247796741002454712500443199303568477932634487840858373644793495667494061978969566806317999131941817847503449805243820849668440753309257439870625775616) (*.f64 y t) (if (<=.f64 z 8029136453366359/1277337798102220679460078536343576682283168806678692826561630235159815610796137002102373097915286848697179165980283196956142360312571899942873069950902292109004803630688694832971224141724392311796898148316508111355731718691277357048888867371806748260804557380400483866651109436947420166353846272) (-.f64 x (*.f64 y x)) (if (<=.f64 z 1670243033603441/2015283703367863641175612582841936517787350944656835640441744648081489191271686017892521880674961806849191265080479159083871259916315786503793865121700056369432017074581165634798933096605020298206421786911816362015335190936094519572595203013485093980749277423468544) (*.f64 y t) (if (<=.f64 z 8568789584950607/8796093022208) (-.f64 x (*.f64 y x)) (if (<=.f64 z 6399999999999999889808721443493494831855849261697017443454407693939913862938624) (*.f64 z (neg.f64 t)) (if (<=.f64 z 350000000000000018924236024317333135709026770306680175649731719850201837812950323167232) (*.f64 y (neg.f64 x)) (*.f64 z x)))))))))))
(if (<=.f64 y -443336668563949/40564819207303340847894502572032) (*.f64 y t) (if (<=.f64 y -4134675685108397/229111231347799689635350271469398707925773913377365220235531597618488512042823233274762274126597027003434876073751997760595174886056587013603560208332516636964102994463833696818134410091831830209960320065853961979807444428853900668922870296851794362368) x (if (<=.f64 y -7027178972017893/33810849992682575766549746234657062817206228866311777416189485377707129763630391006362704376810060025259161279568456235448470243808171874384034494621628132922136747775936325386798817131291292227393550906125516057865473810736099951285657401521090334495330469177455231893504) (*.f64 z (neg.f64 t)) (if (<=.f64 y 6158210746139307/368167554019802297902961703073592265444961685287384386095984806211036520049665972495786961556290633771253993225976613596485201446531925242865351537949643006725668645734124513845866945743352000756639913885870091814580532597437363981258574050387614181710541845882032738795411959682006458992302809763070411033018368) x (if (<=.f64 y 4923504863570993/878694100496718043517683302282418331810487718418343092402491322775749527474899974671687634004666183037093927858109549828751614463963730408009475621262727315456) (*.f64 z (neg.f64 t)) (if (<=.f64 y 249597840015223488/2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576) x (if (<=.f64 y 37257956803634928812032) (*.f64 z x) (if (<=.f64 y 480000000000000016964581403128159438397993544383529167857667579435341053952) (*.f64 y t) (*.f64 y (neg.f64 x))))))))))
(if (<=.f64 y -443336668563949/40564819207303340847894502572032) (*.f64 y t) (if (<=.f64 y 249597840015223488/2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576) x (if (<=.f64 y 37257956803634928812032) (*.f64 z x) (if (<=.f64 y 480000000000000016964581403128159438397993544383529167857667579435341053952) (*.f64 y t) (*.f64 y (neg.f64 x))))))
(if (<=.f64 y -443336668563949/40564819207303340847894502572032) (*.f64 y t) (if (<=.f64 y 249597840015223488/2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576) x (if (<=.f64 y 37257956803634928812032) (*.f64 z x) (*.f64 y t))))
(if (<=.f64 z -4279430345734067/1180591620717411303424) (*.f64 z x) (if (<=.f64 z 2660579124142643/11150372599265311570767859136324180752990208) x (*.f64 z x)))
x
Outputs
(fma.f64 (-.f64 y z) (-.f64 t x) x)
(+.f64 x (+.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) (neg.f64 x))))
(+.f64 x (+.f64 (*.f64 (-.f64 y z) (neg.f64 x)) (*.f64 (-.f64 y z) t)))
(+.f64 x (-.f64 (*.f64 (-.f64 y z) t) (*.f64 (-.f64 y z) x)))
(+.f64 x (+.f64 (*.f64 x (-.f64 z y)) (*.f64 (-.f64 y z) t)))
(+.f64 x (*.f64 (-.f64 y z) (-.f64 t x)))
(if (<=.f64 t -14763617382276200/79228162514264337593543950336) (+.f64 x (*.f64 t (-.f64 y z))) (if (<=.f64 t -4422329284989061/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) (+.f64 (*.f64 (-.f64 z y) x) x) (if (<=.f64 t -780924995624001536/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (+.f64 x (*.f64 t (-.f64 y z))) (if (<=.f64 t 566286776344845/2348542582773833227889480596789337027375682548908319870707290971532209025114608443463698998384768703031934976) (+.f64 (*.f64 (-.f64 z y) x) x) (+.f64 x (*.f64 t (-.f64 y z)))))))
(if (<=.f64 t -1845452172784525/9903520314283042199192993792) (+.f64 x (*.f64 (-.f64 y z) t)) (if (<=.f64 t -4422329284989061/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) (+.f64 x (*.f64 x (-.f64 z y))) (if (<=.f64 t -95327758254883/381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928) (+.f64 x (*.f64 (-.f64 y z) t)) (if (<=.f64 t 566286776344845/2348542582773833227889480596789337027375682548908319870707290971532209025114608443463698998384768703031934976) (+.f64 x (*.f64 x (-.f64 z y))) (+.f64 x (*.f64 (-.f64 y z) t))))))
(if (<=.f64 t -3800000000000000243106032854800395460471132228635823791314029374573048233984) (*.f64 t (-.f64 y z)) (if (<=.f64 t -3251106134826385/8192) (+.f64 (*.f64 (-.f64 z y) x) x) (if (<=.f64 t -14763617382276200/79228162514264337593543950336) (+.f64 (*.f64 y t) x) (if (<=.f64 t -4422329284989061/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) (+.f64 (*.f64 (-.f64 z y) x) x) (if (<=.f64 t -780924995624001536/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (+.f64 (*.f64 y t) x) (if (<=.f64 t 462481728134503/474284397516047136454946754595585670566993857190463750305618264096412179005177856) (+.f64 (*.f64 (-.f64 z y) x) x) (*.f64 t (-.f64 y z))))))))
(if (<=.f64 t -3800000000000000243106032854800395460471132228635823791314029374573048233984) (*.f64 (-.f64 y z) t) (if (<=.f64 t -3251106134826385/8192) (+.f64 x (*.f64 x (-.f64 z y))) (if (<=.f64 t -1845452172784525/9903520314283042199192993792) (+.f64 x (*.f64 y t)) (if (<=.f64 t -4422329284989061/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) (+.f64 x (*.f64 x (-.f64 z y))) (if (<=.f64 t -95327758254883/381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928) (+.f64 x (*.f64 y t)) (if (<=.f64 t 462481728134503/474284397516047136454946754595585670566993857190463750305618264096412179005177856) (+.f64 x (*.f64 x (-.f64 z y))) (*.f64 (-.f64 y z) t)))))))
(if (<=.f64 y -61174684177103650192660390477824) (*.f64 (-.f64 t x) y) (if (<=.f64 y 249597840015223488/2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576) (+.f64 x (*.f64 t (neg.f64 z))) (if (<=.f64 y 9693468110927702261760) (*.f64 z (-.f64 x t)) (*.f64 (-.f64 t x) y))))
(if (<=.f64 y -61174684177103650192660390477824) (*.f64 y (-.f64 t x)) (if (<=.f64 y 3899966250237867/33374797436264220037422214158899251790667258161822699530422525122222183215322508594108782608384) (+.f64 x (*.f64 t (neg.f64 z))) (if (<=.f64 y 9693468110927702261760) (*.f64 z (-.f64 x t)) (*.f64 y (-.f64 t x)))))
(if (<=.f64 y -61174684177103650192660390477824) (*.f64 y (-.f64 t x)) (if (<=.f64 y 3899966250237867/33374797436264220037422214158899251790667258161822699530422525122222183215322508594108782608384) (-.f64 x (*.f64 z t)) (if (<=.f64 y 9693468110927702261760) (*.f64 z (-.f64 x t)) (*.f64 y (-.f64 t x)))))
(if (<=.f64 z -4279430345734067/1180591620717411303424) (*.f64 z (-.f64 x t)) (if (<=.f64 z 37805216882512960/1461501637330902918203684832716283019655932542976) (+.f64 (*.f64 y t) x) (if (<=.f64 z 6399999999999999889808721443493494831855849261697017443454407693939913862938624) (*.f64 z (-.f64 x t)) (if (<=.f64 z 2400000000000000037342598710720423258243683352610547440087449393034001074795413687835964935796113874422895074082816) (*.f64 (-.f64 t x) y) (*.f64 z (-.f64 x t))))))
(if (<=.f64 z -4279430345734067/1180591620717411303424) (*.f64 z (-.f64 x t)) (if (<=.f64 z 590706513789265/22835963083295358096932575511191922182123945984) (+.f64 x (*.f64 y t)) (if (<=.f64 z 6399999999999999889808721443493494831855849261697017443454407693939913862938624) (*.f64 z (-.f64 x t)) (if (<=.f64 z 2400000000000000037342598710720423258243683352610547440087449393034001074795413687835964935796113874422895074082816) (*.f64 y (-.f64 t x)) (*.f64 z (-.f64 x t))))))
(if (<=.f64 z -4279430345734067/1180591620717411303424) (*.f64 z (-.f64 x t)) (if (<=.f64 z 37805216882512960/1461501637330902918203684832716283019655932542976) (+.f64 (*.f64 y t) x) (*.f64 z (-.f64 x t))))
(if (<=.f64 z -4279430345734067/1180591620717411303424) (*.f64 z (-.f64 x t)) (if (<=.f64 z 590706513789265/22835963083295358096932575511191922182123945984) (+.f64 x (*.f64 y t)) (*.f64 z (-.f64 x t))))
(if (<=.f64 t -14763617382276200/79228162514264337593543950336) (+.f64 (*.f64 y t) x) (if (<=.f64 t -70926195687265376/115792089237316195423570985008687907853269984665640564039457584007913129639936) (*.f64 (+.f64 1 z) x) (if (<=.f64 t -780924995624001536/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (+.f64 (*.f64 y t) x) (if (<=.f64 t 3587226996885983/13656093558537941553315536467397135968552465044102979912491535998492748263050510482475893147384943187441520456895351276433180265787636459684584153195173539934402882722844701815732384329547395122644920353046295760858502651980751792724303620866048) (*.f64 (+.f64 1 z) x) (if (<=.f64 t 1873659412638203/18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992) (-.f64 x (*.f64 y x)) (if (<=.f64 t 88000000000000000252784238111017257668548839447657197610646004947746816) (+.f64 (*.f64 y t) x) (*.f64 z (neg.f64 t))))))))
(if (<=.f64 t -1845452172784525/9903520314283042199192993792) (+.f64 x (*.f64 y t)) (if (<=.f64 t -2216443615227043/3618502788666131106986593281521497120414687020801267626233049500247285301248) (*.f64 x (+.f64 z 1)) (if (<=.f64 t -95327758254883/381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928) (+.f64 x (*.f64 y t)) (if (<=.f64 t 3587226996885983/13656093558537941553315536467397135968552465044102979912491535998492748263050510482475893147384943187441520456895351276433180265787636459684584153195173539934402882722844701815732384329547395122644920353046295760858502651980751792724303620866048) (*.f64 x (+.f64 z 1)) (if (<=.f64 t 1873659412638203/18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992) (-.f64 x (*.f64 y x)) (if (<=.f64 t 88000000000000000252784238111017257668548839447657197610646004947746816) (+.f64 x (*.f64 y t)) (*.f64 z (neg.f64 t))))))))
(if (<=.f64 t -1845452172784525/9903520314283042199192993792) (+.f64 x (*.f64 y t)) (if (<=.f64 t -2216443615227043/3618502788666131106986593281521497120414687020801267626233049500247285301248) (*.f64 x (+.f64 z 1)) (if (<=.f64 t -95327758254883/381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928) (+.f64 x (*.f64 y t)) (if (<=.f64 t 3587226996885983/13656093558537941553315536467397135968552465044102979912491535998492748263050510482475893147384943187441520456895351276433180265787636459684584153195173539934402882722844701815732384329547395122644920353046295760858502651980751792724303620866048) (*.f64 x (+.f64 z 1)) (if (<=.f64 t 1873659412638203/18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992) (-.f64 x (*.f64 y x)) (if (<=.f64 t 88000000000000000252784238111017257668548839447657197610646004947746816) (+.f64 x (*.f64 y t)) (*.f64 t (neg.f64 z))))))))
(if (<=.f64 z -90000000000000001917884913691690719522339160064) (*.f64 z (neg.f64 t)) (if (<=.f64 z -27333242142430776) (*.f64 z x) (if (<=.f64 z -2175432148808828928/340282366920938463463374607431768211456) (*.f64 z (neg.f64 t)) (if (<=.f64 z 37805216882512960/1461501637330902918203684832716283019655932542976) (+.f64 (*.f64 y t) x) (if (<=.f64 z 4199999999999999711508812229219162195296324719516745105160030701536513925129961472) (*.f64 z (neg.f64 t)) (*.f64 z x))))))
(if (<=.f64 z -90000000000000001917884913691690719522339160064) (*.f64 z (neg.f64 t)) (if (<=.f64 z -27333242142430776) (*.f64 z x) (if (<=.f64 z -1062222728910561/166153499473114484112975882535043072) (*.f64 z (neg.f64 t)) (if (<=.f64 z 590706513789265/22835963083295358096932575511191922182123945984) (+.f64 x (*.f64 y t)) (if (<=.f64 z 4199999999999999711508812229219162195296324719516745105160030701536513925129961472) (*.f64 z (neg.f64 t)) (*.f64 z x))))))
(if (<=.f64 z -90000000000000001917884913691690719522339160064) (*.f64 t (neg.f64 z)) (if (<=.f64 z -27333242142430776) (*.f64 z x) (if (<=.f64 z -1062222728910561/166153499473114484112975882535043072) (*.f64 t (neg.f64 z)) (if (<=.f64 z 590706513789265/22835963083295358096932575511191922182123945984) (+.f64 x (*.f64 y t)) (if (<=.f64 z 4199999999999999711508812229219162195296324719516745105160030701536513925129961472) (*.f64 t (neg.f64 z)) (*.f64 z x))))))
(if (<=.f64 z -90000000000000001917884913691690719522339160064) (*.f64 z (neg.f64 t)) (if (<=.f64 z -27333242142430776) (*.f64 z x) (if (<=.f64 z -8168060695016531/191561942608236107294793378393788647952342390272950272) (*.f64 z (neg.f64 t)) (if (<=.f64 z -5751349106708787/1007641851683931820587806291420968258893675472328417820220872324040744595635843008946260940337480903424595632540239579541935629958157893251896932560850028184716008537290582817399466548302510149103210893455908181007667595468047259786297601506742546990374638711734272) (-.f64 x (*.f64 y x)) (if (<=.f64 z -3111206828770507/155925024182399985285654118206003012974019629721520120429886503315407179052262817639449841054112164147604878659702538690935346717843249504745247796741002454712500443199303568477932634487840858373644793495667494061978969566806317999131941817847503449805243820849668440753309257439870625775616) (*.f64 y t) (if (<=.f64 z 8029136453366359/1277337798102220679460078536343576682283168806678692826561630235159815610796137002102373097915286848697179165980283196956142360312571899942873069950902292109004803630688694832971224141724392311796898148316508111355731718691277357048888867371806748260804557380400483866651109436947420166353846272) (-.f64 x (*.f64 y x)) (if (<=.f64 z 1670243033603441/2015283703367863641175612582841936517787350944656835640441744648081489191271686017892521880674961806849191265080479159083871259916315786503793865121700056369432017074581165634798933096605020298206421786911816362015335190936094519572595203013485093980749277423468544) (*.f64 y t) (if (<=.f64 z 8568789584950607/8796093022208) (-.f64 x (*.f64 y x)) (if (<=.f64 z 6399999999999999889808721443493494831855849261697017443454407693939913862938624) (*.f64 z (neg.f64 t)) (if (<=.f64 z 350000000000000018924236024317333135709026770306680175649731719850201837812950323167232) (*.f64 y (neg.f64 x)) (*.f64 z x)))))))))))
(if (<=.f64 z -90000000000000001917884913691690719522339160064) (*.f64 t (neg.f64 z)) (if (<=.f64 z -27333242142430776) (*.f64 z x) (if (<=.f64 z -8168060695016531/191561942608236107294793378393788647952342390272950272) (*.f64 t (neg.f64 z)) (if (<=.f64 z -5751349106708787/1007641851683931820587806291420968258893675472328417820220872324040744595635843008946260940337480903424595632540239579541935629958157893251896932560850028184716008537290582817399466548302510149103210893455908181007667595468047259786297601506742546990374638711734272) (-.f64 x (*.f64 y x)) (if (<=.f64 z -3111206828770507/155925024182399985285654118206003012974019629721520120429886503315407179052262817639449841054112164147604878659702538690935346717843249504745247796741002454712500443199303568477932634487840858373644793495667494061978969566806317999131941817847503449805243820849668440753309257439870625775616) (*.f64 y t) (if (<=.f64 z 8029136453366359/1277337798102220679460078536343576682283168806678692826561630235159815610796137002102373097915286848697179165980283196956142360312571899942873069950902292109004803630688694832971224141724392311796898148316508111355731718691277357048888867371806748260804557380400483866651109436947420166353846272) (-.f64 x (*.f64 y x)) (if (<=.f64 z 1670243033603441/2015283703367863641175612582841936517787350944656835640441744648081489191271686017892521880674961806849191265080479159083871259916315786503793865121700056369432017074581165634798933096605020298206421786911816362015335190936094519572595203013485093980749277423468544) (*.f64 y t) (if (<=.f64 z 8568789584950607/8796093022208) (-.f64 x (*.f64 y x)) (if (<=.f64 z 6399999999999999889808721443493494831855849261697017443454407693939913862938624) (*.f64 t (neg.f64 z)) (if (<=.f64 z 350000000000000018924236024317333135709026770306680175649731719850201837812950323167232) (*.f64 y (neg.f64 x)) (*.f64 z x)))))))))))
(if (<=.f64 y -443336668563949/40564819207303340847894502572032) (*.f64 y t) (if (<=.f64 y -4134675685108397/229111231347799689635350271469398707925773913377365220235531597618488512042823233274762274126597027003434876073751997760595174886056587013603560208332516636964102994463833696818134410091831830209960320065853961979807444428853900668922870296851794362368) x (if (<=.f64 y -7027178972017893/33810849992682575766549746234657062817206228866311777416189485377707129763630391006362704376810060025259161279568456235448470243808171874384034494621628132922136747775936325386798817131291292227393550906125516057865473810736099951285657401521090334495330469177455231893504) (*.f64 z (neg.f64 t)) (if (<=.f64 y 6158210746139307/368167554019802297902961703073592265444961685287384386095984806211036520049665972495786961556290633771253993225976613596485201446531925242865351537949643006725668645734124513845866945743352000756639913885870091814580532597437363981258574050387614181710541845882032738795411959682006458992302809763070411033018368) x (if (<=.f64 y 4923504863570993/878694100496718043517683302282418331810487718418343092402491322775749527474899974671687634004666183037093927858109549828751614463963730408009475621262727315456) (*.f64 z (neg.f64 t)) (if (<=.f64 y 249597840015223488/2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576) x (if (<=.f64 y 37257956803634928812032) (*.f64 z x) (if (<=.f64 y 480000000000000016964581403128159438397993544383529167857667579435341053952) (*.f64 y t) (*.f64 y (neg.f64 x))))))))))
(if (<=.f64 y -443336668563949/40564819207303340847894502572032) (*.f64 y t) (if (<=.f64 y -4134675685108397/229111231347799689635350271469398707925773913377365220235531597618488512042823233274762274126597027003434876073751997760595174886056587013603560208332516636964102994463833696818134410091831830209960320065853961979807444428853900668922870296851794362368) x (if (<=.f64 y -7027178972017893/33810849992682575766549746234657062817206228866311777416189485377707129763630391006362704376810060025259161279568456235448470243808171874384034494621628132922136747775936325386798817131291292227393550906125516057865473810736099951285657401521090334495330469177455231893504) (*.f64 z (neg.f64 t)) (if (<=.f64 y 6158210746139307/368167554019802297902961703073592265444961685287384386095984806211036520049665972495786961556290633771253993225976613596485201446531925242865351537949643006725668645734124513845866945743352000756639913885870091814580532597437363981258574050387614181710541845882032738795411959682006458992302809763070411033018368) x (if (<=.f64 y 4923504863570993/878694100496718043517683302282418331810487718418343092402491322775749527474899974671687634004666183037093927858109549828751614463963730408009475621262727315456) (*.f64 z (neg.f64 t)) (if (<=.f64 y 3899966250237867/33374797436264220037422214158899251790667258161822699530422525122222183215322508594108782608384) x (if (<=.f64 y 37257956803634928812032) (*.f64 z x) (if (<=.f64 y 480000000000000016964581403128159438397993544383529167857667579435341053952) (*.f64 y t) (*.f64 y (neg.f64 x))))))))))
(if (<=.f64 y -443336668563949/40564819207303340847894502572032) (*.f64 y t) (if (<=.f64 y -4134675685108397/229111231347799689635350271469398707925773913377365220235531597618488512042823233274762274126597027003434876073751997760595174886056587013603560208332516636964102994463833696818134410091831830209960320065853961979807444428853900668922870296851794362368) x (if (<=.f64 y -7027178972017893/33810849992682575766549746234657062817206228866311777416189485377707129763630391006362704376810060025259161279568456235448470243808171874384034494621628132922136747775936325386798817131291292227393550906125516057865473810736099951285657401521090334495330469177455231893504) (*.f64 t (neg.f64 z)) (if (<=.f64 y 6158210746139307/368167554019802297902961703073592265444961685287384386095984806211036520049665972495786961556290633771253993225976613596485201446531925242865351537949643006725668645734124513845866945743352000756639913885870091814580532597437363981258574050387614181710541845882032738795411959682006458992302809763070411033018368) x (if (<=.f64 y 4923504863570993/878694100496718043517683302282418331810487718418343092402491322775749527474899974671687634004666183037093927858109549828751614463963730408009475621262727315456) (*.f64 t (neg.f64 z)) (if (<=.f64 y 3899966250237867/33374797436264220037422214158899251790667258161822699530422525122222183215322508594108782608384) x (if (<=.f64 y 37257956803634928812032) (*.f64 z x) (if (<=.f64 y 480000000000000016964581403128159438397993544383529167857667579435341053952) (*.f64 y t) (*.f64 y (neg.f64 x))))))))))
(if (<=.f64 y -443336668563949/40564819207303340847894502572032) (*.f64 y t) (if (<=.f64 y 249597840015223488/2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576) x (if (<=.f64 y 37257956803634928812032) (*.f64 z x) (if (<=.f64 y 480000000000000016964581403128159438397993544383529167857667579435341053952) (*.f64 y t) (*.f64 y (neg.f64 x))))))
(if (<=.f64 y -443336668563949/40564819207303340847894502572032) (*.f64 y t) (if (<=.f64 y 3899966250237867/33374797436264220037422214158899251790667258161822699530422525122222183215322508594108782608384) x (if (<=.f64 y 37257956803634928812032) (*.f64 z x) (if (<=.f64 y 480000000000000016964581403128159438397993544383529167857667579435341053952) (*.f64 y t) (*.f64 y (neg.f64 x))))))
(if (<=.f64 y -443336668563949/40564819207303340847894502572032) (*.f64 y t) (if (<=.f64 y 249597840015223488/2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576) x (if (<=.f64 y 37257956803634928812032) (*.f64 z x) (*.f64 y t))))
(if (<=.f64 y -443336668563949/40564819207303340847894502572032) (*.f64 y t) (if (<=.f64 y 3899966250237867/33374797436264220037422214158899251790667258161822699530422525122222183215322508594108782608384) x (if (<=.f64 y 37257956803634928812032) (*.f64 z x) (*.f64 y t))))
(if (<=.f64 z -4279430345734067/1180591620717411303424) (*.f64 z x) (if (<=.f64 z 2660579124142643/11150372599265311570767859136324180752990208) x (*.f64 z x)))
x
Compiler

Compiled 614 to 315 computations (48.7% saved)

soundness583.0ms (3.2%)

Algorithm
egg-herbie
Rules
2262×fma-neg_binary64
697×fma-def_binary64
683×unsub-neg_binary64
303×distribute-rgt-in_binary64
280×sub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0913
11511
23711
312311
447111
5155711
6303411
7414811
8518011
9543811
10544911
11544911
12549111
13549111
14549111
15776511
16776511
17776511
Stop Event
saturated
Compiler

Compiled 38 to 23 computations (39.5% saved)

end329.0ms (1.8%)

Compiler

Compiled 554 to 207 computations (62.6% saved)

Profiling

Loading profile data...