Details

Time bar (total: 6.7s)

analyze1.1s (16.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
9.4%90.5%0.1%7
14%85.8%0.1%8
21.1%78%0.9%9
37.3%60.3%2.5%10
39.7%56.1%4.2%11
45.6%48.7%5.7%12
55.9%35.1%8.9%13
57.6%32.1%10.3%14
Compiler

Compiled 13 to 8 computations (38.5% saved)

sample1.9s (28.2%)

Results
1.5s8256×body128valid
198.0ms1123×body128invalid
Compiler

Compiled 38 to 23 computations (39.5% saved)

simplify135.0ms (2%)

Algorithm
egg-herbie
Rules
2064×fma-neg_binary64
381×div-sub_binary64
365×associate-/l*_binary64
334×distribute-neg-frac_binary64
322×sub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0813
11211
22511
34711
48211
514311
622811
744211
8104111
9247211
10280511
11294411
12327311
13344111
14351311
15498611

prune5.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 42 to 21 computations (50% saved)

localize11.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 y (-.f64 z x) x)
11.6b
(/.f64 (fma.f64 y (-.f64 z x) x) z)

series40.0ms (0.6%)

Counts
2 → 72
Calls

2 calls:

27.0ms
(/.f64 (fma.f64 y (-.f64 z x) x) z)
13.0ms
(fma.f64 y (-.f64 z x) x)

rewrite8.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
10×*-un-lft-identity_binary64
10×add-sqr-sqrt_binary64
10×add-cube-cbrt_binary64
times-frac_binary64
add-cbrt-cube_binary64
Counts
2 → 39
Calls

2 calls:

4.0ms
(/.f64 (fma.f64 y (-.f64 z x) x) z)
1.0ms
(fma.f64 y (-.f64 z x) x)

simplify207.0ms (3.1%)

Algorithm
egg-herbie
Rules
615×distribute-rgt-in_binary64
602×distribute-lft-in_binary64
415×times-frac_binary64
355×fma-def_binary64
346×fma-neg_binary64
Counts
111 → 65
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0841462
11701315
23851259
310421259
444361259
549991259
649551259

prune67.0ms (1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New61465
Fresh000
Picked011
Done000
Total61566
Error
0.0b
Counts
66 → 5
Alt Table
StatusErrorProgram
38.5b
(*.f64 (sqrt.f64 (/.f64 (fma.f64 y (-.f64 z x) x) z)) (sqrt.f64 (/.f64 (fma.f64 y (-.f64 z x) x) z)))
3.9b
(*.f64 1 (fma.f64 (/.f64 (-.f64 1 y) z) x y))
12.3b
(/.f64 (fma.f64 y (-.f64 z x) x) z)
13.4b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 (fma.f64 y (-.f64 z x) x) (cbrt.f64 z)))
12.5b
(/.f64 1 (/.f64 z (fma.f64 y (-.f64 z x) x)))
Compiler

Compiled 992 to 260 computations (73.8% saved)

localize12.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
3.7b
(fma.f64 (/.f64 (-.f64 1 y) z) x y)

series27.0ms (0.4%)

Counts
1 → 36
Calls

1 calls:

27.0ms
(fma.f64 (/.f64 (-.f64 1 y) z) x y)

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
1 → 10
Calls

1 calls:

1.0ms
(fma.f64 (/.f64 (-.f64 1 y) z) x y)

simplify102.0ms (1.5%)

Algorithm
egg-herbie
Rules
731×distribute-rgt-neg-out_binary64
555×distribute-neg-out_binary64
397×unsub-neg_binary64
368×distribute-rgt-in_binary64
359×distribute-lft-in_binary64
Counts
46 → 29
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
038574
177497
2184497
3447497
42234497
54465497
65104497

prune42.0ms (0.6%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New27229
Fresh213
Picked011
Done011
Total29534
Error
0.0b
Counts
34 → 5
Alt Table
StatusErrorProgram
3.9b
(*.f64 1 (fma.f64 (/.f64 (-.f64 1 y) z) x y))
12.3b
(/.f64 (fma.f64 y (-.f64 z x) x) z)
13.4b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 (fma.f64 y (-.f64 z x) x) (cbrt.f64 z)))
1.3b
(*.f64 1 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))))
0.1b
(*.f64 1 (fma.f64 (/.f64 x z) (-.f64 1 y) y))
Compiler

Compiled 551 to 324 computations (41.2% saved)

localize12.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 (/.f64 x z) (-.f64 1 y) y)

series24.0ms (0.4%)

Counts
1 → 36
Calls

1 calls:

23.0ms
(fma.f64 (/.f64 x z) (-.f64 1 y) y)

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
1 → 10
Calls

1 calls:

1.0ms
(fma.f64 (/.f64 x z) (-.f64 1 y) y)

simplify91.0ms (1.4%)

Algorithm
egg-herbie
Rules
705×distribute-rgt-neg-out_binary64
469×distribute-neg-out_binary64
368×unsub-neg_binary64
332×distribute-rgt-in_binary64
326×distribute-lft-in_binary64
Counts
46 → 23
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
037586
178509
2194497
3424497
42300497
54502497
65263497

prune57.0ms (0.9%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New23023
Fresh022
Picked011
Done022
Total23528
Error
0.0b
Counts
28 → 5
Alt Table
StatusErrorProgram
3.9b
(*.f64 1 (fma.f64 (/.f64 (-.f64 1 y) z) x y))
12.3b
(/.f64 (fma.f64 y (-.f64 z x) x) z)
13.4b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 (fma.f64 y (-.f64 z x) x) (cbrt.f64 z)))
1.3b
(*.f64 1 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))))
0.1b
(*.f64 1 (fma.f64 (/.f64 x z) (-.f64 1 y) y))
Compiler

Compiled 438 to 250 computations (42.9% saved)

localize19.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 (/.f64 x z) (-.f64 1 y) y)
0.3b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)))
0.5b
(*.f64 (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)))
0.5b
(cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))

series471.0ms (7%)

Counts
3 → 108
Calls

3 calls:

334.0ms
(*.f64 (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)))
107.0ms
(cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))
28.0ms
(*.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)))

rewrite41.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
29×pow1_binary64
24×add-sqr-sqrt_binary64
23×cbrt-prod_binary64
16×pow1/3_binary64
14×*-un-lft-identity_binary64
Counts
3 → 93
Calls

3 calls:

13.0ms
(*.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)))
11.0ms
(*.f64 (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)))
1.0ms
(cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))

simplify407.0ms (6%)

Algorithm
egg-herbie
Rules
705×associate-/l*_binary64
699×fma-def_binary64
351×*-commutative_binary64
160×+-commutative_binary64
132×sub-neg_binary64
Counts
201 → 226
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
086114503
1284613436
2566613436

prune1.4s (20.6%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New4292431
Fresh011
Picked101
Done033
Total4306436
Error
0b
Counts
436 → 6
Alt Table
StatusErrorProgram
1.5b
(*.f64 1 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))) (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)))) (cbrt.f64 (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))))))
3.9b
(*.f64 1 (fma.f64 (/.f64 (-.f64 1 y) z) x y))
12.3b
(/.f64 (fma.f64 y (-.f64 z x) x) z)
13.4b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 (fma.f64 y (-.f64 z x) x) (cbrt.f64 z)))
4.9b
(*.f64 1 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y)) (cbrt.f64 (fma.f64 (/.f64 x z) (-.f64 1 y) y))) (cbrt.f64 (+.f64 (*.f64 x (/.f64 (-.f64 1 y) z)) y))))
0.1b
(*.f64 1 (fma.f64 (/.f64 x z) (-.f64 1 y) y))
Compiler

Compiled 31830 to 18841 computations (40.8% saved)

regimes337.0ms (5%)

Accuracy

Total 0.0b remaining (85.7%)

Threshold costs 0.0b (85.7%)

Counts
41 → 1
Compiler

Compiled 3424 to 2000 computations (41.6% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
*-lft-identity_binary64
neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0911
11411
21811
32011
42111
52011

end197.0ms (2.9%)

Compiler

Compiled 170 to 103 computations (39.4% saved)

Profiling

Loading profile data...