Details

Time bar (total: 4.4s)

analyze508.0ms (11.6%)

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
14%85.8%0.1%7
22.6%77.2%0.1%8
23.8%74.5%1.7%9
40%56%4%10
47.3%48.7%4%11
48.4%45.8%5.8%12
58.6%32.4%9%13
63.4%27.5%9%14
Compiler

Compiled 11 to 7 computations (36.4% saved)

sample1.3s (30%)

Results
981.0ms8256×body128valid
130.0ms820×body128invalid
Compiler

Compiled 32 to 20 computations (37.5% saved)

simplify168.0ms (3.8%)

Algorithm
egg-herbie
Rules
907×associate-/l*_binary64
740×associate-/l/_binary64
677×fma-def_binary64
607×associate-/r/_binary64
557×associate-*l/_binary64
Counts
1 → 2
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
0710
11710
22310
33610
44110
54710
6518
7618
82288
97618
108518
119648
129758
139808
149858
1522318
1622888
1726378
1826898
1929018
2030318
2132788
2237008
2341098
2441578
2548728
2649978
2748898

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
StatusErrorProgram
11.8b
(/.f64 (*.f64 x (+.f64 y z)) z)
2.6b
(fma.f64 x (/.f64 y z) x)
Compiler

Compiled 54 to 30 computations (44.4% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
2.4b
(fma.f64 x (/.f64 y z) x)

series11.0ms (0.3%)

Counts
1 → 36
Calls

1 calls:

11.0ms
(fma.f64 x (/.f64 y z) x)

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:

0.0ms
(fma.f64 x (/.f64 y z) x)

simplify94.0ms (2.2%)

Algorithm
egg-herbie
Rules
635×fma-def_binary64
449×associate-/l/_binary64
410×distribute-rgt-in_binary64
404×distribute-rgt-out_binary64
400×unswap-sqr_binary64
Counts
46 → 24
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
022451
132374
263374
3171374
4650374
52482374
63613374
73881374
84329374
95248374

prune16.0ms (0.4%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New20424
Fresh101
Picked011
Done000
Total21526
Error
0.0b
Counts
26 → 5
Alt Table
StatusErrorProgram
3.5b
(+.f64 (/.f64 (*.f64 y x) z) x)
2.6b
(fma.f64 x (/.f64 y z) x)
30.8b
(*.f64 (sqrt.f64 (fma.f64 x (/.f64 y z) x)) (sqrt.f64 (fma.f64 x (/.f64 y z) x)))
3.8b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
36.8b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 x (/.f64 y z) x) (fma.f64 x (/.f64 y z) x)) (fma.f64 x (/.f64 y z) x)))
Compiler

Compiled 399 to 115 computations (71.2% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 (*.f64 y x) z) x)
5.8b
(/.f64 (*.f64 y x) z)

series25.0ms (0.6%)

Counts
2 → 18
Calls

2 calls:

13.0ms
(+.f64 (/.f64 (*.f64 y x) z) x)
12.0ms
(/.f64 (*.f64 y x) z)

rewrite10.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
fma-def_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
times-frac_binary64
Counts
2 → 44
Calls

2 calls:

5.0ms
(+.f64 (/.f64 (*.f64 y x) z) x)
3.0ms
(/.f64 (*.f64 y x) z)

simplify70.0ms (1.6%)

Algorithm
egg-herbie
Rules
864×fma-def_binary64
391×associate-/l*_binary64
377×*-commutative_binary64
368×times-frac_binary64
344×fma-neg_binary64
Counts
62 → 70
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
075603
1191582
2575526
32318525
44124525
54884525
64948525

prune43.0ms (1%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New67370
Fresh303
Picked011
Done011
Total70575
Error
0b
Counts
75 → 5
Alt Table
StatusErrorProgram
4.0b
(+.f64 (/.f64 y (/.f64 z x)) x)
3.5b
(+.f64 (/.f64 (*.f64 y x) z) x)
2.6b
(fma.f64 x (/.f64 y z) x)
4.6b
(fma.f64 (/.f64 y 1) (/.f64 x z) x)
3.4b
(fma.f64 (/.f64 y (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 x (cbrt.f64 z)) x)
Compiler

Compiled 941 to 280 computations (70.2% saved)

localize8.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 x (cbrt.f64 z))
0.5b
(*.f64 (cbrt.f64 z) (cbrt.f64 z))
0.6b
(cbrt.f64 z)
2.9b
(fma.f64 (/.f64 y (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 x (cbrt.f64 z)) x)

series1.3s (29.2%)

Counts
4 → 84
Calls

4 calls:

909.0ms
(fma.f64 (/.f64 y (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 x (cbrt.f64 z)) x)
292.0ms
(/.f64 x (cbrt.f64 z))
44.0ms
(*.f64 (cbrt.f64 z) (cbrt.f64 z))
31.0ms
(cbrt.f64 z)

rewrite14.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
36×add-sqr-sqrt_binary64
31×cbrt-prod_binary64
28×*-un-lft-identity_binary64
28×add-cube-cbrt_binary64
18×times-frac_binary64
Counts
4 → 106
Calls

4 calls:

5.0ms
(*.f64 (cbrt.f64 z) (cbrt.f64 z))
3.0ms
(/.f64 x (cbrt.f64 z))
1.0ms
(cbrt.f64 z)
0.0ms
(fma.f64 (/.f64 y (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 x (cbrt.f64 z)) x)

simplify141.0ms (3.2%)

Algorithm
egg-herbie
Rules
529×unswap-sqr_binary64
493×associate-/r/_binary64
387×times-frac_binary64
330×associate-*l*_binary64
320×log-prod_binary64
Counts
190 → 162
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01362102
12331823
26761676
320111661
445051633
549621633
649981633
748961633

prune110.0ms (2.5%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New2000200
Fresh022
Picked011
Done022
Total2005205
Error
0b
Counts
205 → 5
Alt Table
StatusErrorProgram
4.0b
(+.f64 (/.f64 y (/.f64 z x)) x)
3.5b
(+.f64 (/.f64 (*.f64 y x) z) x)
2.6b
(fma.f64 x (/.f64 y z) x)
4.6b
(fma.f64 (/.f64 y 1) (/.f64 x z) x)
3.4b
(fma.f64 (/.f64 y (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 x (cbrt.f64 z)) x)
Compiler

Compiled 3622 to 934 computations (74.2% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 y (/.f64 z x)) x)
6.4b
(/.f64 y (/.f64 z x))

series28.0ms (0.6%)

Counts
2 → 72
Calls

2 calls:

17.0ms
(/.f64 y (/.f64 z x))
11.0ms
(+.f64 (/.f64 y (/.f64 z x)) x)

rewrite38.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
141×times-frac_binary64
82×*-un-lft-identity_binary64
79×add-sqr-sqrt_binary64
79×add-cube-cbrt_binary64
44×fma-def_binary64
Counts
2 → 132
Calls

2 calls:

13.0ms
(+.f64 (/.f64 y (/.f64 z x)) x)
6.0ms
(/.f64 y (/.f64 z x))

simplify103.0ms (2.3%)

Algorithm
egg-herbie
Rules
807×fma-def_binary64
357×associate-/r/_binary64
335×associate-/l/_binary64
324×associate-*l/_binary64
300×associate-/l*_binary64
Counts
204 → 185
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01742050
13831928
211191918
329881915
447411915
549881915

prune93.0ms (2.1%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New1850185
Fresh011
Picked011
Done033
Total1855190
Error
0b
Counts
190 → 5
Alt Table
StatusErrorProgram
4.0b
(+.f64 (/.f64 y (/.f64 z x)) x)
3.5b
(+.f64 (/.f64 (*.f64 y x) z) x)
2.6b
(fma.f64 x (/.f64 y z) x)
4.6b
(fma.f64 (/.f64 y 1) (/.f64 x z) x)
3.4b
(fma.f64 (/.f64 y (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 x (cbrt.f64 z)) x)
Compiler

Compiled 2892 to 726 computations (74.9% saved)

regimes152.0ms (3.5%)

Accuracy

Total 1.7b remaining (99.5%)

Threshold costs 0b (0%)

Counts
24 → 3
Compiler

Compiled 1332 to 706 computations (47% saved)

bsearch20.0ms (0.5%)

Steps
ItersRangePoint
6
2.4102143773019014e-116
9.891201558375766e-116
8.997270110073122e-116
3
-1.4698917672180824e+62
-3.1980249348740884e+57
-2.652063733016855e+60
Compiler

Compiled 4 to 3 computations (25% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
if-if-or-not_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01632
12132
22132

end107.0ms (2.5%)

Compiler

Compiled 106 to 62 computations (41.5% saved)

Profiling

Loading profile data...