Details

Time bar (total: 4.6s)

analyze348.0ms (7.6%)

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)

sample1.5s (32%)

Results
1.2s7931×body128valid
122.0ms860×body128invalid
85.0ms325×body256valid
Compiler

Compiled 106 to 76 computations (28.3% saved)

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 60 to 42 computations (30% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series125.0ms (2.7%)

Counts
4 → 96
Calls

4 calls:

56.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
33.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
27.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
9.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))

rewrite118.0ms (2.6%)

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 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 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01574
133762
2415862
3498762
4485062

prune142.0ms (3.1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New2484252
Fresh000
Picked011
Done000
Total2485253
Error
0.8b
Counts
253 → 5
Alt Table
StatusErrorProgram
5.9b
(/.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))
30.2b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
30.1b
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))))) (/.f64 1 (*.f64 a -2)))
29.2b
(/.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))
5.8b
(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)))))
Compiler

Compiled 6374 to 3830 computations (39.9% saved)

localize25.0ms (0.5%)

Local error

Found 4 expressions with local error:

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

series202.0ms (4.4%)

Counts
4 → 0
Calls

4 calls:

91.0ms
(/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))
79.0ms
(/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))
19.0ms
(*.f64 (pow.f64 c 4) (pow.f64 a 3))
13.0ms
(*.f64 (pow.f64 c 3) (pow.f64 a 2))

rewrite117.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
318×log1p-udef_binary64
187×log1p-expm1-u_binary64
187×expm1-log1p-u_binary64
186×add-sqr-sqrt_binary64
179×add-log-exp_binary64
Counts
4 → 116
Calls

4 calls:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01952
141752
2455352
3510152

prune248.0ms (5.4%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New1142116
Fresh033
Picked011
Done011
Total1147121
Error
0.7b
Counts
121 → 7
Alt Table
StatusErrorProgram
5.9b
(/.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))
30.2b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
7.2b
(neg.f64 (+.f64 (*.f64 2 (log.f64 (exp.f64 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (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)))))
29.2b
(/.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))
6.3b
(neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 5 (log.f64 (exp.f64 (/.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)))))
5.8b
(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)))))
30.1b
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))))) (/.f64 1 (*.f64 a -2)))
Compiler

Compiled 5812 to 4113 computations (29.2% saved)

localize33.0ms (0.7%)

Local error

Found 4 expressions with local error:

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

series192.0ms (4.2%)

Counts
4 → 0
Calls

4 calls:

84.0ms
(/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))
68.0ms
(/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))
20.0ms
(*.f64 (pow.f64 c 4) (pow.f64 a 4))
19.0ms
(*.f64 (pow.f64 c 3) (pow.f64 a 3))

rewrite72.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
320×log1p-udef_binary64
200×log1p-expm1-u_binary64
200×expm1-log1p-u_binary64
194×add-sqr-sqrt_binary64
191×add-cbrt-cube_binary64
Counts
4 → 112
Calls

4 calls:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02140
145740
2432140
3495640

prune229.0ms (5%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New1111112
Fresh044
Picked011
Done022
Total1118119
Error
0.7b
Counts
119 → 8
Alt Table
StatusErrorProgram
5.9b
(/.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))
30.2b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
7.2b
(neg.f64 (+.f64 (*.f64 2 (log.f64 (exp.f64 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (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)))))
29.2b
(/.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))
6.3b
(neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 5 (log.f64 (exp.f64 (/.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)))))
5.8b
(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)))))
7.7b
(/.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 (log.f64 (exp.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))))))) (*.f64 2 a))
30.1b
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))))) (/.f64 1 (*.f64 a -2)))
Compiler

Compiled 6790 to 4736 computations (30.3% saved)

localize28.0ms (0.6%)

Local error

Found 4 expressions with local error:

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

series217.0ms (4.7%)

Counts
4 → 36
Calls

4 calls:

94.0ms
(log.f64 (exp.f64 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))))
91.0ms
(/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))
18.0ms
(*.f64 (pow.f64 c 4) (pow.f64 a 3))
13.0ms
(*.f64 (pow.f64 c 3) (pow.f64 a 2))

rewrite78.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
272×expm1-udef_binary64
272×log1p-udef_binary64
256×log-pow_binary64
160×log1p-expm1-u_binary64
160×expm1-log1p-u_binary64
Counts
4 → 142
Calls

4 calls:

74.0ms
(/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))
74.0ms
(*.f64 (pow.f64 c 3) (pow.f64 a 2))
74.0ms
(*.f64 (pow.f64 c 4) (pow.f64 a 3))
74.0ms
(log.f64 (exp.f64 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01852
135952
2372352
3488952

prune328.0ms (7.2%)

Pruning

8 alts after pruning (4 fresh and 4 done)

PrunedKeptTotal
New1780178
Fresh044
Picked011
Done033
Total1788186
Error
0.7b
Counts
186 → 8
Alt Table
StatusErrorProgram
5.9b
(/.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))
30.2b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
7.2b
(neg.f64 (+.f64 (*.f64 2 (log.f64 (exp.f64 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (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)))))
29.2b
(/.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))
6.3b
(neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 5 (log.f64 (exp.f64 (/.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)))))
5.8b
(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)))))
7.7b
(/.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 (log.f64 (exp.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))))))) (*.f64 2 a))
30.1b
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 -4 (*.f64 a c))))) (/.f64 1 (*.f64 a -2)))
Compiler

Compiled 8596 to 6227 computations (27.6% saved)

regimes279.0ms (6.1%)

Accuracy

Total 4.5b remaining (84.2%)

Threshold costs 0b (0%)

Counts
40 → 2
Compiler

Compiled 6664 to 4930 computations (26% saved)

bsearch3.0ms (0.1%)

Compiler

Compiled 20 to 14 computations (30% saved)

simplify9.0ms (0.2%)

Algorithm
egg-herbie
Rules
33×*-commutative_binary64
30×+-commutative_binary64
25×sub-neg_binary64
23×neg-sub0_binary64
23×neg-mul-1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
052135
185131
2124131
3162131
4198131
5230131
6248131
7258131
8261131
9258131

end308.0ms (6.7%)

Compiler

Compiled 506 to 358 computations (29.2% saved)

Profiling

Loading profile data...