Details

Time bar (total: 3.9s)

analyze340.0ms (8.8%)

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
25%74.9%0.1%6
25%74.9%0.1%7
43.7%56.2%0.1%8
62.4%37.4%0.1%9
65.5%34.3%0.1%10
71.8%27.7%0.5%11
79.2%19.7%1.1%12
80.2%18.7%1.1%13
82.8%15%2.2%14
Compiler

Compiled 15 to 11 computations (26.7% saved)

sample988.0ms (25.6%)

Results
923.0ms8256×body128valid
52.0ms478×body128invalid
Compiler

Compiled 30 to 22 computations (26.7% saved)

preprocess29.0ms (0.8%)

Algorithm
egg-herbie
Rules
131×fma-def_binary64
98×associate-*l*_binary64
68×associate-*r*_binary64
58×distribute-lft-in_binary64
58×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02264
16956
214656
332256
449156
561656
662456
033
133
Stop Event
unsound
saturated
Symmetry

(sort x y)

Compiler

Compiled 14 to 10 computations (28.6% saved)

simplify8.0ms (0.2%)

Algorithm
egg-herbie
Rules
44×fma-def_binary64
31×associate-*l*_binary64
30×associate-*r*_binary64
19×distribute-lft-in_binary64
19×distribute-rgt-in_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01016
12414
24614
310714
417314
523414
623814
Stop Event
saturated
Counts
1 → 2

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
5.8b
Counts
3 → 2
Alt Table
StatusErrorProgram
5.9b
(/.f64 (/.f64 1 x) (*.f64 y (+.f64 1 (*.f64 z z))))
6.2b
(/.f64 1 (*.f64 x (*.f64 y (fma.f64 z z 1))))
Compiler

Compiled 78 to 54 computations (30.8% saved)

localize7.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
3.1b
(/.f64 (/.f64 1 x) (*.f64 y (+.f64 1 (*.f64 z z))))
5.2b
(*.f64 y (+.f64 1 (*.f64 z z)))

series89.0ms (2.3%)

Counts
2 → 60
Calls

15 calls:

18.0ms
(/.f64 (/.f64 1 x) (*.f64 y (+.f64 1 (*.f64 z z))))
x
0
15.0ms
(/.f64 (/.f64 1 x) (*.f64 y (+.f64 1 (*.f64 z z))))
x
-inf
12.0ms
(/.f64 (/.f64 1 x) (*.f64 y (+.f64 1 (*.f64 z z))))
y
-inf
11.0ms
(/.f64 (/.f64 1 x) (*.f64 y (+.f64 1 (*.f64 z z))))
y
0
10.0ms
(/.f64 (/.f64 1 x) (*.f64 y (+.f64 1 (*.f64 z z))))
x
inf

rewrite54.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
289×prod-diff_binary64
220×fma-def_binary64
187×expm1-udef_binary64
187×log1p-udef_binary64
170×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01026
122222
2313422
Stop Event
node limit
Counts
2 → 98

simplify49.0ms (1.3%)

Algorithm
egg-herbie
Rules
671×times-frac_binary64
428×distribute-neg-frac_binary64
318×associate-/l*_binary64
199×sub-neg_binary64
189×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
055993
1151903
2366901
31295897
44292897
Stop Event
node limit
Counts
158 → 124

prune108.0ms (2.8%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New11410124
Fresh011
Picked101
Done000
Total11511126
Error
0.0b
Counts
126 → 11
Alt Table
StatusErrorProgram
6.4b
(pow.f64 (*.f64 (fma.f64 z z 1) (*.f64 y x)) -1)
30.1b
(/.f64 (/.f64 (/.f64 1 y) z) (*.f64 z x))
49.2b
(*.f64 (/.f64 (pow.f64 x -1/2) (pow.f64 (cbrt.f64 (*.f64 y (fma.f64 z z 1))) 2)) (/.f64 (pow.f64 x -1/2) (cbrt.f64 (*.f64 y (fma.f64 z z 1)))))
6.3b
(/.f64 (/.f64 1 (*.f64 y x)) (fma.f64 z z 1))
5.7b
(*.f64 1 (/.f64 (/.f64 (/.f64 1 y) (fma.f64 z z 1)) x))
5.9b
(/.f64 (/.f64 1 x) (fma.f64 y (*.f64 z z) y))
16.1b
(*.f64 (/.f64 1 (*.f64 (sqrt.f64 y) (hypot.f64 1 z))) (/.f64 (/.f64 1 x) (*.f64 (sqrt.f64 y) (hypot.f64 1 z))))
32.1b
(/.f64 (/.f64 1 x) (*.f64 z (*.f64 y z)))
6.4b
(*.f64 (cbrt.f64 (/.f64 (/.f64 (/.f64 1 y) (fma.f64 z z 1)) x)) (pow.f64 (cbrt.f64 (/.f64 (/.f64 (/.f64 1 y) (fma.f64 z z 1)) x)) 2))
9.7b
(/.f64 (/.f64 1 x) (fma.f64 (*.f64 y (cbrt.f64 (pow.f64 z 4))) (pow.f64 (cbrt.f64 z) 2) y))
6.2b
(/.f64 1 (*.f64 x (*.f64 y (fma.f64 z z 1))))
Compiler

Compiled 2310 to 1364 computations (41% saved)

localize8.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
2.6b
(/.f64 (/.f64 (/.f64 1 y) (fma.f64 z z 1)) x)
5.4b
(/.f64 (/.f64 1 y) (fma.f64 z z 1))

series118.0ms (3.1%)

Counts
2 → 60
Calls

15 calls:

22.0ms
(/.f64 (/.f64 (/.f64 1 y) (fma.f64 z z 1)) x)
y
0
16.0ms
(/.f64 (/.f64 (/.f64 1 y) (fma.f64 z z 1)) x)
x
0
16.0ms
(/.f64 (/.f64 (/.f64 1 y) (fma.f64 z z 1)) x)
x
-inf
11.0ms
(/.f64 (/.f64 (/.f64 1 y) (fma.f64 z z 1)) x)
y
-inf
10.0ms
(/.f64 (/.f64 (/.f64 1 y) (fma.f64 z z 1)) x)
y
inf

rewrite51.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
499×log-prod_binary64
176×pow1/3_binary64
171×expm1-udef_binary64
171×log1p-udef_binary64
162×pow3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0925
119225
2268825
Stop Event
node limit
Counts
2 → 86

simplify38.0ms (1%)

Algorithm
egg-herbie
Rules
710×times-frac_binary64
342×associate-/l*_binary64
281×fma-def_binary64
265×associate-/l/_binary64
185×associate-/r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0771170
11991146
24741144
316281134
Stop Event
node limit
Counts
146 → 123

prune128.0ms (3.3%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1221123
Fresh4610
Picked011
Done000
Total1268134
Error
0.0b
Counts
134 → 8
Alt Table
StatusErrorProgram
20.8b
(*.f64 1 (*.f64 (/.f64 (pow.f64 y -1/2) x) (/.f64 (pow.f64 y -1/2) (fma.f64 z z 1))))
9.7b
(/.f64 (/.f64 1 x) (fma.f64 (*.f64 y (cbrt.f64 (pow.f64 z 4))) (pow.f64 (cbrt.f64 z) 2) y))
30.1b
(/.f64 (/.f64 (/.f64 1 y) z) (*.f64 z x))
16.1b
(*.f64 (/.f64 1 (*.f64 (sqrt.f64 y) (hypot.f64 1 z))) (/.f64 (/.f64 1 x) (*.f64 (sqrt.f64 y) (hypot.f64 1 z))))
6.3b
(/.f64 (/.f64 1 (*.f64 y x)) (fma.f64 z z 1))
32.1b
(/.f64 (/.f64 1 x) (*.f64 z (*.f64 y z)))
5.7b
(*.f64 1 (/.f64 (/.f64 (/.f64 1 y) (fma.f64 z z 1)) x))
6.2b
(/.f64 1 (*.f64 x (*.f64 y (fma.f64 z z 1))))
Compiler

Compiled 2522 to 1743 computations (30.9% saved)

localize6.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.8b
(/.f64 1 (*.f64 x (*.f64 y (fma.f64 z z 1))))
2.6b
(*.f64 x (*.f64 y (fma.f64 z z 1)))
5.2b
(*.f64 y (fma.f64 z z 1))

series103.0ms (2.7%)

Counts
3 → 96
Calls

24 calls:

13.0ms
(/.f64 1 (*.f64 x (*.f64 y (fma.f64 z z 1))))
x
-inf
11.0ms
(/.f64 1 (*.f64 x (*.f64 y (fma.f64 z z 1))))
x
0
10.0ms
(/.f64 1 (*.f64 x (*.f64 y (fma.f64 z z 1))))
y
0
10.0ms
(/.f64 1 (*.f64 x (*.f64 y (fma.f64 z z 1))))
y
-inf
10.0ms
(/.f64 1 (*.f64 x (*.f64 y (fma.f64 z z 1))))
x
inf

rewrite45.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
797×log1p-expm1-u_binary64
797×expm1-log1p-u_binary64
89×add-sqr-sqrt_binary64
81×add-cbrt-cube_binary64
81×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0933
118033
2222633
Stop Event
node limit
Counts
3 → 69

simplify54.0ms (1.4%)

Algorithm
egg-herbie
Rules
671×times-frac_binary64
429×distribute-neg-frac_binary64
327×associate-/l*_binary64
199×sub-neg_binary64
189×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0571446
11541290
23691288
312941284
442931284
Stop Event
node limit
Counts
165 → 104

prune96.0ms (2.5%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1031104
Fresh066
Picked101
Done011
Total1048112
Error
0.0b
Counts
112 → 8
Alt Table
StatusErrorProgram
20.8b
(*.f64 1 (*.f64 (/.f64 (pow.f64 y -1/2) x) (/.f64 (pow.f64 y -1/2) (fma.f64 z z 1))))
9.7b
(/.f64 (/.f64 1 x) (fma.f64 (*.f64 y (cbrt.f64 (pow.f64 z 4))) (pow.f64 (cbrt.f64 z) 2) y))
3.6b
(/.f64 1 (*.f64 y (fma.f64 z (*.f64 z x) x)))
30.1b
(/.f64 (/.f64 (/.f64 1 y) z) (*.f64 z x))
16.1b
(*.f64 (/.f64 1 (*.f64 (sqrt.f64 y) (hypot.f64 1 z))) (/.f64 (/.f64 1 x) (*.f64 (sqrt.f64 y) (hypot.f64 1 z))))
6.3b
(/.f64 (/.f64 1 (*.f64 y x)) (fma.f64 z z 1))
32.1b
(/.f64 (/.f64 1 x) (*.f64 z (*.f64 y z)))
5.7b
(*.f64 1 (/.f64 (/.f64 (/.f64 1 y) (fma.f64 z z 1)) x))
Compiler

Compiled 1709 to 1071 computations (37.3% saved)

localize6.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 z (*.f64 z x) x)
0.8b
(/.f64 1 (*.f64 y (fma.f64 z (*.f64 z x) x)))
2.8b
(*.f64 y (fma.f64 z (*.f64 z x) x))

series111.0ms (2.9%)

Counts
3 → 96
Calls

24 calls:

17.0ms
(/.f64 1 (*.f64 y (fma.f64 z (*.f64 z x) x)))
x
-inf
15.0ms
(/.f64 1 (*.f64 y (fma.f64 z (*.f64 z x) x)))
y
0
11.0ms
(/.f64 1 (*.f64 y (fma.f64 z (*.f64 z x) x)))
y
-inf
10.0ms
(/.f64 1 (*.f64 y (fma.f64 z (*.f64 z x) x)))
y
inf
10.0ms
(/.f64 1 (*.f64 y (fma.f64 z (*.f64 z x) x)))
x
0

rewrite53.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
784×log1p-expm1-u_binary64
784×expm1-log1p-u_binary64
153×prod-diff_binary64
89×add-sqr-sqrt_binary64
81×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0933
117933
2218733
Stop Event
node limit
Counts
3 → 73

simplify62.0ms (1.6%)

Algorithm
egg-herbie
Rules
555×times-frac_binary64
418×distribute-neg-frac_binary64
299×associate-/l*_binary64
199×sub-neg_binary64
195×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0551290
11461290
23691288
312301284
439961284
Stop Event
node limit
Counts
169 → 108

prune82.0ms (2.1%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1080108
Fresh066
Picked011
Done011
Total1088116
Error
0.0b
Counts
116 → 8
Alt Table
StatusErrorProgram
20.8b
(*.f64 1 (*.f64 (/.f64 (pow.f64 y -1/2) x) (/.f64 (pow.f64 y -1/2) (fma.f64 z z 1))))
9.7b
(/.f64 (/.f64 1 x) (fma.f64 (*.f64 y (cbrt.f64 (pow.f64 z 4))) (pow.f64 (cbrt.f64 z) 2) y))
3.6b
(/.f64 1 (*.f64 y (fma.f64 z (*.f64 z x) x)))
30.1b
(/.f64 (/.f64 (/.f64 1 y) z) (*.f64 z x))
16.1b
(*.f64 (/.f64 1 (*.f64 (sqrt.f64 y) (hypot.f64 1 z))) (/.f64 (/.f64 1 x) (*.f64 (sqrt.f64 y) (hypot.f64 1 z))))
6.3b
(/.f64 (/.f64 1 (*.f64 y x)) (fma.f64 z z 1))
32.1b
(/.f64 (/.f64 1 x) (*.f64 z (*.f64 y z)))
5.7b
(*.f64 1 (/.f64 (/.f64 (/.f64 1 y) (fma.f64 z z 1)) x))
Compiler

Compiled 1693 to 753 computations (55.5% saved)

regimes962.0ms (24.9%)

Accuracy

Total 0.4b remaining (95.5%)

Threshold costs 0.4b (95.5%)

Counts
86 → 2
Compiler

Compiled 11596 to 8375 computations (27.8% saved)

bsearch2.0ms (0.1%)

Algorithm
left-value
Calls

1 calls:

0.0ms
(*.f64 y (+.f64 1 (*.f64 z z)))
Steps
ItersPointRange
5.786246149407601e+285
∈ [
5.786246149407601e+285
,
1.8947436636436216e+290
]
Compiler

Compiled 10 to 7 computations (30% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
*-lft-identity_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02566
13466
Stop Event
saturated

end256.0ms (6.6%)

Stop Event
fuel
Compiler

Compiled 313 to 224 computations (28.4% saved)

Profiling

Loading profile data...