Details

Time bar (total: 14.1s)

analyze1.8s (12.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.7%0.3%0
0%99.7%0.3%1
0%99.7%0.3%2
0%99.7%0.3%3
0%99.7%0.3%4
0%99.7%0.3%5
0%99.7%0.3%6
0%99.7%0.3%7
0%99.7%0.3%8
0%99.7%0.3%9
0%99.7%0.3%10
0.6%99.1%0.3%11
1.8%98%0.3%12
2.6%97.1%0.3%13
4%95.7%0.3%14
Compiler

Compiled 24 to 15 computations (37.5% saved)

sample1.4s (9.9%)

Results
1.3s8256×body128valid
62.0ms423×body128invalid
Compiler

Compiled 48 to 30 computations (37.5% saved)

preprocess46.0ms (0.3%)

Algorithm
egg-herbie
Rules
853×fma-def_binary64
422×associate--r+_binary64
366×distribute-rgt-in_binary64
331×unsub-neg_binary64
296×sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0104368
1205336
2397336
3865336
41594336
53160336
066
Stop Event
saturated
node limit
Compiler

Compiled 23 to 14 computations (39.1% saved)

simplify25.0ms (0.2%)

Algorithm
egg-herbie
Rules
920×times-frac_binary64
583×fma-def_binary64
508×div-sub_binary64
452×fma-neg_binary64
447×associate-/l*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01523
12521
25021
310521
419521
533421
655921
799021
8215221
Stop Event
node limit
Counts
1 → 2

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 80 to 41 computations (48.8% saved)

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.3b
(fma.f64 z (-.f64 t a) (*.f64 x y))
24.3b
(/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))

series161.0ms (1.1%)

Counts
2 → 132
Calls

33 calls:

21.0ms
(/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))
b
inf
18.0ms
(/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))
b
-inf
10.0ms
(/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))
y
0
10.0ms
(/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))
x
-inf
8.0ms
(/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))
z
0

rewrite61.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
976×prod-diff_binary64
151×add-sqr-sqrt_binary64
143×log1p-expm1-u_binary64
143×expm1-log1p-u_binary64
142×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01332
128532
2402032
Stop Event
node limit
Counts
2 → 56

simplify94.0ms (0.7%)

Algorithm
egg-herbie
Rules
768×times-frac_binary64
647×associate-/l*_binary64
486×fma-def_binary64
257×+-commutative_binary64
206×associate-+r+_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
06077593
124526998
Stop Event
node limit
Counts
188 → 151

prune183.0ms (1.3%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New1438151
Fresh000
Picked011
Done000
Total1439152
Error
0.0b
Counts
152 → 9
Alt Table
StatusErrorProgram
31.5b
(-.f64 (*.f64 (/.f64 z y) (/.f64 a (+.f64 z -1))) (fma.f64 (/.f64 z y) (/.f64 x (/.f64 (pow.f64 (+.f64 z -1) 2) b)) (fma.f64 (/.f64 t y) (/.f64 z (+.f64 z -1)) (/.f64 x (+.f64 z -1)))))
26.9b
(-.f64 (fma.f64 (/.f64 y (-.f64 b y)) (/.f64 x z) (fma.f64 (/.f64 a (pow.f64 (-.f64 b y) 2)) (/.f64 y z) (/.f64 t (-.f64 b y)))) (fma.f64 (/.f64 y (pow.f64 (-.f64 b y) 2)) (/.f64 t z) (/.f64 a (-.f64 b y))))
25.1b
(/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))
43.1b
(*.f64 (/.f64 1 (sqrt.f64 (fma.f64 z (-.f64 b y) y))) (/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (sqrt.f64 (fma.f64 z (-.f64 b y) y))))
41.6b
(/.f64 x (-.f64 1 z))
34.9b
(/.f64 z (/.f64 (+.f64 y (*.f64 z (-.f64 b y))) (-.f64 t a)))
25.2b
(*.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (/.f64 1 (fma.f64 z (-.f64 b y) y)))
25.1b
(-.f64 (fma.f64 (/.f64 y z) (/.f64 a (pow.f64 (-.f64 y b) 2)) (/.f64 a (-.f64 y b))) (fma.f64 (/.f64 y z) (/.f64 x (-.f64 y b)) (fma.f64 (/.f64 y z) (/.f64 t (pow.f64 (-.f64 y b) 2)) (/.f64 t (-.f64 y b)))))
25.7b
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))) 3)
Compiler

Compiled 9267 to 4003 computations (56.8% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
6.8b
(/.f64 a (pow.f64 (-.f64 y b) 2))
7.6b
(/.f64 t (pow.f64 (-.f64 y b) 2))
9.2b
(fma.f64 (/.f64 y z) (/.f64 a (pow.f64 (-.f64 y b) 2)) (/.f64 a (-.f64 y b)))
11.0b
(fma.f64 (/.f64 y z) (/.f64 t (pow.f64 (-.f64 y b) 2)) (/.f64 t (-.f64 y b)))

series321.0ms (2.3%)

Counts
4 → 160
Calls

42 calls:

25.0ms
(fma.f64 (/.f64 y z) (/.f64 t (pow.f64 (-.f64 y b) 2)) (/.f64 t (-.f64 y b)))
t
inf
25.0ms
(fma.f64 (/.f64 y z) (/.f64 t (pow.f64 (-.f64 y b) 2)) (/.f64 t (-.f64 y b)))
t
-inf
25.0ms
(fma.f64 (/.f64 y z) (/.f64 a (pow.f64 (-.f64 y b) 2)) (/.f64 a (-.f64 y b)))
a
-inf
21.0ms
(fma.f64 (/.f64 y z) (/.f64 a (pow.f64 (-.f64 y b) 2)) (/.f64 a (-.f64 y b)))
a
inf
21.0ms
(/.f64 a (pow.f64 (-.f64 y b) 2))
a
inf

rewrite41.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
181×add-sqr-sqrt_binary64
171×log1p-expm1-u_binary64
171×expm1-log1p-u_binary64
169×add-cbrt-cube_binary64
168×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01666
135666
Stop Event
node limit
Counts
4 → 106

simplify97.0ms (0.7%)

Algorithm
egg-herbie
Rules
503×associate-/r/_binary64
220×times-frac_binary64
216×cancel-sign-sub-inv_binary64
215×associate-/l*_binary64
211×associate-+r+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02865716
110175462
232615021
Stop Event
node limit
Counts
266 → 208

prune260.0ms (1.8%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New2071208
Fresh077
Picked101
Done011
Total2089217
Error
0.0b
Counts
217 → 9
Alt Table
StatusErrorProgram
31.5b
(-.f64 (*.f64 (/.f64 z y) (/.f64 a (+.f64 z -1))) (fma.f64 (/.f64 z y) (/.f64 x (/.f64 (pow.f64 (+.f64 z -1) 2) b)) (fma.f64 (/.f64 t y) (/.f64 z (+.f64 z -1)) (/.f64 x (+.f64 z -1)))))
26.9b
(-.f64 (fma.f64 (/.f64 y (-.f64 b y)) (/.f64 x z) (fma.f64 (/.f64 a (pow.f64 (-.f64 b y) 2)) (/.f64 y z) (/.f64 t (-.f64 b y)))) (fma.f64 (/.f64 y (pow.f64 (-.f64 b y) 2)) (/.f64 t z) (/.f64 a (-.f64 b y))))
25.1b
(/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))
25.7b
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))) 3)
25.3b
(-.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b)))) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b)))) 2)) (fma.f64 (/.f64 y z) (/.f64 x (-.f64 y b)) (fma.f64 (/.f64 y z) (/.f64 t (pow.f64 (-.f64 y b) 2)) (/.f64 t (-.f64 y b)))))
43.1b
(*.f64 (/.f64 1 (sqrt.f64 (fma.f64 z (-.f64 b y) y))) (/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (sqrt.f64 (fma.f64 z (-.f64 b y) y))))
41.6b
(/.f64 x (-.f64 1 z))
34.9b
(/.f64 z (/.f64 (+.f64 y (*.f64 z (-.f64 b y))) (-.f64 t a)))
25.2b
(*.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (/.f64 1 (fma.f64 z (-.f64 b y) y)))
Compiler

Compiled 11546 to 3962 computations (65.7% saved)

localize12.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(fma.f64 z (-.f64 t a) (*.f64 x y))
0.7b
(/.f64 1 (fma.f64 z (-.f64 b y) y))
23.9b
(*.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (/.f64 1 (fma.f64 z (-.f64 b y) y)))

series168.0ms (1.2%)

Counts
2 → 108
Calls

27 calls:

17.0ms
(*.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (/.f64 1 (fma.f64 z (-.f64 b y) y)))
b
-inf
14.0ms
(*.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (/.f64 1 (fma.f64 z (-.f64 b y) y)))
b
inf
10.0ms
(*.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (/.f64 1 (fma.f64 z (-.f64 b y) y)))
y
0
10.0ms
(*.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (/.f64 1 (fma.f64 z (-.f64 b y) y)))
x
-inf
10.0ms
(*.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (/.f64 1 (fma.f64 z (-.f64 b y) y)))
z
inf

rewrite61.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
967×prod-diff_binary64
165×add-sqr-sqrt_binary64
155×add-cbrt-cube_binary64
155×log1p-expm1-u_binary64
155×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01532
132132
2432032
Stop Event
node limit
Counts
2 → 51

simplify105.0ms (0.7%)

Algorithm
egg-herbie
Rules
767×associate-/l*_binary64
518×fma-def_binary64
315×+-commutative_binary64
239×associate-+r+_binary64
175×sub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
07498864
129638329
Stop Event
node limit
Counts
159 → 189

prune248.0ms (1.8%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New2281229
Fresh167
Picked011
Done011
Total2299238
Error
0.0b
Counts
238 → 9
Alt Table
StatusErrorProgram
31.5b
(-.f64 (*.f64 (/.f64 z y) (/.f64 a (+.f64 z -1))) (fma.f64 (/.f64 z y) (/.f64 x (/.f64 (pow.f64 (+.f64 z -1) 2) b)) (fma.f64 (/.f64 t y) (/.f64 z (+.f64 z -1)) (/.f64 x (+.f64 z -1)))))
26.9b
(-.f64 (fma.f64 (/.f64 y (-.f64 b y)) (/.f64 x z) (fma.f64 (/.f64 a (pow.f64 (-.f64 b y) 2)) (/.f64 y z) (/.f64 t (-.f64 b y)))) (fma.f64 (/.f64 y (pow.f64 (-.f64 b y) 2)) (/.f64 t z) (/.f64 a (-.f64 b y))))
25.1b
(/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))
25.7b
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))) 3)
25.3b
(-.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b)))) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b)))) 2)) (fma.f64 (/.f64 y z) (/.f64 x (-.f64 y b)) (fma.f64 (/.f64 y z) (/.f64 t (pow.f64 (-.f64 y b) 2)) (/.f64 t (-.f64 y b)))))
34.9b
(/.f64 z (/.f64 (+.f64 y (*.f64 z (-.f64 b y))) (-.f64 t a)))
25.2b
(*.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (/.f64 1 (fma.f64 z (-.f64 b y) y)))
43.0b
(/.f64 (/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (sqrt.f64 (fma.f64 z (-.f64 b y) y))) (sqrt.f64 (fma.f64 z (-.f64 b y) y)))
41.6b
(/.f64 x (-.f64 1 z))
Compiler

Compiled 12479 to 5593 computations (55.2% saved)

localize23.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
7.6b
(/.f64 t (pow.f64 (-.f64 y b) 2))
9.2b
(fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b)))
11.0b
(fma.f64 (/.f64 y z) (/.f64 t (pow.f64 (-.f64 y b) 2)) (/.f64 t (-.f64 y b)))
15.1b
(cbrt.f64 (fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b))))

series359.0ms (2.5%)

Counts
2 → 64
Calls

24 calls:

83.0ms
(cbrt.f64 (fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b))))
y
0
34.0ms
(cbrt.f64 (fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b))))
b
inf
32.0ms
(cbrt.f64 (fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b))))
b
-inf
28.0ms
(cbrt.f64 (fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b))))
b
0
27.0ms
(cbrt.f64 (fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b))))
y
-inf

rewrite61.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
662×prod-diff_binary64
146×add-sqr-sqrt_binary64
139×log1p-expm1-u_binary64
139×expm1-log1p-u_binary64
137×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01348
128648
2387748
Stop Event
node limit
Counts
2 → 47

simplify80.0ms (0.6%)

Algorithm
egg-herbie
Rules
363×fma-def_binary64
324×associate-*r*_binary64
292×times-frac_binary64
252×associate-*l*_binary64
237×associate-/l*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
04035374
113964811
Stop Event
node limit
Counts
111 → 108

prune534.0ms (3.8%)

Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New3160316
Fresh066
Picked011
Done022
Total3169325
Error
0.0b
Counts
325 → 9
Alt Table
StatusErrorProgram
31.5b
(-.f64 (*.f64 (/.f64 z y) (/.f64 a (+.f64 z -1))) (fma.f64 (/.f64 z y) (/.f64 x (/.f64 (pow.f64 (+.f64 z -1) 2) b)) (fma.f64 (/.f64 t y) (/.f64 z (+.f64 z -1)) (/.f64 x (+.f64 z -1)))))
26.9b
(-.f64 (fma.f64 (/.f64 y (-.f64 b y)) (/.f64 x z) (fma.f64 (/.f64 a (pow.f64 (-.f64 b y) 2)) (/.f64 y z) (/.f64 t (-.f64 b y)))) (fma.f64 (/.f64 y (pow.f64 (-.f64 b y) 2)) (/.f64 t z) (/.f64 a (-.f64 b y))))
25.1b
(/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))
25.7b
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (fma.f64 z (-.f64 b y) y))) 3)
25.3b
(-.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b)))) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y z) (*.f64 a (pow.f64 (-.f64 y b) -2)) (/.f64 a (-.f64 y b)))) 2)) (fma.f64 (/.f64 y z) (/.f64 x (-.f64 y b)) (fma.f64 (/.f64 y z) (/.f64 t (pow.f64 (-.f64 y b) 2)) (/.f64 t (-.f64 y b)))))
34.9b
(/.f64 z (/.f64 (+.f64 y (*.f64 z (-.f64 b y))) (-.f64 t a)))
25.2b
(*.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (/.f64 1 (fma.f64 z (-.f64 b y) y)))
43.0b
(/.f64 (/.f64 (fma.f64 z (-.f64 t a) (*.f64 x y)) (sqrt.f64 (fma.f64 z (-.f64 b y) y))) (sqrt.f64 (fma.f64 z (-.f64 b y) y)))
41.6b
(/.f64 x (-.f64 1 z))
Compiler

Compiled 29379 to 12314 computations (58.1% saved)

regimes7.7s (54.8%)

Accuracy

Total 5.4b remaining (99%)

Threshold costs 0b (0%)

Counts
258 → 5
Compiler

Compiled 83392 to 42190 computations (49.4% saved)

bsearch16.0ms (0.1%)

Algorithm
left-value
Calls

4 calls:

0.0ms
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
0.0ms
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
0.0ms
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
0.0ms
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
Steps
ItersPointRange
3.766540488325304e+306
∈ [
3.766540488325304e+306
,
#hash((type . real) (value . +inf))
]
0.0
∈ [
0.0
,
2.8988606764566243e-227
]
-3.0521027635232184e-224
∈ [
-3.0521027635232184e-224
,
-4.512880218573826e-266
]
#hash((type . real) (value . -inf))
∈ [
#hash((type . real) (value . -inf))
,
-4.314735113761526e+291
]
Compiler

Compiled 23 to 14 computations (39.1% saved)

simplify10.0ms (0.1%)

Algorithm
egg-herbie
Rules
12×+-commutative_binary64
10×*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
049355
167355
285355
395355
4101355
5102355
Stop Event
saturated

end180.0ms (1.3%)

Stop Event
fuel
Compiler

Compiled 784 to 292 computations (62.8% saved)

Profiling

Loading profile data...