Details

Time bar (total: 7.2s)

analyze573.0ms (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
0%99.9%0.1%6
23.4%51.5%25.1%7
24.2%50.7%25.1%8
24.6%50.3%25.1%9
36.9%25.5%37.6%10
37.2%25.3%37.6%11
37.3%25.1%37.6%12
43.5%12.7%43.8%13
43.6%12.6%43.8%14
Compiler

Compiled 32 to 21 computations (34.4% saved)

sample1.8s (25.2%)

Results
1.6s8256×body128valid
194.0ms1033×body128invalid
Compiler

Compiled 64 to 42 computations (34.4% saved)

preprocess46.0ms (0.6%)

Algorithm
egg-herbie
Rules
628×fma-def_binary64
405×associate-/l/_binary64
300×distribute-rgt-in_binary64
288×cube-prod_binary64
262×associate-*l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05088
19184
210884
314156
419644
522144
664844
7243744
8404144
9441944
033
133
Stop Event
unsound
node limit
Symmetry

(sort re im)

Compiler

Compiled 31 to 20 computations (35.5% saved)

simplify41.0ms (0.6%)

Algorithm
egg-herbie
Rules
567×associate-/l/_binary64
526×cube-prod_binary64
434×times-frac_binary64
365×sqr-pow_binary64
291×pow-sqr_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01922
13121
23821
34914
46611
57511
621811
7119611
8180411
9201511
10250911
11299211
12386911
Stop Event
node limit
Counts
1 → 2

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.3b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.4b
(/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))
32.1b
(/.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (log.f64 base)) (*.f64 (atan2.f64 im re) 0)) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 0 0)))
Compiler

Compiled 120 to 77 computations (35.8% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 re im)
0.4b
(/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))

series584.0ms (8.1%)

Counts
2 → 60
Calls

15 calls:

214.0ms
(/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))
base
-inf
167.0ms
(/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))
base
0
157.0ms
(/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))
base
inf
10.0ms
(/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))
re
-inf
5.0ms
(/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))
re
0

rewrite45.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
713×log1p-expm1-u_binary64
713×expm1-log1p-u_binary64
145×expm1-udef_binary64
145×log1p-udef_binary64
81×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
115815
2196515
Stop Event
node limit
Counts
2 → 54

simplify42.0ms (0.6%)

Algorithm
egg-herbie
Rules
762×times-frac_binary64
406×associate-/r*_binary64
360×associate-/l*_binary64
332×fma-def_binary64
209×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01331684
13941570
211881490
Stop Event
node limit
Counts
114 → 129

prune103.0ms (1.4%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New11613129
Fresh101
Picked101
Done000
Total11813131
Error
0.0b
Counts
131 → 13
Alt Table
StatusErrorProgram
31.6b
(pow.f64 (sqrt.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))) 2)
15.1b
(-.f64 (exp.f64 (log1p.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base)))) 1)
0.7b
(cbrt.f64 (/.f64 (pow.f64 (log.f64 (hypot.f64 re im)) 3) (pow.f64 (log.f64 base) 3)))
15.7b
(*.f64 (/.f64 (sqrt.f64 (log.f64 (hypot.f64 re im))) 1) (/.f64 (sqrt.f64 (log.f64 (hypot.f64 re im))) (log.f64 base)))
1.3b
(*.f64 (cbrt.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))) 2))
0.5b
(pow.f64 (/.f64 (log.f64 base) (log.f64 (hypot.f64 re im))) -1)
0.4b
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2))) (log.f64 base))
33.8b
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (log.f64 (hypot.f64 re im)) (sqrt.f64 (log.f64 base))))
1.2b
(log1p.f64 (expm1.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))))
31.5b
(exp.f64 (log.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))))
14.8b
(expm1.f64 (log1p.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))))
0.6b
(log.f64 (pow.f64 (hypot.f64 re im) (/.f64 1 (log.f64 base))))
1.2b
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 re im))) 2) (*.f64 (cbrt.f64 (log.f64 (hypot.f64 re im))) (/.f64 1 (log.f64 base))))
Compiler

Compiled 2718 to 1459 computations (46.3% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2))
0.4b
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2))) (log.f64 base))
0.5b
(pow.f64 (cbrt.f64 (hypot.f64 re im)) 2)
0.5b
(cbrt.f64 (hypot.f64 re im))

series616.0ms (8.6%)

Counts
4 → 76
Calls

27 calls:

180.0ms
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2))) (log.f64 base))
base
0
163.0ms
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2))) (log.f64 base))
base
-inf
161.0ms
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2))) (log.f64 base))
base
inf
10.0ms
(pow.f64 (cbrt.f64 (hypot.f64 re im)) 2)
re
0
8.0ms
(cbrt.f64 (hypot.f64 re im))
re
0

rewrite55.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
479×log-prod_binary64
262×pow2_binary64
184×pow1/3_binary64
183×expm1-udef_binary64
183×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01230
124130
2262230
Stop Event
node limit
Counts
4 → 106

simplify54.0ms (0.8%)

Algorithm
egg-herbie
Rules
762×times-frac_binary64
677×fma-def_binary64
296×cancel-sign-sub-inv_binary64
208×fma-neg_binary64
136×sub-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02212206
16712090
220691994
Stop Event
node limit
Counts
182 → 213

prune230.0ms (3.2%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New2532255
Fresh21012
Picked011
Done000
Total25513268
Error
0b
Counts
268 → 13
Alt Table
StatusErrorProgram
0.4b
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (pow.f64 (hypot.f64 re im) 1/3) 2))) (log.f64 base))
14.8b
(expm1.f64 (log1p.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))))
0.7b
(cbrt.f64 (/.f64 (pow.f64 (log.f64 (hypot.f64 re im)) 3) (pow.f64 (log.f64 base) 3)))
15.7b
(*.f64 (/.f64 (sqrt.f64 (log.f64 (hypot.f64 re im))) 1) (/.f64 (sqrt.f64 (log.f64 (hypot.f64 re im))) (log.f64 base)))
1.3b
(*.f64 (cbrt.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))) 2))
0.5b
(pow.f64 (/.f64 (log.f64 base) (log.f64 (hypot.f64 re im))) -1)
31.6b
(pow.f64 (sqrt.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))) 2)
0.5b
(*.f64 (/.f64 1 (log.f64 base)) (log.f64 (hypot.f64 re im)))
0.4b
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2))) (log.f64 base))
1.2b
(log1p.f64 (expm1.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))))
31.5b
(exp.f64 (log.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))))
0.6b
(log.f64 (pow.f64 (hypot.f64 re im) (/.f64 1 (log.f64 base))))
1.2b
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 re im))) 2) (*.f64 (cbrt.f64 (log.f64 (hypot.f64 re im))) (/.f64 1 (log.f64 base))))
Compiler

Compiled 5790 to 3113 computations (46.2% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (pow.f64 (hypot.f64 re im) 1/3) 2))) (log.f64 base))
0.5b
(pow.f64 (pow.f64 (hypot.f64 re im) 1/3) 2)
0.5b
(cbrt.f64 (hypot.f64 re im))
5.1b
(pow.f64 (hypot.f64 re im) 1/3)

series601.0ms (8.4%)

Counts
3 → 52
Calls

21 calls:

168.0ms
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (pow.f64 (hypot.f64 re im) 1/3) 2))) (log.f64 base))
base
0
165.0ms
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (pow.f64 (hypot.f64 re im) 1/3) 2))) (log.f64 base))
base
-inf
162.0ms
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (pow.f64 (hypot.f64 re im) 1/3) 2))) (log.f64 base))
base
inf
9.0ms
(pow.f64 (pow.f64 (hypot.f64 re im) 1/3) 2)
im
0
8.0ms
(pow.f64 (pow.f64 (hypot.f64 re im) 1/3) 2)
re
0

rewrite49.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
512×log-prod_binary64
199×expm1-udef_binary64
199×log1p-udef_binary64
187×log-pow_binary64
118×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01426
127626
2290826
Stop Event
node limit
Counts
3 → 83

simplify45.0ms (0.6%)

Algorithm
egg-herbie
Rules
616×associate-*r*_binary64
552×fma-def_binary64
548×associate-*l*_binary64
294×times-frac_binary64
240×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01871718
15491620
216291540
Stop Event
node limit
Counts
135 → 160

prune153.0ms (2.1%)

Pruning

13 alts after pruning (11 fresh and 2 done)

PrunedKeptTotal
New2020202
Fresh01111
Picked011
Done011
Total20213215
Error
0b
Counts
215 → 13
Alt Table
StatusErrorProgram
0.4b
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (pow.f64 (hypot.f64 re im) 1/3) 2))) (log.f64 base))
14.8b
(expm1.f64 (log1p.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))))
0.7b
(cbrt.f64 (/.f64 (pow.f64 (log.f64 (hypot.f64 re im)) 3) (pow.f64 (log.f64 base) 3)))
15.7b
(*.f64 (/.f64 (sqrt.f64 (log.f64 (hypot.f64 re im))) 1) (/.f64 (sqrt.f64 (log.f64 (hypot.f64 re im))) (log.f64 base)))
1.3b
(*.f64 (cbrt.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))) 2))
0.5b
(pow.f64 (/.f64 (log.f64 base) (log.f64 (hypot.f64 re im))) -1)
31.6b
(pow.f64 (sqrt.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))) 2)
0.5b
(*.f64 (/.f64 1 (log.f64 base)) (log.f64 (hypot.f64 re im)))
0.4b
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2))) (log.f64 base))
1.2b
(log1p.f64 (expm1.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))))
31.5b
(exp.f64 (log.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))))
0.6b
(log.f64 (pow.f64 (hypot.f64 re im) (/.f64 1 (log.f64 base))))
1.2b
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 re im))) 2) (*.f64 (cbrt.f64 (log.f64 (hypot.f64 re im))) (/.f64 1 (log.f64 base))))
Compiler

Compiled 5024 to 2735 computations (45.6% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 re im)
0.3b
(pow.f64 (/.f64 (log.f64 base) (log.f64 (hypot.f64 re im))) -1)
0.4b
(/.f64 (log.f64 base) (log.f64 (hypot.f64 re im)))

series1.2s (16%)

Counts
2 → 72
Calls

18 calls:

182.0ms
(pow.f64 (/.f64 (log.f64 base) (log.f64 (hypot.f64 re im))) -1)
base
0
177.0ms
(pow.f64 (/.f64 (log.f64 base) (log.f64 (hypot.f64 re im))) -1)
base
-inf
176.0ms
(pow.f64 (/.f64 (log.f64 base) (log.f64 (hypot.f64 re im))) -1)
base
inf
166.0ms
(/.f64 (log.f64 base) (log.f64 (hypot.f64 re im)))
base
inf
165.0ms
(/.f64 (log.f64 base) (log.f64 (hypot.f64 re im)))
base
-inf

rewrite49.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
861×log1p-expm1-u_binary64
861×expm1-log1p-u_binary64
100×add-sqr-sqrt_binary64
93×add-log-exp_binary64
92×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01025
120022
2242922
Stop Event
node limit
Counts
2 → 76

simplify55.0ms (0.8%)

Algorithm
egg-herbie
Rules
465×times-frac_binary64
386×associate-/r*_binary64
283×associate-/l*_binary64
248×fma-def_binary64
193×associate-*r*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03523790
112803520
Stop Event
node limit
Counts
148 → 179

prune187.0ms (2.6%)

Pruning

12 alts after pruning (9 fresh and 3 done)

PrunedKeptTotal
New2291230
Fresh2810
Picked011
Done022
Total23112243
Error
0b
Counts
243 → 12
Alt Table
StatusErrorProgram
0.4b
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (pow.f64 (hypot.f64 re im) 1/3) 2))) (log.f64 base))
14.8b
(expm1.f64 (log1p.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))))
1.3b
(*.f64 (cbrt.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))) 2))
0.5b
(pow.f64 (/.f64 (log.f64 base) (log.f64 (hypot.f64 re im))) -1)
31.6b
(pow.f64 (sqrt.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))) 2)
0.4b
(/.f64 (log.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2))) (log.f64 base))
0.5b
(/.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (log.f64 (hypot.f64 re im))))
1.2b
(log1p.f64 (expm1.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))))
31.5b
(exp.f64 (log.f64 (/.f64 (log.f64 (hypot.f64 re im)) (log.f64 base))))
15.7b
(*.f64 (/.f64 (sqrt.f64 (log.f64 (hypot.f64 re im))) 1) (/.f64 (sqrt.f64 (log.f64 (hypot.f64 re im))) (log.f64 base)))
0.6b
(log.f64 (pow.f64 (hypot.f64 re im) (/.f64 1 (log.f64 base))))
1.2b
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 re im))) 2) (*.f64 (cbrt.f64 (log.f64 (hypot.f64 re im))) (/.f64 1 (log.f64 base))))
Compiler

Compiled 6627 to 3767 computations (43.2% saved)

regimes485.0ms (6.8%)

Accuracy

Total 0.3b remaining (89.5%)

Threshold costs 0.3b (89.5%)

Counts
99 → 1
Compiler

Compiled 7581 to 5476 computations (27.8% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01015
Stop Event
saturated

end155.0ms (2.2%)

Stop Event
fuel
Remove

(sort re im)

Compiler

Compiled 234 to 161 computations (31.2% saved)

Profiling

Loading profile data...