Details

Time bar (total: 8.8s)

analyze1.7s (19.7%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
0%99.8%0.2%9
1.8%98%0.2%10
7.7%92.1%0.2%11
10.4%89.4%0.2%12
12.1%87.7%0.2%13
21.4%78.3%0.4%14
Compiler

Compiled 19 to 12 computations (36.8% saved)

sample1.9s (21.4%)

Results
1.0s6913×body128valid
284.0ms1254×body128invalid
185.0ms373×body1024valid
171.0ms505×body512valid
90.0ms390×body256valid
36.0ms75×body2048valid
Compiler

Compiled 56 to 35 computations (37.5% saved)

simplify88.0ms (1%)

Algorithm
egg-herbie
Rules
836×unsub-neg_binary64
769×fma-def_binary64
696×div-sub_binary64
646×sub-neg_binary64
478×neg-mul-1_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01219
12119
25217
314417
442117
5109217
6265717
7390117
8440817
9480717
10488117

prune4.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
10.5b
Counts
3 → 2
Alt Table
StatusErrorProgram
13.6b
(fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)
25.5b
(+.f64 x (/.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (-.f64 a z)))
Compiler

Compiled 100 to 55 computations (45% saved)

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 t x) (-.f64 a z))
13.5b
(fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)

series99.0ms (1.1%)

Counts
2 → 108
Calls

2 calls:

70.0ms
(fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)
29.0ms
(/.f64 (-.f64 t x) (-.f64 a z))

rewrite163.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
514×fma-def_binary64
264×fma-neg_binary64
254×expm1-udef_binary64
254×log1p-udef_binary64
138×add-sqr-sqrt_binary64
Counts
2 → 74
Calls

2 calls:

161.0ms
(/.f64 (-.f64 t x) (-.f64 a z))
161.0ms
(fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01127
125727
2377627
3534027

simplify103.0ms (1.2%)

Algorithm
egg-herbie
Rules
512×cancel-sign-sub-inv_binary64
445×sub-neg_binary64
351×associate-+r+_binary64
288×distribute-neg-in_binary64
271×+-commutative_binary64
Counts
182 → 142
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02585085
18205085
232655049
349945049

prune126.0ms (1.4%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1348142
Fresh011
Picked101
Done000
Total1359144
Error
0.7b
Counts
144 → 9
Alt Table
StatusErrorProgram
38.8b
(fma.f64 (-.f64 y z) (*.f64 (/.f64 1 (sqrt.f64 (-.f64 a z))) (/.f64 (-.f64 t x) (sqrt.f64 (-.f64 a z)))) x)
30.0b
(*.f64 t (-.f64 (/.f64 y (-.f64 a z)) (/.f64 z (-.f64 a z))))
14.4b
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)) 3)
39.4b
(-.f64 (+.f64 (/.f64 (*.f64 y x) z) (+.f64 t (/.f64 (*.f64 a t) z))) (+.f64 (/.f64 (*.f64 y t) z) (/.f64 (*.f64 a x) z)))
13.7b
(+.f64 x (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z))))
25.5b
(+.f64 x (/.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (-.f64 a z)))
37.4b
(*.f64 (-.f64 (+.f64 (/.f64 z (-.f64 a z)) 1) (/.f64 y (-.f64 a z))) x)
14.4b
(fma.f64 (-.f64 y z) (*.f64 (cbrt.f64 (/.f64 (-.f64 t x) (-.f64 a z))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 t x) (-.f64 a z))) 2)) x)
13.7b
(fma.f64 (-.f64 y z) (*.f64 (-.f64 t x) (/.f64 1 (-.f64 a z))) x)
Compiler

Compiled 4859 to 1558 computations (67.9% saved)

localize9.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 t x) (-.f64 a z))
3.5b
(+.f64 x (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z))))
5.8b
(*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))

series163.0ms (1.9%)

Counts
2 → 120
Calls

2 calls:

103.0ms
(+.f64 x (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z))))
59.0ms
(*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))

rewrite84.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
284×expm1-udef_binary64
284×log1p-udef_binary64
154×add-sqr-sqrt_binary64
149×log1p-expm1-u_binary64
149×expm1-log1p-u_binary64
Counts
2 → 77
Calls

2 calls:

82.0ms
(+.f64 x (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z))))
82.0ms
(*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01235
128733
2440133
3527033

simplify148.0ms (1.7%)

Algorithm
egg-herbie
Rules
612×cancel-sign-sub-inv_binary64
570×sub-neg_binary64
563×associate-+r+_binary64
422×associate-+l+_binary64
362×+-commutative_binary64
Counts
197 → 168
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03177336
110177336
239026730
354116730

prune227.0ms (2.6%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New2334237
Fresh268
Picked101
Done000
Total23610246
Error
0.7b
Counts
246 → 10
Alt Table
StatusErrorProgram
14.1b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))) 2) (cbrt.f64 (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))) x)
13.7b
(fma.f64 (-.f64 y z) (*.f64 (-.f64 t x) (/.f64 1 (-.f64 a z))) x)
14.4b
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)) 3)
39.4b
(-.f64 (+.f64 (/.f64 (*.f64 y x) z) (+.f64 t (/.f64 (*.f64 a t) z))) (+.f64 (/.f64 (*.f64 y t) z) (/.f64 (*.f64 a x) z)))
13.9b
(+.f64 x (/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x))))
13.7b
(+.f64 x (+.f64 (*.f64 y (/.f64 (-.f64 t x) (-.f64 a z))) (*.f64 (neg.f64 z) (/.f64 (-.f64 t x) (-.f64 a z)))))
30.0b
(*.f64 t (/.f64 (-.f64 y z) (-.f64 a z)))
37.4b
(*.f64 (-.f64 (+.f64 (/.f64 z (-.f64 a z)) 1) (/.f64 y (-.f64 a z))) x)
38.8b
(fma.f64 (-.f64 y z) (*.f64 (/.f64 1 (sqrt.f64 (-.f64 a z))) (/.f64 (-.f64 t x) (sqrt.f64 (-.f64 a z)))) x)
25.5b
(+.f64 x (/.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (-.f64 a z)))
Compiler

Compiled 8607 to 2725 computations (68.3% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 y (/.f64 (-.f64 t x) (-.f64 a z))) (*.f64 (neg.f64 z) (/.f64 (-.f64 t x) (-.f64 a z))))
3.2b
(*.f64 y (/.f64 (-.f64 t x) (-.f64 a z)))
3.5b
(+.f64 x (+.f64 (*.f64 y (/.f64 (-.f64 t x) (-.f64 a z))) (*.f64 (neg.f64 z) (/.f64 (-.f64 t x) (-.f64 a z)))))
5.4b
(*.f64 (neg.f64 z) (/.f64 (-.f64 t x) (-.f64 a z)))

series275.0ms (3.1%)

Counts
4 → 228
Calls

4 calls:

101.0ms
(+.f64 x (+.f64 (*.f64 y (/.f64 (-.f64 t x) (-.f64 a z))) (*.f64 (neg.f64 z) (/.f64 (-.f64 t x) (-.f64 a z)))))
92.0ms
(+.f64 (*.f64 y (/.f64 (-.f64 t x) (-.f64 a z))) (*.f64 (neg.f64 z) (/.f64 (-.f64 t x) (-.f64 a z))))
44.0ms
(*.f64 y (/.f64 (-.f64 t x) (-.f64 a z)))
37.0ms
(*.f64 (neg.f64 z) (/.f64 (-.f64 t x) (-.f64 a z)))

rewrite102.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
302×log1p-udef_binary64
179×add-sqr-sqrt_binary64
173×log1p-expm1-u_binary64
173×expm1-log1p-u_binary64
165×add-cbrt-cube_binary64
Counts
4 → 137
Calls

4 calls:

98.0ms
(+.f64 (*.f64 y (/.f64 (-.f64 t x) (-.f64 a z))) (*.f64 (neg.f64 z) (/.f64 (-.f64 t x) (-.f64 a z))))
98.0ms
(*.f64 y (/.f64 (-.f64 t x) (-.f64 a z)))
98.0ms
(+.f64 x (+.f64 (*.f64 y (/.f64 (-.f64 t x) (-.f64 a z))) (*.f64 (neg.f64 z) (/.f64 (-.f64 t x) (-.f64 a z)))))
98.0ms
(*.f64 (neg.f64 z) (/.f64 (-.f64 t x) (-.f64 a z)))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01467
133959
2453659
3499159

simplify286.0ms (3.2%)

Algorithm
egg-herbie
Rules
657×associate-+r+_binary64
542×associate-+l+_binary64
480×fma-neg_binary64
390×associate--l+_binary64
384×associate--r+_binary64
Counts
365 → 279
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
039011259
1130511259
2480211259
3516711259

prune256.0ms (2.9%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New2790279
Fresh099
Picked011
Done000
Total27910289
Error
0.7b
Counts
289 → 10
Alt Table
StatusErrorProgram
14.1b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))) 2) (cbrt.f64 (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))) x)
13.7b
(fma.f64 (-.f64 y z) (*.f64 (-.f64 t x) (/.f64 1 (-.f64 a z))) x)
14.4b
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)) 3)
39.4b
(-.f64 (+.f64 (/.f64 (*.f64 y x) z) (+.f64 t (/.f64 (*.f64 a t) z))) (+.f64 (/.f64 (*.f64 y t) z) (/.f64 (*.f64 a x) z)))
13.9b
(+.f64 x (/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x))))
13.7b
(+.f64 x (+.f64 (*.f64 y (/.f64 (-.f64 t x) (-.f64 a z))) (*.f64 (neg.f64 z) (/.f64 (-.f64 t x) (-.f64 a z)))))
30.0b
(*.f64 t (/.f64 (-.f64 y z) (-.f64 a z)))
37.4b
(*.f64 (-.f64 (+.f64 (/.f64 z (-.f64 a z)) 1) (/.f64 y (-.f64 a z))) x)
38.8b
(fma.f64 (-.f64 y z) (*.f64 (/.f64 1 (sqrt.f64 (-.f64 a z))) (/.f64 (-.f64 t x) (sqrt.f64 (-.f64 a z)))) x)
25.5b
(+.f64 x (/.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (-.f64 a z)))
Compiler

Compiled 11337 to 3269 computations (71.2% saved)

localize9.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (-.f64 a z))
0.2b
(*.f64 (-.f64 t x) (/.f64 1 (-.f64 a z)))
13.5b
(fma.f64 (-.f64 y z) (*.f64 (-.f64 t x) (/.f64 1 (-.f64 a z))) x)

series96.0ms (1.1%)

Counts
3 → 132
Calls

3 calls:

58.0ms
(fma.f64 (-.f64 y z) (*.f64 (-.f64 t x) (/.f64 1 (-.f64 a z))) x)
29.0ms
(*.f64 (-.f64 t x) (/.f64 1 (-.f64 a z)))
9.0ms
(/.f64 1 (-.f64 a z))

rewrite75.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
512×fma-def_binary64
268×expm1-udef_binary64
268×log1p-udef_binary64
246×fma-neg_binary64
150×add-sqr-sqrt_binary64
Counts
3 → 91
Calls

3 calls:

73.0ms
(/.f64 1 (-.f64 a z))
73.0ms
(*.f64 (-.f64 t x) (/.f64 1 (-.f64 a z)))
73.0ms
(fma.f64 (-.f64 y z) (*.f64 (-.f64 t x) (/.f64 1 (-.f64 a z))) x)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01334
129034
2385934
3540834

simplify118.0ms (1.3%)

Algorithm
egg-herbie
Rules
524×cancel-sign-sub-inv_binary64
456×sub-neg_binary64
369×associate-+r+_binary64
309×distribute-neg-in_binary64
288×+-commutative_binary64
Counts
223 → 173
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02785577
18705559
234475523
352385523

prune209.0ms (2.4%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New1721173
Fresh178
Picked011
Done011
Total17310183
Error
0.7b
Counts
183 → 10
Alt Table
StatusErrorProgram
14.1b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))) 2) (cbrt.f64 (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))) x)
13.7b
(fma.f64 (-.f64 y z) (*.f64 (-.f64 t x) (/.f64 1 (-.f64 a z))) x)
38.3b
(fma.f64 (-.f64 y z) (/.f64 (sqrt.f64 (-.f64 t x)) (/.f64 (-.f64 a z) (sqrt.f64 (-.f64 t x)))) x)
14.4b
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)) 3)
39.4b
(-.f64 (+.f64 (/.f64 (*.f64 y x) z) (+.f64 t (/.f64 (*.f64 a t) z))) (+.f64 (/.f64 (*.f64 y t) z) (/.f64 (*.f64 a x) z)))
13.9b
(+.f64 x (/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x))))
13.7b
(+.f64 x (+.f64 (*.f64 y (/.f64 (-.f64 t x) (-.f64 a z))) (*.f64 (neg.f64 z) (/.f64 (-.f64 t x) (-.f64 a z)))))
30.0b
(*.f64 t (/.f64 (-.f64 y z) (-.f64 a z)))
37.4b
(*.f64 (-.f64 (+.f64 (/.f64 z (-.f64 a z)) 1) (/.f64 y (-.f64 a z))) x)
25.5b
(+.f64 x (/.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (-.f64 a z)))
Compiler

Compiled 5264 to 1773 computations (66.3% saved)

regimes2.3s (26.1%)

Accuracy

Total 5.8b remaining (86.4%)

Threshold costs 0b (0%)

Counts
79 → 5
Compiler

Compiled 9174 to 5502 computations (40% saved)

bsearch3.0ms (0%)

Compiler

Compiled 18 to 11 computations (38.9% saved)

simplify12.0ms (0.1%)

Algorithm
egg-herbie
Rules
27×+-commutative_binary64
23×*-commutative_binary64
20×sub-neg_binary64
15×neg-sub0_binary64
15×neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
054268
179268
2101268
3129268
4168268
5186268
6196268
7199268
8198268

end209.0ms (2.4%)

Compiler

Compiled 594 to 226 computations (62% saved)

Profiling

Loading profile data...