Details

Time bar (total: 8.3s)

analyze191.0ms (2.3%)

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 26 to 19 computations (26.9% saved)

sample35.0ms (0.4%)

Algorithm
intervals
Results
17.0ms256×body128valid
6.0ms258×pre128true
0.0msbody128invalid
Compiler

Compiled 43 to 32 computations (25.6% saved)

simplify140.0ms (1.7%)

Algorithm
egg-herbie
Rules
1247×unsub-neg_binary64
616×neg-sub0_binary64
571×neg-mul-1_binary64
560×fma-neg_binary64
452×sub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0919
12019
24617
311617
435817
5133117
6346317
7362517
8429317
9467817
10465017
11489517
12490517

prune3.0ms (0%)

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
0.2b
(*.f64 (-.f64 1 m) (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
0.1b
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) (-.f64 1 m))
Compiler

Compiled 85 to 61 computations (28.2% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

series33.0ms (0.4%)

Counts
3 → 68
Calls

3 calls:

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

rewrite36.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
50×add-sqr-sqrt_binary64
46×*-un-lft-identity_binary64
39×prod-diff_binary64
37×add-cube-cbrt_binary64
16×add-exp-log_binary64
Counts
3 → 137
Calls

3 calls:

12.0ms
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) (-.f64 1 m))
9.0ms
(-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)
6.0ms
(/.f64 (*.f64 m (-.f64 1 m)) v)

simplify196.0ms (2.4%)

Algorithm
egg-herbie
Rules
351×associate-/l/_binary64
336×associate-/r*_binary64
279×associate-+l+_binary64
244×associate-/r/_binary64
193×associate-*l*_binary64
Counts
205 → 223
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02034112
14623580
218323499
347163499
449953499
549243499

prune244.0ms (3%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New2194223
Fresh011
Picked101
Done000
Total2205225
Error
0.0b
Counts
225 → 5
Alt Table
StatusErrorProgram
0.6b
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 (pow.f64 1 3) (pow.f64 m 3))) (*.f64 v (+.f64 1 (fma.f64 m m m)))) 1) (-.f64 1 m))
0.2b
(*.f64 (-.f64 1 m) (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
27.9b
(/.f64 (*.f64 (-.f64 m (pow.f64 m 2)) (-.f64 1 m)) v)
0.4b
(*.f64 (-.f64 (/.f64 (*.f64 (/.f64 m (sqrt.f64 v)) (-.f64 1 m)) (sqrt.f64 v)) 1) (-.f64 1 m))
0.1b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 m)) (sqrt.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)))
Compiler

Compiled 5665 to 3735 computations (34.1% saved)

localize17.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (*.f64 m (-.f64 1 m)) v)
0.1b
(*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1))
0.6b
(*.f64 (sqrt.f64 m) (sqrt.f64 m))
59.4b
(fma.f64 (neg.f64 (sqrt.f64 m)) (sqrt.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m)))

series152.0ms (1.8%)

Counts
3 → 34
Calls

3 calls:

125.0ms
(fma.f64 (neg.f64 (sqrt.f64 m)) (sqrt.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m)))
23.0ms
(*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1))
4.0ms
(*.f64 (sqrt.f64 m) (sqrt.f64 m))

rewrite35.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
63×add-sqr-sqrt_binary64
44×*-un-lft-identity_binary64
42×prod-diff_binary64
41×add-cube-cbrt_binary64
25×distribute-lft-in_binary64
Counts
3 → 138
Calls

3 calls:

11.0ms
(*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1))
5.0ms
(*.f64 (sqrt.f64 m) (sqrt.f64 m))
0.0ms
(fma.f64 (neg.f64 (sqrt.f64 m)) (sqrt.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m)))

simplify117.0ms (1.4%)

Algorithm
egg-herbie
Rules
732×fma-neg_binary64
346×distribute-rgt-in_binary64
320×distribute-lft-in_binary64
283×fma-def_binary64
262×associate-/l*_binary64
Counts
172 → 187
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01682626
13182346
29812247
334932235
445642235
549112235

prune527.0ms (6.4%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New3343337
Fresh314
Picked011
Done000
Total3375342
Error
0b
Counts
342 → 5
Alt Table
StatusErrorProgram
0.1b
(+.f64 (+.f64 (/.f64 (*.f64 (-.f64 m (*.f64 m m)) (-.f64 1 m)) v) (+.f64 m -1)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 m)) (sqrt.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)))
0.2b
(*.f64 (-.f64 1 m) (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
0.2b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 m)) (sqrt.f64 m) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 m)) (cbrt.f64 (sqrt.f64 m))) (*.f64 (cbrt.f64 (sqrt.f64 m)) (sqrt.f64 m)))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)))
0.1b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)) (*.f64 (+.f64 (neg.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)))
0.1b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 m)) (sqrt.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)))
Compiler

Compiled 16848 to 8277 computations (50.9% saved)

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (*.f64 m (-.f64 1 m)) v)
0.1b
(*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1))
0.6b
(*.f64 (sqrt.f64 m) (sqrt.f64 m))
25.1b
(+.f64 (neg.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m)))

series3.0ms (0%)

Counts
1 → 9
Calls

1 calls:

3.0ms
(+.f64 (neg.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m)))

rewrite5.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
10×fma-def_binary64
add-sqr-sqrt_binary64
add-log-exp_binary64
distribute-lft-neg-in_binary64
distribute-rgt-neg-in_binary64
Counts
1 → 27
Calls

1 calls:

4.0ms
(+.f64 (neg.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m)))

simplify82.0ms (1%)

Algorithm
egg-herbie
Rules
681×fma-neg_binary64
418×fma-def_binary64
320×times-frac_binary64
240×distribute-rgt-neg-in_binary64
224×cancel-sign-sub-inv_binary64
Counts
36 → 39
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
039105
110560
226057
370557
4142657
5256557
6386157
7452857
8458957

prune632.0ms (7.7%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New3551356
Fresh123
Picked101
Done011
Total3574361
Error
0b
Counts
361 → 4
Alt Table
StatusErrorProgram
0.1b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 m (/.f64 v (-.f64 1 m))) 1)) (*.f64 (+.f64 (neg.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)))
0.1b
(+.f64 (+.f64 (/.f64 (*.f64 (-.f64 m (*.f64 m m)) (-.f64 1 m)) v) (+.f64 m -1)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 m)) (sqrt.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)))
0.2b
(*.f64 (-.f64 1 m) (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
0.1b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 m)) (sqrt.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)))
Compiler

Compiled 16542 to 8617 computations (47.9% saved)

localize19.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 m (/.f64 v (-.f64 1 m)))
0.1b
(*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 m (/.f64 v (-.f64 1 m))) 1))
0.6b
(*.f64 (sqrt.f64 m) (sqrt.f64 m))
25.1b
(+.f64 (neg.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m)))

series33.0ms (0.4%)

Counts
2 → 44
Calls

2 calls:

23.0ms
(*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 m (/.f64 v (-.f64 1 m))) 1))
10.0ms
(/.f64 m (/.f64 v (-.f64 1 m)))

rewrite206.0ms (2.5%)

Algorithm
rewrite-expression-head
Rules
909×times-frac_binary64
776×add-sqr-sqrt_binary64
758×*-un-lft-identity_binary64
555×add-cube-cbrt_binary64
462×prod-diff_binary64
Counts
2 → 618
Calls

2 calls:

36.0ms
(*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 m (/.f64 v (-.f64 1 m))) 1))
10.0ms
(/.f64 m (/.f64 v (-.f64 1 m)))

simplify584.0ms (7.1%)

Algorithm
egg-herbie
Rules
872×fma-def_binary64
300×*-commutative_binary64
259×associate-*r*_binary64
250×associate-*l*_binary64
201×associate-*l/_binary64
Counts
662 → 700
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
044823786
187820578
2374719950
3492119950
4497219950

prune1.4s (16.4%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New8510851
Fresh022
Picked011
Done011
Total8514855
Error
0b
Counts
855 → 4
Alt Table
StatusErrorProgram
0.1b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 m (/.f64 v (-.f64 1 m))) 1)) (*.f64 (+.f64 (neg.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)))
0.1b
(+.f64 (+.f64 (/.f64 (*.f64 (-.f64 m (*.f64 m m)) (-.f64 1 m)) v) (+.f64 m -1)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 m)) (sqrt.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)))
0.2b
(*.f64 (-.f64 1 m) (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
0.1b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 (sqrt.f64 m) (sqrt.f64 m)))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 m)) (sqrt.f64 m) (*.f64 (sqrt.f64 m) (sqrt.f64 m))) (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)))
Compiler

Compiled 52382 to 28938 computations (44.8% saved)

regimes1.8s (21.6%)

Accuracy

Total 0.1b remaining (81.1%)

Threshold costs 0.1b (81.1%)

Counts
276 → 1
Compiler

Compiled 27334 to 18733 computations (31.5% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01959
13657
24557
34957
45057
54857

end1.0ms (0%)

Compiler

Compiled 39 to 24 computations (38.5% saved)

sample1.8s (21.8%)

Algorithm
intervals
Results
738.0ms8000×body128valid
332.0ms8063×pre128true
6.0ms63×body128invalid
Compiler

Compiled 203 to 128 computations (36.9% saved)

Profiling

Loading profile data...