Details

Time bar (total: 5.9s)

analyze350.0ms (5.9%)

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 43 to 31 computations (27.9% saved)

sample2.4s (41.2%)

Alt Table
StatusErrorProgram
55.3b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
Results
1.2s3937×body256valid
581.0ms1533×body512valid
471.0ms2786×body128valid
128.0ms896×body128invalid
Compiler

Compiled 146 to 104 computations (28.8% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series181.0ms (3.1%)

Counts
4 → 96
Calls

4 calls:

80.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
51.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
40.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
10.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))

rewrite118.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
278×expm1-udef_binary64
278×log1p-udef_binary64
166×add-sqr-sqrt_binary64
162×log1p-expm1-u_binary64
162×expm1-log1p-u_binary64
Counts
4 → 156
Calls

4 calls:

114.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
114.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
114.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
114.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01574
133762
2415862
3498762
4485062
000
100

prune189.0ms (3.2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New2493252
Fresh000
Picked011
Done000
Total2494253
Error
0.1b
Counts
253 → 4
Alt Table
StatusErrorProgram
55.3b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
55.1b
(/.f64 (/.f64 (-.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))) (*.f64 b b)) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c)))))) (*.f64 2 a))
0.7b
(neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 5 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)) (/.f64 c b)))))
1.0b
(/.f64 (neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))) (*.f64 2 a))
Compiler

Compiled 6334 to 3802 computations (40% saved)

localize26.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (pow.f64 c 4) (pow.f64 a 3))
0.3b
(/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))
0.4b
(/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))
0.4b
(/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))

series312.0ms (5.3%)

Counts
4 → 0
Calls

4 calls:

105.0ms
(/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))
90.0ms
(/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))
68.0ms
(/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))
49.0ms
(*.f64 (pow.f64 c 4) (pow.f64 a 3))

rewrite66.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
382×log1p-udef_binary64
225×log1p-expm1-u_binary64
225×expm1-log1p-u_binary64
224×add-sqr-sqrt_binary64
216×add-cbrt-cube_binary64
Counts
4 → 72
Calls

4 calls:

64.0ms
(*.f64 (pow.f64 c 4) (pow.f64 a 3))
64.0ms
(/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))
64.0ms
(/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))
64.0ms
(/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02355
150655
2451655
3529855
000
100

prune109.0ms (1.8%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New72072
Fresh022
Picked011
Done011
Total72476
Error
0.1b
Counts
76 → 4
Alt Table
StatusErrorProgram
55.3b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
55.1b
(/.f64 (/.f64 (-.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))) (*.f64 b b)) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c)))))) (*.f64 2 a))
0.7b
(neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 5 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)) (/.f64 c b)))))
1.0b
(/.f64 (neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))) (*.f64 2 a))
Compiler

Compiled 3507 to 2458 computations (29.9% saved)

localize33.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (pow.f64 c 4) (pow.f64 a 4))
0.4b
(/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))
0.4b
(*.f64 (pow.f64 c 2) (pow.f64 a 2))
0.4b
(/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))

series240.0ms (4.1%)

Counts
4 → 0
Calls

4 calls:

106.0ms
(/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))
97.0ms
(/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))
21.0ms
(*.f64 (pow.f64 c 4) (pow.f64 a 4))
15.0ms
(*.f64 (pow.f64 c 2) (pow.f64 a 2))

rewrite68.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
342×log1p-udef_binary64
213×log1p-expm1-u_binary64
213×expm1-log1p-u_binary64
207×add-sqr-sqrt_binary64
203×add-cube-cbrt_binary64
Counts
4 → 100
Calls

4 calls:

65.0ms
(*.f64 (pow.f64 c 4) (pow.f64 a 4))
65.0ms
(/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))
65.0ms
(*.f64 (pow.f64 c 2) (pow.f64 a 2))
65.0ms
(/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02240
148240
2437440
3500840
000
100

prune160.0ms (2.7%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New1000100
Fresh011
Picked011
Done022
Total1004104
Error
0.1b
Counts
104 → 4
Alt Table
StatusErrorProgram
55.3b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
55.1b
(/.f64 (/.f64 (-.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))) (*.f64 b b)) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c)))))) (*.f64 2 a))
0.7b
(neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 5 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)) (/.f64 c b)))))
1.0b
(/.f64 (neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))) (*.f64 2 a))
Compiler

Compiled 5812 to 4102 computations (29.4% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series581.0ms (9.8%)

Counts
4 → 96
Calls

4 calls:

310.0ms
(/.f64 (/.f64 (-.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))) (*.f64 b b)) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c)))))) (*.f64 2 a))
215.0ms
(/.f64 (-.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))) (*.f64 b b)) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))))))
40.0ms
(sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))))
15.0ms
(-.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))) (*.f64 b b))

rewrite229.0ms (3.9%)

Algorithm
batch-egg-rewrite
Rules
943×prod-diff_binary64
367×egg-rr
183×add-sqr-sqrt_binary64
176×log1p-expm1-u_binary64
176×expm1-log1p-u_binary64
Counts
4 → 367
Calls

4 calls:

204.0ms
(sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))))
204.0ms
(/.f64 (-.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))) (*.f64 b b)) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))))))
204.0ms
(/.f64 (/.f64 (-.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))) (*.f64 b b)) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c)))))) (*.f64 2 a))
204.0ms
(-.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))) (*.f64 b b))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
016106
1363103
24846103
36733103
000
100

prune500.0ms (8.5%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New4612463
Fresh000
Picked101
Done033
Total4625467
Error
0.0b
Counts
467 → 5
Alt Table
StatusErrorProgram
55.1b
(/.f64 (/.f64 (-.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))) (*.f64 b b)) (+.f64 b (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c)))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c)))))))) (*.f64 2 a))
55.3b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
0.4b
(/.f64 (/.f64 (*.f64 -4 (*.f64 c a)) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c)))))) (*.f64 2 a))
0.7b
(neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 5 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)) (/.f64 c b)))))
1.0b
(/.f64 (neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))) (*.f64 2 a))
Compiler

Compiled 34720 to 19052 computations (45.1% saved)

regimes154.0ms (2.6%)

Accuracy

Total 0.3b remaining (88.9%)

Threshold costs 0.3b (88.9%)

Counts
28 → 1
Compiler

Compiled 4592 to 3290 computations (28.4% saved)

simplify2.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01631
11831
21831

end136.0ms (2.3%)

Compiler

Compiled 239 to 165 computations (31% saved)

Profiling

Loading profile data...