Details

Time bar (total: 13.1s)

analyze2.6s (19.5%)

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

Compiled 39 to 24 computations (38.5% saved)

sample3.8s (29.3%)

Results
2.1s11150×body128invalid
1.6s8256×body128valid
Compiler

Compiled 116 to 71 computations (38.8% saved)

simplify317.0ms (2.4%)

Algorithm
egg-herbie
Rules
802×unsub-neg_binary64
656×sub-neg_binary64
486×fma-neg_binary64
419×distribute-neg-in_binary64
395×+-commutative_binary64
Counts
1 → 2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02443
15941
213941
343839
4130239
5298239
6342039
7389839
8405639
9398639
10403139
11402739
12439339
13460039
14466539
15467039
16467039
17467239
18467439
19467439
20493439
21493139

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
14.6b
Counts
3 → 1
Alt Table
StatusErrorProgram
14.6b
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))))
Compiler

Compiled 137 to 74 computations (46% saved)

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(-.f64 (*.f64 y z) (*.f64 t a))
5.0b
(*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))
5.0b
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))))
6.7b
(fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i))))

series168.0ms (1.3%)

Counts
4 → 312
Calls

4 calls:

90.0ms
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))))
52.0ms
(fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i))))
17.0ms
(*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))
9.0ms
(-.f64 (*.f64 y z) (*.f64 t a))

rewrite48.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
256×add-sqr-sqrt_binary64
241×log1p-expm1-u_binary64
241×expm1-log1p-u_binary64
235×add-log-exp_binary64
234×add-cube-cbrt_binary64
Counts
4 → 94
Calls

4 calls:

44.0ms
(-.f64 (*.f64 y z) (*.f64 t a))
44.0ms
(*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))
44.0ms
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))))
44.0ms
(fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02288
148888
2502688
000
100

simplify242.0ms (1.9%)

Algorithm
egg-herbie
Rules
899×fma-neg_binary64
574×neg-mul-1_binary64
507×associate-+l-_binary64
503×unsub-neg_binary64
382×distribute-neg-out_binary64
Counts
406 → 178
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01467854
14097510
210607433
318857105
440837105
548487105
652547105

prune181.0ms (1.4%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1717178
Fresh000
Picked101
Done000
Total1727179
Error
0.0b
Counts
179 → 7
Alt Table
StatusErrorProgram
36.2b
(pow.f64 (sqrt.f64 (fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))))) 2)
13.1b
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (-.f64 (*.f64 c (*.f64 t j)) (*.f64 i (*.f64 y j)))))
30.9b
(fma.f64 z (-.f64 (*.f64 y x) (*.f64 c b)) (*.f64 t (-.f64 (*.f64 c j) (*.f64 x a))))
21.5b
(fma.f64 c (-.f64 (*.f64 t j) (*.f64 z b)) (*.f64 i (-.f64 (*.f64 a b) (*.f64 j y))))
14.7b
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (fma.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (cbrt.f64 (*.f64 y z)) (neg.f64 (*.f64 t a))) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))))
13.2b
(+.f64 (*.f64 j (-.f64 (*.f64 c t) (*.f64 y i))) (fma.f64 z (-.f64 (*.f64 y x) (*.f64 c b)) (*.f64 a (-.f64 (*.f64 i b) (*.f64 t x)))))
8.4b
(-.f64 (+.f64 (*.f64 i (*.f64 a b)) (+.f64 (*.f64 c (*.f64 t j)) (*.f64 y (*.f64 z x)))) (+.f64 (*.f64 y (*.f64 i j)) (+.f64 (*.f64 c (*.f64 z b)) (*.f64 a (*.f64 t x)))))
Compiler

Compiled 5517 to 1012 computations (81.7% saved)

localize23.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.6b
(*.f64 c (*.f64 z b))
5.1b
(*.f64 y (*.f64 i j))
5.1b
(*.f64 c (*.f64 t j))
5.2b
(*.f64 a (*.f64 t x))

series34.0ms (0.3%)

Counts
4 → 32
Calls

4 calls:

11.0ms
(*.f64 c (*.f64 t j))
8.0ms
(*.f64 a (*.f64 t x))
8.0ms
(*.f64 y (*.f64 i j))
7.0ms
(*.f64 c (*.f64 z b))

rewrite74.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
333×expm1-udef_binary64
333×log1p-udef_binary64
228×associate-*r*_binary64
184×add-sqr-sqrt_binary64
167×add-log-exp_binary64
Counts
4 → 64
Calls

4 calls:

72.0ms
(*.f64 c (*.f64 z b))
72.0ms
(*.f64 y (*.f64 i j))
72.0ms
(*.f64 c (*.f64 t j))
72.0ms
(*.f64 a (*.f64 t x))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01828
135928
2433728
3534528
000
100

simplify13.0ms (0.1%)

Algorithm
egg-herbie
Rules
10×*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
Counts
96 → 66
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
011224
119224
231224
331224
431224

prune71.0ms (0.5%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New66066
Fresh066
Picked011
Done000
Total66773
Error
0.0b
Counts
73 → 7
Alt Table
StatusErrorProgram
36.2b
(pow.f64 (sqrt.f64 (fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))))) 2)
13.1b
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (-.f64 (*.f64 c (*.f64 t j)) (*.f64 i (*.f64 y j)))))
30.9b
(fma.f64 z (-.f64 (*.f64 y x) (*.f64 c b)) (*.f64 t (-.f64 (*.f64 c j) (*.f64 x a))))
21.5b
(fma.f64 c (-.f64 (*.f64 t j) (*.f64 z b)) (*.f64 i (-.f64 (*.f64 a b) (*.f64 j y))))
14.7b
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (fma.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (cbrt.f64 (*.f64 y z)) (neg.f64 (*.f64 t a))) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))))
13.2b
(+.f64 (*.f64 j (-.f64 (*.f64 c t) (*.f64 y i))) (fma.f64 z (-.f64 (*.f64 y x) (*.f64 c b)) (*.f64 a (-.f64 (*.f64 i b) (*.f64 t x)))))
8.4b
(-.f64 (+.f64 (*.f64 i (*.f64 a b)) (+.f64 (*.f64 c (*.f64 t j)) (*.f64 y (*.f64 z x)))) (+.f64 (*.f64 y (*.f64 i j)) (+.f64 (*.f64 c (*.f64 z b)) (*.f64 a (*.f64 t x)))))
Compiler

Compiled 2979 to 675 computations (77.3% saved)

localize19.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
3.4b
(*.f64 i (*.f64 y j))
5.0b
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (-.f64 (*.f64 c (*.f64 t j)) (*.f64 i (*.f64 y j)))))
5.1b
(*.f64 c (*.f64 t j))
6.7b
(fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (-.f64 (*.f64 c (*.f64 t j)) (*.f64 i (*.f64 y j))))

series153.0ms (1.2%)

Counts
3 → 220
Calls

3 calls:

90.0ms
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (-.f64 (*.f64 c (*.f64 t j)) (*.f64 i (*.f64 y j)))))
54.0ms
(fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (-.f64 (*.f64 c (*.f64 t j)) (*.f64 i (*.f64 y j))))
9.0ms
(*.f64 i (*.f64 y j))

rewrite68.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
252×log1p-expm1-u_binary64
252×expm1-log1p-u_binary64
246×add-log-exp_binary64
245×add-cube-cbrt_binary64
245×add-cbrt-cube_binary64
Counts
3 → 47
Calls

3 calls:

66.0ms
(*.f64 i (*.f64 y j))
66.0ms
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (-.f64 (*.f64 c (*.f64 t j)) (*.f64 i (*.f64 y j)))))
66.0ms
(fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (-.f64 (*.f64 c (*.f64 t j)) (*.f64 i (*.f64 y j))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02378
151278
2484678
3508978
000
100

simplify221.0ms (1.7%)

Algorithm
egg-herbie
Rules
900×fma-neg_binary64
575×neg-mul-1_binary64
507×associate-+l-_binary64
503×unsub-neg_binary64
382×distribute-neg-out_binary64
Counts
267 → 127
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01426680
14006482
210636405
318856077
440836077
548486077
652546077

prune97.0ms (0.7%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New1430143
Fresh055
Picked011
Done011
Total1437150
Error
0.0b
Counts
150 → 7
Alt Table
StatusErrorProgram
36.2b
(pow.f64 (sqrt.f64 (fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))))) 2)
13.1b
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (-.f64 (*.f64 c (*.f64 t j)) (*.f64 i (*.f64 y j)))))
30.9b
(fma.f64 z (-.f64 (*.f64 y x) (*.f64 c b)) (*.f64 t (-.f64 (*.f64 c j) (*.f64 x a))))
21.5b
(fma.f64 c (-.f64 (*.f64 t j) (*.f64 z b)) (*.f64 i (-.f64 (*.f64 a b) (*.f64 j y))))
14.7b
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (fma.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (cbrt.f64 (*.f64 y z)) (neg.f64 (*.f64 t a))) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))))
13.2b
(+.f64 (*.f64 j (-.f64 (*.f64 c t) (*.f64 y i))) (fma.f64 z (-.f64 (*.f64 y x) (*.f64 c b)) (*.f64 a (-.f64 (*.f64 i b) (*.f64 t x)))))
8.4b
(-.f64 (+.f64 (*.f64 i (*.f64 a b)) (+.f64 (*.f64 c (*.f64 t j)) (*.f64 y (*.f64 z x)))) (+.f64 (*.f64 y (*.f64 i j)) (+.f64 (*.f64 c (*.f64 z b)) (*.f64 a (*.f64 t x)))))
Compiler

Compiled 4214 to 743 computations (82.4% saved)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 y x) (*.f64 c b))
5.0b
(*.f64 j (-.f64 (*.f64 c t) (*.f64 y i)))
5.3b
(fma.f64 z (-.f64 (*.f64 y x) (*.f64 c b)) (*.f64 a (-.f64 (*.f64 i b) (*.f64 t x))))
7.4b
(*.f64 a (-.f64 (*.f64 i b) (*.f64 t x)))

series96.0ms (0.7%)

Counts
4 → 220
Calls

4 calls:

52.0ms
(fma.f64 z (-.f64 (*.f64 y x) (*.f64 c b)) (*.f64 a (-.f64 (*.f64 i b) (*.f64 t x))))
19.0ms
(*.f64 a (-.f64 (*.f64 i b) (*.f64 t x)))
17.0ms
(*.f64 j (-.f64 (*.f64 c t) (*.f64 y i)))
8.0ms
(-.f64 (*.f64 y x) (*.f64 c b))

rewrite41.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
255×add-sqr-sqrt_binary64
240×log1p-expm1-u_binary64
240×expm1-log1p-u_binary64
234×add-log-exp_binary64
233×add-cube-cbrt_binary64
Counts
4 → 92
Calls

4 calls:

39.0ms
(-.f64 (*.f64 y x) (*.f64 c b))
39.0ms
(*.f64 j (-.f64 (*.f64 c t) (*.f64 y i)))
39.0ms
(fma.f64 z (-.f64 (*.f64 y x) (*.f64 c b)) (*.f64 a (-.f64 (*.f64 i b) (*.f64 t x))))
39.0ms
(*.f64 a (-.f64 (*.f64 i b) (*.f64 t x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02262
148762
2501362
000
100

simplify398.0ms (3%)

Algorithm
egg-herbie
Rules
1711×fma-neg_binary64
823×fma-def_binary64
362×sub-neg_binary64
262×unsub-neg_binary64
236×cancel-sign-sub-inv_binary64
Counts
312 → 143
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0873877
12383788
25233716
310243572
419653572
520973572
622183572
722413572
822763572
922773572
1022753572
1123853572
1222973572
1322973572
1437523572
1537523572
1637523572
1736093572

prune144.0ms (1.1%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New1412143
Fresh134
Picked011
Done022
Total1428150
Error
0.0b
Counts
150 → 8
Alt Table
StatusErrorProgram
36.2b
(pow.f64 (sqrt.f64 (fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))))) 2)
13.1b
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (-.f64 (*.f64 y z) (*.f64 t a)) (-.f64 (*.f64 c (*.f64 t j)) (*.f64 i (*.f64 y j)))))
18.3b
(+.f64 (*.f64 j (-.f64 (*.f64 c t) (*.f64 y i))) (fma.f64 z (-.f64 (*.f64 y x) (*.f64 c b)) (*.f64 i (*.f64 b a))))
30.9b
(fma.f64 z (-.f64 (*.f64 y x) (*.f64 c b)) (*.f64 t (-.f64 (*.f64 c j) (*.f64 x a))))
34.5b
(+.f64 (*.f64 j (-.f64 (*.f64 c t) (*.f64 y i))) (pow.f64 (sqrt.f64 (fma.f64 z (-.f64 (*.f64 x y) (*.f64 b c)) (*.f64 a (-.f64 (*.f64 i b) (*.f64 t x))))) 2))
14.7b
(fma.f64 b (-.f64 (*.f64 a i) (*.f64 z c)) (fma.f64 x (fma.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (cbrt.f64 (*.f64 y z)) (neg.f64 (*.f64 t a))) (*.f64 j (-.f64 (*.f64 t c) (*.f64 y i)))))
13.2b
(+.f64 (*.f64 j (-.f64 (*.f64 c t) (*.f64 y i))) (fma.f64 z (-.f64 (*.f64 y x) (*.f64 c b)) (*.f64 a (-.f64 (*.f64 i b) (*.f64 t x)))))
8.4b
(-.f64 (+.f64 (*.f64 i (*.f64 a b)) (+.f64 (*.f64 c (*.f64 t j)) (*.f64 y (*.f64 z x)))) (+.f64 (*.f64 y (*.f64 i j)) (+.f64 (*.f64 c (*.f64 z b)) (*.f64 a (*.f64 t x)))))
Compiler

Compiled 4775 to 854 computations (82.1% saved)

regimes3.8s (29.1%)

Accuracy

Total 9.5b remaining (98.8%)

Threshold costs 0b (0%)

Counts
171 → 5
Compiler

Compiled 56666 to 34728 computations (38.7% saved)

bsearch256.0ms (2%)

Steps
ItersRangePoint
9
3.519495833153006e+60
1.3970796331284254e+70
3.619669044580342e+60
8
6.6881590069818315e+41
1.242456918551177e+46
1.210859548848804e+46
7
2.0188461792722793e-74
1.739583678241234e-72
1.8594302167394335e-73
6
-7.016493760811704e+131
-1.491625077574151e+131
-1.5075391945027925e+131
Compiler

Compiled 10 to 9 computations (10% saved)

simplify12.0ms (0.1%)

Algorithm
egg-herbie
Rules
51×*-commutative_binary64
42×+-commutative_binary64
32×sub-neg_binary64
24×distribute-rgt-neg-in_binary64
24×neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
072239
1134239
2192239
3257239
4304239
5320239
6325239
7326239
8326239

end166.0ms (1.3%)

Compiler

Compiled 644 to 315 computations (51.1% saved)

Profiling

Loading profile data...