Details

Time bar (total: 20.2s)

sample248.0ms

Algorithm
intervals
Results
86.0ms69×body1280valid
29.0ms252×body80valid
23.0ms45×body640valid
6.0ms16×body320valid
2.0msbody160valid

simplify440.0ms

Counts
1 → 1

prune24.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 35.1b

localize81.0ms

Local error

Found 4 expressions with local error:

1.7b
(* (atan2 x.im x.re) y.im)
30.6b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite68.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:
8.0ms
(* (atan2 x.im x.re) y.im)
33.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
12.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
11.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series381.0ms

Counts
4 → 12
Calls
4 calls:
29.0ms
(* (atan2 x.im x.re) y.im)
224.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
50.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
77.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify1.2s

Counts
68 → 68

prune551.0ms

Pruning

6 alts after pruning (6 fresh and 0 done)

Merged error: 20.1b

localize31.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)
1.7b
(* (atan2 x.im x.re) y.im)
31.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite87.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:
44.0ms
(exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im)))
22.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
7.0ms
(* (atan2 x.im x.re) y.im)
10.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series395.0ms

Counts
4 → 12
Calls
4 calls:
160.0ms
(exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im)))
150.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
35.0ms
(* (atan2 x.im x.re) y.im)
50.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify940.0ms

Counts
81 → 81

prune478.0ms

Pruning

8 alts after pruning (7 fresh and 1 done)

Merged error: 4.8b

localize25.0ms

Local error

Found 3 expressions with local error:

0.0b
(- (* (log x.re) y.re) (* (atan2 x.im x.re) y.im))
0.1b
(* (log x.re) y.re)
1.7b
(* (atan2 x.im x.re) y.im)

rewrite61.0ms

Algorithm
rewrite-expression-head
Rules
11×add-sqr-sqrt
pow1
add-exp-log add-cube-cbrt *-un-lft-identity associate-*l* add-cbrt-cube
associate-*r*
add-log-exp
pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
sub-neg flip3-- diff-log log-pow flip--
Counts
3 → 49
Calls
3 calls:
26.0ms
(- (* (log x.re) y.re) (* (atan2 x.im x.re) y.im))
17.0ms
(* (log x.re) y.re)
15.0ms
(* (atan2 x.im x.re) y.im)

series308.0ms

Counts
3 → 9
Calls
3 calls:
185.0ms
(- (* (log x.re) y.re) (* (atan2 x.im x.re) y.im))
87.0ms
(* (log x.re) y.re)
35.0ms
(* (atan2 x.im x.re) y.im)

simplify1.3s

Counts
58 → 58

prune227.0ms

Pruning

8 alts after pruning (6 fresh and 2 done)

Merged error: 4.8b

localize83.0ms

Local error

Found 4 expressions with local error:

31.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite71.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt sqrt-prod
pow1 add-cube-cbrt *-un-lft-identity sqrt-div
add-exp-log rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 add-cbrt-cube flip-+ add-log-exp
Counts
4 → 60
Calls
4 calls:
17.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
17.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
17.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
17.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series229.0ms

Counts
4 → 12
Calls
4 calls:
46.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
63.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
47.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
73.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify2.4s

Counts
72 → 72

prune744.0ms

Pruning

7 alts after pruning (5 fresh and 2 done)

Merged error: 4.7b

regimes424.0ms

Accuracy

68.7% (5.1b remaining)

Error of 8.5b against oracle of 3.4b and baseline of 19.8b

bsearch205.0ms

Steps
ItersRangePoint
9
-3.077765773438951e-304
1.66707864824975e-307
2.69463732598623e-310

simplify995.0ms

end0.0ms

sample8.2s

Algorithm
intervals
Results
2.8s2018×body1280valid
2.7s8047×body80valid
1.2s1415×body640valid
472.0ms644×body320valid
110.0ms339×body160valid