Details

Time bar (total: 8.2s)

sample402.0ms

Algorithm
intervals
Results
52.0ms56×body1280valid
38.0ms252×body80valid
21.0ms36×body640valid
7.0ms17×body320valid
3.0ms10×body160valid

simplify38.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (4.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune15.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 36.9b

localize25.0ms

Local error

Found 4 expressions with local error:

2.2b
(* (atan2 x.im x.re) y.im)
32.8b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
32.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite20.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
sqrt-div add-log-exp
associate-*r* associate-*l*
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
cos-sum pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
Counts
4 → 56
Calls
4 calls:
3.0ms
(* (atan2 x.im x.re) y.im)
6.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
3.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series257.0ms

Counts
4 → 12
Calls
4 calls:
16.0ms
(* (atan2 x.im x.re) y.im)
147.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
38.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
56.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify75.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (14.0ms)

IterNodesCost
0191420
1501383
21134381
32496381
45001381

prune339.0ms

Pruning

7 alts after pruning (7 fresh and 0 done)

Merged error: 19.6b

localize16.0ms

Local error

Found 4 expressions with local error:

0.0b
(exp (- (* (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)
2.2b
(* (atan2 x.im x.re) y.im)
32.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite21.0ms

Algorithm
rewrite-expression-head
Rules
15×add-sqr-sqrt
11×pow1
10×add-cube-cbrt *-un-lft-identity
associate-*l*
add-exp-log add-cbrt-cube
add-log-exp
associate-*r*
exp-prod sqrt-prod log-pow
sqrt-pow1 pow1/2 sqrt-div exp-sum pow-prod-down prod-exp *-commutative cbrt-unprod rem-exp-log unswap-sqr
sub-neg rem-sqrt-square flip3-+ exp-diff diff-log flip-+
Counts
4 → 69
Calls
4 calls:
8.0ms
(exp (- (* (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)
3.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series253.0ms

Counts
4 → 12
Calls
4 calls:
99.0ms
(exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im)))
96.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
17.0ms
(* (atan2 x.im x.re) y.im)
41.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify58.0ms

Algorithm
egg-herbie
Counts
81 → 81
Iterations

Useful iterations: 2 (20.0ms)

IterNodesCost
0280545
1825486
22118481
35001481

prune308.0ms

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 3.6b

localize13.0ms

Local error

Found 3 expressions with local error:

0.0b
(exp (- (* (atan2 x.im x.re) y.im)))
0.5b
(/ (exp (- (* (atan2 x.im x.re) y.im))) (pow (/ 1 x.re) y.re))
2.2b
(* (atan2 x.im x.re) y.im)

rewrite25.0ms

Algorithm
rewrite-expression-head
Rules
87×times-frac
58×add-sqr-sqrt
56×add-cube-cbrt *-un-lft-identity
52×unpow-prod-down
17×associate-/r*
11×add-exp-log
div-exp
add-cbrt-cube
exp-prod
pow1 div-inv add-log-exp
pow-exp sqr-pow
associate-*r* associate-*l* associate-/l*
neg-sub0 exp-neg exp-diff rem-exp-log associate-/l/
cbrt-undiv distribute-lft-neg-in pow-to-exp neg-mul-1 rec-exp distribute-rgt-neg-in frac-2neg 1-exp pow-prod-down neg-log prod-exp clear-num *-commutative cbrt-unprod unswap-sqr
Counts
3 → 125
Calls
3 calls:
2.0ms
(exp (- (* (atan2 x.im x.re) y.im)))
15.0ms
(/ (exp (- (* (atan2 x.im x.re) y.im))) (pow (/ 1 x.re) y.re))
3.0ms
(* (atan2 x.im x.re) y.im)

series125.0ms

Counts
3 → 9
Calls
3 calls:
25.0ms
(exp (- (* (atan2 x.im x.re) y.im)))
82.0ms
(/ (exp (- (* (atan2 x.im x.re) y.im))) (pow (/ 1 x.re) y.re))
18.0ms
(* (atan2 x.im x.re) y.im)

simplify50.0ms

Algorithm
egg-herbie
Counts
134 → 134
Iterations

Useful iterations: 2 (37.0ms)

IterNodesCost
04471462
116651379
250011369

prune405.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 3.6b

localize14.0ms

Local error

Found 3 expressions with local error:

0.5b
(/ (pow (exp (- (atan2 x.im x.re))) y.im) (pow (/ 1 x.re) y.re))
0.5b
(pow (exp (- (atan2 x.im x.re))) y.im)
0.5b
(exp (- (atan2 x.im x.re)))

rewrite38.0ms

Algorithm
rewrite-expression-head
Rules
191×times-frac
161×unpow-prod-down
111×add-sqr-sqrt add-cube-cbrt *-un-lft-identity
27×add-exp-log sqr-pow
24×div-exp
20×exp-prod
19×pow-exp
17×associate-/r*
11×pow-pow
10×pow-to-exp
div-inv
associate-/l*
distribute-lft-neg-in distribute-rgt-neg-in
add-cbrt-cube add-log-exp
pow1
rec-exp pow-unpow 1-exp
neg-mul-1 rem-exp-log
cbrt-undiv neg-sub0 exp-neg frac-2neg exp-diff neg-log clear-num
Counts
3 → 220
Calls
3 calls:
18.0ms
(/ (pow (exp (- (atan2 x.im x.re))) y.im) (pow (/ 1 x.re) y.re))
5.0ms
(pow (exp (- (atan2 x.im x.re))) y.im)
3.0ms
(exp (- (atan2 x.im x.re)))

series162.0ms

Counts
3 → 9
Calls
3 calls:
98.0ms
(/ (pow (exp (- (atan2 x.im x.re))) y.im) (pow (/ 1 x.re) y.re))
41.0ms
(pow (exp (- (atan2 x.im x.re))) y.im)
24.0ms
(exp (- (atan2 x.im x.re)))

simplify76.0ms

Algorithm
egg-herbie
Counts
229 → 229
Iterations

Useful iterations: 1 (14.0ms)

IterNodesCost
05982872
125362748
250012748

prune617.0ms

Pruning

8 alts after pruning (7 fresh and 1 done)

Merged error: 3.6b

regimes360.0ms

Accuracy

73.2% (7.6b remaining)

Error of 11.3b against oracle of 3.7b and baseline of 32.2b

bsearch153.0ms

Steps
ItersRangePoint
9
-1.9128925615424503e-303
8.364107320502876e-307
1.09120035193117e-310

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03216
13616
23616

end0.0ms

sample4.4s

Algorithm
intervals
Results
1.7s2028×body1280valid
1.1s7956×body80valid
813.0ms1397×body640valid
291.0ms698×body320valid
88.0ms317×body160valid