Details

Time bar (total: 12.1s)

analyze962.0ms (8%)

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
12.5%87.4%0.1%6
20.3%73.3%6.4%7
27.3%66.3%6.4%8
38.2%53%8.7%9
46%40.6%13.4%10
49.9%35.1%15%11
54.9%26.9%18.1%12
57.4%22%20.6%13
59.7%18%22.4%14
Compiler

Compiled 42 to 27 computations (35.7% saved)

sample45.0ms (0.4%)

Algorithm
intervals
Results
28.0ms256×body128valid
2.0ms16×body128nan
1.0ms11×body128invalid
Compiler

Compiled 86 to 56 computations (34.9% saved)

simplify549.0ms (4.5%)

Algorithm
egg-herbie
Rules
1534×div-sub_binary64
1283×associate-/l*_binary64
1224×distribute-rgt-in_binary64
767×associate-/r*_binary64
744×distribute-lft-in_binary64
Counts
1 → 1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02258
14356
29156
319854
430954
551954
691854
7135654
8150554
9218154
10280654
11281254
12281454
13277654
14280054
15398254
16311854
17312654
18313454
19313454
20314254
21314254
22394454
23293454
24312054
25308654
26309054
27310254
28310654
29310654
30326854
31319654
32332454
33342854
34353254
35363654
36303654
37303654
38305654
39309254
40309454
41309454
42278554

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
16.6b
Counts
2 → 1
Alt Table
StatusErrorProgram
16.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
Compiler

Compiled 121 to 77 computations (36.4% saved)

localize26.0ms (0.2%)

Local error

Found 4 expressions with local error:

1.1b
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.5b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
18.9b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
18.9b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 1530 to 1275 computations (16.7% saved)

rewrite139.0ms (1.2%)

Algorithm
rewrite-expression-head
Error
16.6b
Rules
16×*-un-lft-identity_binary64
14×add-sqr-sqrt_binary64
12×add-log-exp_binary64
10×sqrt-prod_binary64
add-cube-cbrt_binary64
Counts
4 → 68
Calls

4 calls:

9.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
7.0ms
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
3.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
3.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 3020 to 1705 computations (43.5% saved)

series214.0ms (1.8%)

Error
4.8b
Counts
4 → 67
Calls

4 calls:

47.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
43.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
43.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
41.0ms
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
Compiler

Compiled 6006 to 4035 computations (32.8% saved)

simplify110.0ms (0.9%)

Algorithm
egg-herbie
Rules
512×div-sub_binary64
358×associate-/r*_binary64
358×associate-/l*_binary64
273×cancel-sign-sub-inv_binary64
181×distribute-rgt-neg-in_binary64
Counts
135 → 102
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01542769
14252642
213322611
346222611
457902611

prune194.0ms (1.6%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New975102
Fresh000
Picked101
Done000
Total985103
Error
4.8b
Counts
103 → 5
Alt Table
StatusErrorProgram
25.9b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a)))))) (*.f64 2 a)))
18.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (*.f64 b -2)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
16.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 0 (+.f64 b (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
20.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (neg.f64 b)) (*.f64 2 a)))
34.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a)))) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
Compiler

Compiled 3470 to 1979 computations (43% saved)

localize33.0ms (0.3%)

Local error

Found 4 expressions with local error:

1.1b
(+.f64 b (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a)))))
1.5b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
18.9b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
18.9b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a))))
Compiler

Compiled 1530 to 1275 computations (16.7% saved)

rewrite99.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
4.8b
Rules
12×*-un-lft-identity_binary64
10×add-log-exp_binary64
add-sqr-sqrt_binary64
sqrt-prod_binary64
add-cube-cbrt_binary64
Counts
4 → 57
Calls

4 calls:

8.0ms
(+.f64 b (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a)))))
7.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
3.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a))))
3.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 2662 to 1504 computations (43.5% saved)

series209.0ms (1.7%)

Error
4.8b
Counts
4 → 67
Calls

4 calls:

44.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
43.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
41.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a))))
40.0ms
(+.f64 b (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a)))))
Compiler

Compiled 6066 to 4158 computations (31.5% saved)

simplify98.0ms (0.8%)

Algorithm
egg-herbie
Rules
499×div-sub_binary64
374×associate-/l*_binary64
357×associate-/r*_binary64
268×cancel-sign-sub-inv_binary64
206×distribute-rgt-neg-in_binary64
Counts
124 → 79
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01652421
14082307
212552281
346182281
457172281

prune77.0ms (0.6%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New79079
Fresh044
Picked011
Done000
Total79584
Error
4.8b
Counts
84 → 5
Alt Table
StatusErrorProgram
25.9b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a)))))) (*.f64 2 a)))
18.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (*.f64 b -2)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
16.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 0 (+.f64 b (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
20.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (neg.f64 b)) (*.f64 2 a)))
34.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a)))) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
Compiler

Compiled 2797 to 1650 computations (41% saved)

localize21.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.5b
(*.f64 (*.f64 4 a) c)
0.6b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
1.5b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
18.9b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 1530 to 1275 computations (16.7% saved)

rewrite103.0ms (0.9%)

Algorithm
rewrite-expression-head
Error
4.8b
Rules
10×*-un-lft-identity_binary64
10×add-log-exp_binary64
10×pow1_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
4 → 60
Calls

4 calls:

7.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
5.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
4.0ms
(*.f64 (*.f64 4 a) c)
3.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
Compiler

Compiled 2079 to 1267 computations (39.1% saved)

series162.0ms (1.3%)

Error
4.8b
Counts
4 → 58
Calls

4 calls:

45.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
41.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
34.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
14.0ms
(*.f64 (*.f64 4 a) c)
Compiler

Compiled 3647 to 2629 computations (27.9% saved)

simplify92.0ms (0.8%)

Algorithm
egg-herbie
Rules
422×div-sub_binary64
341×associate-/r*_binary64
340×*-commutative_binary64
279×associate-/l*_binary64
251×cancel-sign-sub-inv_binary64
Counts
118 → 87
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01531889
13911783
213061780
344081780
455271780

prune64.0ms (0.5%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New85287
Fresh123
Picked101
Done011
Total87592
Error
4.8b
Counts
92 → 5
Alt Table
StatusErrorProgram
25.9b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a)))))) (*.f64 2 a)))
18.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (*.f64 b -2)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 (cbrt.f64 (*.f64 4 (*.f64 c a))) (cbrt.f64 (*.f64 4 (*.f64 c a)))) (cbrt.f64 (*.f64 4 (*.f64 c a))))))) (*.f64 2 a)))
22.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (*.f64 b -2)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
16.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 0 (+.f64 b (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
34.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a)))) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
Compiler

Compiled 2059 to 1260 computations (38.8% saved)

localize28.0ms (0.2%)

Local error

Found 4 expressions with local error:

14.1b
(cbrt.f64 (*.f64 4 (*.f64 c a)))
14.1b
(cbrt.f64 (*.f64 4 (*.f64 c a)))
14.1b
(cbrt.f64 (*.f64 4 (*.f64 c a)))
18.9b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 (cbrt.f64 (*.f64 4 (*.f64 c a))) (cbrt.f64 (*.f64 4 (*.f64 c a)))) (cbrt.f64 (*.f64 4 (*.f64 c a))))))
Compiler

Compiled 1530 to 1275 computations (16.7% saved)

rewrite74.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
4.8b
Rules
add-sqr-sqrt_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
pow1_binary64
add-cbrt-cube_binary64
Counts
4 → 42
Calls

4 calls:

3.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 (cbrt.f64 (*.f64 4 (*.f64 c a))) (cbrt.f64 (*.f64 4 (*.f64 c a)))) (cbrt.f64 (*.f64 4 (*.f64 c a))))))
3.0ms
(cbrt.f64 (*.f64 4 (*.f64 c a)))
3.0ms
(cbrt.f64 (*.f64 4 (*.f64 c a)))
3.0ms
(cbrt.f64 (*.f64 4 (*.f64 c a)))
Compiler

Compiled 2256 to 1329 computations (41.1% saved)

series366.0ms (3%)

Error
4.8b
Counts
4 → 36
Calls

4 calls:

172.0ms
(cbrt.f64 (*.f64 4 (*.f64 c a)))
82.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 (cbrt.f64 (*.f64 4 (*.f64 c a))) (cbrt.f64 (*.f64 4 (*.f64 c a)))) (cbrt.f64 (*.f64 4 (*.f64 c a))))))
42.0ms
(cbrt.f64 (*.f64 4 (*.f64 c a)))
41.0ms
(cbrt.f64 (*.f64 4 (*.f64 c a)))
Compiler

Compiled 4144 to 3006 computations (27.5% saved)

simplify50.0ms (0.4%)

Algorithm
egg-herbie
Rules
648×associate-*l*_binary64
646×associate-*r*_binary64
645×times-frac_binary64
271×associate-/l*_binary64
253×associate-/r*_binary64
Counts
78 → 47
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01281265
13231217
28591174
351541174

prune40.0ms (0.3%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New47047
Fresh033
Picked011
Done011
Total47552
Error
4.8b
Counts
52 → 5
Alt Table
StatusErrorProgram
25.9b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a)))))) (*.f64 2 a)))
18.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (*.f64 b -2)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 (cbrt.f64 (*.f64 4 (*.f64 c a))) (cbrt.f64 (*.f64 4 (*.f64 c a)))) (cbrt.f64 (*.f64 4 (*.f64 c a))))))) (*.f64 2 a)))
22.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (*.f64 b -2)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
16.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 0 (+.f64 b (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
34.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a)))) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
Compiler

Compiled 1304 to 816 computations (37.4% saved)

regimes4.2s (35%)

Accuracy

Total 1.1b remaining (15.8%)

Threshold costs 0b (0%)

Compiler

Compiled 19374 to 12890 computations (33.5% saved)

bsearch252.0ms (2.1%)

Steps
ItersRangePoint
9
8.235252469892569e+86
9.11408767003471e+93
5.577999191242217e+93
7
-4.368581419193219e+158
-1.8919106822707e+152
-3.422318262370561e+152
Compiler

Compiled 4 to 3 computations (25% saved)

simplify37.0ms (0.3%)

Algorithm
egg-herbie
Rules
17×*-commutative_binary64
15×+-commutative_binary64
12×sub-neg_binary64
neg-mul-1_binary64
distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
044136
172132
2101132
3123132
4134132
5138132
6137132

end7.0ms (0.1%)

Compiler

Compiled 92 to 61 computations (33.7% saved)

sample3.8s (31.5%)

Algorithm
intervals
Results
2.4s8000×body128valid
228.0ms672×body128nan
130.0ms359×body128invalid
Compiler

Compiled 339 to 224 computations (33.9% saved)

Profiling

Loading profile data...