Details

Time bar (total: 7.1s)

analyze1.5s (20.5%)

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.6s (22.4%)

Results
922.0ms6894×body128valid
163.0ms1270×body128invalid
150.0ms505×body512valid
149.0ms390×body1024valid
99.0ms400×body256valid
30.0ms67×body2048valid
Compiler

Compiled 56 to 35 computations (37.5% saved)

simplify89.0ms (1.2%)

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.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
11.3b
Counts
3 → 2
Alt Table
StatusErrorProgram
15.5b
(fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)
24.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))
15.5b
(fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)

series93.0ms (1.3%)

Counts
2 → 108
Calls

2 calls:

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

rewrite71.0ms (1%)

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:

70.0ms
(/.f64 (-.f64 t x) (-.f64 a z))
70.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
000
100

simplify111.0ms (1.6%)

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

prune122.0ms (1.7%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New1339142
Fresh011
Picked011
Done000
Total13311144
Error
0.6b
Counts
144 → 11
Alt Table
StatusErrorProgram
35.1b
(*.f64 t (-.f64 (/.f64 y (-.f64 a z)) (/.f64 z (-.f64 a z))))
15.5b
(fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)
15.7b
(+.f64 x (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z))))
24.5b
(+.f64 x (/.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (-.f64 a z)))
43.6b
(-.f64 (+.f64 t (+.f64 (/.f64 (*.f64 (pow.f64 a 2) t) (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 y (*.f64 a x)) (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 a t) z))))) (+.f64 (/.f64 (*.f64 (pow.f64 a 2) x) (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 a x) z) (+.f64 (/.f64 (*.f64 y t) z) (/.f64 (*.f64 y (*.f64 a t)) (pow.f64 z 2))))))
40.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)))
42.4b
(*.f64 y (-.f64 (/.f64 t (-.f64 a z)) (/.f64 x (-.f64 a z))))
21.0b
(-.f64 (+.f64 (/.f64 (*.f64 z x) (-.f64 a z)) (+.f64 (/.f64 (*.f64 y t) (-.f64 a z)) x)) (+.f64 (/.f64 (*.f64 y x) (-.f64 a z)) (/.f64 (*.f64 t z) (-.f64 a z))))
31.9b
(*.f64 (-.f64 (+.f64 (/.f64 z (-.f64 a z)) 1) (/.f64 y (-.f64 a z))) x)
44.9b
(cbrt.f64 (pow.f64 (fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x) 3))
42.8b
(pow.f64 (sqrt.f64 (fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)) 2)
Compiler

Compiled 5022 to 1652 computations (67.1% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 t x) (-.f64 a z))
3.2b
(+.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)))

series159.0ms (2.2%)

Counts
2 → 120
Calls

2 calls:

92.0ms
(+.f64 x (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z))))
66.0ms
(*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))

rewrite80.0ms (1.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:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01235
128733
2440133
3527033
000
100

simplify139.0ms (1.9%)

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

prune203.0ms (2.8%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New2334237
Fresh459
Picked101
Done011
Total23810248
Error
0.6b
Counts
248 → 10
Alt Table
StatusErrorProgram
42.4b
(*.f64 y (/.f64 (-.f64 t x) (-.f64 a z)))
40.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)))
39.7b
(fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))) (sqrt.f64 (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))) x)
15.8b
(+.f64 x (/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x))))
35.1b
(*.f64 t (-.f64 (/.f64 y (-.f64 a z)) (/.f64 z (-.f64 a z))))
15.5b
(fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)
43.6b
(-.f64 (+.f64 t (+.f64 (/.f64 (*.f64 (pow.f64 a 2) t) (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 y (*.f64 a x)) (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 a t) z))))) (+.f64 (/.f64 (*.f64 (pow.f64 a 2) x) (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 a x) z) (+.f64 (/.f64 (*.f64 y t) z) (/.f64 (*.f64 y (*.f64 a t)) (pow.f64 z 2))))))
21.0b
(-.f64 (+.f64 (/.f64 (*.f64 z x) (-.f64 a z)) (+.f64 (/.f64 (*.f64 y t) (-.f64 a z)) x)) (+.f64 (/.f64 (*.f64 y x) (-.f64 a z)) (/.f64 (*.f64 t z) (-.f64 a z))))
31.9b
(*.f64 (-.f64 (+.f64 (/.f64 z (-.f64 a z)) 1) (/.f64 y (-.f64 a z))) x)
42.2b
(+.f64 x (/.f64 (/.f64 (*.f64 (-.f64 y z) (-.f64 t x)) (sqrt.f64 (-.f64 a z))) (sqrt.f64 (-.f64 a z))))
Compiler

Compiled 8702 to 2769 computations (68.2% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 a z) (-.f64 t x))
4.1b
(+.f64 x (/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x))))
6.1b
(/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x)))

series185.0ms (2.6%)

Counts
3 → 168
Calls

3 calls:

92.0ms
(+.f64 x (/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x))))
66.0ms
(/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x)))
27.0ms
(/.f64 (-.f64 a z) (-.f64 t x))

rewrite146.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
294×log1p-udef_binary64
160×add-sqr-sqrt_binary64
155×log1p-expm1-u_binary64
155×expm1-log1p-u_binary64
149×add-log-exp_binary64
Counts
3 → 122
Calls

3 calls:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01245
129643
2476743
3526543
000
100

simplify183.0ms (2.6%)

Algorithm
egg-herbie
Rules
595×associate-+r+_binary64
461×associate-+l+_binary64
408×+-commutative_binary64
333×fma-neg_binary64
293×associate--l+_binary64
Counts
290 → 232
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03798872
112008755
246398149
349878149

prune182.0ms (2.6%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New2302232
Fresh268
Picked011
Done011
Total23210242
Error
0.6b
Counts
242 → 10
Alt Table
StatusErrorProgram
42.4b
(*.f64 y (/.f64 (-.f64 t x) (-.f64 a z)))
40.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)))
39.7b
(fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))) (sqrt.f64 (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))) x)
15.8b
(+.f64 x (/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x))))
35.1b
(*.f64 t (-.f64 (/.f64 y (-.f64 a z)) (/.f64 z (-.f64 a z))))
15.5b
(fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)
43.6b
(-.f64 (+.f64 t (+.f64 (/.f64 (*.f64 (pow.f64 a 2) t) (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 y (*.f64 a x)) (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 a t) z))))) (+.f64 (/.f64 (*.f64 (pow.f64 a 2) x) (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 a x) z) (+.f64 (/.f64 (*.f64 y t) z) (/.f64 (*.f64 y (*.f64 a t)) (pow.f64 z 2))))))
12.0b
(fma.f64 (/.f64 (-.f64 y z) (-.f64 a z)) (-.f64 t x) x)
21.0b
(-.f64 (+.f64 (/.f64 (*.f64 z x) (-.f64 a z)) (+.f64 (/.f64 (*.f64 y t) (-.f64 a z)) x)) (+.f64 (/.f64 (*.f64 y x) (-.f64 a z)) (/.f64 (*.f64 t z) (-.f64 a z))))
16.1b
(+.f64 x (*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 y z)) 2) (-.f64 a z)) (/.f64 (cbrt.f64 (-.f64 y z)) (/.f64 1 (-.f64 t x)))))
Compiler

Compiled 8477 to 2688 computations (68.3% saved)

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series80.0ms (1.1%)

Counts
2 → 96
Calls

2 calls:

60.0ms
(fma.f64 (/.f64 (-.f64 y z) (-.f64 a z)) (-.f64 t x) x)
20.0ms
(/.f64 (-.f64 y z) (-.f64 a z))

rewrite74.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
516×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:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01127
125727
2378027
3534727
000
100

simplify98.0ms (1.4%)

Algorithm
egg-herbie
Rules
574×cancel-sign-sub-inv_binary64
500×sub-neg_binary64
341×associate-+r+_binary64
297×+-commutative_binary64
288×distribute-neg-in_binary64
Counts
170 → 158
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02984642
18354633
233854573
352054573

prune172.0ms (2.4%)

Pruning

10 alts after pruning (7 fresh and 3 done)

PrunedKeptTotal
New1571158
Fresh167
Picked011
Done022
Total15810168
Error
0.6b
Counts
168 → 10
Alt Table
StatusErrorProgram
42.4b
(*.f64 y (/.f64 (-.f64 t x) (-.f64 a z)))
40.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)))
21.0b
(-.f64 (+.f64 (/.f64 (*.f64 z x) (-.f64 a z)) (+.f64 (/.f64 (*.f64 y t) (-.f64 a z)) x)) (+.f64 (/.f64 (*.f64 y x) (-.f64 a z)) (/.f64 (*.f64 t z) (-.f64 a z))))
12.0b
(fma.f64 (*.f64 (-.f64 y z) (/.f64 1 (-.f64 a z))) (-.f64 t x) x)
39.7b
(fma.f64 (sqrt.f64 (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))) (sqrt.f64 (*.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)))) x)
15.8b
(+.f64 x (/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x))))
35.1b
(*.f64 t (-.f64 (/.f64 y (-.f64 a z)) (/.f64 z (-.f64 a z))))
15.5b
(fma.f64 (-.f64 y z) (/.f64 (-.f64 t x) (-.f64 a z)) x)
43.6b
(-.f64 (+.f64 t (+.f64 (/.f64 (*.f64 (pow.f64 a 2) t) (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 y (*.f64 a x)) (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 a t) z))))) (+.f64 (/.f64 (*.f64 (pow.f64 a 2) x) (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 a x) z) (+.f64 (/.f64 (*.f64 y t) z) (/.f64 (*.f64 y (*.f64 a t)) (pow.f64 z 2))))))
12.0b
(fma.f64 (/.f64 (-.f64 y z) (-.f64 a z)) (-.f64 t x) x)
Compiler

Compiled 5218 to 1687 computations (67.7% saved)

regimes1.7s (23.2%)

Accuracy

Total 4.1b remaining (82.4%)

Threshold costs 0b (0%)

Counts
128 → 5
Compiler

Compiled 17244 to 10158 computations (41.1% saved)

bsearch6.0ms (0.1%)

Compiler

Compiled 18 to 11 computations (38.9% saved)

simplify38.0ms (0.5%)

Algorithm
egg-herbie
Rules
153×cancel-sign-sub-inv_binary64
141×distribute-rgt-neg-in_binary64
93×distribute-lft-neg-in_binary64
93×neg-sub0_binary64
93×neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
052293
178293
2107293
3147293
4205293
5252293
6306293
7366293
8431293
9510293
10615293
11702293
12758293
13793293
14814293
15823293
16825293
17821293

end156.0ms (2.2%)

Compiler

Compiled 676 to 250 computations (63% saved)

Profiling

Loading profile data...