Details

Time bar (total: 7.4s)

sample351.0ms

Algorithm
intervals
Results
36.0ms58×body1280valid
22.0ms252×body80valid
19.0ms41×body640valid
8.0ms27×body320valid
2.0ms13×body160valid

simplify38.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03521
16317
29817
321717
489517
5500117

prune20.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 33.0b

localize26.0ms

Local error

Found 4 expressions with local error:

1.8b
(* (atan2 x.im x.re) y.im)
30.0b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
30.0b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.6b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite24.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt
pow1 add-cube-cbrt *-un-lft-identity
add-exp-log sqrt-prod add-cbrt-cube
expm1-log1p-u sqrt-div log1p-expm1-u add-log-exp
associate-*r* associate-*l*
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+ hypot-def
cos-sum pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
Counts
4 → 66
Calls
4 calls:
3.0ms
(* (atan2 x.im x.re) y.im)
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
10.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series240.0ms

Counts
4 → 12
Calls
4 calls:
16.0ms
(* (atan2 x.im x.re) y.im)
35.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
40.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
149.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify85.0ms

Algorithm
egg-herbie
Counts
78 → 78
Iterations

Useful iterations: 2 (15.0ms)

IterNodesCost
0207456
1556415
21286411
32863411
45002411

prune375.0ms

Pruning

4 alts after pruning (4 fresh and 0 done)

Merged error: 18.0b

localize17.0ms

Local error

Found 4 expressions with local error:

0.0b
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
0.2b
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
1.8b
(* (atan2 x.im x.re) y.im)
30.0b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite19.0ms

Algorithm
rewrite-expression-head
Rules
14×add-sqr-sqrt
11×pow1
add-cube-cbrt *-un-lft-identity associate-*l*
add-exp-log add-cbrt-cube
associate-*r* add-log-exp
expm1-log1p-u log1p-expm1-u
sqrt-prod log-pow
sqrt-pow1 pow1/2 sqrt-div pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
sub-neg rem-sqrt-square flip3-- flip3-+ fma-neg diff-log prod-diff flip-- flip-+ hypot-def
Counts
4 → 77
Calls
4 calls:
4.0ms
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
5.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
4.0ms
(* (atan2 x.im x.re) y.im)
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series267.0ms

Counts
4 → 12
Calls
4 calls:
122.0ms
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
90.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
16.0ms
(* (atan2 x.im x.re) y.im)
38.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify82.0ms

Algorithm
egg-herbie
Counts
89 → 89
Iterations

Useful iterations: 3 (75.0ms)

IterNodesCost
0320595
11020544
23156516
35001484

prune319.0ms

Pruning

5 alts after pruning (4 fresh and 1 done)

Merged error: 3.3b

localize18.0ms

Local error

Found 4 expressions with local error:

0.1b
(fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im)))
0.2b
(pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3)
1.8b
(* (atan2 x.im x.re) y.im)
39.4b
(cbrt (pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3))

rewrite13.0ms

Algorithm
rewrite-expression-head
Rules
14×add-sqr-sqrt
12×cbrt-prod add-cube-cbrt *-un-lft-identity
pow1 add-exp-log add-cbrt-cube
unpow-prod-down cube-prod
expm1-log1p-u log1p-expm1-u add-log-exp
pow-unpow associate-*r* associate-*l*
cube-mult unpow3 sqr-pow
pow-to-exp pow-pow pow1/3 pow-prod-down pow-exp prod-exp *-commutative rem-cbrt-cube cbrt-unprod fma-udef rem-cube-cbrt unswap-sqr
Counts
4 → 78
Calls
4 calls:
1.0ms
(fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im)))
2.0ms
(pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3)
4.0ms
(* (atan2 x.im x.re) y.im)
2.0ms
(cbrt (pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3))

series554.0ms

Counts
4 → 12
Calls
4 calls:
127.0ms
(fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im)))
283.0ms
(pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3)
16.0ms
(* (atan2 x.im x.re) y.im)
128.0ms
(cbrt (pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3))

simplify53.0ms

Algorithm
egg-herbie
Counts
90 → 90
Iterations

Useful iterations: 2 (40.0ms)

IterNodesCost
0299737
11300693
25002683

prune315.0ms

Pruning

6 alts after pruning (5 fresh and 1 done)

Merged error: 3.3b

localize20.0ms

Local error

Found 4 expressions with local error:

0.1b
(fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im)))
0.2b
(pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3)
1.8b
(* (atan2 x.im x.re) y.im)
13.5b
(cbrt (log1p (expm1 (pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3))))

rewrite13.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt
10×add-cube-cbrt *-un-lft-identity
pow1 add-exp-log add-cbrt-cube
expm1-log1p-u log1p-expm1-u add-log-exp
cbrt-prod unpow-prod-down pow-unpow cube-prod associate-*r* associate-*l*
cube-mult pow-to-exp pow-pow pow1/3 unpow3 pow-prod-down pow-exp prod-exp *-commutative cbrt-unprod fma-udef rem-cube-cbrt unswap-sqr sqr-pow
Counts
4 → 68
Calls
4 calls:
1.0ms
(fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im)))
2.0ms
(pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3)
4.0ms
(* (atan2 x.im x.re) y.im)
4.0ms
(cbrt (log1p (expm1 (pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3))))

series848.0ms

Counts
4 → 12
Calls
4 calls:
133.0ms
(fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im)))
281.0ms
(pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3)
16.0ms
(* (atan2 x.im x.re) y.im)
418.0ms
(cbrt (log1p (expm1 (pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3))))

simplify55.0ms

Algorithm
egg-herbie
Counts
80 → 80
Iterations

Useful iterations: 2 (48.0ms)

IterNodesCost
0388663
11687607
25001600

prune333.0ms

Pruning

6 alts after pruning (4 fresh and 2 done)

Merged error: 3.3b

regimes153.0ms

Accuracy

0% (0.5b remaining)

Error of 3.9b against oracle of 3.4b and baseline of 3.9b

bsearch0.0ms

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02611
13011
23011

end0.0ms

sample3.2s

Algorithm
intervals
Results
1.3s2096×body1280valid
702.0ms8034×body80valid
581.0ms1422×body640valid
188.0ms664×body320valid
55.0ms284×body160valid