Details

Time bar (total: 6.3s)

analyze83.0ms (1.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%37.5%62.5%0
0%37.5%62.5%1
0%18.7%81.3%2
0%9.4%90.6%3
0%9.4%90.6%4
0%7%93%5
1.2%4.7%94.1%6
1.2%3.5%95.3%7
1.8%2.6%95.6%8
2%1.9%96%9
2.4%1.3%96.3%10
2.6%1%96.5%11
2.7%0.7%96.6%12
2.8%0.5%96.7%13
2.9%0.3%96.7%14
Compiler

Compiled 26 to 15 computations (42.3% saved)

sample30.0ms (0.5%)

Algorithm
intervals
Results
11.0ms256×body128valid
6.0ms256×pre128true
0.0ms15×pre128false
Compiler

Compiled 43 to 25 computations (41.9% saved)

simplify46.0ms (0.7%)

Algorithm
egg-herbie
Rules
704×fma-def_binary64
643×fma-neg_binary64
603×associate-/r*_binary64
566×associate-*l*_binary64
362×distribute-rgt-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0920
12617
26915
319415
446415
5152115
6478115
7516015

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
16.8b
Counts
3 → 1
Alt Table
StatusErrorProgram
16.8b
(sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 b (*.f64 a a)) -1)))
Compiler

Compiled 49 to 29 computations (40.8% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 b (*.f64 a a)) -1)))
16.6b
(/.f64 b (*.f64 a a))

series42.0ms (0.7%)

Counts
2 → 48
Calls

2 calls:

29.0ms
(/.f64 b (*.f64 a a))
13.0ms
(sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 b (*.f64 a a)) -1)))

rewrite8.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt_binary64
sqrt-prod_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
*-un-lft-identity_binary64
Counts
2 → 44
Calls

2 calls:

3.0ms
(/.f64 b (*.f64 a a))
3.0ms
(sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 b (*.f64 a a)) -1)))

simplify98.0ms (1.6%)

Algorithm
egg-herbie
Rules
553×div-sub_binary64
385×associate-/l*_binary64
361×associate-/l/_binary64
322×*-commutative_binary64
270×fma-def_binary64
Counts
92 → 53
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0801190
11311118
22581118
36231118
419391118
525271118
642671118
752001118

prune46.0ms (0.7%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New52153
Fresh000
Picked101
Done000
Total53154
Error
0.0b
Counts
54 → 1
Alt Table
StatusErrorProgram
0.0b
(sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))
Compiler

Compiled 868 to 419 computations (51.7% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))
0.3b
(/.f64 (/.f64 b a) a)

series41.0ms (0.7%)

Counts
2 → 48
Calls

2 calls:

29.0ms
(/.f64 (/.f64 b a) a)
12.0ms
(sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))

rewrite15.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
75×times-frac_binary64
50×add-sqr-sqrt_binary64
46×*-un-lft-identity_binary64
46×add-cube-cbrt_binary64
13×associate-/l*_binary64
Counts
2 → 93
Calls

2 calls:

7.0ms
(/.f64 (/.f64 b a) a)
1.0ms
(sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))

simplify145.0ms (2.3%)

Algorithm
egg-herbie
Rules
360×distribute-rgt-in_binary64
345×fma-neg_binary64
327×associate-/l/_binary64
305×distribute-lft-in_binary64
298×fma-def_binary64
Counts
141 → 146
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
01742231
13332103
26052031
313722007
417072002
525631952
644181922
749871922
848491922

prune136.0ms (2.2%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New1442146
Fresh000
Picked101
Done000
Total1452147
Error
0b
Counts
147 → 2
Alt Table
StatusErrorProgram
0.0b
(sqrt.f64 (fabs.f64 (fma.f64 b (*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 b a)) (cbrt.f64 (/.f64 b a))) (sqrt.f64 a)) (/.f64 (cbrt.f64 (/.f64 b a)) (sqrt.f64 a))) -1)))
0.0b
(cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))))
Compiler

Compiled 2785 to 1233 computations (55.7% saved)

localize12.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (cbrt.f64 (/.f64 b a)) (sqrt.f64 a))
0.4b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 b a)) (cbrt.f64 (/.f64 b a))) (sqrt.f64 a)) (/.f64 (cbrt.f64 (/.f64 b a)) (sqrt.f64 a)))
0.5b
(*.f64 (cbrt.f64 (/.f64 b a)) (cbrt.f64 (/.f64 b a)))
0.7b
(cbrt.f64 (/.f64 b a))

series1.7s (27.8%)

Counts
4 → 88
Calls

4 calls:

680.0ms
(*.f64 (cbrt.f64 (/.f64 b a)) (cbrt.f64 (/.f64 b a)))
584.0ms
(/.f64 (cbrt.f64 (/.f64 b a)) (sqrt.f64 a))
414.0ms
(cbrt.f64 (/.f64 b a))
70.0ms
(*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 b a)) (cbrt.f64 (/.f64 b a))) (sqrt.f64 a)) (/.f64 (cbrt.f64 (/.f64 b a)) (sqrt.f64 a)))

rewrite113.0ms (1.8%)

Algorithm
rewrite-expression-head
Rules
404×times-frac_binary64
307×add-sqr-sqrt_binary64
258×cbrt-prod_binary64
217×*-un-lft-identity_binary64
217×add-cube-cbrt_binary64
Counts
4 → 394
Calls

4 calls:

36.0ms
(*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 b a)) (cbrt.f64 (/.f64 b a))) (sqrt.f64 a)) (/.f64 (cbrt.f64 (/.f64 b a)) (sqrt.f64 a)))
11.0ms
(*.f64 (cbrt.f64 (/.f64 b a)) (cbrt.f64 (/.f64 b a)))
6.0ms
(/.f64 (cbrt.f64 (/.f64 b a)) (sqrt.f64 a))
2.0ms
(cbrt.f64 (/.f64 b a))

simplify381.0ms (6.1%)

Algorithm
egg-herbie
Rules
500×associate-/r*_binary64
346×associate-*l*_binary64
331×associate-*r/_binary64
287×associate-*r*_binary64
284×associate-*l/_binary64
Counts
482 → 538
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
044912596
1100711740
2341111098
3461510876
4497710876
5497910876

prune573.0ms (9.1%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New6140614
Fresh011
Picked011
Done000
Total6142616
Error
0b
Counts
616 → 2
Alt Table
StatusErrorProgram
0.0b
(sqrt.f64 (fabs.f64 (fma.f64 b (*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 b a)) (cbrt.f64 (/.f64 b a))) (sqrt.f64 a)) (/.f64 (cbrt.f64 (/.f64 b a)) (sqrt.f64 a))) -1)))
0.0b
(cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))))
Compiler

Compiled 21399 to 5835 computations (72.7% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))))
0.0b
(*.f64 (*.f64 (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))))
0.0b
(cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))))
0.3b
(/.f64 (/.f64 b a) a)

series71.0ms (1.1%)

Counts
3 → 72
Calls

3 calls:

53.0ms
(*.f64 (*.f64 (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))))
13.0ms
(cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))))
5.0ms
(*.f64 (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))))

rewrite62.0ms (1%)

Algorithm
rewrite-expression-head
Rules
168×add-sqr-sqrt_binary64
105×rem-sqrt-square_binary64
64×sqrt-prod_binary64
63×mul-fabs_binary64
59×fabs-mul_binary64
Counts
3 → 182
Calls

3 calls:

12.0ms
(*.f64 (*.f64 (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))))
10.0ms
(cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))))
8.0ms
(*.f64 (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))))

simplify181.0ms (2.9%)

Algorithm
egg-herbie
Rules
623×distribute-rgt-in_binary64
622×times-frac_binary64
609×distribute-lft-in_binary64
509×exp-prod_binary64
452×associate-*l*_binary64
Counts
254 → 215
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01515198
12084049
23663706
39903463
433563326
543803326
651443326

prune548.0ms (8.7%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New5510551
Fresh000
Picked011
Done011
Total5512553
Error
0b
Counts
553 → 2
Alt Table
StatusErrorProgram
0.0b
(sqrt.f64 (fabs.f64 (fma.f64 b (*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 b a)) (cbrt.f64 (/.f64 b a))) (sqrt.f64 a)) (/.f64 (cbrt.f64 (/.f64 b a)) (sqrt.f64 a))) -1)))
0.0b
(cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))) (sqrt.f64 (fabs.f64 (fma.f64 b (/.f64 (/.f64 b a) a) -1)))))
Compiler

Compiled 21480 to 9668 computations (55% saved)

regimes972.0ms (15.4%)

Accuracy

Total 0.0b remaining (38.7%)

Threshold costs 0.0b (38.7%)

Counts
169 → 1
Compiler

Compiled 24959 to 16212 computations (35% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01735
12035
21835

end1.0ms (0%)

Compiler

Compiled 24 to 14 computations (41.7% saved)

sample914.0ms (14.5%)

Algorithm
intervals
Results
365.0ms8000×body128valid
192.0ms8000×pre128true
10.0ms387×pre128false
Compiler

Compiled 114 to 63 computations (44.7% saved)

Profiling

Loading profile data...