Details

Time bar (total: 6.4s)

analyze963.0ms (15.1%)

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
6.2%93.6%0.2%8
25%74.9%0.2%9
28.1%71.7%0.2%10
29.6%70.2%0.2%11
53%46.8%0.2%12
71.3%28.5%0.2%13
71.7%28.1%0.2%14
Compiler

Compiled 20 to 12 computations (40% saved)

sample1.4s (22%)

Results
1.3s8256×body128valid
77.0ms503×body128invalid
Compiler

Compiled 40 to 24 computations (40% saved)

preprocess44.0ms (0.7%)

Algorithm
egg-herbie
Rules
905×fma-def_binary64
532×associate-/l*_binary64
381×fma-neg_binary64
305×div-sub_binary64
300×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
039140
1122140
2243140
3398140
4872140
51687140
63097140
044
Stop Event
saturated
node limit
Compiler

Compiled 19 to 11 computations (42.1% saved)

simplify36.0ms (0.6%)

Algorithm
egg-herbie
Rules
832×fma-def_binary64
768×times-frac_binary64
756×fma-neg_binary64
281×associate-/l*_binary64
228×div-sub_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01220
12520
25120
38220
416620
529720
648820
773820
8119920
9180020
10276920
11492820
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
27.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
27.0b
(/.f64 (fma.f64 d (neg.f64 a) (*.f64 b c)) (fma.f64 c c (*.f64 d d)))
Compiler

Compiled 69 to 35 computations (49.3% saved)

localize10.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(fma.f64 d (neg.f64 a) (*.f64 b c))
26.5b
(/.f64 (fma.f64 d (neg.f64 a) (*.f64 b c)) (fma.f64 c c (*.f64 d d)))

series107.0ms (1.7%)

Counts
2 → 96
Calls

24 calls:

21.0ms
(/.f64 (fma.f64 d (neg.f64 a) (*.f64 b c)) (fma.f64 c c (*.f64 d d)))
a
0
13.0ms
(/.f64 (fma.f64 d (neg.f64 a) (*.f64 b c)) (fma.f64 c c (*.f64 d d)))
b
inf
12.0ms
(/.f64 (fma.f64 d (neg.f64 a) (*.f64 b c)) (fma.f64 c c (*.f64 d d)))
a
-inf
10.0ms
(/.f64 (fma.f64 d (neg.f64 a) (*.f64 b c)) (fma.f64 c c (*.f64 d d)))
b
-inf
9.0ms
(/.f64 (fma.f64 d (neg.f64 a) (*.f64 b c)) (fma.f64 c c (*.f64 d d)))
b
0

rewrite72.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
527×log-prod_binary64
286×prod-diff_binary64
190×expm1-udef_binary64
190×log1p-udef_binary64
175×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01130
122625
2292125
Stop Event
node limit
Counts
2 → 65

simplify53.0ms (0.8%)

Algorithm
egg-herbie
Rules
608×fma-def_binary64
483×associate-*l/_binary64
469×cancel-sign-sub-inv_binary64
382×fma-neg_binary64
359×associate-/r/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0471722
11331638
23861599
317811554
Stop Event
node limit
Counts
161 → 92

prune68.0ms (1.1%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New85792
Fresh000
Picked011
Done000
Total85893
Error
1.6b
Counts
93 → 8
Alt Table
StatusErrorProgram
34.1b
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (fma.f64 d a (*.f64 b c)) (hypot.f64 d c)))
39.4b
(-.f64 (fma.f64 (/.f64 (pow.f64 d 3) (pow.f64 c 4)) a (/.f64 b c)) (*.f64 (/.f64 d (*.f64 c c)) (+.f64 a (/.f64 (*.f64 b d) c))))
35.5b
(fma.f64 b (/.f64 (/.f64 c d) d) (/.f64 (neg.f64 a) d))
27.2b
(*.f64 (-.f64 (*.f64 d a) (*.f64 b c)) (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 d c) 2))))
32.1b
(fma.f64 (/.f64 (/.f64 a c) c) (neg.f64 d) (/.f64 b c))
35.6b
(/.f64 b c)
28.4b
(-.f64 (/.f64 c (/.f64 (fma.f64 c c (*.f64 d d)) b)) (*.f64 d (/.f64 a (fma.f64 c c (*.f64 d d)))))
27.0b
(/.f64 (fma.f64 d (neg.f64 a) (*.f64 b c)) (fma.f64 c c (*.f64 d d)))
Compiler

Compiled 1946 to 697 computations (64.2% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (hypot.f64 d c) 2)
0.3b
(/.f64 1 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))
0.4b
(-.f64 (*.f64 d a) (*.f64 b c))
26.5b
(*.f64 (-.f64 (*.f64 d a) (*.f64 b c)) (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 d c) 2))))

series742.0ms (11.6%)

Counts
4 → 144
Calls

36 calls:

560.0ms
(*.f64 (-.f64 (*.f64 d a) (*.f64 b c)) (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 d c) 2))))
c
inf
22.0ms
(*.f64 (-.f64 (*.f64 d a) (*.f64 b c)) (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 d c) 2))))
a
inf
18.0ms
(*.f64 (-.f64 (*.f64 d a) (*.f64 b c)) (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 d c) 2))))
b
0
17.0ms
(*.f64 (-.f64 (*.f64 d a) (*.f64 b c)) (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 d c) 2))))
b
inf
14.0ms
(*.f64 (-.f64 (*.f64 d a) (*.f64 b c)) (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 d c) 2))))
a
0

rewrite98.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
253×expm1-udef_binary64
253×log1p-udef_binary64
163×egg-rr
157×add-sqr-sqrt_binary64
149×log1p-expm1-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01550
132646
2425046
Stop Event
node limit
Counts
4 → 163

simplify73.0ms (1.2%)

Algorithm
egg-herbie
Rules
897×cancel-sign-sub-inv_binary64
718×fma-neg_binary64
369×times-frac_binary64
235×associate-/l*_binary64
212×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0742526
11952406
25682367
327962331
Stop Event
node limit
Counts
307 → 211

prune151.0ms (2.4%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New2092211
Fresh066
Picked011
Done011
Total20910219
Error
1.3b
Counts
219 → 10
Alt Table
StatusErrorProgram
34.1b
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (fma.f64 d a (*.f64 b c)) (hypot.f64 d c)))
39.4b
(-.f64 (fma.f64 (/.f64 (pow.f64 d 3) (pow.f64 c 4)) a (/.f64 b c)) (*.f64 (/.f64 d (*.f64 c c)) (+.f64 a (/.f64 (*.f64 b d) c))))
42.6b
(*.f64 (-.f64 (*.f64 d a) (*.f64 b c)) (/.f64 (/.f64 -1 c) c))
32.1b
(fma.f64 (/.f64 (/.f64 a c) c) (neg.f64 d) (/.f64 b c))
35.5b
(fma.f64 b (/.f64 (/.f64 c d) d) (/.f64 (neg.f64 a) d))
27.2b
(*.f64 (-.f64 (*.f64 d a) (*.f64 b c)) (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 d c) 2))))
35.6b
(/.f64 b c)
36.0b
(-.f64 (*.f64 (/.f64 (/.f64 b d) d) c) (/.f64 a d))
28.4b
(-.f64 (/.f64 c (/.f64 (fma.f64 c c (*.f64 d d)) b)) (*.f64 d (/.f64 a (fma.f64 c c (*.f64 d d)))))
27.0b
(/.f64 (fma.f64 d (neg.f64 a) (*.f64 b c)) (fma.f64 c c (*.f64 d d)))
Compiler

Compiled 4954 to 2058 computations (58.5% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
8.1b
(/.f64 a (fma.f64 c c (*.f64 d d)))
8.4b
(/.f64 (fma.f64 c c (*.f64 d d)) b)
11.8b
(*.f64 d (/.f64 a (fma.f64 c c (*.f64 d d))))
12.0b
(/.f64 c (/.f64 (fma.f64 c c (*.f64 d d)) b))

series249.0ms (3.9%)

Counts
4 → 144
Calls

36 calls:

32.0ms
(*.f64 d (/.f64 a (fma.f64 c c (*.f64 d d))))
c
-inf
24.0ms
(/.f64 c (/.f64 (fma.f64 c c (*.f64 d d)) b))
b
-inf
22.0ms
(/.f64 c (/.f64 (fma.f64 c c (*.f64 d d)) b))
b
0
17.0ms
(*.f64 d (/.f64 a (fma.f64 c c (*.f64 d d))))
a
inf
16.0ms
(/.f64 a (fma.f64 c c (*.f64 d d)))
a
-inf

rewrite75.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
218×expm1-udef_binary64
218×log1p-udef_binary64
202×log-pow_binary64
175×log-div_binary64
140×prod-diff_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01150
123746
2338346
Stop Event
node limit
Counts
4 → 133

simplify64.0ms (1%)

Algorithm
egg-herbie
Rules
760×times-frac_binary64
507×associate-/l*_binary64
370×associate-/r*_binary64
246×cancel-sign-sub-inv_binary64
176×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01063150
12793054
28882880
Stop Event
node limit
Counts
277 → 194

prune155.0ms (2.4%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New1904194
Fresh347
Picked101
Done112
Total1959204
Error
0.8b
Counts
204 → 9
Alt Table
StatusErrorProgram
25.8b
(-.f64 (/.f64 c (/.f64 (fma.f64 c c (*.f64 d d)) b)) (/.f64 a (/.f64 (fma.f64 c c (*.f64 d d)) d)))
35.5b
(fma.f64 b (/.f64 (/.f64 c d) d) (/.f64 (neg.f64 a) d))
42.6b
(-.f64 (*.f64 (/.f64 c d) (/.f64 b d)) (*.f64 d (/.f64 a (fma.f64 c c (*.f64 d d)))))
34.1b
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (fma.f64 d a (*.f64 b c)) (hypot.f64 d c)))
35.6b
(/.f64 b c)
36.0b
(-.f64 (*.f64 (/.f64 (/.f64 b d) d) c) (/.f64 a d))
22.9b
(-.f64 (/.f64 c (/.f64 (fma.f64 c c (*.f64 d d)) b)) (*.f64 d (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d)))))
24.8b
(-.f64 (/.f64 c (/.f64 (fma.f64 c c (*.f64 d d)) b)) (/.f64 (/.f64 (*.f64 d a) (hypot.f64 c d)) (hypot.f64 c d)))
27.0b
(/.f64 (fma.f64 d (neg.f64 a) (*.f64 b c)) (fma.f64 c c (*.f64 d d)))
Compiler

Compiled 5393 to 1939 computations (64% saved)

localize16.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d)))
8.4b
(/.f64 (fma.f64 c c (*.f64 d d)) b)
11.8b
(*.f64 d (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d))))
12.0b
(/.f64 c (/.f64 (fma.f64 c c (*.f64 d d)) b))

series198.0ms (3.1%)

Counts
2 → 72
Calls

18 calls:

26.0ms
(*.f64 d (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d))))
c
-inf
25.0ms
(*.f64 d (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d))))
a
-inf
21.0ms
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d)))
a
-inf
20.0ms
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d)))
a
inf
20.0ms
(*.f64 d (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d))))
a
inf

rewrite48.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
540×log-prod_binary64
177×expm1-udef_binary64
177×log1p-udef_binary64
167×pow3_binary64
166×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01029
120823
2273023
Stop Event
node limit
Counts
2 → 78

simplify62.0ms (1%)

Algorithm
egg-herbie
Rules
778×fma-neg_binary64
410×times-frac_binary64
309×distribute-neg-frac_binary64
278×associate-/l*_binary64
225×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0711764
11901716
25891608
334121608
Stop Event
node limit
Counts
150 → 113

prune198.0ms (3.1%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New2114215
Fresh437
Picked101
Done101
Total2177224
Error
0.5b
Counts
224 → 7
Alt Table
StatusErrorProgram
25.8b
(-.f64 (/.f64 c (/.f64 (fma.f64 c c (*.f64 d d)) b)) (/.f64 a (/.f64 (fma.f64 c c (*.f64 d d)) d)))
35.5b
(fma.f64 b (/.f64 (/.f64 c d) d) (/.f64 (neg.f64 a) d))
17.6b
(-.f64 (/.f64 c (*.f64 (/.f64 (hypot.f64 c d) 1) (/.f64 (hypot.f64 c d) b))) (*.f64 d (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d)))))
37.7b
(-.f64 (*.f64 (/.f64 c d) (/.f64 b d)) (*.f64 d (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d)))))
16.0b
(-.f64 (/.f64 c (/.f64 (fma.f64 c c (*.f64 d d)) b)) (/.f64 (*.f64 (/.f64 d (hypot.f64 d c)) a) (hypot.f64 d c)))
35.6b
(/.f64 b c)
17.3b
(-.f64 (/.f64 c (/.f64 (fma.f64 c c (*.f64 d d)) b)) (/.f64 (/.f64 d (hypot.f64 d c)) (/.f64 (hypot.f64 d c) a)))
Compiler

Compiled 6077 to 2322 computations (61.8% saved)

regimes1.2s (19.3%)

Accuracy

Total 6.8b remaining (91.6%)

Threshold costs 0b (0%)

Counts
76 → 5
Compiler

Compiled 8428 to 4929 computations (41.5% saved)

bsearch100.0ms (1.6%)

Algorithm
binary-search
Calls

4 calls:

42.0ms
c
21.0ms
c
21.0ms
c
13.0ms
c
Steps
ItersPointRange
2.4464143950090505e+137
∈ [
6.303044444594712e+135
,
6.4979187147065664e+137
]
5.71825753163984e-152
∈ [
5.62391038209194e-152
,
4.995467328879783e-151
]
-2.9482117005194184e-127
∈ [
-6.733836685202796e-127
,
-2.4780546057641273e-127
]
-7.017566576847787e+131
∈ [
-3.1792723134721333e+133
,
-9.346812972170296e+129
]
Compiler

Compiled 5 to 4 computations (20% saved)

simplify7.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
045159
166159
287159
3111159
4129159
5137159
6140159
Stop Event
saturated

end131.0ms (2.1%)

Stop Event
fuel
Compiler

Compiled 379 to 183 computations (51.7% saved)

Profiling

Loading profile data...