Details

Time bar (total: 6.9s)

analyze1.5s (21.8%)

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
14.9%84.9%0.2%13
16.1%83.6%0.3%14
Compiler

Compiled 19 to 12 computations (36.8% saved)

sample1.5s (21.6%)

Results
912.0ms6955×body128valid
157.0ms1252×body128invalid
155.0ms490×body512valid
141.0ms364×body1024valid
80.0ms378×body256valid
31.0ms69×body2048valid
Compiler

Compiled 38 to 24 computations (36.8% saved)

preprocess42.0ms (0.6%)

Algorithm
egg-herbie
Rules
515×div-sub_binary64
375×fma-def_binary64
327×distribute-rgt-in_binary64
317×distribute-lft-in_binary64
196×associate-+l+_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056209
1120209
2362187
31173187
44373187
055
Stop Event
saturated
node limit
Compiler

Compiled 18 to 11 computations (38.9% saved)

simplify27.0ms (0.4%)

Algorithm
egg-herbie
Rules
752×fma-def_binary64
693×div-sub_binary64
242×unsub-neg_binary64
211×distribute-rgt-in_binary64
140×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01219
12119
25217
315017
452717
5170917
6439717
Stop Event
node limit
Counts
1 → 2

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
11.4b
Counts
3 → 2
Alt Table
StatusErrorProgram
16.2b
(fma.f64 (-.f64 z t) (/.f64 (-.f64 y x) (-.f64 a t)) x)
24.2b
(+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t)))
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 y x) (-.f64 a t))
16.1b
(fma.f64 (-.f64 z t) (/.f64 (-.f64 y x) (-.f64 a t)) x)

series79.0ms (1.1%)

Counts
2 → 108
Calls

27 calls:

6.0ms
(fma.f64 (-.f64 z t) (/.f64 (-.f64 y x) (-.f64 a t)) x)
t
0
6.0ms
(fma.f64 (-.f64 z t) (/.f64 (-.f64 y x) (-.f64 a t)) x)
a
0
5.0ms
(fma.f64 (-.f64 z t) (/.f64 (-.f64 y x) (-.f64 a t)) x)
t
-inf
5.0ms
(fma.f64 (-.f64 z t) (/.f64 (-.f64 y x) (-.f64 a t)) x)
a
-inf
4.0ms
(fma.f64 (-.f64 z t) (/.f64 (-.f64 y x) (-.f64 a t)) x)
t
inf

rewrite60.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
264×fma-neg_binary64
254×expm1-udef_binary64
254×log1p-udef_binary64
138×add-sqr-sqrt_binary64
133×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01127
125727
2397127
Stop Event
node limit
Counts
2 → 74

simplify86.0ms (1.2%)

Algorithm
egg-herbie
Rules
507×cancel-sign-sub-inv_binary64
458×sub-neg_binary64
341×associate-+r+_binary64
269×+-commutative_binary64
267×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02725085
18805076
235865040
Stop Event
node limit
Counts
182 → 144

prune129.0ms (1.9%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1377144
Fresh011
Picked101
Done000
Total1388146
Error
0.1b
Counts
146 → 8
Alt Table
StatusErrorProgram
36.2b
(+.f64 (+.f64 y (*.f64 (/.f64 y t) a)) (-.f64 (/.f64 x (/.f64 t z)) (+.f64 (*.f64 (/.f64 a t) x) (*.f64 (/.f64 y t) z))))
16.7b
(fma.f64 (-.f64 z t) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (/.f64 (-.f64 y x) (cbrt.f64 (-.f64 a t)))) x)
16.2b
(fma.f64 (-.f64 z t) (*.f64 (-.f64 y x) (/.f64 1 (-.f64 a t))) x)
36.0b
(*.f64 (-.f64 (/.f64 z (-.f64 a t)) (/.f64 t (-.f64 a t))) y)
42.5b
(+.f64 (*.f64 (/.f64 a (*.f64 t t)) (*.f64 x z)) (-.f64 (+.f64 (+.f64 y (*.f64 (/.f64 y t) a)) (+.f64 (/.f64 x (/.f64 t z)) (*.f64 (*.f64 (/.f64 a t) (/.f64 a t)) y))) (+.f64 (+.f64 (*.f64 (/.f64 a t) x) (*.f64 (/.f64 y t) z)) (+.f64 (*.f64 (/.f64 a (*.f64 t t)) (*.f64 y z)) (*.f64 (*.f64 (/.f64 a t) (/.f64 a t)) x)))))
40.6b
(*.f64 (-.f64 (/.f64 y (-.f64 a t)) (/.f64 x (-.f64 a t))) z)
16.2b
(+.f64 (*.f64 (/.f64 t (-.f64 a t)) x) (+.f64 x (-.f64 (*.f64 (/.f64 y (-.f64 a t)) z) (+.f64 (*.f64 (/.f64 y (-.f64 a t)) t) (*.f64 (/.f64 z (-.f64 a t)) x)))))
24.2b
(+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t)))
Compiler

Compiled 5001 to 1646 computations (67.1% saved)

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.8b
(*.f64 (/.f64 t (-.f64 a t)) x)
4.1b
(*.f64 (/.f64 z (-.f64 a t)) x)
7.2b
(*.f64 (/.f64 y (-.f64 a t)) z)
11.4b
(*.f64 (/.f64 y (-.f64 a t)) t)

series81.0ms (1.2%)

Counts
4 → 168
Calls

42 calls:

3.0ms
(*.f64 (/.f64 y (-.f64 a t)) t)
a
-inf
3.0ms
(*.f64 (/.f64 y (-.f64 a t)) z)
a
inf
3.0ms
(*.f64 (/.f64 t (-.f64 a t)) x)
a
-inf
3.0ms
(*.f64 (/.f64 z (-.f64 a t)) x)
z
0
2.0ms
(*.f64 (/.f64 z (-.f64 a t)) x)
t
-inf

rewrite74.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
413×prod-diff_binary64
159×add-sqr-sqrt_binary64
149×associate-*r*_binary64
148×log1p-expm1-u_binary64
148×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01440
130840
2453940
Stop Event
node limit
Counts
4 → 100

simplify89.0ms (1.3%)

Algorithm
egg-herbie
Rules
875×associate-/l*_binary64
774×fma-def_binary64
266×associate-/r/_binary64
177×times-frac_binary64
139×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01733504
15403504
217812925
Stop Event
node limit
Counts
268 → 178

prune179.0ms (2.6%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New1771178
Fresh077
Picked011
Done000
Total1779186
Error
0.1b
Counts
186 → 9
Alt Table
StatusErrorProgram
36.0b
(*.f64 (-.f64 (/.f64 z (-.f64 a t)) (/.f64 t (-.f64 a t))) y)
20.1b
(+.f64 (*.f64 (/.f64 t (-.f64 a t)) x) (+.f64 x (-.f64 (*.f64 (/.f64 y (-.f64 a t)) z) (+.f64 (*.f64 (/.f64 y (-.f64 a t)) t) (/.f64 (/.f64 (*.f64 z x) (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (cbrt.f64 (-.f64 a t)))))))
36.2b
(+.f64 (+.f64 y (*.f64 (/.f64 y t) a)) (-.f64 (/.f64 x (/.f64 t z)) (+.f64 (*.f64 (/.f64 a t) x) (*.f64 (/.f64 y t) z))))
16.7b
(fma.f64 (-.f64 z t) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (/.f64 (-.f64 y x) (cbrt.f64 (-.f64 a t)))) x)
16.2b
(fma.f64 (-.f64 z t) (*.f64 (-.f64 y x) (/.f64 1 (-.f64 a t))) x)
42.5b
(+.f64 (*.f64 (/.f64 a (*.f64 t t)) (*.f64 x z)) (-.f64 (+.f64 (+.f64 y (*.f64 (/.f64 y t) a)) (+.f64 (/.f64 x (/.f64 t z)) (*.f64 (*.f64 (/.f64 a t) (/.f64 a t)) y))) (+.f64 (+.f64 (*.f64 (/.f64 a t) x) (*.f64 (/.f64 y t) z)) (+.f64 (*.f64 (/.f64 a (*.f64 t t)) (*.f64 y z)) (*.f64 (*.f64 (/.f64 a t) (/.f64 a t)) x)))))
40.6b
(*.f64 (-.f64 (/.f64 y (-.f64 a t)) (/.f64 x (-.f64 a t))) z)
16.2b
(+.f64 (*.f64 (/.f64 t (-.f64 a t)) x) (+.f64 x (-.f64 (*.f64 (/.f64 y (-.f64 a t)) z) (+.f64 (*.f64 (/.f64 y (-.f64 a t)) t) (*.f64 (/.f64 z (-.f64 a t)) x)))))
24.2b
(+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t)))
Compiler

Compiled 7562 to 1695 computations (77.6% saved)

localize10.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

series102.0ms (1.5%)

Counts
3 → 132
Calls

33 calls:

20.0ms
(fma.f64 (-.f64 z t) (*.f64 (-.f64 y x) (/.f64 1 (-.f64 a t))) x)
t
0
6.0ms
(fma.f64 (-.f64 z t) (*.f64 (-.f64 y x) (/.f64 1 (-.f64 a t))) x)
a
0
4.0ms
(fma.f64 (-.f64 z t) (*.f64 (-.f64 y x) (/.f64 1 (-.f64 a t))) x)
t
-inf
4.0ms
(fma.f64 (-.f64 z t) (*.f64 (-.f64 y x) (/.f64 1 (-.f64 a t))) x)
t
inf
4.0ms
(fma.f64 (-.f64 z t) (*.f64 (-.f64 y x) (/.f64 1 (-.f64 a t))) x)
a
-inf

rewrite60.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
268×expm1-udef_binary64
268×log1p-udef_binary64
246×fma-neg_binary64
150×add-sqr-sqrt_binary64
143×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01334
129034
2414234
Stop Event
node limit
Counts
3 → 89

simplify99.0ms (1.4%)

Algorithm
egg-herbie
Rules
510×cancel-sign-sub-inv_binary64
465×sub-neg_binary64
359×associate-+r+_binary64
284×+-commutative_binary64
284×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02955577
19365550
237695514
Stop Event
node limit
Counts
221 → 173

prune140.0ms (2%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New1721173
Fresh077
Picked011
Done011
Total17210182
Error
0.1b
Counts
182 → 10
Alt Table
StatusErrorProgram
36.0b
(*.f64 (-.f64 (/.f64 z (-.f64 a t)) (/.f64 t (-.f64 a t))) y)
20.1b
(+.f64 (*.f64 (/.f64 t (-.f64 a t)) x) (+.f64 x (-.f64 (*.f64 (/.f64 y (-.f64 a t)) z) (+.f64 (*.f64 (/.f64 y (-.f64 a t)) t) (/.f64 (/.f64 (*.f64 z x) (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (cbrt.f64 (-.f64 a t)))))))
36.2b
(+.f64 (+.f64 y (*.f64 (/.f64 y t) a)) (-.f64 (/.f64 x (/.f64 t z)) (+.f64 (*.f64 (/.f64 a t) x) (*.f64 (/.f64 y t) z))))
16.7b
(fma.f64 (-.f64 z t) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (/.f64 (-.f64 y x) (cbrt.f64 (-.f64 a t)))) x)
16.2b
(fma.f64 (-.f64 z t) (*.f64 (-.f64 y x) (/.f64 1 (-.f64 a t))) x)
36.5b
(+.f64 (*.f64 (/.f64 y t) a) (+.f64 y (-.f64 (*.f64 (/.f64 z t) x) (+.f64 (/.f64 x (/.f64 t a)) (*.f64 (/.f64 y t) z)))))
42.5b
(+.f64 (*.f64 (/.f64 a (*.f64 t t)) (*.f64 x z)) (-.f64 (+.f64 (+.f64 y (*.f64 (/.f64 y t) a)) (+.f64 (/.f64 x (/.f64 t z)) (*.f64 (*.f64 (/.f64 a t) (/.f64 a t)) y))) (+.f64 (+.f64 (*.f64 (/.f64 a t) x) (*.f64 (/.f64 y t) z)) (+.f64 (*.f64 (/.f64 a (*.f64 t t)) (*.f64 y z)) (*.f64 (*.f64 (/.f64 a t) (/.f64 a t)) x)))))
40.6b
(*.f64 (-.f64 (/.f64 y (-.f64 a t)) (/.f64 x (-.f64 a t))) z)
16.2b
(+.f64 (*.f64 (/.f64 t (-.f64 a t)) x) (+.f64 x (-.f64 (*.f64 (/.f64 y (-.f64 a t)) z) (+.f64 (*.f64 (/.f64 y (-.f64 a t)) t) (*.f64 (/.f64 z (-.f64 a t)) x)))))
24.2b
(+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t)))
Compiler

Compiled 5633 to 1997 computations (64.5% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (/.f64 (-.f64 y x) (cbrt.f64 (-.f64 a t))))
0.5b
(cbrt.f64 (-.f64 a t))
0.5b
(pow.f64 (cbrt.f64 (-.f64 a t)) 2)
16.0b
(fma.f64 (-.f64 z t) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (/.f64 (-.f64 y x) (cbrt.f64 (-.f64 a t)))) x)

series178.0ms (2.6%)

Counts
4 → 124
Calls

39 calls:

24.0ms
(pow.f64 (cbrt.f64 (-.f64 a t)) 2)
a
0
21.0ms
(pow.f64 (cbrt.f64 (-.f64 a t)) 2)
a
-inf
20.0ms
(cbrt.f64 (-.f64 a t))
a
0
8.0ms
(cbrt.f64 (-.f64 a t))
a
-inf
6.0ms
(fma.f64 (-.f64 z t) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (/.f64 (-.f64 y x) (cbrt.f64 (-.f64 a t)))) x)
a
-inf

rewrite40.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
191×add-sqr-sqrt_binary64
184×log1p-expm1-u_binary64
184×expm1-log1p-u_binary64
183×add-cbrt-cube_binary64
177×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01742
138542
Stop Event
node limit
Counts
4 → 119

simplify103.0ms (1.5%)

Algorithm
egg-herbie
Rules
349×associate-+r+_binary64
297×+-commutative_binary64
288×fma-neg_binary64
276×associate-+l+_binary64
212×times-frac_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03795917
112115904
246805868
Stop Event
node limit
Counts
243 → 221

prune209.0ms (3%)

Pruning

10 alts after pruning (7 fresh and 3 done)

PrunedKeptTotal
New2600260
Fresh077
Picked011
Done022
Total26010270
Error
0.1b
Counts
270 → 10
Alt Table
StatusErrorProgram
36.0b
(*.f64 (-.f64 (/.f64 z (-.f64 a t)) (/.f64 t (-.f64 a t))) y)
20.1b
(+.f64 (*.f64 (/.f64 t (-.f64 a t)) x) (+.f64 x (-.f64 (*.f64 (/.f64 y (-.f64 a t)) z) (+.f64 (*.f64 (/.f64 y (-.f64 a t)) t) (/.f64 (/.f64 (*.f64 z x) (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (cbrt.f64 (-.f64 a t)))))))
36.2b
(+.f64 (+.f64 y (*.f64 (/.f64 y t) a)) (-.f64 (/.f64 x (/.f64 t z)) (+.f64 (*.f64 (/.f64 a t) x) (*.f64 (/.f64 y t) z))))
16.7b
(fma.f64 (-.f64 z t) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (/.f64 (-.f64 y x) (cbrt.f64 (-.f64 a t)))) x)
16.2b
(fma.f64 (-.f64 z t) (*.f64 (-.f64 y x) (/.f64 1 (-.f64 a t))) x)
36.5b
(+.f64 (*.f64 (/.f64 y t) a) (+.f64 y (-.f64 (*.f64 (/.f64 z t) x) (+.f64 (/.f64 x (/.f64 t a)) (*.f64 (/.f64 y t) z)))))
42.5b
(+.f64 (*.f64 (/.f64 a (*.f64 t t)) (*.f64 x z)) (-.f64 (+.f64 (+.f64 y (*.f64 (/.f64 y t) a)) (+.f64 (/.f64 x (/.f64 t z)) (*.f64 (*.f64 (/.f64 a t) (/.f64 a t)) y))) (+.f64 (+.f64 (*.f64 (/.f64 a t) x) (*.f64 (/.f64 y t) z)) (+.f64 (*.f64 (/.f64 a (*.f64 t t)) (*.f64 y z)) (*.f64 (*.f64 (/.f64 a t) (/.f64 a t)) x)))))
40.6b
(*.f64 (-.f64 (/.f64 y (-.f64 a t)) (/.f64 x (-.f64 a t))) z)
16.2b
(+.f64 (*.f64 (/.f64 t (-.f64 a t)) x) (+.f64 x (-.f64 (*.f64 (/.f64 y (-.f64 a t)) z) (+.f64 (*.f64 (/.f64 y (-.f64 a t)) t) (*.f64 (/.f64 z (-.f64 a t)) x)))))
24.2b
(+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t)))
Compiler

Compiled 9014 to 3723 computations (58.7% saved)

regimes1.9s (27.6%)

Accuracy

Total 7.0b remaining (97.1%)

Threshold costs 0b (0%)

Counts
130 → 3
Compiler

Compiled 19614 to 11046 computations (43.7% saved)

bsearch5.0ms (0.1%)

Algorithm
left-value
Calls

2 calls:

0.0ms
(+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t)))
0.0ms
(+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t)))
Steps
ItersPointRange
5.552058689946136e+304
∈ [
5.552058689946136e+304
,
#hash((type . real) (value . +inf))
]
#hash((type . real) (value . -inf))
∈ [
#hash((type . real) (value . -inf))
,
-1.812065702627224e+305
]
Compiler

Compiled 18 to 11 computations (38.9% saved)

simplify19.0ms (0.3%)

Algorithm
egg-herbie
Rules
92×cancel-sign-sub-inv_binary64
88×distribute-rgt-neg-in_binary64
67×neg-sub0_binary64
66×neg-mul-1_binary64
63×distribute-lft-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
040139
162138
282138
3115134
4174134
5238134
6297134
7362134
8438134
9514134
10584134
11661134
12726134
13765134
14783134
15787134
Stop Event
saturated

end153.0ms (2.2%)

Stop Event
fuel
Compiler

Compiled 506 to 232 computations (54.2% saved)

Profiling

Loading profile data...