Details

Time bar (total: 3.8s)

analyze525.0ms (13.9%)

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
14%85.8%0.1%7
22.6%77.2%0.1%8
23.8%74.5%1.7%9
40%56%4%10
47.3%48.7%4%11
48.4%45.8%5.8%12
58.6%32.4%9%13
63.4%27.5%9%14
Compiler

Compiled 11 to 7 computations (36.4% saved)

sample913.0ms (24.2%)

Results
821.0ms8256×body128valid
78.0ms743×body128invalid
Compiler

Compiled 22 to 14 computations (36.4% saved)

preprocess138.0ms (3.7%)

Algorithm
egg-herbie
Rules
2118×associate-/l/_binary64
1625×fma-def_binary64
405×*-commutative_binary64
364×distribute-rgt-out_binary64
238×swap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01640
14640
28240
313040
416840
518940
620132
726232
8142932
9233032
10289532
11294432
12294732
13294732
14411832
15423132
16431532
17433032
18437432
19437932
20437932
033
Stop Event
saturated
node limit
Compiler

Compiled 10 to 6 computations (40% saved)

simplify29.0ms (0.8%)

Algorithm
egg-herbie
Rules
756×associate-/l*_binary64
731×associate-/l/_binary64
589×associate-/r/_binary64
532×associate-*l/_binary64
346×associate-/r*_binary64
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
0710
11710
22810
34110
45010
55610
6608
7758
82578
911908
1014488
1115858
1215988
1316038
1416088
Stop Event
node limit
Counts
1 → 2

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
StatusErrorProgram
3.6b
(fma.f64 x (/.f64 y z) x)
12.6b
(/.f64 (*.f64 x (+.f64 y z)) z)
Compiler

Compiled 54 to 30 computations (44.4% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
3.4b
(fma.f64 x (/.f64 y z) x)

series13.0ms (0.3%)

Counts
1 → 36
Calls

9 calls:

2.0ms
(fma.f64 x (/.f64 y z) x)
x
-inf
2.0ms
(fma.f64 x (/.f64 y z) x)
x
inf
2.0ms
(fma.f64 x (/.f64 y z) x)
x
0
1.0ms
(fma.f64 x (/.f64 y z) x)
z
inf
1.0ms
(fma.f64 x (/.f64 y z) x)
y
-inf

rewrite39.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
616×log1p-expm1-u_binary64
616×expm1-log1p-u_binary64
323×log-prod_binary64
119×expm1-udef_binary64
119×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11248
216388
Stop Event
node limit
Counts
1 → 29

simplify19.0ms (0.5%)

Algorithm
egg-herbie
Rules
20×fma-def_binary64
10×associate-*r*_binary64
associate-/r/_binary64
associate-/l*_binary64
associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
011324
119324
231264
342264
472264
586264
6106264
7115264
8117264
Stop Event
saturated
Counts
65 → 35

prune22.0ms (0.6%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New31435
Fresh101
Picked011
Done000
Total32537
Error
0.0b
Counts
37 → 5
Alt Table
StatusErrorProgram
4.9b
(fma.f64 y (/.f64 x z) x)
34.0b
(pow.f64 (sqrt.f64 (fma.f64 x (/.f64 y z) x)) 2)
4.8b
(pow.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) 3)
3.6b
(fma.f64 x (/.f64 y z) x)
5.2b
(+.f64 (/.f64 (*.f64 y x) z) x)
Compiler

Compiled 479 to 162 computations (66.2% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.6b
(cbrt.f64 (fma.f64 x (/.f64 y z) x))
0.7b
(pow.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) 3)
3.4b
(fma.f64 x (/.f64 y z) x)

series507.0ms (13.5%)

Counts
2 → 24
Calls

18 calls:

170.0ms
(pow.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) 3)
y
0
146.0ms
(pow.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) 3)
z
-inf
145.0ms
(pow.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) 3)
z
inf
6.0ms
(cbrt.f64 (fma.f64 x (/.f64 y z) x))
y
0
5.0ms
(cbrt.f64 (fma.f64 x (/.f64 y z) x))
z
inf

rewrite48.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
784×log1p-expm1-u_binary64
784×expm1-log1p-u_binary64
87×prod-diff_binary64
84×add-sqr-sqrt_binary64
79×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0918
118518
2213918
Stop Event
node limit
Counts
2 → 49

simplify35.0ms (0.9%)

Algorithm
egg-herbie
Rules
710×associate-/r*_binary64
662×fma-def_binary64
263×unswap-sqr_binary64
257×associate-/r/_binary64
181×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
041750
1131732
2391711
31936699
Stop Event
node limit
Counts
73 → 60

prune46.0ms (1.2%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New94195
Fresh033
Picked011
Done011
Total946100
Error
0.0b
Counts
100 → 6
Alt Table
StatusErrorProgram
4.9b
(fma.f64 y (/.f64 x z) x)
34.0b
(pow.f64 (sqrt.f64 (fma.f64 x (/.f64 y z) x)) 2)
4.8b
(pow.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) 3)
3.6b
(fma.f64 x (/.f64 y z) x)
5.2b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))))
5.2b
(+.f64 (/.f64 (*.f64 y x) z) x)
Compiler

Compiled 1602 to 653 computations (59.2% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
4.8b
(fma.f64 y (/.f64 x z) x)

series14.0ms (0.4%)

Counts
1 → 36
Calls

9 calls:

4.0ms
(fma.f64 y (/.f64 x z) x)
x
0
2.0ms
(fma.f64 y (/.f64 x z) x)
x
-inf
2.0ms
(fma.f64 y (/.f64 x z) x)
x
inf
1.0ms
(fma.f64 y (/.f64 x z) x)
y
-inf
1.0ms
(fma.f64 y (/.f64 x z) x)
y
inf

rewrite42.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
616×log1p-expm1-u_binary64
616×expm1-log1p-u_binary64
323×log-prod_binary64
119×expm1-udef_binary64
119×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11248
216388
Stop Event
node limit
Counts
1 → 29

simplify20.0ms (0.5%)

Algorithm
egg-herbie
Rules
20×fma-def_binary64
10×associate-*r*_binary64
associate-/r/_binary64
associate-/l*_binary64
associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
011324
119324
231264
342264
472264
586264
6106264
7115264
8117264
Stop Event
saturated
Counts
65 → 35

prune17.0ms (0.4%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New35035
Fresh033
Picked011
Done022
Total35641
Error
0.0b
Counts
41 → 6
Alt Table
StatusErrorProgram
4.9b
(fma.f64 y (/.f64 x z) x)
34.0b
(pow.f64 (sqrt.f64 (fma.f64 x (/.f64 y z) x)) 2)
4.8b
(pow.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) 3)
3.6b
(fma.f64 x (/.f64 y z) x)
5.2b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))))
5.2b
(+.f64 (/.f64 (*.f64 y x) z) x)
Compiler

Compiled 522 to 173 computations (66.9% saved)

localize10.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) 2)
0.6b
(cbrt.f64 (fma.f64 x (/.f64 y z) x))
0.6b
(cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
3.4b
(fma.f64 x (/.f64 y z) x)

series615.0ms (16.3%)

Counts
2 → 72
Calls

18 calls:

115.0ms
(pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) 2)
x
-inf
101.0ms
(cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
x
-inf
89.0ms
(cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
x
0
86.0ms
(cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
x
inf
86.0ms
(pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) 2)
x
inf

rewrite51.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
856×log1p-expm1-u_binary64
856×expm1-log1p-u_binary64
97×add-sqr-sqrt_binary64
91×add-cube-cbrt_binary64
91×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01027
120227
2239627
Stop Event
node limit
Counts
2 → 42

simplify69.0ms (1.8%)

Algorithm
egg-herbie
Rules
686×associate-/l*_binary64
469×fma-def_binary64
462×associate-/r*_binary64
195×associate-/r/_binary64
155×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01863448
15833101
221172689
Stop Event
node limit
Counts
114 → 108

prune222.0ms (5.9%)

Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New3600360
Fresh022
Picked011
Done033
Total3606366
Error
0.0b
Counts
366 → 6
Alt Table
StatusErrorProgram
4.9b
(fma.f64 y (/.f64 x z) x)
34.0b
(pow.f64 (sqrt.f64 (fma.f64 x (/.f64 y z) x)) 2)
4.8b
(pow.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) 3)
3.6b
(fma.f64 x (/.f64 y z) x)
5.2b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))))
5.2b
(+.f64 (/.f64 (*.f64 y x) z) x)
Compiler

Compiled 14613 to 5203 computations (64.4% saved)

regimes204.0ms (5.4%)

Accuracy

Total 1.6b remaining (99.1%)

Threshold costs 0b (0%)

Counts
21 → 5
Compiler

Compiled 1512 to 838 computations (44.6% saved)

bsearch51.0ms (1.3%)

Algorithm
binary-search
Calls

4 calls:

18.0ms
x
16.0ms
x
11.0ms
x
5.0ms
x
Steps
ItersPointRange
1.1147993284127676e-87
∈ [
4.2017530616152036e-88
,
1.8204299919059153e-87
]
3.162995441140994e-151
∈ [
1.1942149943023898e-159
,
2.133541830397882e-148
]
-6.363410517185796e-300
∈ [
-6.791053444696439e-300
,
-3.023280644887128e-307
]
-2.041895623003483e-62
∈ [
-7.092321156861636e-62
,
-6.032591974008712e-66
]
Compiler

Compiled 4 to 3 computations (25% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02468
12668
Stop Event
saturated

end99.0ms (2.6%)

Stop Event
fuel
Compiler

Compiled 186 to 89 computations (52.2% saved)

Profiling

Loading profile data...