Details

Time bar (total: 7.2s)

sample352.0ms

Algorithm
intervals
Results
38.0ms62×body1280valid
20.0ms248×body80valid
19.0ms49×body640valid
6.0ms21×body320valid
2.0ms10×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.7b

localize26.0ms

Local error

Found 4 expressions with local error:

1.9b
(* (atan2 x.im x.re) y.im)
28.8b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.8b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.3b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite23.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)))
9.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series241.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)))
38.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
151.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

prune387.0ms

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 20.3b

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.3b
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
1.9b
(* (atan2 x.im x.re) y.im)
28.8b
(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)
3.0ms
(* (atan2 x.im x.re) y.im)
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series270.0ms

Counts
4 → 12
Calls
4 calls:
123.0ms
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
91.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
16.0ms
(* (atan2 x.im x.re) y.im)
40.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify83.0ms

Algorithm
egg-herbie
Counts
89 → 89
Iterations

Useful iterations: 3 (76.0ms)

IterNodesCost
0320595
11020544
23156516
35001484

prune327.0ms

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 4.0b

localize18.0ms

Local error

Found 4 expressions with local error:

0.2b
(fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im)))
0.3b
(pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3)
1.9b
(* (atan2 x.im x.re) y.im)
38.0b
(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)))
5.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))

series563.0ms

Counts
4 → 12
Calls
4 calls:
129.0ms
(fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im)))
286.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)
131.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 (41.0ms)

IterNodesCost
0299737
11300693
25002683

prune320.0ms

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 4.0b

localize20.0ms

Local error

Found 4 expressions with local error:

0.2b
(fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im)))
0.3b
(pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3)
1.9b
(* (atan2 x.im x.re) y.im)
13.0b
(cbrt (log1p (expm1 (pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3))))

rewrite12.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)))
3.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))))

series863.0ms

Counts
4 → 12
Calls
4 calls:
131.0ms
(fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im)))
286.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)
428.0ms
(cbrt (log1p (expm1 (pow (fma y.re (log (hypot x.re x.im)) (- (* (atan2 x.im x.re) y.im))) 3))))

simplify58.0ms

Algorithm
egg-herbie
Counts
80 → 80
Iterations

Useful iterations: 2 (50.0ms)

IterNodesCost
0388661
11687607
25001600

prune335.0ms

Pruning

5 alts after pruning (4 fresh and 1 done)

Merged error: 4.0b

regimes149.0ms

Accuracy

0% (0.5b remaining)

Error of 4.0b against oracle of 3.5b and baseline of 4.0b

bsearch0.0ms

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02611
13011
23011

end0.0ms

sample2.9s

Algorithm
intervals
Results
1.2s1989×body1280valid
650.0ms7977×body80valid
548.0ms1423×body640valid
172.0ms656×body320valid
53.0ms296×body160valid