Details

Time bar (total: 6.8s)

sample356.0ms

Algorithm
intervals
Results
39.0ms67×body1280valid
24.0ms255×body80valid
18.0ms44×body640valid
5.0ms19×body320valid
1.0msbody160valid

simplify39.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03521
16317
29817
321717
489517
5500117

prune21.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 34.1b

localize24.0ms

Local error

Found 4 expressions with local error:

1.3b
(* (atan2 x.im x.re) y.im)
31.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.7b
(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
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)
3.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
3.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)))

series239.0ms

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

simplify80.0ms

Algorithm
egg-herbie
Counts
78 → 78
Iterations

Useful iterations: 2 (14.0ms)

IterNodesCost
0207454
1556413
21286411
32863411
45002411

prune375.0ms

Pruning

3 alts after pruning (3 fresh and 0 done)

Merged error: 20.5b

localize16.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.3b
(* (atan2 x.im x.re) y.im)
31.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite16.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:
3.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)))

series269.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))
92.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

prune318.0ms

Pruning

4 alts after pruning (4 fresh and 0 done)

Merged error: 2.2b

localize17.0ms

Local error

Found 4 expressions with local error:

0.6b
(cbrt y.re)
0.6b
(cbrt y.re)
0.6b
(cbrt y.re)
1.3b
(* (atan2 x.im x.re) y.im)

rewrite6.0ms

Algorithm
rewrite-expression-head
Rules
11×add-sqr-sqrt
cbrt-prod add-cube-cbrt *-un-lft-identity
pow1 add-exp-log add-cbrt-cube
expm1-log1p-u log1p-expm1-u add-log-exp
pow1/3 associate-*r* associate-*l*
pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
Counts
4 → 59
Calls
4 calls:
0.0ms
(cbrt y.re)
0.0ms
(cbrt y.re)
1.0ms
(cbrt y.re)
3.0ms
(* (atan2 x.im x.re) y.im)

series560.0ms

Counts
4 → 12
Calls
4 calls:
183.0ms
(cbrt y.re)
178.0ms
(cbrt y.re)
178.0ms
(cbrt y.re)
20.0ms
(* (atan2 x.im x.re) y.im)

simplify54.0ms

Algorithm
egg-herbie
Counts
71 → 71
Iterations

Useful iterations: 3 (18.0ms)

IterNodesCost
0102209
1300190
2710184
31530181
45001181

prune292.0ms

Pruning

4 alts after pruning (3 fresh and 1 done)

Merged error: 2.2b

localize16.0ms

Local error

Found 4 expressions with local error:

0.0b
(exp (- (* (atan2 x.im x.re) y.im)))
0.5b
(* (pow (hypot x.re x.im) y.re) (exp (- (* (atan2 x.im x.re) y.im))))
1.3b
(* (atan2 x.im x.re) y.im)
6.0b
(log (* (pow (hypot x.re x.im) y.re) (exp (- (* (atan2 x.im x.re) y.im)))))

rewrite23.0ms

Algorithm
rewrite-expression-head
Rules
17×add-sqr-sqrt
11×add-exp-log
10×add-cube-cbrt *-un-lft-identity associate-*l*
add-cbrt-cube
pow1 prod-exp
exp-prod associate-*r* add-log-exp
exp-neg
expm1-log1p-u unpow-prod-down associate-*r/ rem-log-exp log1p-expm1-u unswap-sqr
neg-sub0 log-div exp-diff
pow-to-exp pow-exp un-div-inv *-commutative cbrt-unprod rem-exp-log sqr-pow
distribute-lft-neg-in neg-mul-1 log-prod distribute-rgt-neg-in pow-prod-down neg-log log-pow
Counts
4 → 87
Calls
4 calls:
2.0ms
(exp (- (* (atan2 x.im x.re) y.im)))
10.0ms
(* (pow (hypot x.re x.im) y.re) (exp (- (* (atan2 x.im x.re) y.im))))
3.0ms
(* (atan2 x.im x.re) y.im)
6.0ms
(log (* (pow (hypot x.re x.im) y.re) (exp (- (* (atan2 x.im x.re) y.im)))))

series305.0ms

Counts
4 → 12
Calls
4 calls:
28.0ms
(exp (- (* (atan2 x.im x.re) y.im)))
117.0ms
(* (pow (hypot x.re x.im) y.re) (exp (- (* (atan2 x.im x.re) y.im))))
15.0ms
(* (atan2 x.im x.re) y.im)
144.0ms
(log (* (pow (hypot x.re x.im) y.re) (exp (- (* (atan2 x.im x.re) y.im)))))

simplify38.0ms

Algorithm
egg-herbie
Counts
99 → 99
Iterations

Useful iterations: 2 (31.0ms)

IterNodesCost
0283630
11089559
25001546

prune347.0ms

Pruning

5 alts after pruning (4 fresh and 1 done)

Merged error: 2.2b

regimes141.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
02413
12813
22813

end0.0ms

sample3.1s

Algorithm
intervals
Results
1.2s2064×body1280valid
700.0ms7997×body80valid
570.0ms1433×body640valid
182.0ms673×body320valid
63.0ms349×body160valid