Details

Time bar (total: 7.2s)

sample398.0ms

Algorithm
intervals
Results
50.0ms67×body1280valid
35.0ms50×body640valid
28.0ms257×body80valid
7.0ms21×body320valid
2.0ms10×body160valid

simplify41.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune19.0ms

Filtered
1 candidates to 1 candidates (100.0%)
Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 33.0b

Counts
2 → 2

localize25.0ms

Local error

Found 4 expressions with local error:

1.4b
(* (atan2 x.im x.re) y.im)
29.0b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.0b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
35.2b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite22.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)
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)))

series246.0ms

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

simplify78.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (14.0ms)

IterNodesCost
0191420
1501383
21134381
32494381
45002381

prune322.0ms

Filtered
68 candidates to 54 candidates (79.4%)
Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New63568
Fresh101
Picked101
Done000
Total65570

Merged error: 19.6b

Counts
70 → 5

localize18.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.3b
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
1.4b
(* (atan2 x.im x.re) y.im)
29.0b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite19.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:
4.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)
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series233.0ms

Counts
4 → 12
Calls
4 calls:
93.0ms
(exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im)))
88.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
16.0ms
(* (atan2 x.im x.re) y.im)
35.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify62.0ms

Algorithm
egg-herbie
Counts
81 → 81
Iterations

Useful iterations: 2 (21.0ms)

IterNodesCost
0280545
1825486
22165481
35001481

prune273.0ms

Filtered
81 candidates to 60 candidates (74.1%)
Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New77481
Fresh134
Picked101
Done000
Total79786

Merged error: 4.1b

Counts
86 → 7

localize12.0ms

Local error

Found 3 expressions with local error:

0.0b
(exp (neg (* (atan2 x.im x.re) y.im)))
0.3b
(/ (exp (neg (* (atan2 x.im x.re) y.im))) (pow (/ 1 x.re) y.re))
1.4b
(* (atan2 x.im x.re) y.im)

rewrite23.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:
3.0ms
(exp (neg (* (atan2 x.im x.re) y.im)))
10.0ms
(/ (exp (neg (* (atan2 x.im x.re) y.im))) (pow (/ 1 x.re) y.re))
6.0ms
(* (atan2 x.im x.re) y.im)

series117.0ms

Counts
3 → 9
Calls
3 calls:
23.0ms
(exp (neg (* (atan2 x.im x.re) y.im)))
78.0ms
(/ (exp (neg (* (atan2 x.im x.re) y.im))) (pow (/ 1 x.re) y.re))
16.0ms
(* (atan2 x.im x.re) y.im)

simplify52.0ms

Algorithm
egg-herbie
Counts
134 → 134
Iterations

Useful iterations: 2 (38.0ms)

IterNodesCost
04471462
116651378
250021369

prune373.0ms

Filtered
134 candidates to 86 candidates (64.2%)
Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1322134
Fresh066
Picked101
Done000
Total1338141

Merged error: 4.1b

Counts
141 → 8

localize15.0ms

Local error

Found 3 expressions with local error:

0.0b
(pow E (neg (* (atan2 x.im x.re) y.im)))
0.3b
(/ (pow E (neg (* (atan2 x.im x.re) y.im))) (pow (/ 1 x.re) y.re))
1.4b
(* (atan2 x.im x.re) y.im)

rewrite31.0ms

Algorithm
rewrite-expression-head
Rules
191×times-frac
161×unpow-prod-down
109×add-sqr-sqrt
107×add-cube-cbrt *-un-lft-identity
42×add-exp-log
32×div-exp
30×pow-exp
27×sqr-pow
17×associate-/r*
11×pow-to-exp
div-inv
e-exp-1 add-cbrt-cube associate-/l*
pow1 pow-unpow
rec-exp 1-exp
associate-*r* associate-*l* add-log-exp
neg-sub0 pow-neg associate-/l/ pow-sub
cbrt-undiv distribute-lft-neg-in neg-mul-1 pow-pow distribute-rgt-neg-in frac-2neg pow-prod-down prod-exp clear-num *-commutative cbrt-unprod unswap-sqr
Counts
3 → 221
Calls
3 calls:
2.0ms
(pow E (neg (* (atan2 x.im x.re) y.im)))
13.0ms
(/ (pow E (neg (* (atan2 x.im x.re) y.im))) (pow (/ 1 x.re) y.re))
4.0ms
(* (atan2 x.im x.re) y.im)

series143.0ms

Counts
3 → 9
Calls
3 calls:
37.0ms
(pow E (neg (* (atan2 x.im x.re) y.im)))
90.0ms
(/ (pow E (neg (* (atan2 x.im x.re) y.im))) (pow (/ 1 x.re) y.re))
17.0ms
(* (atan2 x.im x.re) y.im)

simplify84.0ms

Algorithm
egg-herbie
Counts
230 → 230
Iterations

Useful iterations: 2 (54.0ms)

IterNodesCost
06292870
128002714
250012597

prune452.0ms

Filtered
230 candidates to 112 candidates (48.7%)
Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New2291230
Fresh077
Picked101
Done000
Total2308238

Merged error: 4.1b

Counts
238 → 8

regimes361.0ms

Accuracy

80.3% (5.7b remaining)

Error of 9.2b against oracle of 3.5b and baseline of 32.3b

bsearch146.0ms

Steps
ItersRangePoint
11
-1.329912432178342e-295
2.0275104442738615e-300
-1.5510630416592e-310

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03115
13515
23515

end0.0ms

sample3.6s

Algorithm
intervals
Results
1.4s2043×body1280valid
850.0ms7955×body80valid
672.0ms1413×body640valid
222.0ms657×body320valid
70.0ms309×body160valid

Profiling

Loading profile data...