Details

Time bar (total: 6.4s)

analyze55.0ms (0.9%)

Algorithm
search
Search
TrueOtherFalseIter
0%14%86%0
0%14%86%1
0%14%86%2
0%14%86%3
0%14%86%4
0%14%86%5
0%14%86%6
8.1%5.9%86%7
10.3%3.7%86%8
12.6%1.5%86%9
13.9%0.1%86%10
14%0%86%11
14%0%86%12
14%0%86%13
14%0%86%14
Compiler

Compiled 67 to 35 computations (47.8% saved)

sample1.6s (24.5%)

Symmetry

(sort alpha beta)

Results
1.5s8256×body128valid
Compiler

Compiled 190 to 97 computations (48.9% saved)

simplify39.0ms (0.6%)

Algorithm
egg-herbie
Rules
705×associate-+l+_binary64
492×associate-*l*_binary64
422×associate-*r*_binary64
369×times-frac_binary64
336×associate-/l*_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01875
16767
229367
3161267
4497967
5503567

prune4.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
55.8b
Counts
3 → 1
Alt Table
StatusErrorProgram
55.8b
(/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta))) (*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
Compiler

Compiled 203 to 89 computations (56.2% saved)

localize17.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))
0.1b
(*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta)))
37.5b
(/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta))) (*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
47.7b
(/.f64 (*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta))) (*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta))))

series1.4s (22.4%)

Counts
4 → 144
Calls

4 calls:

1.3s
(/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta))) (*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
132.0ms
(/.f64 (*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta))) (*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta))))
42.0ms
(*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta)))
13.0ms
(*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))

rewrite51.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
61×add-cbrt-cube_binary64
61×add-exp-log_binary64
22×cbrt-unprod_binary64
22×prod-exp_binary64
21×add-sqr-sqrt_binary64
Counts
4 → 132
Calls

4 calls:

10.0ms
(/.f64 (*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta))) (*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta))))
10.0ms
(/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta))) (*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
7.0ms
(*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta)))
3.0ms
(*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))

simplify405.0ms (6.3%)

Algorithm
egg-herbie
Rules
740×fma-def_binary64
507×associate-/l*_binary64
344×times-frac_binary64
54×sqr-pow_binary64
54×sub-neg_binary64
Counts
276 → 296
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0256648816
1515848816

prune1.1s (17.3%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New2897296
Fresh000
Picked101
Done000
Total2907297
Error
10.9b
Counts
297 → 7
Alt Table
StatusErrorProgram
55.8b
(/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta))) (pow.f64 (fma.f64 i 2 (+.f64 alpha beta)) 2)) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
41.3b
(/.f64 (*.f64 (/.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i 2 (+.f64 alpha beta))) (/.f64 (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
19.4b
1/16
58.9b
(/.f64 (/.f64 (*.f64 i (*.f64 (pow.f64 alpha 2) (+.f64 beta i))) (*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
41.4b
(*.f64 (/.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i 2 (+.f64 alpha beta))) (/.f64 (/.f64 (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1)))
42.1b
(/.f64 (*.f64 1/4 (pow.f64 i 2)) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
24.9b
(-.f64 (+.f64 1/16 (*.f64 1/64 (/.f64 1 (*.f64 i i)))) (*.f64 1/32 (+.f64 (/.f64 (*.f64 beta beta) (*.f64 i i)) (/.f64 (*.f64 alpha alpha) (*.f64 i i)))))
Compiler

Compiled 63315 to 36577 computations (42.2% saved)

localize0.0ms (0%)

prune9.0ms (0.1%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New000
Fresh066
Picked011
Done000
Total077
Error
10.9b
Counts
7 → 7
Alt Table
StatusErrorProgram
55.8b
(/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta))) (pow.f64 (fma.f64 i 2 (+.f64 alpha beta)) 2)) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
41.3b
(/.f64 (*.f64 (/.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i 2 (+.f64 alpha beta))) (/.f64 (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
19.4b
1/16
58.9b
(/.f64 (/.f64 (*.f64 i (*.f64 (pow.f64 alpha 2) (+.f64 beta i))) (*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
41.4b
(*.f64 (/.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i 2 (+.f64 alpha beta))) (/.f64 (/.f64 (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1)))
42.1b
(/.f64 (*.f64 1/4 (pow.f64 i 2)) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
24.9b
(-.f64 (+.f64 1/16 (*.f64 1/64 (/.f64 1 (*.f64 i i)))) (*.f64 1/32 (+.f64 (/.f64 (*.f64 beta beta) (*.f64 i i)) (/.f64 (*.f64 alpha alpha) (*.f64 i i)))))
Compiler

Compiled 482 to 244 computations (49.4% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 (*.f64 beta beta) (*.f64 i i)) (/.f64 (*.f64 alpha alpha) (*.f64 i i)))
0.6b
(/.f64 1 (*.f64 i i))
3.4b
(/.f64 (*.f64 alpha alpha) (*.f64 i i))
19.5b
(/.f64 (*.f64 beta beta) (*.f64 i i))

series121.0ms (1.9%)

Counts
4 → 96
Calls

4 calls:

64.0ms
(+.f64 (/.f64 (*.f64 beta beta) (*.f64 i i)) (/.f64 (*.f64 alpha alpha) (*.f64 i i)))
27.0ms
(/.f64 (*.f64 alpha alpha) (*.f64 i i))
27.0ms
(/.f64 (*.f64 beta beta) (*.f64 i i))
2.0ms
(/.f64 1 (*.f64 i i))

rewrite27.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
39×add-exp-log_binary64
33×add-cbrt-cube_binary64
12×div-exp_binary64
12×pow1_binary64
11×prod-exp_binary64
Counts
4 → 101
Calls

4 calls:

9.0ms
(+.f64 (/.f64 (*.f64 beta beta) (*.f64 i i)) (/.f64 (*.f64 alpha alpha) (*.f64 i i)))
6.0ms
(/.f64 (*.f64 beta beta) (*.f64 i i))
5.0ms
(/.f64 (*.f64 alpha alpha) (*.f64 i i))
3.0ms
(/.f64 1 (*.f64 i i))

simplify114.0ms (1.8%)

Algorithm
egg-herbie
Rules
650×associate-*l*_binary64
616×associate-*r/_binary64
473×associate-/r*_binary64
399×associate-/r/_binary64
313×associate-/l/_binary64
Counts
197 → 135
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01392596
13402301
212792170
345522124
449822124
549592124

prune118.0ms (1.8%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1341135
Fresh055
Picked101
Done011
Total1357142
Error
10.8b
Counts
142 → 7
Alt Table
StatusErrorProgram
55.8b
(/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta))) (pow.f64 (fma.f64 i 2 (+.f64 alpha beta)) 2)) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
41.3b
(/.f64 (*.f64 (/.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i 2 (+.f64 alpha beta))) (/.f64 (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
19.4b
1/16
20.1b
(-.f64 (+.f64 1/16 (*.f64 1/64 (/.f64 1 (*.f64 i i)))) (*.f64 1/32 (fma.f64 (/.f64 beta i) (/.f64 beta i) (/.f64 (*.f64 alpha alpha) (*.f64 i i)))))
58.9b
(/.f64 (/.f64 (*.f64 i (*.f64 (pow.f64 alpha 2) (+.f64 beta i))) (*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
41.4b
(*.f64 (/.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i 2 (+.f64 alpha beta))) (/.f64 (/.f64 (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1)))
42.1b
(/.f64 (*.f64 1/4 (pow.f64 i 2)) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
Compiler

Compiled 4832 to 1908 computations (60.5% saved)

localize13.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(fma.f64 (/.f64 beta i) (/.f64 beta i) (/.f64 (*.f64 alpha alpha) (*.f64 i i)))
0.6b
(/.f64 1 (*.f64 i i))
3.4b
(/.f64 (*.f64 alpha alpha) (*.f64 i i))

series51.0ms (0.8%)

Counts
1 → 36
Calls

1 calls:

51.0ms
(fma.f64 (/.f64 beta i) (/.f64 beta i) (/.f64 (*.f64 alpha alpha) (*.f64 i i)))

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 (/.f64 beta i) (/.f64 beta i) (/.f64 (*.f64 alpha alpha) (*.f64 i i)))

simplify49.0ms (0.8%)

Algorithm
egg-herbie
Rules
913×fma-def_binary64
726×distribute-rgt-in_binary64
594×unswap-sqr_binary64
204×associate-*l/_binary64
183×associate-*r/_binary64
Counts
46 → 26
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
028922
150797
295797
3319797
41971797
55717797

prune518.0ms (8%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New96096
Fresh055
Picked011
Done011
Total967103
Error
10.8b
Counts
103 → 7
Alt Table
StatusErrorProgram
55.8b
(/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta))) (pow.f64 (fma.f64 i 2 (+.f64 alpha beta)) 2)) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
41.3b
(/.f64 (*.f64 (/.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i 2 (+.f64 alpha beta))) (/.f64 (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
19.4b
1/16
20.1b
(-.f64 (+.f64 1/16 (*.f64 1/64 (/.f64 1 (*.f64 i i)))) (*.f64 1/32 (fma.f64 (/.f64 beta i) (/.f64 beta i) (/.f64 (*.f64 alpha alpha) (*.f64 i i)))))
58.9b
(/.f64 (/.f64 (*.f64 i (*.f64 (pow.f64 alpha 2) (+.f64 beta i))) (*.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
41.4b
(*.f64 (/.f64 (*.f64 i (+.f64 i (+.f64 alpha beta))) (fma.f64 i 2 (+.f64 alpha beta))) (/.f64 (/.f64 (fma.f64 i (+.f64 i (+.f64 alpha beta)) (*.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta))) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1)))
42.1b
(/.f64 (*.f64 1/4 (pow.f64 i 2)) (fma.f64 (fma.f64 i 2 (+.f64 alpha beta)) (fma.f64 i 2 (+.f64 alpha beta)) -1))
Compiler

Compiled 3125 to 1287 computations (58.8% saved)

regimes524.0ms (8.1%)

Accuracy

Total 3.1b remaining (23.2%)

Threshold costs 0b (0%)

Counts
59 → 2
Compiler

Compiled 10624 to 5645 computations (46.9% saved)

bsearch28.0ms (0.4%)

Steps
ItersRangePoint
6
7.798579327757281e+132
9.47020994925423e+133
3.069023547095177e+133
Compiler

Compiled 4 to 3 computations (25% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02274
12774
22774

end146.0ms (2.3%)

Remove

(sort alpha beta)

Compiler

Compiled 462 to 227 computations (50.9% saved)

Profiling

Loading profile data...