Details

Time bar (total: 3.6s)

analyze575.0ms (16.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
0%81.1%18.9%7
6.2%74.9%18.9%8
9.4%65.5%25.1%9
15.6%48.4%36%10
20.3%43.1%36.6%11
22.6%36%41.4%12
27.1%25.1%47.8%13
29.5%22.5%48%14
Compiler

Compiled 14 to 9 computations (35.7% saved)

sample1.2s (34.9%)

Results
966.0ms8256×body128valid
269.0ms2617×body128invalid
Compiler

Compiled 28 to 18 computations (35.7% saved)

preprocess41.0ms (1.1%)

Algorithm
egg-herbie
Rules
953×fma-def_binary64
371×distribute-rgt-in_binary64
269×unsub-neg_binary64
250×sub-neg_binary64
215×distribute-lft-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01960
15660
29360
320060
449960
5144860
6354660
033
Stop Event
saturated
node limit
Compiler

Compiled 13 to 8 computations (38.5% saved)

simplify27.0ms (0.7%)

Algorithm
egg-herbie
Rules
697×fma-def_binary64
584×fma-neg_binary64
283×distribute-rgt-in_binary64
228×sub-neg_binary64
220×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0915
11915
23115
36015
413415
538315
683315
7163315
8363215
Stop Event
node limit
Counts
1 → 2

prune3.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
24.4b
Counts
3 → 1
Alt Table
StatusErrorProgram
24.4b
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
Compiler

Compiled 49 to 29 computations (40.8% saved)

localize6.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
3.2b
(-.f64 (*.f64 y y) (*.f64 z z))
25.1b
(sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z)))

series52.0ms (1.5%)

Counts
3 → 84
Calls

21 calls:

6.0ms
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
x
0
5.0ms
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
x
-inf
5.0ms
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
z
inf
4.0ms
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
x
inf
4.0ms
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
y
0

rewrite77.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
642×prod-diff_binary64
406×fma-def_binary64
256×egg-rr
170×expm1-udef_binary64
170×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0937
119837
2265035
Stop Event
node limit
Counts
3 → 256

simplify51.0ms (1.4%)

Algorithm
egg-herbie
Rules
714×associate-/l*_binary64
585×associate-/r*_binary64
470×fma-def_binary64
264×cancel-sign-sub-inv_binary64
176×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01271894
14341872
215921838
Stop Event
node limit
Counts
340 → 342

prune177.0ms (4.9%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New3402342
Fresh000
Picked011
Done000
Total3403343
Error
0.2b
Counts
343 → 3
Alt Table
StatusErrorProgram
31.0b
(fma.f64 y x (*.f64 (/.f64 -1/2 (/.f64 (/.f64 y z) z)) x))
24.4b
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
28.1b
(*.f64 x (fma.f64 1/2 (*.f64 (/.f64 z y) z) (neg.f64 y)))
Compiler

Compiled 7981 to 3043 computations (61.9% saved)

localize7.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 x (fma.f64 1/2 (*.f64 (/.f64 z y) z) (neg.f64 y)))
0.1b
(*.f64 (/.f64 z y) z)

series39.0ms (1.1%)

Counts
2 → 60
Calls

15 calls:

7.0ms
(*.f64 x (fma.f64 1/2 (*.f64 (/.f64 z y) z) (neg.f64 y)))
x
-inf
4.0ms
(*.f64 x (fma.f64 1/2 (*.f64 (/.f64 z y) z) (neg.f64 y)))
x
0
4.0ms
(*.f64 x (fma.f64 1/2 (*.f64 (/.f64 z y) z) (neg.f64 y)))
x
inf
3.0ms
(*.f64 x (fma.f64 1/2 (*.f64 (/.f64 z y) z) (neg.f64 y)))
y
-inf
2.0ms
(*.f64 x (fma.f64 1/2 (*.f64 (/.f64 z y) z) (neg.f64 y)))
y
0

rewrite49.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
888×log1p-expm1-u_binary64
888×expm1-log1p-u_binary64
151×prod-diff_binary64
105×add-sqr-sqrt_binary64
96×add-cbrt-cube_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01023
120821
2269021
Stop Event
node limit
Counts
2 → 41

simplify39.0ms (1.1%)

Algorithm
egg-herbie
Rules
570×distribute-rgt-neg-in_binary64
510×distribute-lft-neg-in_binary64
457×fma-def_binary64
437×associate-/l/_binary64
335×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
018705
145705
299705
3215705
4601705
52464705
Stop Event
node limit
Counts
101 → 50

prune26.0ms (0.7%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New50050
Fresh011
Picked011
Done011
Total50353
Error
0.2b
Counts
53 → 3
Alt Table
StatusErrorProgram
31.0b
(fma.f64 y x (*.f64 (/.f64 -1/2 (/.f64 (/.f64 y z) z)) x))
24.4b
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
28.1b
(*.f64 x (fma.f64 1/2 (*.f64 (/.f64 z y) z) (neg.f64 y)))
Compiler

Compiled 695 to 335 computations (51.8% saved)

localize9.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (/.f64 y z) z)
0.6b
(/.f64 -1/2 (/.f64 (/.f64 y z) z))
3.7b
(*.f64 (/.f64 -1/2 (/.f64 (/.f64 y z) z)) x)

series70.0ms (1.9%)

Counts
3 → 84
Calls

21 calls:

10.0ms
(/.f64 (/.f64 y z) z)
z
0
7.0ms
(/.f64 (/.f64 y z) z)
y
-inf
6.0ms
(/.f64 (/.f64 y z) z)
y
inf
6.0ms
(/.f64 (/.f64 y z) z)
y
0
4.0ms
(*.f64 (/.f64 -1/2 (/.f64 (/.f64 y z) z)) x)
x
0

rewrite54.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
557×log-prod_binary64
187×log-div_binary64
181×expm1-udef_binary64
181×log1p-udef_binary64
160×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0930
120030
2280630
Stop Event
node limit
Counts
3 → 103

simplify97.0ms (2.7%)

Algorithm
egg-herbie
Rules
697×associate-/r/_binary64
438×associate-/l/_binary64
313×*-commutative_binary64
293×associate-*l*_binary64
257×associate-*r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
013876
127876
259876
3148876
4483876
51835876
63469876
73951876
84135876
94339876
104552876
114821876
Stop Event
node limit
Counts
187 → 109

prune52.0ms (1.5%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1090109
Fresh000
Picked011
Done022
Total1093112
Error
0.2b
Counts
112 → 3
Alt Table
StatusErrorProgram
31.0b
(fma.f64 y x (*.f64 (/.f64 -1/2 (/.f64 (/.f64 y z) z)) x))
24.4b
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
28.1b
(*.f64 x (fma.f64 1/2 (*.f64 (/.f64 z y) z) (neg.f64 y)))
Compiler

Compiled 1834 to 829 computations (54.8% saved)

regimes543.0ms (15.2%)

Accuracy

Total 0.2b remaining (50.3%)

Threshold costs 0.2b (50.3%)

Counts
33 → 2
Compiler

Compiled 3334 to 2324 computations (30.3% saved)

bsearch279.0ms (7.8%)

Algorithm
binary-search
Calls

1 calls:

278.0ms
y
Steps
ItersPointRange
-7.238217623544146e-284
∈ [
-6.973815285744073e-253
,
-4.128868923005719e-284
]
Compiler

Compiled 4 to 3 computations (25% saved)

simplify6.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02039
12739
22939
33039
Stop Event
saturated

end52.0ms (1.5%)

Stop Event
done
Compiler

Compiled 102 to 62 computations (39.2% saved)

Profiling

Loading profile data...