Details

Time bar (total: 11.2s)

analyze372.0ms (3.3%)

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
0%99.8%0.2%9
0%99.8%0.2%10
3.1%96.6%0.2%11
4.7%95.1%0.2%12
Compiler

Compiled 15 to 10 computations (33.3% saved)

sample1.9s (17.3%)

Results
1.4s8256×body256valid
481.0ms2719×body256invalid

preprocess80.0ms (0.7%)

Algorithm
egg-herbie
Rules
788×associate-/l*_binary64
683×div-sub_binary64
622×unsub-neg_binary64
504×fma-def_binary64
424×sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046143
1101143
2207121
3504121
41246121
53359121
65701121
055
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
3
4
Outputs
0
1
2
3
4
Call 2
Inputs
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
(+.f64 y (/.f64 (*.f64 x (-.f64 z t)) a))
(+.f64 z (/.f64 (*.f64 y (-.f64 x t)) a))
(+.f64 t (/.f64 (*.f64 y (-.f64 z x)) a))
(+.f64 a (/.f64 (*.f64 y (-.f64 z t)) x))
(+.f64 x (/.f64 (*.f64 z (-.f64 y t)) a))
(+.f64 x (/.f64 (*.f64 t (-.f64 z y)) a))
(+.f64 x (/.f64 (*.f64 a (-.f64 z t)) y))
(+.f64 x (/.f64 (*.f64 y (-.f64 t z)) a))
(+.f64 x (/.f64 (*.f64 y (-.f64 a t)) z))
(+.f64 x (/.f64 (*.f64 y (-.f64 z a)) t))
Outputs
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
(+.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))
(fma.f64 (/.f64 y a) (-.f64 z t) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 y (/.f64 (*.f64 x (-.f64 z t)) a))
(+.f64 y (/.f64 x (/.f64 a (-.f64 z t))))
(+.f64 y (*.f64 (/.f64 x a) (-.f64 z t)))
(fma.f64 (/.f64 x a) (-.f64 z t) y)
(fma.f64 (-.f64 z t) (/.f64 x a) y)
(fma.f64 x (/.f64 (-.f64 z t) a) y)
(+.f64 z (/.f64 (*.f64 y (-.f64 x t)) a))
(+.f64 z (*.f64 (/.f64 y a) (-.f64 x t)))
(fma.f64 (/.f64 y a) (-.f64 x t) z)
(fma.f64 (-.f64 x t) (/.f64 y a) z)
(fma.f64 y (/.f64 (-.f64 x t) a) z)
(+.f64 t (/.f64 (*.f64 y (-.f64 z x)) a))
(+.f64 t (/.f64 y (/.f64 a (-.f64 z x))))
(+.f64 t (*.f64 (/.f64 y a) (-.f64 z x)))
(fma.f64 (/.f64 y a) (-.f64 z x) t)
(fma.f64 (-.f64 z x) (/.f64 y a) t)
(fma.f64 y (/.f64 (-.f64 z x) a) t)
(+.f64 a (/.f64 (*.f64 y (-.f64 z t)) x))
(+.f64 a (*.f64 (/.f64 y x) (-.f64 z t)))
(fma.f64 (/.f64 y x) (-.f64 z t) a)
(fma.f64 (-.f64 z t) (/.f64 y x) a)
(fma.f64 y (/.f64 (-.f64 z t) x) a)
(+.f64 x (/.f64 (*.f64 z (-.f64 y t)) a))
(+.f64 x (*.f64 (/.f64 z a) (-.f64 y t)))
(fma.f64 (/.f64 z a) (-.f64 y t) x)
(fma.f64 (-.f64 y t) (/.f64 z a) x)
(fma.f64 z (/.f64 (-.f64 y t) a) x)
(+.f64 x (/.f64 (*.f64 t (-.f64 z y)) a))
(+.f64 x (*.f64 (/.f64 t a) (-.f64 z y)))
(fma.f64 (/.f64 t a) (-.f64 z y) x)
(fma.f64 (-.f64 z y) (/.f64 t a) x)
(+.f64 x (/.f64 (*.f64 a (-.f64 z t)) y))
(+.f64 x (/.f64 (*.f64 (-.f64 z t) a) y))
(+.f64 x (*.f64 (/.f64 a y) (-.f64 z t)))
(fma.f64 (/.f64 a y) (-.f64 z t) x)
(fma.f64 (-.f64 z t) (/.f64 a y) x)
(+.f64 x (/.f64 (*.f64 y (-.f64 t z)) a))
(+.f64 x (*.f64 (/.f64 y a) (-.f64 t z)))
(fma.f64 (/.f64 y a) (-.f64 t z) x)
(fma.f64 (-.f64 t z) (/.f64 y a) x)
(fma.f64 y (/.f64 (-.f64 t z) a) x)
(+.f64 x (/.f64 (*.f64 y (-.f64 a t)) z))
(+.f64 x (/.f64 (-.f64 a t) (/.f64 z y)))
(fma.f64 (/.f64 y z) (-.f64 a t) x)
(fma.f64 (-.f64 a t) (/.f64 y z) x)
(fma.f64 y (/.f64 (-.f64 a t) z) x)
(+.f64 x (/.f64 (*.f64 y (-.f64 z a)) t))
(+.f64 x (/.f64 y (/.f64 t (-.f64 z a))))
(+.f64 x (*.f64 (/.f64 y t) (-.f64 z a)))
(fma.f64 (/.f64 y t) (-.f64 z a) x)
(fma.f64 (-.f64 z a) (/.f64 y t) x)
(fma.f64 y (/.f64 (-.f64 z a) t) x)
Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify82.0ms (0.7%)

Algorithm
egg-herbie
Rules
938×fma-def_binary64
715×fma-neg_binary64
235×cancel-sign-sub-inv_binary64
163×distribute-rgt-in_binary64
119×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01013
11613
23111
36511
415111
531011
654111
797911
8184611
9272711
10355011
11372611
12377111
13381611
14381611
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
Outputs
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
(+.f64 x (/.f64 y (/.f64 a (-.f64 z t))))
(+.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))
(fma.f64 (/.f64 y a) (-.f64 z t) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)

eval1.0ms (0%)

Compiler

Compiled 22 to 11 computations (50% saved)

prune1.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 27 to 17 computations (37% saved)

localize44.0ms (0.4%)

Local error

Found 3 expressions with local error:

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

Compiled 34 to 9 computations (73.5% saved)

series25.0ms (0.2%)

Counts
3 → 120
Calls

36 calls:

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

rewrite112.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
627×log-prod_binary64
436×pow-prod-down_binary64
370×fma-def_binary64
323×pow2_binary64
223×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01030
122530
2344028
Stop Event
node limit
Counts
3 → 142
Calls
Call 1
Inputs
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (-.f64 z t))
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 y a) (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 1 (/.f64 a (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (-.f64 z t) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z t) (*.f64 y (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 z t)) (/.f64 1 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 y a) (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 z t) (neg.f64 y)) (/.f64 1 (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) (*.f64 y (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y 1) (/.f64 (-.f64 z t) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z t) 1) (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y a) (-.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1) (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (/.f64 (-.f64 z t) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)) (/.f64 y (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 a) -2) (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (sqrt.f64 a)) (/.f64 (-.f64 z t) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z t) (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 a -1/2) (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 a (-.f64 z t)) y) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 a (-.f64 z t)) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (/.f64 a (-.f64 z t)) y) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 y (-.f64 z t)) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (/.f64 a (-.f64 z t)) y) -3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 y a) (-.f64 z t))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z y) (*.f64 (neg.f64 t) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y z) (*.f64 y (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (-.f64 z t))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (-.f64 z t)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 y (-.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 z 3) (pow.f64 t 3)) y) (fma.f64 t (+.f64 z t) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 z z) (*.f64 t t)) y) (+.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (pow.f64 z 3) (pow.f64 t 3))) (fma.f64 t (+.f64 z t) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (*.f64 z z) (*.f64 t t))) (+.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (-.f64 z t)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (-.f64 z t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (-.f64 z t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 y (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (-.f64 z t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y (-.f64 z t))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y z (*.f64 y (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z y (*.f64 (neg.f64 t) y))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (/.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2) (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (/.f64 y a) (-.f64 z t) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)) 2) (cbrt.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)) (sqrt.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (/.f64 (/.f64 a (-.f64 z t)) y) -3)) (/.f64 1 (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) (neg.f64 x)) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (/.f64 1 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) (neg.f64 x)) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (/.f64 (/.f64 a (-.f64 z t)) y) -3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (/.f64 (/.f64 a (-.f64 z t)) y) -3)) (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) (neg.f64 x)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (/.f64 (/.f64 a (-.f64 z t)) y) -3)) (+.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2) (-.f64 (*.f64 x x) (/.f64 x (/.f64 (/.f64 a (-.f64 z t)) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (/.f64 (/.f64 a (-.f64 z t)) y) -3))) (neg.f64 (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) (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 a) (-.f64 z t)) 2))) (neg.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2) (*.f64 x x)) (fma.f64 (/.f64 y a) (-.f64 z t) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) (neg.f64 x)) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (/.f64 (/.f64 a (-.f64 z t)) y) -3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (/.f64 1 (/.f64 a (-.f64 z t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (*.f64 (-.f64 z t) (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z t) (*.f64 y (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (-.f64 z t)) (/.f64 1 a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (/.f64 y a) (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (/.f64 y a) (-.f64 z t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (/.f64 y a) (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (/.f64 y a) (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (/.f64 y a) (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (/.f64 y a) (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 z t) (neg.f64 y)) (/.f64 1 (neg.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 a) (*.f64 y (-.f64 z t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y 1) (/.f64 (-.f64 z t) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z t) 1) (/.f64 y a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y a) (-.f64 z t) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1) (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (/.f64 (-.f64 z t) (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)) (/.f64 y (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) -2) (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (sqrt.f64 a)) (/.f64 (-.f64 z t) (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z t) (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 a -1/2) (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)) x)))))

simplify181.0ms (1.6%)

Algorithm
egg-herbie
Rules
947×fma-neg_binary64
590×fma-def_binary64
288×cancel-sign-sub-inv_binary64
147×distribute-rgt-in_binary64
107×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0311327
1651150
21171058
32211058
44041058
56521058
611491058
717941058
827981058
935811058
1036761058
1136901058
1236951058
1336991058
Stop Event
saturated
Counts
262 → 167
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(*.f64 (-.f64 z t) y)
(*.f64 (-.f64 z t) y)
(*.f64 (-.f64 z t) y)
(*.f64 (-.f64 z t) y)
(*.f64 (-.f64 z t) y)
(*.f64 (-.f64 z t) y)
(*.f64 (-.f64 z t) y)
(*.f64 (-.f64 z t) y)
(*.f64 (-.f64 z t) y)
(*.f64 (-.f64 z t) y)
(*.f64 (-.f64 z t) y)
(*.f64 (-.f64 z t) y)
(*.f64 -1 (*.f64 y t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 -1 (*.f64 y t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 -1 (*.f64 y t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
x
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
x
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
Outputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(/.f64 (neg.f64 (*.f64 y t)) a)
(/.f64 (*.f64 y (neg.f64 t)) a)
(neg.f64 (/.f64 (*.f64 y t) a))
(*.f64 (/.f64 t a) (neg.f64 y))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(/.f64 (neg.f64 (*.f64 y t)) a)
(/.f64 (*.f64 y (neg.f64 t)) a)
(neg.f64 (/.f64 (*.f64 y t) a))
(*.f64 (/.f64 t a) (neg.f64 y))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(/.f64 (neg.f64 (*.f64 y t)) a)
(/.f64 (*.f64 y (neg.f64 t)) a)
(neg.f64 (/.f64 (*.f64 y t) a))
(*.f64 (/.f64 t a) (neg.f64 y))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(*.f64 (-.f64 z t) y)
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
(*.f64 y (-.f64 z t))
(*.f64 -1 (*.f64 y t))
(neg.f64 (*.f64 y t))
(*.f64 y (neg.f64 t))
(*.f64 t (neg.f64 y))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y (-.f64 z t))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y (-.f64 z t))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y (-.f64 z t))
(*.f64 -1 (*.f64 y t))
(neg.f64 (*.f64 y t))
(*.f64 y (neg.f64 t))
(*.f64 t (neg.f64 y))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(*.f64 -1 (*.f64 y t))
(neg.f64 (*.f64 y t))
(*.f64 y (neg.f64 t))
(*.f64 t (neg.f64 y))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
x
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x)
(fma.f64 -1 (/.f64 y (/.f64 a t)) x)
(-.f64 x (*.f64 (/.f64 y a) t))
(-.f64 x (/.f64 (*.f64 y t) a))
(-.f64 x (*.f64 y (/.f64 t a)))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) x)
(+.f64 (/.f64 y (/.f64 a z)) x)
(fma.f64 (/.f64 y a) z x)
(fma.f64 y (/.f64 z a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(*.f64 -1 (/.f64 (*.f64 y t) a))
(/.f64 (neg.f64 (*.f64 y t)) a)
(/.f64 (*.f64 y (neg.f64 t)) a)
(neg.f64 (/.f64 (*.f64 y t) a))
(*.f64 (/.f64 t a) (neg.f64 y))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(*.f64 -1 (/.f64 (*.f64 y t) a))
(/.f64 (neg.f64 (*.f64 y t)) a)
(/.f64 (*.f64 y (neg.f64 t)) a)
(neg.f64 (/.f64 (*.f64 y t) a))
(*.f64 (/.f64 t a) (neg.f64 y))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
x
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (-.f64 z t) (/.f64 a y)) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 26 to 8 computations (69.2% saved)

series11.0ms (0.1%)

Counts
2 → 84
Calls

24 calls:

TimeVariablePointExpression
1.0ms
t
@inf
(fma.f64 y (/.f64 (-.f64 z t) a) x)
1.0ms
z
@-inf
(fma.f64 y (/.f64 (-.f64 z t) a) x)
1.0ms
y
@0
(fma.f64 y (/.f64 (-.f64 z t) a) x)
1.0ms
t
@0
(fma.f64 y (/.f64 (-.f64 z t) a) x)
1.0ms
z
@0
(fma.f64 y (/.f64 (-.f64 z t) a) x)

rewrite105.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
610×prod-diff_binary64
525×log-prod_binary64
329×pow-prod-down_binary64
284×pow2_binary64
214×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify131.0ms (1.2%)

Algorithm
egg-herbie
Rules
890×fma-neg_binary64
549×fma-def_binary64
252×cancel-sign-sub-inv_binary64
135×distribute-rgt-in_binary64
90×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
029950
163949
2116746
3214746
4394746
5623746
61070746
71689746
82639746
93367746
103462746
113476746
123481746
133485746
Stop Event
saturated
Counts
289 → 228
Calls
Call 1
Inputs
x
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(/.f64 (*.f64 (-.f64 z t) y) a)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
x
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(/.f64 (*.f64 (-.f64 z t) y) a)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
x
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
x
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(*.f64 -1 (/.f64 t a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(/.f64 z a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(/.f64 z a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(/.f64 z a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(*.f64 -1 (/.f64 t a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(*.f64 -1 (/.f64 t a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
Outputs
x
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y)
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y)
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x)
(fma.f64 -1 (/.f64 y (/.f64 a t)) x)
(-.f64 x (*.f64 (/.f64 y a) t))
(-.f64 x (*.f64 t (/.f64 y a)))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 z y) a)
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 z y) a)
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) x)
(+.f64 x (/.f64 (*.f64 z y) a))
(+.f64 x (*.f64 (/.f64 y a) z))
(fma.f64 (/.f64 y a) z x)
(fma.f64 z (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 t y)) a)
(*.f64 (/.f64 t a) (neg.f64 y))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 t y)) a)
(*.f64 (/.f64 t a) (neg.f64 y))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(/.f64 (*.f64 (-.f64 z t) y) a)
(*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y)
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
x
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(/.f64 (*.f64 (-.f64 z t) y) a)
(*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y)
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
x
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
x
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(fma.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
(fma.f64 (-.f64 z t) (/.f64 y a) x)
(*.f64 -1 (/.f64 t a))
(neg.f64 (/.f64 t a))
(/.f64 (neg.f64 t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(/.f64 z a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(/.f64 z a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(/.f64 z a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(*.f64 -1 (/.f64 t a))
(neg.f64 (/.f64 t a))
(/.f64 (neg.f64 t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(*.f64 -1 (/.f64 t a))
(neg.f64 (/.f64 t a))
(/.f64 (neg.f64 t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(+.f64 (*.f64 -1 (/.f64 t a)) (/.f64 z a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)

eval114.0ms (1%)

Compiler

Compiled 9286 to 2822 computations (69.6% saved)

prune81.0ms (0.7%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New38312395
Fresh000
Picked101
Done011
Total38413397
Error
0b
Counts
397 → 13
Alt Table
Click to see full alt table
StatusErrorProgram
48.4b
(*.f64 z (/.f64 y a))
5.6b
(+.f64 x (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t))))
50.4b
(/.f64 (*.f64 y z) a)
6.6b
(+.f64 x (*.f64 y (/.f64 1 (/.f64 a (-.f64 z t)))))
49.5b
(*.f64 (/.f64 t a) (neg.f64 y))
19.4b
(+.f64 x (*.f64 y (/.f64 z a)))
5.6b
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
18.2b
(+.f64 (/.f64 (*.f64 y z) a) x)
29.8b
x
5.7b
(+.f64 x (pow.f64 (/.f64 (/.f64 a (-.f64 z t)) y) -1))
6.1b
(+.f64 x (*.f64 (pow.f64 (cbrt.f64 a) -2) (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a))))
16.2b
(-.f64 x (*.f64 t (/.f64 y a)))
37.5b
(/.f64 (*.f64 (-.f64 z t) y) a)
Compiler

Compiled 314 to 214 computations (31.8% saved)

localize15.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t))))
0.0b
(*.f64 y (-.f64 z t))
6.8b
(*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t)))
Compiler

Compiled 42 to 17 computations (59.5% saved)

series9.0ms (0.1%)

Counts
2 → 108
Calls

27 calls:

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

rewrite84.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
667×log-prod_binary64
429×fma-def_binary64
348×pow2_binary64
240×pow1/3_binary64
236×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01223
125921
2366121
Stop Event
node limit
Counts
2 → 114
Calls
Call 1
Inputs
(*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t)))
(+.f64 x (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 z t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (/.f64 y a)) (*.f64 (neg.f64 t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 y (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 a (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 z t) (/.f64 a y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 z t)) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (/.f64 a (cbrt.f64 (*.f64 y (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 a (sqrt.f64 (*.f64 y (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y (-.f64 z t))) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y (-.f64 z t)) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y (-.f64 z t)) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (*.f64 y (-.f64 z t))) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (-.f64 z t)) -1) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y a) (-.f64 (pow.f64 z 3) (pow.f64 t 3))) (fma.f64 z z (*.f64 t (+.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y a) (fma.f64 z z (*.f64 (neg.f64 t) t))) (+.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a (*.f64 y (-.f64 z t))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (/.f64 y a) (*.f64 (neg.f64 t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y a) z (*.f64 (/.f64 y a) (neg.f64 t)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (/.f64 (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2) (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 z t) (/.f64 y a) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)) 2) (cbrt.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)) (sqrt.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (-.f64 (*.f64 (-.f64 z t) (/.f64 y a)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2)) (/.f64 1 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (-.f64 (*.f64 (-.f64 z t) (/.f64 y a)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3)) (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (-.f64 (*.f64 (-.f64 z t) (/.f64 y a)) x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3)) (+.f64 (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2) (-.f64 (*.f64 x x) (*.f64 (*.f64 (-.f64 z t) (/.f64 y a)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2)) (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3))) (neg.f64 (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (-.f64 (*.f64 (-.f64 z t) (/.f64 y a)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2))) (neg.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2) (*.f64 x x)) (-.f64 (*.f64 (-.f64 z t) (/.f64 y a)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (-.f64 (*.f64 (-.f64 z t) (/.f64 y a)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (+.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 z t)) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 z t) (/.f64 y a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (-.f64 z t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 a) (*.f64 y (-.f64 z t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (*.f64 (-.f64 z t) (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z t) (/.f64 y a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (-.f64 z t)) (/.f64 1 a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (-.f64 z t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (*.f64 (-.f64 z t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (*.f64 (-.f64 z t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 a -2)) (*.f64 (/.f64 1 (cbrt.f64 a)) (*.f64 y (-.f64 z t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 z t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 a -1/2) (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 a -1/2) (*.f64 (pow.f64 a -1/2) (*.f64 y (-.f64 z t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y a) (-.f64 z t) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y 1) (/.f64 (-.f64 z t) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z t) 1) (/.f64 y a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1) (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 a) 2)) (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (/.f64 (-.f64 z t) (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)) (/.f64 y (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (sqrt.f64 a)) (/.f64 (-.f64 z t) (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z t) (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 a) (-.f64 z t)) y x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 a) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2)) (cbrt.f64 (*.f64 y (-.f64 z t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 a) (sqrt.f64 (*.f64 y (-.f64 z t)))) (sqrt.f64 (*.f64 y (-.f64 z t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 (pow.f64 a -2))) (/.f64 1 (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (-.f64 z t)) (pow.f64 a -1/2)) (pow.f64 a -1/2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y a) 1) (-.f64 z t) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y a) (cbrt.f64 (pow.f64 (-.f64 z t) 2))) (cbrt.f64 (-.f64 z t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y a) (sqrt.f64 (-.f64 z t))) (sqrt.f64 (-.f64 z t)) x)))))

simplify241.0ms (2.2%)

Algorithm
egg-herbie
Rules
886×fma-neg_binary64
554×fma-def_binary64
252×cancel-sign-sub-inv_binary64
135×distribute-rgt-in_binary64
90×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0281151
1571150
21071058
32021058
43791058
56121058
610611058
716861058
826381058
933641058
1034591058
1134731058
1234781058
1334821058
Stop Event
saturated
Counts
222 → 131
Calls
Call 1
Inputs
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
x
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
x
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
Outputs
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(neg.f64 (*.f64 (/.f64 y a) t))
(*.f64 y (/.f64 (neg.f64 t) a))
(*.f64 t (/.f64 (neg.f64 y) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(neg.f64 (*.f64 (/.f64 y a) t))
(*.f64 y (/.f64 (neg.f64 t) a))
(*.f64 t (/.f64 (neg.f64 y) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(neg.f64 (*.f64 (/.f64 y a) t))
(*.f64 y (/.f64 (neg.f64 t) a))
(*.f64 t (/.f64 (neg.f64 y) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
x
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y (-.f64 z t)) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
x
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
x
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (*.f64 (-.f64 (/.f64 z a) (/.f64 t a)) y) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 y (/.f64 a (-.f64 z t)))
(*.f64 (/.f64 y a) (-.f64 z t))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 (-.f64 z t) y) a) x)
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x)
(fma.f64 -1 (/.f64 y (/.f64 a t)) x)
(-.f64 x (*.f64 (/.f64 y a) t))
(-.f64 x (*.f64 t (/.f64 y a)))
(-.f64 x (*.f64 y (/.f64 t a)))
(fma.f64 t (/.f64 (neg.f64 y) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) x)
(+.f64 (/.f64 y (/.f64 a z)) x)
(+.f64 (*.f64 (/.f64 y a) z) x)
(fma.f64 (/.f64 y a) z x)
(fma.f64 y (/.f64 z a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(neg.f64 (*.f64 (/.f64 y a) t))
(*.f64 y (/.f64 (neg.f64 t) a))
(*.f64 t (/.f64 (neg.f64 y) a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(neg.f64 (*.f64 (/.f64 y a) t))
(*.f64 y (/.f64 (neg.f64 t) a))
(*.f64 t (/.f64 (neg.f64 y) a))
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 (/.f64 (*.f64 y z) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y t) a)) x))
(+.f64 (/.f64 y (/.f64 a (-.f64 z t))) x)
(+.f64 (*.f64 (/.f64 y a) (-.f64 z t)) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)

localize7.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
3.6b
(*.f64 z (/.f64 y a))
Compiler

Compiled 16 to 7 computations (56.3% saved)

series8.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
3.0ms
a
@inf
(*.f64 z (/.f64 y a))
1.0ms
z
@0
(*.f64 z (/.f64 y a))
1.0ms
y
@0
(*.f64 z (/.f64 y a))
1.0ms
a
@0
(*.f64 z (/.f64 y a))
1.0ms
z
@inf
(*.f64 z (/.f64 y a))

rewrite88.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
681×pow1_binary64
628×add-log-exp_binary64
628×log1p-expm1-u_binary64
628×expm1-log1p-u_binary64
613×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify14.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06252
19252
213252
316252
417252
Stop Event
saturated
Counts
58 → 24
Calls
Call 1
Inputs
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
Outputs
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
6.8b
(*.f64 (/.f64 t a) (neg.f64 y))
Compiler

Compiled 19 to 8 computations (57.9% saved)

series6.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
a
@inf
(*.f64 (/.f64 t a) (neg.f64 y))
1.0ms
a
@0
(*.f64 (/.f64 t a) (neg.f64 y))
1.0ms
y
@0
(*.f64 (/.f64 t a) (neg.f64 y))
1.0ms
t
@0
(*.f64 (/.f64 t a) (neg.f64 y))
1.0ms
t
@inf
(*.f64 (/.f64 t a) (neg.f64 y))

rewrite84.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
715×pow1_binary64
660×add-log-exp_binary64
659×log1p-expm1-u_binary64
659×expm1-log1p-u_binary64
645×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
079
11507
220887
Stop Event
node limit
Counts
1 → 25
Calls
Call 1
Inputs
(*.f64 (/.f64 t a) (neg.f64 y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (/.f64 t a) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (/.f64 t a) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 t (/.f64 a y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 a t))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 t y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 t y) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 t y) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 t y) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 t y) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 t y) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 t) y) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (neg.f64 t)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 t a) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 t a) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 t a) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 t a) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 t a) y))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 t a) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 t a) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 t a) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (/.f64 t a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 t a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 t a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 t a) y)))))))

simplify61.0ms (0.5%)

Algorithm
egg-herbie
Rules
145×fma-def_binary64
46×fma-neg_binary64
24×sub-neg_binary64
18×div-sub_binary64
14×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08324
115324
235324
369324
4114324
5162324
6202324
7238324
8275324
9394324
10445324
Stop Event
saturated
Counts
61 → 27
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
Outputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 (*.f64 y z) a) x)
5.3b
(/.f64 (*.f64 y z) a)
Compiler

Compiled 24 to 8 computations (66.7% saved)

series8.0ms (0.1%)

Counts
2 → 12
Calls

21 calls:

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

rewrite77.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
827×prod-diff_binary64
493×log-prod_binary64
325×pow-prod-down_binary64
277×fma-def_binary64
247×pow2_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0817
117517
2259215
Stop Event
node limit
Counts
2 → 117
Calls
Call 1
Inputs
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 y a) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 y a) z))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 y a) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 y a) z)))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 y a) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y a) z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 1 (/.f64 a z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 z (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 z (*.f64 y (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y z) (/.f64 1 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y a) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 y a) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 y a) z)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) z)) 2) (cbrt.f64 (*.f64 (/.f64 y a) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (*.f64 (cbrt.f64 (*.f64 y z)) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 y a) z)) (sqrt.f64 (*.f64 (/.f64 y a) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y z)) (*.f64 (sqrt.f64 (*.f64 y z)) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (neg.f64 z)) (/.f64 1 (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y 1) (/.f64 z a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z 1) (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y a) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y z)) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y z)) 1) (/.f64 (sqrt.f64 (*.f64 y z)) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (/.f64 z (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (pow.f64 (cbrt.f64 a) 2)) (/.f64 y (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 a) -2) (/.f64 (*.f64 y z) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (*.f64 (/.f64 y a) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y z)) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (*.f64 y z)) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (sqrt.f64 a)) (/.f64 z (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 a -1/2) (/.f64 (*.f64 y z) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 y z)) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 y a) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 y a) z) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 y a) z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 y a) z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a (*.f64 y z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 a (*.f64 y z)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 y z) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 y a) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (/.f64 y a) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 y a) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 y a) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 y a) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 y a) z)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 y a) z x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 (/.f64 y a) z) 2) (-.f64 (*.f64 (/.f64 y a) z) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 (/.f64 y a) z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (/.f64 y a) z x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (/.f64 y a) z x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (/.f64 y a) z x)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y a) z x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y a) z x)) 2) (cbrt.f64 (fma.f64 (/.f64 y a) z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (/.f64 y a) z x)) (sqrt.f64 (fma.f64 (/.f64 y a) z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y a) z) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (-.f64 x (*.f64 (/.f64 y a) z)) (pow.f64 (*.f64 (/.f64 y a) z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y a) z) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 (/.f64 y a) z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (-.f64 x (*.f64 (/.f64 y a) z)) (pow.f64 (*.f64 (/.f64 y a) z) 2)) (+.f64 (pow.f64 (*.f64 (/.f64 y a) z) 3) (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 (/.f64 y a) z) x) (-.f64 (pow.f64 (*.f64 (/.f64 y a) z) 2) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y a) z) 3) (pow.f64 x 3)) (fma.f64 x (-.f64 x (*.f64 (/.f64 y a) z)) (pow.f64 (*.f64 (/.f64 y a) z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y a) z) 3) (pow.f64 x 3)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (/.f64 y a) z) 2) (*.f64 (*.f64 (/.f64 y a) z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y a) z) 2) (*.f64 x x)) (-.f64 (*.f64 (/.f64 y a) z) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y a) z) 3) (pow.f64 x 3))) (neg.f64 (fma.f64 x (-.f64 x (*.f64 (/.f64 y a) z)) (pow.f64 (*.f64 (/.f64 y a) z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y a) z) 2) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 (/.f64 y a) z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) z) 2)) (-.f64 x (*.f64 (/.f64 y a) z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (/.f64 y a) z x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 y a) z x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 y a) z x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (/.f64 y a) z x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (/.f64 y a) z x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x (-.f64 x (*.f64 (/.f64 y a) z)) (pow.f64 (*.f64 (/.f64 y a) z) 2)) (+.f64 (pow.f64 (*.f64 (/.f64 y a) z) 3) (pow.f64 x 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 (/.f64 y a) z) x) (-.f64 (pow.f64 (*.f64 (/.f64 y a) z) 2) (*.f64 x x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (/.f64 y a) z x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (/.f64 y a) z x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 y a) z x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) z))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (/.f64 y a) z)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) z))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (*.f64 (/.f64 y a) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (/.f64 y a) z x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (/.f64 y a) z x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (/.f64 y a) z x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (/.f64 y a) z x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 y a) z x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (/.f64 1 (/.f64 a z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (*.f64 z (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 y (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y z) (/.f64 1 a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y a) z) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (/.f64 y a) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (/.f64 y a) z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (/.f64 y a) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (/.f64 y a) z)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) z)) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) z)) 2) (cbrt.f64 (*.f64 (/.f64 y a) z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (/.f64 y a) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (/.f64 y a) 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 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (/.f64 y a) z)) (sqrt.f64 (*.f64 (/.f64 y a) z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (/.f64 y a) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y z)) (*.f64 (sqrt.f64 (*.f64 y z)) (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (neg.f64 z)) (/.f64 1 (neg.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 a) (*.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y 1) (/.f64 z a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z 1) (/.f64 y a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y a) z x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y z)) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 y z)) 1) (/.f64 (sqrt.f64 (*.f64 y z)) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (/.f64 z (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z (pow.f64 (cbrt.f64 a) 2)) (/.f64 y (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) -2) (/.f64 (*.f64 y z) (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (*.f64 (/.f64 y a) z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 y z)) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (*.f64 y z)) (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (sqrt.f64 a)) (/.f64 z (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 a -1/2) (/.f64 (*.f64 y z) (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 y z)) (sqrt.f64 a)) x)))))

simplify52.0ms (0.5%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0748
11048
21448
31748
41848
Stop Event
saturated
Counts
129 → 120
Calls
Call 1
Inputs
x
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
x
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
x
x
(/.f64 (*.f64 y z) a)
x
x
Outputs
x
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
x
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
x
x
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
x
x

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 24 to 8 computations (66.7% saved)

series7.0ms (0.1%)

Counts
2 → 60
Calls

21 calls:

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

rewrite79.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
499×log-prod_binary64
386×prod-diff_binary64
379×exp-prod_binary64
327×pow-prod-down_binary64
250×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify104.0ms (0.9%)

Algorithm
egg-herbie
Rules
952×fma-def_binary64
614×fma-neg_binary64
183×cancel-sign-sub-inv_binary64
116×distribute-rgt-in_binary64
103×div-sub_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
018798
139684
274504
3146504
4270504
5470504
6803504
71276504
82149504
93254504
103333504
113363504
123368504
133368504
Stop Event
saturated
Counts
150 → 103
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 -1 (*.f64 y t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(*.f64 -1 (*.f64 y t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(*.f64 -1 (*.f64 y t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
Outputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(/.f64 (neg.f64 (*.f64 y t)) a)
(/.f64 (*.f64 y (neg.f64 t)) a)
(*.f64 (/.f64 y a) (neg.f64 t))
(/.f64 (neg.f64 y) (/.f64 a t))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(/.f64 (neg.f64 (*.f64 y t)) a)
(/.f64 (*.f64 y (neg.f64 t)) a)
(*.f64 (/.f64 y a) (neg.f64 t))
(/.f64 (neg.f64 y) (/.f64 a t))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(/.f64 (neg.f64 (*.f64 y t)) a)
(/.f64 (*.f64 y (neg.f64 t)) a)
(*.f64 (/.f64 y a) (neg.f64 t))
(/.f64 (neg.f64 y) (/.f64 a t))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z)))
(-.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 -1 (*.f64 y t))
(neg.f64 (*.f64 y t))
(*.f64 y (neg.f64 t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(*.f64 y z)
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(*.f64 -1 (*.f64 y t))
(neg.f64 (*.f64 y t))
(*.f64 y (neg.f64 t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(*.f64 -1 (*.f64 y t))
(neg.f64 (*.f64 y t))
(*.f64 y (neg.f64 t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t)))
(fma.f64 y z (neg.f64 (*.f64 y t)))
(*.f64 y (-.f64 z t))

eval84.0ms (0.7%)

Compiler

Compiled 5542 to 1691 computations (69.5% saved)

prune148.0ms (1.3%)

Pruning

15 alts after pruning (10 fresh and 5 done)

PrunedKeptTotal
New4289437
Fresh617
Picked011
Done145
Total43515450
Error
0b
Counts
450 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
18.2b
(+.f64 (/.f64 (*.f64 y z) a) x)
62.3b
(/.f64 t (/.f64 a y))
16.2b
(-.f64 x (*.f64 t (/.f64 y a)))
34.4b
(+.f64 x (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 a (sqrt.f64 (*.f64 y (-.f64 z t))))))
37.9b
(*.f64 (/.f64 (-.f64 z t) a) y)
29.8b
x
37.5b
(/.f64 (*.f64 (-.f64 z t) y) a)
48.3b
(/.f64 z (/.f64 a y))
49.5b
(*.f64 (/.f64 t a) (neg.f64 y))
49.5b
(/.f64 (neg.f64 y) (/.f64 a t))
5.6b
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
48.4b
(*.f64 z (/.f64 y a))
49.6b
(/.f64 (*.f64 y (neg.f64 t)) a)
50.9b
(*.f64 y (/.f64 z a))
50.4b
(/.f64 (*.f64 z y) a)
Compiler

Compiled 281 to 187 computations (33.5% saved)

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
4.4b
(*.f64 t (/.f64 y a))
Compiler

Compiled 24 to 8 computations (66.7% saved)

series3.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite50.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
681×pow1_binary64
628×add-log-exp_binary64
628×log1p-expm1-u_binary64
628×expm1-log1p-u_binary64
613×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify13.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06252
19252
213252
316252
417252
Stop Event
saturated
Counts
58 → 24
Calls
Call 1
Inputs
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
Outputs
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))

localize27.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
8.2b
(*.f64 y (/.f64 z a))
Compiler

Compiled 16 to 7 computations (56.3% saved)

series3.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite48.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
681×pow1_binary64
628×add-log-exp_binary64
628×log1p-expm1-u_binary64
628×expm1-log1p-u_binary64
613×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify15.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06252
19252
213252
316252
417252
Stop Event
saturated
Counts
58 → 23
Calls
Call 1
Inputs
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
Outputs
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
3.7b
(/.f64 z (/.f64 a y))
Compiler

Compiled 16 to 7 computations (56.3% saved)

series3.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite55.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
780×pow1_binary64
724×add-log-exp_binary64
724×log1p-expm1-u_binary64
724×expm1-log1p-u_binary64
707×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify37.0ms (0.3%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06252
19252
213252
316252
417252
Stop Event
saturated
Counts
77 → 42
Calls
Call 1
Inputs
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
Outputs
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
7.2b
(/.f64 (neg.f64 y) (/.f64 a t))
Compiler

Compiled 19 to 8 computations (57.9% saved)

series3.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
a
@inf
(/.f64 (neg.f64 y) (/.f64 a t))
0.0ms
y
@inf
(/.f64 (neg.f64 y) (/.f64 a t))
0.0ms
y
@0
(/.f64 (neg.f64 y) (/.f64 a t))
0.0ms
t
@-inf
(/.f64 (neg.f64 y) (/.f64 a t))
0.0ms
t
@inf
(/.f64 (neg.f64 y) (/.f64 a t))

rewrite186.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
800×pow1_binary64
743×add-log-exp_binary64
742×log1p-expm1-u_binary64
742×expm1-log1p-u_binary64
726×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
079
11567
224267
Stop Event
node limit
Counts
1 → 47
Calls
Call 1
Inputs
(/.f64 (neg.f64 y) (/.f64 a t))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 y (/.f64 t a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (/.f64 a t)) (*.f64 y (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 t a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 1 (/.f64 (neg.f64 a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 t (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 t a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 y (/.f64 t a))) (pow.f64 (cbrt.f64 (*.f64 y (/.f64 t a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y (/.f64 t a))) 2) (cbrt.f64 (*.f64 y (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y (/.f64 t a))) (sqrt.f64 (*.f64 y (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 t a) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 y (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y a) t)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y a) (neg.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (/.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (/.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y) a) (/.f64 (sqrt.f64 y) (/.f64 1 t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) (/.f64 y (/.f64 1 t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 a t)) 2)) (/.f64 y (cbrt.f64 (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 a t))) (/.f64 y (sqrt.f64 (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) a) (/.f64 (cbrt.f64 y) (/.f64 1 t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 a) (/.f64 y (/.f64 1 t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 (cbrt.f64 (/.f64 a t)) 2)) (cbrt.f64 (*.f64 y (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y) (pow.f64 (cbrt.f64 (/.f64 a t)) 2)) (/.f64 (sqrt.f64 y) (cbrt.f64 (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (pow.f64 (cbrt.f64 (/.f64 a t)) 2)) (/.f64 y (cbrt.f64 (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (sqrt.f64 (/.f64 a t))) (/.f64 (cbrt.f64 y) (sqrt.f64 (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (sqrt.f64 (/.f64 a t))) (/.f64 y (sqrt.f64 (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y 1) (/.f64 t a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y a) 1) t)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y a) (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y a) (sqrt.f64 t)) (sqrt.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (/.f64 t a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (/.f64 t a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (/.f64 t a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (/.f64 t a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a (*.f64 y t)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (/.f64 t a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (/.f64 t a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 y 3) (pow.f64 (/.f64 a t) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (/.f64 t a))))))))

simplify52.0ms (0.5%)

Algorithm
egg-herbie
Rules
145×fma-def_binary64
46×fma-neg_binary64
24×sub-neg_binary64
18×div-sub_binary64
14×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08324
115324
235324
369324
4114324
5162324
6202324
7238324
8275324
9394324
10445324
Stop Event
saturated
Counts
83 → 49
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
Outputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 24 to 8 computations (66.7% saved)

series27.0ms (0.2%)

Counts
1 → 48
Calls

12 calls:

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

rewrite60.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
541×prod-diff_binary64
507×log-prod_binary64
330×pow-prod-down_binary64
258×pow2_binary64
196×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify258.0ms (2.3%)

Algorithm
egg-herbie
Rules
872×fma-def_binary64
579×fma-neg_binary64
155×cancel-sign-sub-inv_binary64
106×distribute-rgt-in_binary64
94×div-sub_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
015804
131720
264468
3126468
4243468
5429468
6723468
71186468
82021468
93046468
103125468
113155468
123160468
133160468
Stop Event
saturated
Counts
79 → 38
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y z) a)
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 y (-.f64 z t)) a)
Outputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (/.f64 (neg.f64 y) a) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 z (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 z (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 z (/.f64 y a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (/.f64 (neg.f64 y) a) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (/.f64 (neg.f64 y) a) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a)))
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(+.f64 (neg.f64 (/.f64 y (/.f64 a t))) (/.f64 y (/.f64 a z)))
(-.f64 (/.f64 y (/.f64 a z)) (*.f64 (/.f64 y a) t))
(*.f64 (-.f64 z t) (/.f64 y a))
(*.f64 y (/.f64 (-.f64 z t) a))

eval309.0ms (2.8%)

Compiler

Compiled 7780 to 2606 computations (66.5% saved)

prune79.0ms (0.7%)

Pruning

15 alts after pruning (6 fresh and 9 done)

PrunedKeptTotal
New3542356
Fresh145
Picked011
Done189
Total35615371
Error
0b
Counts
371 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
18.2b
(+.f64 (/.f64 (*.f64 y z) a) x)
62.3b
(/.f64 t (/.f64 a y))
37.9b
(*.f64 (/.f64 (-.f64 z t) a) y)
29.8b
x
37.5b
(/.f64 (*.f64 (-.f64 z t) y) a)
48.8b
(*.f64 (/.f64 y a) (neg.f64 t))
48.3b
(/.f64 z (/.f64 a y))
5.6b
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
48.4b
(*.f64 z (/.f64 y a))
49.6b
(/.f64 (*.f64 y (neg.f64 t)) a)
50.9b
(*.f64 y (/.f64 z a))
16.2b
(-.f64 x (*.f64 t (/.f64 y a)))
50.4b
(/.f64 (*.f64 z y) a)
49.5b
(/.f64 (neg.f64 y) (/.f64 a t))
57.3b
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (/.f64 y a)))
Compiler

Compiled 221 to 153 computations (30.8% saved)

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
4.4b
(*.f64 (/.f64 y a) (neg.f64 t))
Compiler

Compiled 19 to 8 computations (57.9% saved)

series3.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
y
@0
(*.f64 (/.f64 y a) (neg.f64 t))
0.0ms
y
@inf
(*.f64 (/.f64 y a) (neg.f64 t))
0.0ms
t
@inf
(*.f64 (/.f64 y a) (neg.f64 t))
0.0ms
t
@-inf
(*.f64 (/.f64 y a) (neg.f64 t))
0.0ms
y
@-inf
(*.f64 (/.f64 y a) (neg.f64 t))

rewrite55.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
715×pow1_binary64
660×add-log-exp_binary64
659×log1p-expm1-u_binary64
659×expm1-log1p-u_binary64
645×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
079
11507
220887
Stop Event
node limit
Counts
1 → 25
Calls
Call 1
Inputs
(*.f64 (/.f64 y a) (neg.f64 t))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (/.f64 y a) t))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (/.f64 y a) t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 a t))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 t (/.f64 a y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 y t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y t) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y t) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y t) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y t) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y t) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) t) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 t (neg.f64 y)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 y a) t) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 y a) t) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) t)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 y a) t)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 y a) t))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 y a) t) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) t) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 y a) 3) (pow.f64 t 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 t 3) (pow.f64 (/.f64 y a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 y a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 y a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 y a) t)))))))

simplify30.0ms (0.3%)

Algorithm
egg-herbie
Rules
145×fma-def_binary64
46×fma-neg_binary64
24×sub-neg_binary64
18×div-sub_binary64
14×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08324
115324
235324
369324
4114324
5162324
6202324
7238324
8275324
9394324
10445324
Stop Event
saturated
Counts
61 → 27
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
Outputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))

localize7.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
4.7b
(/.f64 t (/.f64 a y))
Compiler

Compiled 16 to 7 computations (56.3% saved)

series2.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
t
@0
(/.f64 t (/.f64 a y))
0.0ms
t
@-inf
(/.f64 t (/.f64 a y))
0.0ms
t
@inf
(/.f64 t (/.f64 a y))
0.0ms
a
@-inf
(/.f64 t (/.f64 a y))
0.0ms
y
@-inf
(/.f64 t (/.f64 a y))

rewrite59.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
780×pow1_binary64
724×add-log-exp_binary64
724×log1p-expm1-u_binary64
724×expm1-log1p-u_binary64
707×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify15.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06252
19252
213252
316252
417252
Stop Event
saturated
Counts
77 → 42
Calls
Call 1
Inputs
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
(/.f64 (*.f64 y t) a)
Outputs
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))
(/.f64 (*.f64 y t) a)
(/.f64 y (/.f64 a t))
(*.f64 (/.f64 y a) t)
(*.f64 t (/.f64 y a))
(*.f64 y (/.f64 t a))

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
5.3b
(/.f64 (*.f64 z y) a)
Compiler

Compiled 16 to 7 computations (56.3% saved)

series2.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite56.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
712×pow1_binary64
659×add-log-exp_binary64
659×log1p-expm1-u_binary64
659×expm1-log1p-u_binary64
644×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify20.0ms (0.2%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06252
19252
213252
316252
417252
Stop Event
saturated
Counts
77 → 43
Calls
Call 1
Inputs
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
Outputs
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 z (/.f64 y a))
(*.f64 y (/.f64 z a))

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
6.2b
(/.f64 (*.f64 y (neg.f64 t)) a)
Compiler

Compiled 20 to 8 computations (60% saved)

series3.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
y
@0
(/.f64 (*.f64 y (neg.f64 t)) a)
0.0ms
y
@inf
(/.f64 (*.f64 y (neg.f64 t)) a)
0.0ms
t
@-inf
(/.f64 (*.f64 y (neg.f64 t)) a)
0.0ms
y
@-inf
(/.f64 (*.f64 y (neg.f64 t)) a)
0.0ms
t
@inf
(/.f64 (*.f64 y (neg.f64 t)) a)

rewrite58.0ms (0.5%)

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

Useful iterations: 1 (0.0ms)

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

simplify46.0ms (0.4%)

Algorithm
egg-herbie
Rules
145×fma-def_binary64
46×fma-neg_binary64
24×sub-neg_binary64
18×div-sub_binary64
14×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08324
115324
235324
369324
4114324
5162324
6202324
7238324
8275324
9394324
10445324
Stop Event
saturated
Counts
77 → 43
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(*.f64 -1 (/.f64 (*.f64 y t) a))
Outputs
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))
(*.f64 -1 (/.f64 (*.f64 y t) a))
(neg.f64 (/.f64 y (/.f64 a t)))
(/.f64 (neg.f64 (*.f64 y t)) a)
(*.f64 (neg.f64 (/.f64 y a)) t)
(*.f64 t (/.f64 (neg.f64 y) a))
(*.f64 y (neg.f64 (/.f64 t a)))

localize18.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (/.f64 y a)))
1.9b
(*.f64 (sqrt.f64 z) (/.f64 y a))
Compiler

Compiled 28 to 9 computations (67.9% saved)

series19.0ms (0.2%)

Counts
2 → 60
Calls

18 calls:

TimeVariablePointExpression
2.0ms
z
@0
(*.f64 (sqrt.f64 z) (/.f64 y a))
2.0ms
z
@-inf
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (/.f64 y a)))
2.0ms
y
@-inf
(*.f64 (sqrt.f64 z) (/.f64 y a))
2.0ms
z
@-inf
(*.f64 (sqrt.f64 z) (/.f64 y a))
2.0ms
y
@0
(*.f64 (sqrt.f64 z) (/.f64 y a))

rewrite82.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
864×pow1_binary64
798×add-log-exp_binary64
798×log1p-expm1-u_binary64
798×expm1-log1p-u_binary64
778×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify111.0ms (1%)

Algorithm
egg-herbie
Rules
712×div-sub_binary64
677×fma-neg_binary64
389×distribute-rgt-neg-in_binary64
360×associate-/l*_binary64
320×unsub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
016468
136468
289468
3239468
4976468
53003468
65424468
77273468
Stop Event
node limit
Counts
101 → 46
Calls
Call 1
Inputs
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(*.f64 -1 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 y z)) a))
(*.f64 -1 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 y z)) a))
(*.f64 -1 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 y z)) a))
(*.f64 -1 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 y z)) a))
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 y z) a)
Outputs
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(*.f64 (/.f64 y a) (sqrt.f64 z))
(/.f64 (*.f64 y (sqrt.f64 z)) a)
(*.f64 y (/.f64 (sqrt.f64 z) a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(*.f64 -1 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 y z)) a))
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(*.f64 -1 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 y z)) a))
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(*.f64 -1 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 y z)) a))
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(*.f64 -1 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 y z)) a))
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 y (/.f64 a z))
(*.f64 (/.f64 y a) z)
(*.f64 y (/.f64 z a))

eval55.0ms (0.5%)

Compiler

Compiled 1877 to 660 computations (64.8% saved)

prune51.0ms (0.5%)

Pruning

15 alts after pruning (1 fresh and 14 done)

PrunedKeptTotal
New2010201
Fresh011
Picked011
Done01313
Total20115216
Error
0b
Counts
216 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
18.2b
(+.f64 (/.f64 (*.f64 y z) a) x)
62.3b
(/.f64 t (/.f64 a y))
37.9b
(*.f64 (/.f64 (-.f64 z t) a) y)
29.8b
x
37.5b
(/.f64 (*.f64 (-.f64 z t) y) a)
48.8b
(*.f64 (/.f64 y a) (neg.f64 t))
48.3b
(/.f64 z (/.f64 a y))
5.6b
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
48.4b
(*.f64 z (/.f64 y a))
49.6b
(/.f64 (*.f64 y (neg.f64 t)) a)
50.9b
(*.f64 y (/.f64 z a))
16.2b
(-.f64 x (*.f64 t (/.f64 y a)))
50.4b
(/.f64 (*.f64 z y) a)
49.5b
(/.f64 (neg.f64 y) (/.f64 a t))
57.3b
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (/.f64 y a)))
Compiler

Compiled 165 to 114 computations (30.9% saved)

regimes469.0ms (4.2%)

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

11 calls:

69.0ms
(*.f64 y (-.f64 z t))
62.0ms
(/.f64 (*.f64 y (-.f64 z t)) a)
41.0ms
x
40.0ms
a
38.0ms
(*.f64 y (-.f64 z t))
Results
ErrorSegmentsBranch
3.7b2x
0.4b3y
4.0b2z
4.3b2t
0.4b3a
0.1b3(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
0.1b3(/.f64 (*.f64 y (-.f64 z t)) a)
0.1b3(/.f64 (*.f64 y (-.f64 z t)) a)
0.1b3(*.f64 y (-.f64 z t))
0.1b3(*.f64 y (-.f64 z t))
4.4b2(-.f64 z t)
Compiler

Compiled 283 to 134 computations (52.7% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3722078831570056e+276
5.18824540720531e+279
0.0ms
-8.860166382690273e+238
-1.5413597105222983e+229
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes308.0ms (2.7%)

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

11 calls:

31.0ms
z
31.0ms
x
31.0ms
y
31.0ms
t
30.0ms
a
Results
ErrorSegmentsBranch
4.1b2x
0.4b3y
3.9b3z
4.3b2t
0.6b3a
0.1b3(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
0.1b3(/.f64 (*.f64 y (-.f64 z t)) a)
0.1b3(/.f64 (*.f64 y (-.f64 z t)) a)
0.1b3(*.f64 y (-.f64 z t))
0.1b3(*.f64 y (-.f64 z t))
5.6b1(-.f64 z t)
Compiler

Compiled 223 to 116 computations (48% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
9.59344893793667e+277
2.781354994477721e+288
0.0ms
-inf
-6.071757094200552e+300
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes249.0ms (2.2%)

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

11 calls:

29.0ms
a
29.0ms
z
27.0ms
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
26.0ms
(/.f64 (*.f64 y (-.f64 z t)) a)
26.0ms
(/.f64 (*.f64 y (-.f64 z t)) a)
Results
ErrorSegmentsBranch
5.6b1x
2.8b2y
4.1b3z
5.6b1t
4.5b2a
1.0b3(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
1.0b3(/.f64 (*.f64 y (-.f64 z t)) a)
1.0b3(/.f64 (*.f64 y (-.f64 z t)) a)
1.0b3(*.f64 y (-.f64 z t))
1.0b3(*.f64 y (-.f64 z t))
5.6b1(-.f64 z t)
Compiler

Compiled 212 to 111 computations (47.6% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
9.59344893793667e+277
2.781354994477721e+288
0.0ms
-inf
-6.071757094200552e+300
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes336.0ms (3%)

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

7 calls:

80.0ms
a
60.0ms
x
46.0ms
(-.f64 z t)
46.0ms
(-.f64 z t)
44.0ms
y
Results
ErrorSegmentsBranch
8.7b7x
9.8b5y
9.5b3z
10.0b3t
10.8b9a
13.2b5(-.f64 z t)
13.2b5(-.f64 z t)
Compiler

Compiled 142 to 71 computations (50% saved)

bsearch132.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
22.0ms
7.964073095505046e-22
3.027587644537752e-21
22.0ms
1.1820108716512606e-81
7.085446918793538e-80
22.0ms
7.883316662747508e-112
5.449135792196382e-111
23.0ms
-1.5287953406515005e-167
-7.080987261295201e-171
22.0ms
-8.209184303742617e-20
-3.3779738210801205e-35
21.0ms
-6.972351419917256e+31
-2.6634391963921013e+31
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes316.0ms (2.8%)

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

7 calls:

76.0ms
a
59.0ms
x
43.0ms
(-.f64 z t)
42.0ms
(-.f64 z t)
39.0ms
y
Results
ErrorSegmentsBranch
8.8b7x
9.8b5y
9.5b3z
10.0b3t
10.8b9a
13.2b5(-.f64 z t)
13.2b5(-.f64 z t)
Compiler

Compiled 135 to 69 computations (48.9% saved)

bsearch136.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
23.0ms
7.964073095505046e-22
3.027587644537752e-21
23.0ms
1.1820108716512606e-81
7.085446918793538e-80
22.0ms
7.576734043654447e-193
3.2426366078025834e-186
23.0ms
-4.000023177869111e-85
-2.6372012136204534e-92
22.0ms
-8.209184303742617e-20
-3.3779738210801205e-35
23.0ms
-6.972351419917256e+31
-2.6634391963921013e+31
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes310.0ms (2.8%)

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

7 calls:

113.0ms
x
78.0ms
y
32.0ms
a
26.0ms
t
25.0ms
(-.f64 z t)
Results
ErrorSegmentsBranch
12.1b5x
13.6b3y
18.2b1z
17.0b3t
15.4b4a
17.0b3(-.f64 z t)
17.0b3(-.f64 z t)
Compiler

Compiled 128 to 67 computations (47.7% saved)

bsearch121.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
55.0ms
7.964073095505046e-22
3.027587644537752e-21
21.0ms
5.449135792196382e-111
1.1823430475761424e-107
22.0ms
2.704362937307584e-171
7.323100647180932e-162
22.0ms
-2.6835423382954547e-39
-2.5656195638658517e-61
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes224.0ms (2%)

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

7 calls:

97.0ms
a
23.0ms
(-.f64 z t)
23.0ms
x
22.0ms
y
22.0ms
(-.f64 z t)
Results
ErrorSegmentsBranch
15.0b3x
17.6b2y
19.4b1z
18.2b3t
18.2b3a
18.2b3(-.f64 z t)
18.2b3(-.f64 z t)
Compiler

Compiled 121 to 66 computations (45.5% saved)

bsearch77.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
53.0ms
2.704362937307584e-171
7.323100647180932e-162
23.0ms
-2.6835423382954547e-39
-2.5656195638658517e-61
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes722.0ms (6.4%)

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

6 calls:

310.0ms
z
130.0ms
t
119.0ms
a
62.0ms
y
58.0ms
x
Results
ErrorSegmentsBranch
16.7b3x
21.4b3y
22.2b6z
24.3b8t
23.8b7a
25.2b4(-.f64 z t)
Compiler

Compiled 106 to 59 computations (44.3% saved)

bsearch84.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
42.0ms
7.964073095505046e-22
3.027587644537752e-21
41.0ms
-2.7169776021808523e-8
-3.658651873748691e-14
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes340.0ms (3%)

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

5 calls:

119.0ms
t
105.0ms
a
59.0ms
x
28.0ms
z
23.0ms
y
Results
ErrorSegmentsBranch
22.6b5x
25.4b3y
25.5b4z
27.5b5t
26.8b5a
Compiler

Compiled 91 to 50 computations (45.1% saved)

bsearch87.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
22.0ms
7.964073095505046e-22
3.027587644537752e-21
21.0ms
2.704362937307584e-171
7.323100647180932e-162
21.0ms
5.616852343531724e-268
6.125842389042861e-251
22.0ms
-1.4907642598393738e-101
-3.932135310332534e-107
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes323.0ms (2.9%)

Counts
10 → 3
Calls
Call 1
Inputs
x
x
(/.f64 t (/.f64 a y))
(/.f64 z (/.f64 a y))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 z y) a)
(*.f64 z (/.f64 y a))
(/.f64 (*.f64 y z) a)
(*.f64 (/.f64 y a) (neg.f64 t))
(/.f64 (neg.f64 y) (/.f64 a t))
Outputs
x
(/.f64 z (/.f64 a y))
x
Calls

5 calls:

115.0ms
x
80.0ms
a
61.0ms
y
41.0ms
t
23.0ms
z
Results
ErrorSegmentsBranch
23.7b3x
25.4b3y
25.5b4z
28.5b2t
25.9b7a
Compiler

Compiled 79 to 46 computations (41.8% saved)

bsearch92.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
48.0ms
7.964073095505046e-22
3.027587644537752e-21
44.0ms
-1.4907642598393738e-101
-3.932135310332534e-107
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes67.0ms (0.6%)

Accuracy

Total -32.7b remaining (-109.7%)

Threshold costs -32.7b (-109.7%)

Counts
3 → 1
Calls
Call 1
Inputs
x
x
(/.f64 t (/.f64 a y))
Outputs
x
Calls

5 calls:

51.0ms
z
4.0ms
a
4.0ms
y
4.0ms
t
4.0ms
x
Results
ErrorSegmentsBranch
29.8b1x
29.8b1y
29.8b1z
29.8b1t
29.8b1a
Compiler

Compiled 42 to 32 computations (23.8% saved)

simplify34.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0100620
1123620
2142620
3155620
4163620
5166620
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 (*.f64 y (-.f64 z t)) -49999999999999999540589572719110335148353311082316343726890146251077870360985096300561032737983380649043799630328643813943508715584736047117726341615358413203781242297082616067649868421895569043991510885701045729028059788218474167011377152) (fma.f64 y (/.f64 (-.f64 z t) a) x) (if (<=.f64 (*.f64 y (-.f64 z t)) 2000000000000000104138281600499711504018370159501928289300181329954129886725017326540622809029438772331686617457839135860204827534867795731711316538317936091429007203531381577790248362865422671553985900030487246615477217893874725504037036140836172938362629033609837186681667584) (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) (fma.f64 y (/.f64 (-.f64 z t) a) x)))
(if (<=.f64 (/.f64 (*.f64 y (-.f64 z t)) a) -inf.0) (+.f64 x (*.f64 y (/.f64 1 (/.f64 a (-.f64 z t))))) (if (<=.f64 (/.f64 (*.f64 y (-.f64 z t)) a) 99999999999999996350686867959178558315902274782992576532314485486221746301240205812674342870820492799837784938001204037775189753543960218791943147793788145321066524580618236658968633362758090027700335311493754978334367629875739137498376013657689431411868208826074951744485326848) (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) (+.f64 x (*.f64 y (/.f64 1 (/.f64 a (-.f64 z t)))))))
(if (<=.f64 (/.f64 (*.f64 y (-.f64 z t)) a) -inf.0) (*.f64 (/.f64 (-.f64 z t) a) y) (if (<=.f64 (/.f64 (*.f64 y (-.f64 z t)) a) 99999999999999996350686867959178558315902274782992576532314485486221746301240205812674342870820492799837784938001204037775189753543960218791943147793788145321066524580618236658968633362758090027700335311493754978334367629875739137498376013657689431411868208826074951744485326848) (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) (*.f64 (/.f64 (-.f64 z t) a) y)))
(if (<=.f64 x -69723514199172561095316757020672) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x -6819923499432993/83076749736557242056487941267521536) (+.f64 (/.f64 (*.f64 y z) a) x) (if (<=.f64 x -16240025773225274/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (*.f64 (/.f64 (-.f64 z t) a) y) (if (<=.f64 x 8538216093733459/10830740992659433045228180406808920716548582325686783496759685861775864483615725089999900023844295226942934417817982702456930304) (/.f64 (*.f64 (-.f64 z t) y) a) (if (<=.f64 x 5049519796329335/4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873152) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x 271003364326982240/340282366920938463463374607431768211456) (*.f64 (/.f64 (-.f64 z t) a) y) (-.f64 x (*.f64 t (/.f64 y a)))))))))
(if (<=.f64 x -69723514199172561095316757020672) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x -6819923499432993/83076749736557242056487941267521536) (+.f64 (/.f64 (*.f64 y z) a) x) (if (<=.f64 x -437452679747153/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x 3892055738233451/5136851466355833503165029182500125649951503713694505722166289944403058744430742990345377476833582471901350555523611540735370539306820120960085756611964727392534398116336371677921546638558908903585247316148224) (*.f64 (/.f64 (-.f64 z t) a) y) (if (<=.f64 x 5049519796329335/4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873152) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x 271003364326982240/340282366920938463463374607431768211456) (*.f64 (/.f64 (-.f64 z t) a) y) (-.f64 x (*.f64 t (/.f64 y a)))))))))
(if (<=.f64 x -16844868268698030080/6277101735386680763835789423207666416102355444464034512896) (+.f64 (/.f64 (*.f64 y z) a) x) (if (<=.f64 x 5883453040105909/2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288) (*.f64 (/.f64 (-.f64 z t) a) y) (if (<=.f64 x 1844318074972159/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (+.f64 (/.f64 (*.f64 y z) a) x) (if (<=.f64 x 271003364326982240/340282366920938463463374607431768211456) (*.f64 (/.f64 (-.f64 z t) a) y) (+.f64 (/.f64 (*.f64 y z) a) x)))))
(if (<=.f64 x -16844868268698030080/6277101735386680763835789423207666416102355444464034512896) (+.f64 x (*.f64 y (/.f64 z a))) (if (<=.f64 x 5883453040105909/2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288) (*.f64 (/.f64 (-.f64 z t) a) y) (+.f64 x (*.f64 y (/.f64 z a)))))
(if (<=.f64 x -2052890234119423/75557863725914323419136) x (if (<=.f64 x 271003364326982240/340282366920938463463374607431768211456) (*.f64 (/.f64 (-.f64 z t) a) y) x))
(if (<=.f64 x -4699128208284355/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) x (if (<=.f64 x 5220221504534209/9293855677986144142487890613436878500820376260371215369098574120724629107252527334657301965600977191186242023688706081565341157784655660673692691131889966411143567752796624212141790061464360855438994973639696482537923429417986750550981868377179113018825281909088399455148533430091776) (/.f64 z (/.f64 a y)) (if (<=.f64 x 5883453040105909/2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288) (/.f64 (*.f64 y (neg.f64 t)) a) (if (<=.f64 x 271003364326982240/340282366920938463463374607431768211456) (/.f64 z (/.f64 a y)) x))))
(if (<=.f64 x -4699128208284355/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) x (if (<=.f64 x 271003364326982240/340282366920938463463374607431768211456) (/.f64 z (/.f64 a y)) x))
x
Outputs
(if (<=.f64 (*.f64 y (-.f64 z t)) -49999999999999999540589572719110335148353311082316343726890146251077870360985096300561032737983380649043799630328643813943508715584736047117726341615358413203781242297082616067649868421895569043991510885701045729028059788218474167011377152) (fma.f64 y (/.f64 (-.f64 z t) a) x) (if (<=.f64 (*.f64 y (-.f64 z t)) 2000000000000000104138281600499711504018370159501928289300181329954129886725017326540622809029438772331686617457839135860204827534867795731711316538317936091429007203531381577790248362865422671553985900030487246615477217893874725504037036140836172938362629033609837186681667584) (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) (fma.f64 y (/.f64 (-.f64 z t) a) x)))
(if (<=.f64 (/.f64 (*.f64 y (-.f64 z t)) a) -inf.0) (+.f64 x (*.f64 y (/.f64 1 (/.f64 a (-.f64 z t))))) (if (<=.f64 (/.f64 (*.f64 y (-.f64 z t)) a) 99999999999999996350686867959178558315902274782992576532314485486221746301240205812674342870820492799837784938001204037775189753543960218791943147793788145321066524580618236658968633362758090027700335311493754978334367629875739137498376013657689431411868208826074951744485326848) (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) (+.f64 x (*.f64 y (/.f64 1 (/.f64 a (-.f64 z t)))))))
(if (<=.f64 (/.f64 (*.f64 y (-.f64 z t)) a) -inf.0) (*.f64 (/.f64 (-.f64 z t) a) y) (if (<=.f64 (/.f64 (*.f64 y (-.f64 z t)) a) 99999999999999996350686867959178558315902274782992576532314485486221746301240205812674342870820492799837784938001204037775189753543960218791943147793788145321066524580618236658968633362758090027700335311493754978334367629875739137498376013657689431411868208826074951744485326848) (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) (*.f64 (/.f64 (-.f64 z t) a) y)))
(if (<=.f64 (/.f64 (*.f64 y (-.f64 z t)) a) -inf.0) (*.f64 y (/.f64 (-.f64 z t) a)) (if (<=.f64 (/.f64 (*.f64 y (-.f64 z t)) a) 99999999999999996350686867959178558315902274782992576532314485486221746301240205812674342870820492799837784938001204037775189753543960218791943147793788145321066524580618236658968633362758090027700335311493754978334367629875739137498376013657689431411868208826074951744485326848) (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) (*.f64 y (/.f64 (-.f64 z t) a))))
(if (<=.f64 x -69723514199172561095316757020672) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x -6819923499432993/83076749736557242056487941267521536) (+.f64 (/.f64 (*.f64 y z) a) x) (if (<=.f64 x -16240025773225274/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (*.f64 (/.f64 (-.f64 z t) a) y) (if (<=.f64 x 8538216093733459/10830740992659433045228180406808920716548582325686783496759685861775864483615725089999900023844295226942934417817982702456930304) (/.f64 (*.f64 (-.f64 z t) y) a) (if (<=.f64 x 5049519796329335/4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873152) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x 271003364326982240/340282366920938463463374607431768211456) (*.f64 (/.f64 (-.f64 z t) a) y) (-.f64 x (*.f64 t (/.f64 y a)))))))))
(if (<=.f64 x -69723514199172561095316757020672) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x -6819923499432993/83076749736557242056487941267521536) (+.f64 x (/.f64 (*.f64 y z) a)) (if (<=.f64 x -8120012886612637/531137992816767098689588206552468627329593117727031923199444138200403559860852242739162502265229285668889329486246501015346579337652707239409519978766587351943831270835393219031728128) (*.f64 y (/.f64 (-.f64 z t) a)) (if (<=.f64 x 8538216093733459/10830740992659433045228180406808920716548582325686783496759685861775864483615725089999900023844295226942934417817982702456930304) (/.f64 (*.f64 y (-.f64 z t)) a) (if (<=.f64 x 5049519796329335/4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873152) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x 8468855135218195/10633823966279326983230456482242756608) (*.f64 y (/.f64 (-.f64 z t) a)) (-.f64 x (*.f64 t (/.f64 y a)))))))))
(if (<=.f64 x -69723514199172561095316757020672) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x -6819923499432993/83076749736557242056487941267521536) (+.f64 (/.f64 (*.f64 y z) a) x) (if (<=.f64 x -437452679747153/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x 3892055738233451/5136851466355833503165029182500125649951503713694505722166289944403058744430742990345377476833582471901350555523611540735370539306820120960085756611964727392534398116336371677921546638558908903585247316148224) (*.f64 (/.f64 (-.f64 z t) a) y) (if (<=.f64 x 5049519796329335/4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873152) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x 271003364326982240/340282366920938463463374607431768211456) (*.f64 (/.f64 (-.f64 z t) a) y) (-.f64 x (*.f64 t (/.f64 y a)))))))))
(if (<=.f64 x -69723514199172561095316757020672) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x -6819923499432993/83076749736557242056487941267521536) (+.f64 x (/.f64 (*.f64 y z) a)) (if (<=.f64 x -437452679747153/1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x 3892055738233451/5136851466355833503165029182500125649951503713694505722166289944403058744430742990345377476833582471901350555523611540735370539306820120960085756611964727392534398116336371677921546638558908903585247316148224) (*.f64 y (/.f64 (-.f64 z t) a)) (if (<=.f64 x 5049519796329335/4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873152) (-.f64 x (*.f64 t (/.f64 y a))) (if (<=.f64 x 8468855135218195/10633823966279326983230456482242756608) (*.f64 y (/.f64 (-.f64 z t) a)) (-.f64 x (*.f64 t (/.f64 y a)))))))))
(if (<=.f64 x -16844868268698030080/6277101735386680763835789423207666416102355444464034512896) (+.f64 (/.f64 (*.f64 y z) a) x) (if (<=.f64 x 5883453040105909/2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288) (*.f64 (/.f64 (-.f64 z t) a) y) (if (<=.f64 x 1844318074972159/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (+.f64 (/.f64 (*.f64 y z) a) x) (if (<=.f64 x 271003364326982240/340282366920938463463374607431768211456) (*.f64 (/.f64 (-.f64 z t) a) y) (+.f64 (/.f64 (*.f64 y z) a) x)))))
(if (<=.f64 x -4112516667162605/1532495540865888858358347027150309183618739122183602176) (+.f64 x (/.f64 (*.f64 y z) a)) (if (<=.f64 x 5883453040105909/2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288) (*.f64 y (/.f64 (-.f64 z t) a)) (if (<=.f64 x 1844318074972159/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (+.f64 x (/.f64 (*.f64 y z) a)) (if (<=.f64 x 8468855135218195/10633823966279326983230456482242756608) (*.f64 y (/.f64 (-.f64 z t) a)) (+.f64 x (/.f64 (*.f64 y z) a))))))
(if (<=.f64 x -16844868268698030080/6277101735386680763835789423207666416102355444464034512896) (+.f64 x (*.f64 y (/.f64 z a))) (if (<=.f64 x 5883453040105909/2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288) (*.f64 (/.f64 (-.f64 z t) a) y) (+.f64 x (*.f64 y (/.f64 z a)))))
(if (<=.f64 x -4112516667162605/1532495540865888858358347027150309183618739122183602176) (+.f64 x (*.f64 y (/.f64 z a))) (if (<=.f64 x 5883453040105909/2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288) (*.f64 y (/.f64 (-.f64 z t) a)) (+.f64 x (*.f64 y (/.f64 z a)))))
(if (<=.f64 x -2052890234119423/75557863725914323419136) x (if (<=.f64 x 271003364326982240/340282366920938463463374607431768211456) (*.f64 (/.f64 (-.f64 z t) a) y) x))
(if (<=.f64 x -2052890234119423/75557863725914323419136) x (if (<=.f64 x 8468855135218195/10633823966279326983230456482242756608) (*.f64 y (/.f64 (-.f64 z t) a)) x))
(if (<=.f64 x -4699128208284355/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) x (if (<=.f64 x 5220221504534209/9293855677986144142487890613436878500820376260371215369098574120724629107252527334657301965600977191186242023688706081565341157784655660673692691131889966411143567752796624212141790061464360855438994973639696482537923429417986750550981868377179113018825281909088399455148533430091776) (/.f64 z (/.f64 a y)) (if (<=.f64 x 5883453040105909/2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288) (/.f64 (*.f64 y (neg.f64 t)) a) (if (<=.f64 x 271003364326982240/340282366920938463463374607431768211456) (/.f64 z (/.f64 a y)) x))))
(if (<=.f64 x -4699128208284355/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) x (if (<=.f64 x 5220221504534209/9293855677986144142487890613436878500820376260371215369098574120724629107252527334657301965600977191186242023688706081565341157784655660673692691131889966411143567752796624212141790061464360855438994973639696482537923429417986750550981868377179113018825281909088399455148533430091776) (/.f64 z (/.f64 a y)) (if (<=.f64 x 5883453040105909/2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288) (/.f64 (neg.f64 (*.f64 y t)) a) (if (<=.f64 x 8468855135218195/10633823966279326983230456482242756608) (/.f64 z (/.f64 a y)) x))))
(if (<=.f64 x -4699128208284355/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) x (if (<=.f64 x 5220221504534209/9293855677986144142487890613436878500820376260371215369098574120724629107252527334657301965600977191186242023688706081565341157784655660673692691131889966411143567752796624212141790061464360855438994973639696482537923429417986750550981868377179113018825281909088399455148533430091776) (/.f64 z (/.f64 a y)) (if (<=.f64 x 5883453040105909/2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288) (/.f64 (*.f64 (neg.f64 y) t) a) (if (<=.f64 x 8468855135218195/10633823966279326983230456482242756608) (/.f64 z (/.f64 a y)) x))))
(if (<=.f64 x -4699128208284355/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) x (if (<=.f64 x 5220221504534209/9293855677986144142487890613436878500820376260371215369098574120724629107252527334657301965600977191186242023688706081565341157784655660673692691131889966411143567752796624212141790061464360855438994973639696482537923429417986750550981868377179113018825281909088399455148533430091776) (/.f64 z (/.f64 a y)) (if (<=.f64 x 5883453040105909/2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288) (/.f64 (*.f64 t (neg.f64 y)) a) (if (<=.f64 x 8468855135218195/10633823966279326983230456482242756608) (/.f64 z (/.f64 a y)) x))))
(if (<=.f64 x -4699128208284355/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) x (if (<=.f64 x 271003364326982240/340282366920938463463374607431768211456) (/.f64 z (/.f64 a y)) x))
(if (<=.f64 x -4699128208284355/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) x (if (<=.f64 x 8468855135218195/10633823966279326983230456482242756608) (/.f64 z (/.f64 a y)) x))
x
Compiler

Compiled 483 to 218 computations (54.9% saved)

soundness210.0ms (1.9%)

Algorithm
egg-herbie
Rules
938×fma-def_binary64
715×fma-neg_binary64
235×cancel-sign-sub-inv_binary64
163×distribute-rgt-in_binary64
119×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01013
11613
23111
36511
415111
531011
654111
797911
8184611
9272711
10355011
11372611
12377111
13381611
14381611
Stop Event
saturated
Compiler

Compiled 55 to 35 computations (36.4% saved)

end116.0ms (1%)

Compiler

Compiled 433 to 131 computations (69.7% saved)

Profiling

Loading profile data...