Details

Time bar (total: 11.5s)

analyze1.1s (9.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
25%74.9%0.2%5
25%74.9%0.2%6
25%74.9%0.2%7
37.4%62.4%0.2%8
37.4%62.4%0.2%9
37.4%62.4%0.2%10
37.4%62.4%0.2%11
51.5%48.3%0.2%12
56.9%42.9%0.2%13
56.9%42.9%0.2%14
Compiler

Compiled 16 to 11 computations (31.3% saved)

sample1.4s (11.9%)

Results
1.2s8256×body128valid
Compiler

Compiled 47 to 32 computations (31.9% saved)

simplify158.0ms (1.4%)

Algorithm
egg-herbie
Rules
1028×fma-neg_binary64
470×fma-def_binary64
271×associate-/l*_binary64
255×cancel-sign-sub-inv_binary64
255×div-sub_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01113
12413
25313
310913
418513
533613
654913
787013
8160613
9175713
10191213
11198613
12198013
13198513
14199313
15199313
16187213

prune3.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
4.8b
Counts
3 → 2
Alt Table
StatusErrorProgram
6.5b
(/.f64 (*.f64 x 2) (-.f64 (*.f64 y z) (*.f64 t z)))
5.0b
(*.f64 x (/.f64 (/.f64 2 (-.f64 y t)) z))
Compiler

Compiled 80 to 53 computations (33.8% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 2 (-.f64 y t))
0.2b
(/.f64 (/.f64 2 (-.f64 y t)) z)
5.0b
(*.f64 x (/.f64 (/.f64 2 (-.f64 y t)) z))

series93.0ms (0.8%)

Counts
3 → 108
Calls

3 calls:

43.0ms
(*.f64 x (/.f64 (/.f64 2 (-.f64 y t)) z))
35.0ms
(/.f64 (/.f64 2 (-.f64 y t)) z)
15.0ms
(/.f64 2 (-.f64 y t))

rewrite90.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
249×times-frac_binary64
180×add-sqr-sqrt_binary64
171×*-un-lft-identity_binary64
121×add-cube-cbrt_binary64
67×associate-*r*_binary64
Counts
3 → 234
Calls

3 calls:

34.0ms
(*.f64 x (/.f64 (/.f64 2 (-.f64 y t)) z))
16.0ms
(/.f64 (/.f64 2 (-.f64 y t)) z)
7.0ms
(/.f64 2 (-.f64 y t))

simplify231.0ms (2%)

Algorithm
egg-herbie
Rules
292×fma-neg_binary64
246×associate-/l*_binary64
234×associate-/r*_binary64
216×times-frac_binary64
212×*-commutative_binary64
Counts
342 → 351
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
04227256
111236896
239806860
346236847
449896847

prune496.0ms (4.3%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New3438351
Fresh011
Picked101
Done000
Total3449353
Error
0.0b
Counts
353 → 9
Alt Table
StatusErrorProgram
4.6b
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 z) (cbrt.f64 z)))) (/.f64 (/.f64 (sqrt.f64 2) (-.f64 y t)) (cbrt.f64 z)))
26.3b
(*.f64 (sqrt.f64 (*.f64 x (/.f64 (/.f64 2 (-.f64 y t)) z))) (sqrt.f64 (*.f64 x (/.f64 (/.f64 2 (-.f64 y t)) z))))
6.5b
(/.f64 (*.f64 x 2) (-.f64 (*.f64 y z) (*.f64 t z)))
5.3b
(*.f64 (*.f64 x (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 2) (-.f64 y t)) z))
5.4b
(/.f64 (*.f64 x (/.f64 2 (-.f64 y t))) z)
28.7b
(*.f64 (*.f64 x (/.f64 2 (-.f64 (*.f64 y y) (*.f64 t t)))) (/.f64 (+.f64 y t) z))
5.0b
(*.f64 x (/.f64 (/.f64 -2 (-.f64 y t)) (neg.f64 z)))
3.8b
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t))))) (/.f64 (/.f64 (sqrt.f64 2) (cbrt.f64 (-.f64 y t))) z))
5.7b
(*.f64 x (*.f64 (*.f64 (cbrt.f64 (/.f64 (/.f64 2 (-.f64 y t)) z)) (cbrt.f64 (/.f64 (/.f64 2 (-.f64 y t)) z))) (cbrt.f64 (/.f64 (/.f64 2 (-.f64 y t)) z))))
Compiler

Compiled 7659 to 3605 computations (52.9% saved)

localize23.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t))))
0.5b
(*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t)))
0.6b
(cbrt.f64 (-.f64 y t))
3.2b
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t))))) (/.f64 (/.f64 (sqrt.f64 2) (cbrt.f64 (-.f64 y t))) z))

series417.0ms (3.6%)

Counts
4 → 120
Calls

4 calls:

181.0ms
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t))))) (/.f64 (/.f64 (sqrt.f64 2) (cbrt.f64 (-.f64 y t))) z))
104.0ms
(/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t))))
71.0ms
(*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t)))
59.0ms
(cbrt.f64 (-.f64 y t))

rewrite285.0ms (2.5%)

Algorithm
rewrite-expression-head
Rules
312×times-frac_binary64
213×add-sqr-sqrt_binary64
211×*-un-lft-identity_binary64
174×associate-*r*_binary64
159×add-cube-cbrt_binary64
Counts
4 → 318
Calls

4 calls:

91.0ms
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t))))) (/.f64 (/.f64 (sqrt.f64 2) (cbrt.f64 (-.f64 y t))) z))
20.0ms
(*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t)))
16.0ms
(/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t))))
4.0ms
(cbrt.f64 (-.f64 y t))

simplify459.0ms (4%)

Algorithm
egg-herbie
Rules
515×associate-*l/_binary64
488×associate-/l*_binary64
332×times-frac_binary64
296×associate-/r*_binary64
265×associate-/l/_binary64
Counts
438 → 471
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
068715965
1202813843
2543813843

prune670.0ms (5.8%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New5701571
Fresh088
Picked011
Done000
Total57010580
Error
0b
Counts
580 → 10
Alt Table
StatusErrorProgram
4.6b
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 z) (cbrt.f64 z)))) (/.f64 (/.f64 (sqrt.f64 2) (-.f64 y t)) (cbrt.f64 z)))
26.3b
(*.f64 (sqrt.f64 (*.f64 x (/.f64 (/.f64 2 (-.f64 y t)) z))) (sqrt.f64 (*.f64 x (/.f64 (/.f64 2 (-.f64 y t)) z))))
6.5b
(/.f64 (*.f64 x 2) (-.f64 (*.f64 y z) (*.f64 t z)))
5.6b
(/.f64 (/.f64 (*.f64 2 x) (-.f64 y t)) z)
5.3b
(*.f64 (*.f64 x (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 2) (-.f64 y t)) z))
5.4b
(/.f64 (*.f64 x (/.f64 2 (-.f64 y t))) z)
28.7b
(*.f64 (*.f64 x (/.f64 2 (-.f64 (*.f64 y y) (*.f64 t t)))) (/.f64 (+.f64 y t) z))
5.0b
(*.f64 x (/.f64 (/.f64 -2 (-.f64 y t)) (neg.f64 z)))
3.8b
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t))))) (/.f64 (/.f64 (sqrt.f64 2) (cbrt.f64 (-.f64 y t))) z))
5.7b
(*.f64 x (*.f64 (*.f64 (cbrt.f64 (/.f64 (/.f64 2 (-.f64 y t)) z)) (cbrt.f64 (/.f64 (/.f64 2 (-.f64 y t)) z))) (cbrt.f64 (/.f64 (/.f64 2 (-.f64 y t)) z))))
Compiler

Compiled 22363 to 10906 computations (51.2% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(/.f64 (sqrt.f64 2) (-.f64 y t))
0.5b
(*.f64 (cbrt.f64 z) (cbrt.f64 z))
0.6b
(cbrt.f64 z)
4.0b
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 z) (cbrt.f64 z)))) (/.f64 (/.f64 (sqrt.f64 2) (-.f64 y t)) (cbrt.f64 z)))

series233.0ms (2%)

Counts
4 → 96
Calls

4 calls:

112.0ms
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 z) (cbrt.f64 z)))) (/.f64 (/.f64 (sqrt.f64 2) (-.f64 y t)) (cbrt.f64 z)))
62.0ms
(cbrt.f64 z)
43.0ms
(*.f64 (cbrt.f64 z) (cbrt.f64 z))
15.0ms
(/.f64 (sqrt.f64 2) (-.f64 y t))

rewrite153.0ms (1.3%)

Algorithm
rewrite-expression-head
Rules
426×times-frac_binary64
301×add-sqr-sqrt_binary64
293×*-un-lft-identity_binary64
226×associate-*r*_binary64
207×add-cube-cbrt_binary64
Counts
4 → 372
Calls

4 calls:

44.0ms
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 z) (cbrt.f64 z)))) (/.f64 (/.f64 (sqrt.f64 2) (-.f64 y t)) (cbrt.f64 z)))
6.0ms
(/.f64 (sqrt.f64 2) (-.f64 y t))
6.0ms
(*.f64 (cbrt.f64 z) (cbrt.f64 z))
1.0ms
(cbrt.f64 z)

simplify450.0ms (3.9%)

Algorithm
egg-herbie
Rules
603×associate-*r/_binary64
546×associate-*l/_binary64
524×associate-/l*_binary64
322×times-frac_binary64
285×associate-/r*_binary64
Counts
468 → 482
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
050013706
1150911071
2540711071

prune750.0ms (6.5%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New5160516
Fresh088
Picked011
Done011
Total51610526
Error
0b
Counts
526 → 10
Alt Table
StatusErrorProgram
4.6b
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 z) (cbrt.f64 z)))) (/.f64 (/.f64 (sqrt.f64 2) (-.f64 y t)) (cbrt.f64 z)))
26.3b
(*.f64 (sqrt.f64 (*.f64 x (/.f64 (/.f64 2 (-.f64 y t)) z))) (sqrt.f64 (*.f64 x (/.f64 (/.f64 2 (-.f64 y t)) z))))
6.5b
(/.f64 (*.f64 x 2) (-.f64 (*.f64 y z) (*.f64 t z)))
5.6b
(/.f64 (/.f64 (*.f64 2 x) (-.f64 y t)) z)
5.3b
(*.f64 (*.f64 x (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 2) (-.f64 y t)) z))
5.4b
(/.f64 (*.f64 x (/.f64 2 (-.f64 y t))) z)
28.7b
(*.f64 (*.f64 x (/.f64 2 (-.f64 (*.f64 y y) (*.f64 t t)))) (/.f64 (+.f64 y t) z))
5.0b
(*.f64 x (/.f64 (/.f64 -2 (-.f64 y t)) (neg.f64 z)))
3.8b
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t))))) (/.f64 (/.f64 (sqrt.f64 2) (cbrt.f64 (-.f64 y t))) z))
5.7b
(*.f64 x (*.f64 (*.f64 (cbrt.f64 (/.f64 (/.f64 2 (-.f64 y t)) z)) (cbrt.f64 (/.f64 (/.f64 2 (-.f64 y t)) z))) (cbrt.f64 (/.f64 (/.f64 2 (-.f64 y t)) z))))
Compiler

Compiled 16614 to 8234 computations (50.4% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 -2 (-.f64 y t))
0.2b
(/.f64 (/.f64 -2 (-.f64 y t)) (neg.f64 z))
5.0b
(*.f64 x (/.f64 (/.f64 -2 (-.f64 y t)) (neg.f64 z)))

series104.0ms (0.9%)

Counts
3 → 108
Calls

3 calls:

63.0ms
(*.f64 x (/.f64 (/.f64 -2 (-.f64 y t)) (neg.f64 z)))
28.0ms
(/.f64 (/.f64 -2 (-.f64 y t)) (neg.f64 z))
13.0ms
(/.f64 -2 (-.f64 y t))

rewrite174.0ms (1.5%)

Algorithm
rewrite-expression-head
Rules
753×times-frac_binary64
476×add-sqr-sqrt_binary64
467×*-un-lft-identity_binary64
333×add-cube-cbrt_binary64
214×associate-*r*_binary64
Counts
3 → 535
Calls

3 calls:

60.0ms
(*.f64 x (/.f64 (/.f64 -2 (-.f64 y t)) (neg.f64 z)))
26.0ms
(/.f64 (/.f64 -2 (-.f64 y t)) (neg.f64 z))
8.0ms
(/.f64 -2 (-.f64 y t))

simplify424.0ms (3.7%)

Algorithm
egg-herbie
Rules
638×associate-/r*_binary64
491×associate-/l*_binary64
470×associate-/l/_binary64
437×times-frac_binary64
192×*-commutative_binary64
Counts
643 → 688
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
068515042
1183114478
2526314478

prune694.0ms (6%)

Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New6871688
Fresh257
Picked011
Done022
Total6899698
Error
0b
Counts
698 → 9
Alt Table
StatusErrorProgram
4.6b
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 z) (cbrt.f64 z)))) (/.f64 (/.f64 (sqrt.f64 2) (-.f64 y t)) (cbrt.f64 z)))
26.3b
(*.f64 (sqrt.f64 (*.f64 x (/.f64 (/.f64 2 (-.f64 y t)) z))) (sqrt.f64 (*.f64 x (/.f64 (/.f64 2 (-.f64 y t)) z))))
5.0b
(*.f64 x (/.f64 (/.f64 -2 (-.f64 y t)) (neg.f64 z)))
5.1b
(*.f64 x (*.f64 -2 (/.f64 (/.f64 -1 z) (-.f64 y t))))
5.6b
(/.f64 (/.f64 (*.f64 2 x) (-.f64 y t)) z)
5.4b
(/.f64 (*.f64 x (/.f64 2 (-.f64 y t))) z)
28.7b
(*.f64 (*.f64 x (/.f64 2 (-.f64 (*.f64 y y) (*.f64 t t)))) (/.f64 (+.f64 y t) z))
3.8b
(*.f64 (*.f64 x (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (-.f64 y t)) (cbrt.f64 (-.f64 y t))))) (/.f64 (/.f64 (sqrt.f64 2) (cbrt.f64 (-.f64 y t))) z))
5.7b
(*.f64 x (*.f64 (*.f64 (cbrt.f64 (/.f64 (/.f64 2 (-.f64 y t)) z)) (cbrt.f64 (/.f64 (/.f64 2 (-.f64 y t)) z))) (cbrt.f64 (/.f64 (/.f64 2 (-.f64 y t)) z))))
Compiler

Compiled 15859 to 6832 computations (56.9% saved)

regimes2.9s (25.3%)

Accuracy

Total 1.5b remaining (97.6%)

Threshold costs 0b (0%)

Counts
259 → 1
Compiler

Compiled 41188 to 26722 computations (35.1% saved)

simplify3.0ms (0%)

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
01649
12049
22549
32749
42849
52849

end153.0ms (1.3%)

Compiler

Compiled 255 to 162 computations (36.5% saved)

Profiling

Loading profile data...