Details

Time bar (total: 5.9s)

analyze1.8s (30.2%)

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
7.8%92%0.2%8
7.8%92%0.2%9
10.9%88.9%0.2%10
34.7%65.1%0.2%11
43.1%56.7%0.2%12
44.2%55.7%0.2%13
49.5%50.3%0.2%14
Compiler

Compiled 20 to 13 computations (35% saved)

sample32.0ms (0.5%)

Algorithm
intervals
Results
17.0ms245×body128valid
1.0ms22×body128invalid
1.0msbody512valid
1.0msbody1024valid
0.0msbody256valid
Compiler

Compiled 43 to 29 computations (32.6% saved)

simplify42.0ms (0.7%)

Algorithm
egg-herbie
Rules
509×fma-neg_binary64
396×distribute-rgt-in_binary64
366×distribute-lft-in_binary64
289×fma-def_binary64
260×associate-*l*_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01323
15521
215321
336221
4131521
5463921
6506721

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
4.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
4.1b
(fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)
Compiler

Compiled 69 to 35 computations (49.3% saved)

localize35.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(tanh.f64 (/.f64 t y))
0.0b
(tanh.f64 (/.f64 x y))
0.0b
(-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))
3.9b
(fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)

series675.0ms (11.4%)

Counts
4 → 132
Calls

4 calls:

250.0ms
(fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)
178.0ms
(-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))
124.0ms
(tanh.f64 (/.f64 t y))
122.0ms
(tanh.f64 (/.f64 x y))

rewrite17.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
14×*-un-lft-identity_binary64
14×add-sqr-sqrt_binary64
12×add-cube-cbrt_binary64
frac-sub_binary64
prod-diff_binary64
Counts
4 → 73
Calls

4 calls:

9.0ms
(-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))
2.0ms
(tanh.f64 (/.f64 x y))
1.0ms
(tanh.f64 (/.f64 t y))
1.0ms
(fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)

simplify187.0ms (3.2%)

Algorithm
egg-herbie
Rules
750×times-frac_binary64
231×fma-neg_binary64
202×fma-def_binary64
174×distribute-rgt-in_binary64
173×distribute-lft-in_binary64
Counts
205 → 173
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
033012435
110067805
234977805
351597805

prune138.0ms (2.3%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1685173
Fresh000
Picked101
Done000
Total1695174
Error
0.0b
Counts
174 → 5
Alt Table
StatusErrorProgram
25.2b
x
33.6b
(*.f64 (sqrt.f64 (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)) (sqrt.f64 (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)))
44.7b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x) (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)) (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)))
7.8b
(fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (log.f64 (exp.f64 (tanh.f64 (/.f64 x y))))) x)
29.5b
(-.f64 (fma.f64 z t x) (*.f64 x z))
Compiler

Compiled 6805 to 2176 computations (68% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(tanh.f64 (/.f64 t y))
0.0b
(tanh.f64 (/.f64 x y))
2.8b
(log.f64 (exp.f64 (tanh.f64 (/.f64 x y))))
4.5b
(fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (log.f64 (exp.f64 (tanh.f64 (/.f64 x y))))) x)

series339.0ms (5.7%)

Counts
2 → 72
Calls

2 calls:

277.0ms
(fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (log.f64 (exp.f64 (tanh.f64 (/.f64 x y))))) x)
62.0ms
(log.f64 (exp.f64 (tanh.f64 (/.f64 x y))))

rewrite3.0ms (0%)

Algorithm
rewrite-expression-head
Rules
log-pow_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
log-prod_binary64
Counts
2 → 27
Calls

2 calls:

1.0ms
(log.f64 (exp.f64 (tanh.f64 (/.f64 x y))))
0.0ms
(fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (log.f64 (exp.f64 (tanh.f64 (/.f64 x y))))) x)

simplify134.0ms (2.3%)

Algorithm
egg-herbie
Rules
560×times-frac_binary64
459×fma-neg_binary64
420×fma-def_binary64
376×associate-/l*_binary64
280×associate-/r*_binary64
Counts
99 → 86
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01795589
15045162
216794357
348594357
451964357

prune86.0ms (1.5%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1301131
Fresh134
Picked011
Done000
Total1315136
Error
0.0b
Counts
136 → 5
Alt Table
StatusErrorProgram
25.2b
x
33.6b
(*.f64 (sqrt.f64 (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)) (sqrt.f64 (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)))
44.7b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x) (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)) (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)))
7.8b
(fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (log.f64 (exp.f64 (tanh.f64 (/.f64 x y))))) x)
29.5b
(+.f64 x (*.f64 z (-.f64 t x)))
Compiler

Compiled 4267 to 1373 computations (67.8% saved)

localize1.0ms (0%)

prune4.0ms (0.1%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New000
Fresh033
Picked011
Done011
Total055
Error
0.0b
Counts
5 → 5
Alt Table
StatusErrorProgram
25.2b
x
33.6b
(*.f64 (sqrt.f64 (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)) (sqrt.f64 (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)))
44.7b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x) (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)) (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)))
7.8b
(fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (log.f64 (exp.f64 (tanh.f64 (/.f64 x y))))) x)
29.5b
(+.f64 x (*.f64 z (-.f64 t x)))
Compiler

Compiled 215 to 85 computations (60.5% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series14.0ms (0.2%)

Counts
2 → 72
Calls

2 calls:

7.0ms
(+.f64 x (*.f64 z (-.f64 t x)))
7.0ms
(*.f64 z (-.f64 t x))

rewrite45.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
37×add-sqr-sqrt_binary64
36×prod-diff_binary64
35×*-un-lft-identity_binary64
33×add-cube-cbrt_binary64
26×associate-+r+_binary64
Counts
2 → 92
Calls

2 calls:

6.0ms
(*.f64 z (-.f64 t x))
4.0ms
(+.f64 x (*.f64 z (-.f64 t x)))

simplify95.0ms (1.6%)

Algorithm
egg-herbie
Rules
721×fma-neg_binary64
644×fma-def_binary64
344×distribute-rgt-in_binary64
306×distribute-lft-in_binary64
290×cancel-sign-sub-inv_binary64
Counts
164 → 139
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01671649
12901433
29661375
329241321
444241321
548581321

prune67.0ms (1.1%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New1390139
Fresh022
Picked011
Done022
Total1395144
Error
0.0b
Counts
144 → 5
Alt Table
StatusErrorProgram
25.2b
x
33.6b
(*.f64 (sqrt.f64 (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)) (sqrt.f64 (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)))
44.7b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x) (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)) (fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) x)))
7.8b
(fma.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (log.f64 (exp.f64 (tanh.f64 (/.f64 x y))))) x)
29.5b
(+.f64 x (*.f64 z (-.f64 t x)))
Compiler

Compiled 2526 to 625 computations (75.3% saved)

regimes342.0ms (5.8%)

Accuracy

Total 0.8b remaining (94.2%)

Threshold costs 0.8b (94.2%)

Counts
41 → 3
Compiler

Compiled 5443 to 2721 computations (50% saved)

bsearch3.0ms (0.1%)

Compiler

Compiled 19 to 12 computations (36.8% saved)

simplify10.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02387
13387
24187
34587
44787
54787

end1.0ms (0%)

Compiler

Compiled 61 to 22 computations (63.9% saved)

sample1.8s (31%)

Algorithm
intervals
Results
972.0ms7775×body128valid
68.0ms566×body128invalid
43.0ms85×body1024valid
33.0ms89×body512valid
12.0ms51×body256valid
0.0msbody512invalid
Compiler

Compiled 205 to 90 computations (56.1% saved)

Profiling

Loading profile data...