Details

Time bar (total: 3.9s)

analyze421.0ms (10.7%)

Algorithm
search
Search
TrueOtherFalseIter
0%12.5%87.5%0
0%12.5%87.5%1
0%12.5%87.5%2
3.1%9.3%87.5%3
3.1%6.2%90.7%4
4.7%4.7%90.7%5
4.7%3.5%91.8%6
5.6%2.5%91.8%7
5.9%1.8%92.3%8
6.4%1.3%92.3%9
6.6%0.9%92.5%10
6.8%0.6%92.5%11
6.9%0.5%92.6%12
7%0.3%92.6%13
7.1%0.2%92.7%14
Compiler

Compiled 23 to 16 computations (30.4% saved)

sample31.0ms (0.8%)

Algorithm
intervals
Results
11.0ms256×body128valid
9.0ms258×pre128true
0.0msbody128invalid
Compiler

Compiled 38 to 27 computations (28.9% saved)

simplify126.0ms (3.2%)

Algorithm
egg-herbie
Rules
1186×fma-def_binary64
913×fma-neg_binary64
520×distribute-rgt-in_binary64
481×div-sub_binary64
441×unsub-neg_binary64
Counts
1 → 1
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0916
12016
23914
37814
423314
552914
697614
7168614
8174614
9195214
10233414
11281814
12310414
13456014
14419514
15479914

prune3.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.2b
Counts
2 → 2
Alt Table
StatusErrorProgram
0.3b
(*.f64 m (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
0.3b
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) m)
Compiler

Compiled 62 to 42 computations (32.3% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

0.0b
(*.f64 m (-.f64 1 m))
0.1b
(/.f64 (*.f64 m (-.f64 1 m)) v)
0.2b
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) m)

rewrite173.0ms (4.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
36×add-cube-cbrt_binary64
26×pow1_binary64
20×add-exp-log_binary64
20×add-sqr-sqrt_binary64
17×add-cbrt-cube_binary64
Counts
3 → 136
Calls

3 calls:

18.0ms
(/.f64 (*.f64 m (-.f64 1 m)) v)
17.0ms
(*.f64 m (-.f64 1 m))
17.0ms
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) m)
Compiler

Compiled 2610 to 1574 computations (39.7% saved)

series64.0ms (1.6%)

Error
0.1b
Counts
3 → 30
Calls

3 calls:

30.0ms
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) m)
17.0ms
(/.f64 (*.f64 m (-.f64 1 m)) v)
8.0ms
(*.f64 m (-.f64 1 m))
Compiler

Compiled 708 to 484 computations (31.6% saved)

simplify117.0ms (3%)

Algorithm
egg-herbie
Rules
895×fma-neg_binary64
317×cancel-sign-sub-inv_binary64
258×log-prod_binary64
233×associate-*l*_binary64
216×unswap-sqr_binary64
Counts
166 → 111
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01812040
14441890
220991755
340901755
449481755

prune104.0ms (2.6%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New1038111
Fresh011
Picked011
Done000
Total10310113
Error
0.0b
Counts
113 → 10
Alt Table
StatusErrorProgram
0.3b
(*.f64 m (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
51.2b
(neg.f64 (/.f64 (pow.f64 m 3) v))
0.2b
(*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))
19.4b
(-.f64 (/.f64 (*.f64 m m) v) m)
1.3b
(*.f64 (*.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) (*.f64 (cbrt.f64 m) (cbrt.f64 m))) (cbrt.f64 m))
0.8b
(*.f64 (*.f64 (cbrt.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)) (cbrt.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1))) (*.f64 m (cbrt.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1))))
26.6b
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 3) (pow.f64 1 3)) (/.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 m (*.f64 m m)) v) (+.f64 (/.f64 (-.f64 m (*.f64 m m)) v) 1))) m))
0.3b
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) m)
44.5b
(sqrt.f64 (*.f64 m (*.f64 m (pow.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) 2))))
35.9b
(*.f64 (sqrt.f64 (*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))) (sqrt.f64 (*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))))
Compiler

Compiled 1579 to 826 computations (47.7% saved)

localize6.0ms (0.2%)

Local error

Found 2 expressions with local error:

0.0b
(fma.f64 (/.f64 m v) (-.f64 1 m) -1)
0.2b
(*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))

rewrite74.0ms (1.9%)

Algorithm
rewrite-expression-head
Error
0b
Rules
15×pow1_binary64
13×fma-udef_binary64
12×add-sqr-sqrt_binary64
10×add-cube-cbrt_binary64
add-exp-log_binary64
Counts
2 → 77
Calls

2 calls:

13.0ms
(*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))
11.0ms
(fma.f64 (/.f64 m v) (-.f64 1 m) -1)
Compiler

Compiled 1152 to 669 computations (41.9% saved)

series58.0ms (1.5%)

Error
0.0b
Counts
2 → 30
Calls

2 calls:

29.0ms
(*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))
22.0ms
(fma.f64 (/.f64 m v) (-.f64 1 m) -1)
Compiler

Compiled 626 to 416 computations (33.5% saved)

simplify89.0ms (2.3%)

Algorithm
egg-herbie
Rules
703×fma-neg_binary64
402×distribute-rgt-in_binary64
375×distribute-lft-in_binary64
309×fma-def_binary64
248×*-commutative_binary64
Counts
107 → 54
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01011531
12631293
29151264
340191258
450441258

prune87.0ms (2.2%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New52254
Fresh358
Picked011
Done101
Total56864
Error
0b
Counts
64 → 8
Alt Table
StatusErrorProgram
0.2b
(+.f64 (*.f64 m (/.f64 (-.f64 m (*.f64 m m)) v)) (neg.f64 m))
0.8b
(*.f64 (*.f64 (cbrt.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)) (cbrt.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1))) (*.f64 m (cbrt.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1))))
0.3b
(*.f64 m (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
0.2b
(*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))
1.3b
(*.f64 (*.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) (*.f64 (cbrt.f64 m) (cbrt.f64 m))) (cbrt.f64 m))
7.1b
(pow.f64 (-.f64 (/.f64 (*.f64 m m) v) (+.f64 m (/.f64 (pow.f64 m 3) v))) 1)
44.5b
(sqrt.f64 (*.f64 m (*.f64 m (pow.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) 2))))
35.9b
(*.f64 (sqrt.f64 (*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))) (sqrt.f64 (*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))))
Compiler

Compiled 702 to 393 computations (44% saved)

localize8.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (*.f64 m (/.f64 (-.f64 m (*.f64 m m)) v)) (neg.f64 m))
0.0b
(-.f64 m (*.f64 m m))
0.1b
(/.f64 (-.f64 m (*.f64 m m)) v)
0.2b
(*.f64 m (/.f64 (-.f64 m (*.f64 m m)) v))

rewrite195.0ms (4.9%)

Algorithm
rewrite-expression-head
Error
0b
Rules
36×add-cube-cbrt_binary64
23×pow1_binary64
21×add-sqr-sqrt_binary64
18×add-exp-log_binary64
18×add-cbrt-cube_binary64
Counts
4 → 191
Calls

4 calls:

19.0ms
(/.f64 (-.f64 m (*.f64 m m)) v)
18.0ms
(+.f64 (*.f64 m (/.f64 (-.f64 m (*.f64 m m)) v)) (neg.f64 m))
17.0ms
(-.f64 m (*.f64 m m))
16.0ms
(*.f64 m (/.f64 (-.f64 m (*.f64 m m)) v))
Compiler

Compiled 3457 to 693 computations (80% saved)

series97.0ms (2.4%)

Error
0b
Counts
4 → 39
Calls

4 calls:

33.0ms
(+.f64 (*.f64 m (/.f64 (-.f64 m (*.f64 m m)) v)) (neg.f64 m))
23.0ms
(*.f64 m (/.f64 (-.f64 m (*.f64 m m)) v))
18.0ms
(/.f64 (-.f64 m (*.f64 m m)) v)
8.0ms
(-.f64 m (*.f64 m m))
Compiler

Compiled 1015 to 667 computations (34.3% saved)

simplify143.0ms (3.6%)

Algorithm
egg-herbie
Rules
828×fma-neg_binary64
261×log-prod_binary64
179×div-sub_binary64
178×associate-*l*_binary64
162×associate-*r*_binary64
Counts
230 → 127
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02273149
15612877
226152837
346122837
449072837

prune61.0ms (1.6%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1270127
Fresh066
Picked011
Done011
Total1278135
Error
0b
Counts
135 → 8
Alt Table
StatusErrorProgram
0.2b
(+.f64 (*.f64 m (/.f64 (-.f64 m (*.f64 m m)) v)) (neg.f64 m))
0.8b
(*.f64 (*.f64 (cbrt.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)) (cbrt.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1))) (*.f64 m (cbrt.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1))))
0.3b
(*.f64 m (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
0.2b
(*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))
1.3b
(*.f64 (*.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) (*.f64 (cbrt.f64 m) (cbrt.f64 m))) (cbrt.f64 m))
7.1b
(pow.f64 (-.f64 (/.f64 (*.f64 m m) v) (+.f64 m (/.f64 (pow.f64 m 3) v))) 1)
44.5b
(sqrt.f64 (*.f64 m (*.f64 m (pow.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) 2))))
35.9b
(*.f64 (sqrt.f64 (*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))) (sqrt.f64 (*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))))
Compiler

Compiled 1826 to 644 computations (64.7% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

0.0b
(/.f64 (-.f64 1 m) v)
0.2b
(fma.f64 m (/.f64 (-.f64 1 m) v) -1)
0.2b
(*.f64 m (fma.f64 m (/.f64 (-.f64 1 m) v) -1))

rewrite126.0ms (3.2%)

Algorithm
rewrite-expression-head
Error
0b
Rules
25×add-cube-cbrt_binary64
19×pow1_binary64
16×add-sqr-sqrt_binary64
15×add-cbrt-cube_binary64
14×add-exp-log_binary64
Counts
3 → 129
Calls

3 calls:

17.0ms
(/.f64 (-.f64 1 m) v)
14.0ms
(*.f64 m (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
9.0ms
(fma.f64 m (/.f64 (-.f64 1 m) v) -1)
Compiler

Compiled 1903 to 1240 computations (34.8% saved)

series77.0ms (1.9%)

Error
0b
Counts
3 → 39
Calls

3 calls:

30.0ms
(*.f64 m (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
25.0ms
(fma.f64 m (/.f64 (-.f64 1 m) v) -1)
14.0ms
(/.f64 (-.f64 1 m) v)
Compiler

Compiled 872 to 575 computations (34.1% saved)

simplify172.0ms (4.4%)

Algorithm
egg-herbie
Rules
641×fma-def_binary64
519×fma-neg_binary64
269×cancel-sign-sub-inv_binary64
175×associate-*l*_binary64
158×distribute-lft-neg-out_binary64
Counts
168 → 97
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01692084
14381801
218441788
345671788
449731788

prune43.0ms (1.1%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New97097
Fresh055
Picked011
Done022
Total978105
Error
0b
Counts
105 → 8
Alt Table
StatusErrorProgram
0.2b
(+.f64 (*.f64 m (/.f64 (-.f64 m (*.f64 m m)) v)) (neg.f64 m))
0.8b
(*.f64 (*.f64 (cbrt.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)) (cbrt.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1))) (*.f64 m (cbrt.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1))))
0.3b
(*.f64 m (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
0.2b
(*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))
1.3b
(*.f64 (*.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) (*.f64 (cbrt.f64 m) (cbrt.f64 m))) (cbrt.f64 m))
7.1b
(pow.f64 (-.f64 (/.f64 (*.f64 m m) v) (+.f64 m (/.f64 (pow.f64 m 3) v))) 1)
44.5b
(sqrt.f64 (*.f64 m (*.f64 m (pow.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) 2))))
35.9b
(*.f64 (sqrt.f64 (*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))) (sqrt.f64 (*.f64 m (fma.f64 (/.f64 m v) (-.f64 1 m) -1))))
Compiler

Compiled 1103 to 620 computations (43.8% saved)

regimes654.0ms (16.6%)

Accuracy

Total 0.2b remaining (85.6%)

Threshold costs 0.2b (85.6%)

Compiler

Compiled 9840 to 6577 computations (33.2% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
mul-1-neg_binary64
unsub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01118
11916
22216
32316
42416
52316

end0.0ms (0%)

Compiler

Compiled 13 to 8 computations (38.5% saved)

sample997.0ms (25.3%)

Algorithm
intervals
Results
364.0ms8000×body128valid
192.0ms8044×pre128true
2.0ms44×body128invalid
Compiler

Compiled 189 to 125 computations (33.9% saved)

Profiling

Loading profile data...