Details

Time bar (total: 2.3m)

sample4.4s

Algorithm
intervals
Results
4.2s945×body10240exit
79.0ms256×body80valid

simplify174.0ms

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

prune23.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 31.1b

localize77.0ms

Local error

Found 4 expressions with local error:

29.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
24.4b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
0.3b
(* (atan2 x.im x.re) y.im)

rewrite41.0ms

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

series282.0ms

Calls
4 calls:
Slowest
186.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
44.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
21.0ms
(* (atan2 x.im x.re) y.im)

simplify790.0ms

Calls
27 calls:
Slowest
205.0ms
(sqrt (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))))
150.0ms
(sqrt (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))))
99.0ms
(sqrt (+ (pow (* x.re x.re) 3) (pow (* x.im x.im) 3)))
86.0ms
(cos (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ -1 x.re)))))
70.0ms
(sqrt (+ (pow (* x.re x.re) 3) (pow (* x.im x.im) 3)))

prune1.3s

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 17.7b

localize8.0ms

Local error

Found 4 expressions with local error:

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

rewrite31.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
11.0ms
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
8.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
6.0ms
(* (atan2 x.im x.re) y.im)
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series247.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))
90.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
33.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
12.0ms
(* (atan2 x.im x.re) y.im)

simplify946.0ms

Calls
23 calls:
Slowest
226.0ms
(sqrt (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))))
139.0ms
(* -1 (* y.re (log (/ -1 x.re))))
129.0ms
(- (+ (* y.re (log (/ -1 x.re))) (* y.im (atan2 x.im x.re))))
108.0ms
(* -1 (* y.re (log (/ 1 x.re))))
73.0ms
(sqrt (+ (pow (* x.re x.re) 3) (pow (* x.im x.im) 3)))

prune1.0s

Pruning

2 alts after pruning (1 fresh and 1 done)

Merged error: 0b

localize30.0ms

Local error

Found 3 expressions with local error:

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

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

series222.0ms

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

simplify754.0ms

Calls
14 calls:
Slowest
185.0ms
(- (* y.re (log -1)) (+ (* y.im (atan2 x.im x.re)) (* y.re (log (/ 1 x.re)))))
184.0ms
(- (+ (* y.re (log (/ -1 x.re))) (* y.im (atan2 x.im x.re))))
98.0ms
(- (+ (* y.re (log -1)) (* y.re (log x.re))) (* y.im (atan2 x.im x.re)))
86.0ms
(* -1 (* y.re (log (/ -1 x.re))))
81.0ms
(* y.re (- (log -1) (log (/ 1 x.re))))

prune634.0ms

Pruning

2 alts after pruning (0 fresh and 2 done)

Merged error: 0b

regimes221.0ms

Accuracy

96% (0.3b remaining)

Error of 0.4b against oracle of 0.1b and baseline of 7.6b

bsearch2.6s

end23.0ms

sample2.1m

Algorithm
intervals
Results
2.0m29979×body10240exit
4.1s8000×body80valid