Details

Time bar (total: 2.3m)

sample3.8s

Algorithm
intervals
Results
3.6s849×body10240exit
71.0ms256×body80valid

simplify240.0ms

Calls
1 calls:
Slowest
240.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))))

prune11.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 31.8b

localize69.0ms

Local error

Found 4 expressions with local error:

30.8b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
30.8b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
23.7b
(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)

rewrite44.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt
*-un-lft-identity add-cube-cbrt
sqrt-prod
pow1 associate-*l*
add-cbrt-cube sqrt-div add-exp-log insert-posit16 add-log-exp
pow1/2
rem-sqrt-square flip3-+ log-pow flip-+
cos-sum *-commutative
Calls
4 calls:
Slowest
21.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
8.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
7.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series305.0ms

Calls
4 calls:
Slowest
140.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
82.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
43.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
39.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify1.1s

Calls
27 calls:
Slowest
187.0ms
(sqrt (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))))
184.0ms
(sqrt (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))))
108.0ms
(sqrt (+ (pow (* x.re x.re) 3) (pow (* x.im x.im) 3)))
102.0ms
(cos (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ -1 x.re)))))
102.0ms
(* -1 (* y.re (log (/ -1 x.re))))

prune1.2s

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 18.5b

localize4.0ms

Local error

Found 4 expressions with local error:

30.8b
(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))

rewrite17.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt associate-*l*
*-un-lft-identity add-cube-cbrt
add-log-exp
pow1
add-cbrt-cube add-exp-log insert-posit16
sqrt-prod
pow1/2 sqrt-div log-pow *-commutative
rem-sqrt-square sub-neg flip3-+ flip3-- diff-log flip-+ flip--
Calls
4 calls:
Slowest
5.0ms
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
4.0ms
(* (atan2 x.im x.re) y.im)
4.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
2.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series225.0ms

Calls
4 calls:
Slowest
112.0ms
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
70.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
25.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
19.0ms
(* (atan2 x.im x.re) y.im)

simplify936.0ms

Calls
23 calls:
Slowest
193.0ms
(sqrt (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))))
154.0ms
(- (+ (* y.re (log (/ -1 x.re))) (* y.im (atan2 x.im x.re))))
114.0ms
(/ (exp (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)) (exp (* (atan2 x.im x.re) y.im)))
107.0ms
(* -1 (* y.re (log (/ -1 x.re))))
92.0ms
(* -1 (* y.re (log (/ 1 x.re))))

prune1.0s

Pruning

3 alts after pruning (2 fresh and 1 done)

Merged error: 0b

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

rewrite24.0ms

Algorithm
rewrite-expression-head
Rules
associate-*l*
add-sqr-sqrt *-un-lft-identity add-cube-cbrt add-log-exp
pow1
add-cbrt-cube add-exp-log insert-posit16
*-commutative
sub-neg flip3-- diff-log log-pow flip--
Calls
3 calls:
Slowest
11.0ms
(- (* (log (- x.re)) y.re) (* (atan2 x.im x.re) y.im))
7.0ms
(* (log (- x.re)) y.re)
6.0ms
(* (atan2 x.im x.re) y.im)

series239.0ms

Calls
3 calls:
Slowest
128.0ms
(- (* (log (- x.re)) y.re) (* (atan2 x.im x.re) y.im))
92.0ms
(* (log (- x.re)) y.re)
19.0ms
(* (atan2 x.im x.re) y.im)

simplify653.0ms

Calls
14 calls:
Slowest
119.0ms
(- (* y.re (log -1)) (+ (* y.im (atan2 x.im x.re)) (* y.re (log (/ 1 x.re)))))
113.0ms
(- (+ (* y.re (log (/ -1 x.re))) (* y.im (atan2 x.im x.re))))
107.0ms
(* -1 (* y.re (log (/ -1 x.re))))
99.0ms
(- (+ (* y.re (log -1)) (* y.re (log x.re))) (* y.im (atan2 x.im x.re)))
80.0ms
(/ (exp (* (log (- x.re)) y.re)) (exp (* (atan2 x.im x.re) y.im)))

prune595.0ms

Pruning

3 alts after pruning (1 fresh and 2 done)

Merged error: 0b

localize17.0ms

Local error

Found 3 expressions with local error:

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

rewrite7.0ms

Algorithm
rewrite-expression-head
Rules
associate-*r*
add-sqr-sqrt *-un-lft-identity add-cube-cbrt add-log-exp
pow1 add-cbrt-cube add-exp-log insert-posit16
*-commutative
sub-neg flip3-- diff-log flip--
Calls
3 calls:
Slowest
4.0ms
(- (* y.re (log x.im)) (* y.im (atan2 x.im x.re)))
2.0ms
(* y.im (atan2 x.im x.re))
1.0ms
(* y.re (log x.im))

series140.0ms

Calls
3 calls:
Slowest
75.0ms
(- (* y.re (log x.im)) (* y.im (atan2 x.im x.re)))
51.0ms
(* y.re (log x.im))
14.0ms
(* y.im (atan2 x.im x.re))

simplify719.0ms

Calls
16 calls:
Slowest
264.0ms
(- (* y.re (log -1)) (+ (* y.re (log (/ -1 x.im))) (* y.im (atan2 x.im x.re))))
131.0ms
(* y.re (- (log -1) (log (/ -1 x.im))))
96.0ms
(/ (exp (* y.re (log x.im))) (exp (* y.im (atan2 x.im x.re))))
79.0ms
(* -1 (* y.re (log (/ 1 x.im))))
61.0ms
(- (+ (* y.re (log (/ 1 x.im))) (* y.im (atan2 x.im x.re))))

prune594.0ms

Pruning

3 alts after pruning (0 fresh and 3 done)

Merged error: 0b

regimes286.0ms

Accuracy

96.2% (0.3b remaining)

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

bsearch2.4s

end0.0ms

sample2.0m

Algorithm
intervals
Results
2.0m29755×body10240exit
3.0s8000×body80valid