Details

Time bar (total: 2.4m)

sample4.0s

Algorithm
intervals
Results
3.7s937×body10240exit
70.0ms256×body80valid

simplify449.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
448.0ms
(* (exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))) (cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))))

prune19.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 31.6b

localize54.0ms

Local error

Found 4 expressions with local error:

30.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
30.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
23.0b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
0.3b
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)

rewrite57.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt
10×pow1
*-un-lft-identity add-cube-cbrt
add-cbrt-cube associate-*l* add-exp-log sqrt-prod
sqrt-div insert-posit16 add-log-exp
sqrt-pow1 pow1/2 associate-*r* log-pow
rem-sqrt-square flip3-+ flip-+
cos-sum pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
Counts
4 → 63
Calls
4 calls:
Slowest
17.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
16.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
15.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series452.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
219.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
120.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
57.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
56.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify2.1s

Counts
37 → 75
Calls
37 calls:
Slowest
451.0ms
(* (* (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) (log (sqrt (+ (* x.re x.re) (* x.im x.im))))) (log (sqrt (+ (* x.re x.re) (* x.im x.im))))) (* (* y.re y.re) y.re))
335.0ms
(sqrt (+ (pow (* x.re x.re) 3) (pow (* x.im x.im) 3)))
324.0ms
(sqrt (+ (pow (* x.re x.re) 3) (pow (* x.im x.im) 3)))
232.0ms
(sqrt (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))))
206.0ms
(sqrt (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))))

prune1.4s

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 18.5b

localize35.0ms

Local error

Found 4 expressions with local error:

30.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
0.3b
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
0.2b
(* (atan2 x.im x.re) y.im)
0.0b
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))

rewrite49.0ms

Algorithm
rewrite-expression-head
Rules
14×add-sqr-sqrt
11×pow1
*-un-lft-identity associate-*l* add-cube-cbrt
add-cbrt-cube add-exp-log
associate-*r* add-log-exp
insert-posit16
log-pow sqrt-prod
sqrt-pow1 pow1/2 sqrt-div pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
rem-sqrt-square sub-neg flip3-+ flip3-- diff-log flip-+ flip--
Counts
4 → 70
Calls
4 calls:
Slowest
18.0ms
(* (atan2 x.im x.re) y.im)
15.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
9.0ms
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series401.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
219.0ms
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
117.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
42.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
22.0ms
(* (atan2 x.im x.re) y.im)

simplify2.2s

Counts
39 → 82
Calls
39 calls:
Slowest
449.0ms
(* (* (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) (log (sqrt (+ (* x.re x.re) (* x.im x.im))))) (log (sqrt (+ (* x.re x.re) (* x.im x.im))))) (* (* y.re y.re) y.re))
313.0ms
(* (* (* (atan2 x.im x.re) (atan2 x.im x.re)) (atan2 x.im x.re)) (* (* y.im y.im) y.im))
289.0ms
(sqrt (+ (pow (* x.re x.re) 3) (pow (* x.im x.im) 3)))
277.0ms
(sqrt (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))))
239.0ms
(/ (exp (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)) (exp (* (atan2 x.im x.re) y.im)))

prune1.3s

Pruning

3 alts after pruning (2 fresh and 1 done)

Merged error: 0.0b

localize45.0ms

Local error

Found 3 expressions with local error:

0.3b
(* (log (- x.re)) y.re)
0.2b
(* (atan2 x.im x.re) y.im)
0.0b
(- (* (log (- x.re)) y.re) (* (atan2 x.im x.re) y.im))

rewrite20.0ms

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

series279.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
155.0ms
(- (* (log (- x.re)) y.re) (* (atan2 x.im x.re) y.im))
106.0ms
(* (log (- x.re)) y.re)
18.0ms
(* (atan2 x.im x.re) y.im)

simplify1.5s

Counts
28 → 61
Calls
28 calls:
Slowest
332.0ms
(* (* (* (log (- x.re)) (log (- x.re))) (log (- x.re))) (* (* y.re y.re) y.re))
290.0ms
(* (* (* (atan2 x.im x.re) (atan2 x.im x.re)) (atan2 x.im x.re)) (* (* y.im y.im) y.im))
184.0ms
(- (* y.re (log -1)) (+ (* y.im (atan2 x.im x.re)) (* y.re (log (/ 1 x.re)))))
180.0ms
(/ (exp (* (log (- x.re)) y.re)) (exp (* (atan2 x.im x.re) y.im)))
128.0ms
(- (+ (* y.re (log (/ -1 x.re))) (* y.im (atan2 x.im x.re))))

prune799.0ms

Pruning

3 alts after pruning (1 fresh and 2 done)

Merged error: 0.0b

localize34.0ms

Local error

Found 3 expressions with local error:

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

rewrite24.0ms

Algorithm
rewrite-expression-head
Rules
15×add-sqr-sqrt
12×log-prod
11×*-un-lft-identity add-cube-cbrt
pow1
add-cbrt-cube associate-*r* add-exp-log
distribute-rgt-in distribute-lft-in associate-*l* associate--l+
add-log-exp
insert-posit16
pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
sub-neg flip3-- diff-log log-pow flip--
Counts
3 → 64
Calls
3 calls:
Slowest
9.0ms
(* (atan2 x.im x.re) y.im)
7.0ms
(- (* y.re (log x.im)) (* (atan2 x.im x.re) y.im))
6.0ms
(* y.re (log x.im))

series223.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
140.0ms
(- (* y.re (log x.im)) (* (atan2 x.im x.re) y.im))
65.0ms
(* y.re (log x.im))
18.0ms
(* (atan2 x.im x.re) y.im)

simplify1.5s

Counts
42 → 73
Calls
42 calls:
Slowest
269.0ms
(* (* (* (atan2 x.im x.re) (atan2 x.im x.re)) (atan2 x.im x.re)) (* (* y.im y.im) y.im))
267.0ms
(* (* (* y.re y.re) y.re) (* (* (log x.im) (log x.im)) (log x.im)))
252.0ms
(- (* y.re (log -1)) (+ (* y.re (log (/ -1 x.im))) (* y.im (atan2 x.im x.re))))
184.0ms
(/ (exp (* y.re (log x.im))) (exp (* (atan2 x.im x.re) y.im)))
153.0ms
(* y.re (- (log -1) (log (/ -1 x.im))))

prune920.0ms

Pruning

3 alts after pruning (0 fresh and 3 done)

Merged error: 0.0b

regimes279.0ms

Accuracy

97% (0.2b remaining)

Error of 0.3b against oracle of 0.0b and baseline of 7.5b

bsearch1.8s

end0.0ms

sample2.1m

Algorithm
intervals
Results
2.0m30412×body10240exit
3.9s8000×body80valid