Details

Time bar (total: 6.6s)

analyze406.0ms (6.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%0%100%0
0%0%100%1
0%0%100%2
0%0%100%3
0%0%100%4
0%0%100%5
0%0%100%6
0%0%100%7
0%0%100%8
0%0%100%9
0%0%100%10
0%0%100%11
0%0%100%12
0%0%100%13
0%0%100%14
Compiler

Compiled 33 to 24 computations (27.3% saved)

sample55.0ms (0.8%)

Algorithm
intervals
Results
15.0ms127×body256valid
10.0ms46×body512valid
8.0ms286×pre128true
5.0ms83×body128valid
2.0ms30×body128nan
Compiler

Compiled 56 to 41 computations (26.8% saved)

simplify277.0ms (4.2%)

Algorithm
egg-herbie
Rules
1743×fma-neg_binary64
1393×fma-def_binary64
800×div-sub_binary64
619×times-frac_binary64
473×associate-/r/_binary64
Counts
1 → 1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01526
13322
26722
313822
420422
533822
655822
792422
8138822
9160422
10237522
11274222
12253322
13262122
14317122
15331322
16387322
17367922
18402922
19431722
20448522
21456122
22480522
23479322
24479722
25479722
26494822

prune4.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
53.1b
Counts
2 → 2
Alt Table
StatusErrorProgram
53.1b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b) (/.f64 1/2 a))
53.1b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
Compiler

Compiled 94 to 64 computations (31.9% saved)

localize12.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))
0.0b
(fma.f64 a (*.f64 c -4) (*.f64 b b))
0.2b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b) (/.f64 1/2 a))
27.6b
(-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)

rewrite97.0ms (1.5%)

Algorithm
rewrite-expression-head
Error
49.7b
Rules
42×add-sqr-sqrt_binary64
32×*-un-lft-identity_binary64
28×add-cube-cbrt_binary64
18×prod-diff_binary64
17×sqrt-prod_binary64
Counts
4 → 109
Calls

4 calls:

9.0ms
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b) (/.f64 1/2 a))
4.0ms
(-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)
1.0ms
(sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))
0.0ms
(fma.f64 a (*.f64 c -4) (*.f64 b b))
Compiler

Compiled 2813 to 1478 computations (47.5% saved)

series156.0ms (2.4%)

Error
0.2b
Counts
4 → 72
Calls

4 calls:

45.0ms
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b) (/.f64 1/2 a))
37.0ms
(-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)
27.0ms
(fma.f64 a (*.f64 c -4) (*.f64 b b))
26.0ms
(sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))
Compiler

Compiled 2658 to 1932 computations (27.3% saved)

simplify150.0ms (2.3%)

Algorithm
egg-herbie
Rules
672×fma-neg_binary64
472×distribute-rgt-in_binary64
259×cancel-sign-sub-inv_binary64
169×*-commutative_binary64
167×associate-*l*_binary64
Counts
181 → 136
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02685303
16714311
224944003
347004003
448894003

prune55.0ms (0.8%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New1306136
Fresh101
Picked101
Done000
Total1326138
Error
0.0b
Counts
138 → 6
Alt Table
StatusErrorProgram
53.4b
(*.f64 (*.f64 (+.f64 (sqrt.f64 b) (sqrt.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))) (-.f64 (sqrt.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) (sqrt.f64 b))) (/.f64 1/2 a))
1.5b
(neg.f64 (fma.f64 2 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 5 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)) (+.f64 (/.f64 c b) (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3))))))
1.8b
(*.f64 (fma.f64 2 (+.f64 (/.f64 (*.f64 c a) b) (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3))) (fma.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)) (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))))) (/.f64 -1/2 a))
0.3b
(/.f64 (*.f64 (/.f64 1/2 a) (+.f64 (*.f64 c (*.f64 a -4)) 0)) (+.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b))
0.4b
(/.f64 (*.f64 1/2 (+.f64 (*.f64 c (*.f64 a -4)) 0)) (*.f64 a (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))))
0.4b
(*.f64 (/.f64 (+.f64 (*.f64 c (*.f64 a -4)) 0) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))) (/.f64 1/2 a))
Compiler

Compiled 1661 to 976 computations (41.2% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(fma.f64 a (*.f64 c -4) (*.f64 b b))
0.1b
(+.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)
0.1b
(/.f64 (*.f64 (/.f64 1/2 a) (+.f64 (*.f64 c (*.f64 a -4)) 0)) (+.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b))
0.3b
(*.f64 (/.f64 1/2 a) (+.f64 (*.f64 c (*.f64 a -4)) 0))

rewrite146.0ms (2.2%)

Algorithm
rewrite-expression-head
Error
0b
Rules
22×*-un-lft-identity_binary64
21×add-sqr-sqrt_binary64
18×add-cbrt-cube_binary64
18×add-exp-log_binary64
16×add-cube-cbrt_binary64
Counts
4 → 104
Calls

4 calls:

13.0ms
(/.f64 (*.f64 (/.f64 1/2 a) (+.f64 (*.f64 c (*.f64 a -4)) 0)) (+.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b))
8.0ms
(*.f64 (/.f64 1/2 a) (+.f64 (*.f64 c (*.f64 a -4)) 0))
3.0ms
(+.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)
0.0ms
(fma.f64 a (*.f64 c -4) (*.f64 b b))
Compiler

Compiled 3457 to 2184 computations (36.8% saved)

series132.0ms (2%)

Error
0.0b
Counts
4 → 60
Calls

4 calls:

47.0ms
(/.f64 (*.f64 (/.f64 1/2 a) (+.f64 (*.f64 c (*.f64 a -4)) 0)) (+.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b))
33.0ms
(+.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)
30.0ms
(fma.f64 a (*.f64 c -4) (*.f64 b b))
9.0ms
(*.f64 (/.f64 1/2 a) (+.f64 (*.f64 c (*.f64 a -4)) 0))
Compiler

Compiled 2609 to 1875 computations (28.1% saved)

simplify115.0ms (1.7%)

Algorithm
egg-herbie
Rules
350×associate-*r*_binary64
285×associate-*l*_binary64
277×associate-/l*_binary64
254×div-sub_binary64
252×fma-neg_binary64
Counts
164 → 141
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02544398
17133693
240493676
349893676

prune91.0ms (1.4%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New1374141
Fresh325
Picked101
Done000
Total1416147
Error
0b
Counts
147 → 6
Alt Table
StatusErrorProgram
1.5b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (/.f64 (*.f64 -2 (*.f64 c a)) a) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))) (cbrt.f64 (/.f64 (/.f64 (*.f64 -2 (*.f64 c a)) a) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))))) (cbrt.f64 (/.f64 (/.f64 (*.f64 -2 (*.f64 c a)) a) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))))
0.1b
(/.f64 (*.f64 -2 c) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))
0.4b
(/.f64 (/.f64 1/2 a) (/.f64 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) (*.f64 a (*.f64 c -4))))
2.6b
(/.f64 (/.f64 (*.f64 -2 (*.f64 c a)) a) (*.f64 2 (-.f64 b (*.f64 (/.f64 c b) a))))
0.4b
(/.f64 (*.f64 1/2 (+.f64 (*.f64 c (*.f64 a -4)) 0)) (*.f64 a (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))))
1.5b
(neg.f64 (fma.f64 2 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 5 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)) (+.f64 (/.f64 c b) (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3))))))
Compiler

Compiled 2677 to 1546 computations (42.2% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))
0.0b
(fma.f64 a (*.f64 c -4) (*.f64 b b))
0.1b
(+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))
0.1b
(/.f64 (*.f64 -2 c) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))

rewrite101.0ms (1.5%)

Algorithm
rewrite-expression-head
Error
0b
Rules
14×*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
add-cube-cbrt_binary64
Counts
4 → 69
Calls

4 calls:

5.0ms
(/.f64 (*.f64 -2 c) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))
3.0ms
(+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))
1.0ms
(sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))
0.0ms
(fma.f64 a (*.f64 c -4) (*.f64 b b))
Compiler

Compiled 1622 to 909 computations (44% saved)

series148.0ms (2.2%)

Error
0b
Counts
4 → 73
Calls

4 calls:

45.0ms
(/.f64 (*.f64 -2 c) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))
30.0ms
(+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))
27.0ms
(sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))
26.0ms
(fma.f64 a (*.f64 c -4) (*.f64 b b))
Compiler

Compiled 2623 to 1867 computations (28.8% saved)

simplify83.0ms (1.3%)

Algorithm
egg-herbie
Rules
731×times-frac_binary64
707×associate-/l*_binary64
311×fma-def_binary64
248×associate-/l/_binary64
195×associate-/r/_binary64
Counts
142 → 128
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02003242
14932973
215762892
350662892

prune73.0ms (1.1%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1253128
Fresh325
Picked101
Done000
Total1295134
Error
0b
Counts
134 → 5
Alt Table
StatusErrorProgram
1.4b
(/.f64 (*.f64 c -2) (fma.f64 2 (-.f64 b (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 (*.f64 c c) a) (pow.f64 b 3)) a))) (*.f64 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)) -4)))
0.4b
(/.f64 (/.f64 1/2 a) (/.f64 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) (*.f64 a (*.f64 c -4))))
1.5b
(-.f64 (*.f64 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (pow.f64 b 5)) -2) (fma.f64 5 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7)) (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b))))
0.4b
(/.f64 -2 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) c))
1.5b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (/.f64 (*.f64 -2 (*.f64 c a)) a) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))) (cbrt.f64 (/.f64 (/.f64 (*.f64 -2 (*.f64 c a)) a) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))))) (cbrt.f64 (/.f64 (/.f64 (*.f64 -2 (*.f64 c a)) a) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))))
Compiler

Compiled 1683 to 975 computations (42.1% saved)

localize10.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(fma.f64 c (*.f64 a -4) (*.f64 b b))
0.1b
(+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))
0.1b
(/.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) c)
0.3b
(/.f64 -2 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) c))

rewrite139.0ms (2.1%)

Algorithm
rewrite-expression-head
Error
0b
Rules
108×times-frac_binary64
97×*-un-lft-identity_binary64
63×add-sqr-sqrt_binary64
63×add-cube-cbrt_binary64
19×associate-/r*_binary64
Counts
4 → 146
Calls

4 calls:

7.0ms
(/.f64 -2 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) c))
5.0ms
(/.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) c)
3.0ms
(+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))
0.0ms
(fma.f64 c (*.f64 a -4) (*.f64 b b))
Compiler

Compiled 3772 to 2131 computations (43.5% saved)

series154.0ms (2.3%)

Error
0b
Counts
4 → 72
Calls

4 calls:

46.0ms
(/.f64 -2 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) c))
34.0ms
(/.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) c)
29.0ms
(+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))
27.0ms
(fma.f64 c (*.f64 a -4) (*.f64 b b))
Compiler

Compiled 2517 to 1816 computations (27.9% saved)

simplify187.0ms (2.8%)

Algorithm
egg-herbie
Rules
762×times-frac_binary64
367×fma-def_binary64
314×associate-/l/_binary64
242×fma-neg_binary64
161×associate-/r/_binary64
Counts
218 → 145
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03046554
17276177
221556084
348706084
449546084

prune63.0ms (1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1441145
Fresh134
Picked011
Done000
Total1455150
Error
0b
Counts
150 → 5
Alt Table
StatusErrorProgram
1.4b
(/.f64 (*.f64 c -2) (fma.f64 2 (-.f64 b (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 (*.f64 c c) a) (pow.f64 b 3)) a))) (*.f64 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)) -4)))
0.4b
(/.f64 (/.f64 1/2 a) (/.f64 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) (*.f64 a (*.f64 c -4))))
1.5b
(*.f64 (*.f64 (cbrt.f64 c) (cbrt.f64 c)) (/.f64 -2 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (cbrt.f64 c))))
1.5b
(-.f64 (*.f64 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (pow.f64 b 5)) -2) (fma.f64 5 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7)) (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b))))
0.4b
(/.f64 -2 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) c))
Compiler

Compiled 1679 to 958 computations (42.9% saved)

regimes2.2s (33.2%)

Accuracy

Total 0.1b remaining (78.4%)

Threshold costs 0.1b (78.4%)

Compiler

Compiled 41116 to 26882 computations (34.6% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
*-lft-identity_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01522
12122
22022

end2.0ms (0%)

Compiler

Compiled 18 to 12 computations (33.3% saved)

sample1.7s (26.2%)

Algorithm
intervals
Results
482.0ms3772×body256valid
281.0ms1511×body512valid
267.0ms8773×pre128true
181.0ms2717×body128valid
48.0ms773×body128nan
Compiler

Compiled 203 to 138 computations (32% saved)

Profiling

Loading profile data...