Details

Time bar (total: 3.9m)

sample6.9s

Algorithm
intervals
Results
6.6s1421×body10240exit
91.0ms256×body80valid

simplify386.0ms

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

prune25.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 0.3b

localize49.0ms

Local error

Found 4 expressions with local error:

36.0b
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
0.3b
(* (atan2 x.im x.re) y.im)
0.2b
(* (atan2 x.im x.re) y.re)
0.2b
(* y.re (log (hypot x.re x.im)))

rewrite24.0ms

Algorithm
rewrite-expression-head
Rules
18×add-sqr-sqrt
12×*-un-lft-identity add-cube-cbrt
11×pow1
10×add-cbrt-cube associate-*r* add-exp-log
associate-*l*
log-prod
expm1-log1p-u insert-posit16 log1p-expm1-u add-log-exp
distribute-rgt-in distribute-lft-in pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
sin-sum log-pow fma-udef
Counts
4 → 81
Calls
4 calls:
Slowest
6.0ms
(* y.re (log (hypot x.re x.im)))
6.0ms
(* (atan2 x.im x.re) y.re)
5.0ms
(* (atan2 x.im x.re) y.im)
4.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))

series340.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
169.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
108.0ms
(* y.re (log (hypot x.re x.im)))
33.0ms
(* (atan2 x.im x.re) y.re)
30.0ms
(* (atan2 x.im x.re) y.im)

simplify3.5s

Counts
100 → 93
Calls
100 calls:
Slowest
385.0ms
(* (* (* (atan2 x.im x.re) (atan2 x.im x.re)) (atan2 x.im x.re)) (* (* y.re y.re) y.re))
365.0ms
(* (* (* (atan2 x.im x.re) (atan2 x.im x.re)) (atan2 x.im x.re)) (* (* y.im y.im) y.im))
343.0ms
(* (* (* y.re y.re) y.re) (* (* (log (hypot x.re x.im)) (log (hypot x.re x.im))) (log (hypot x.re x.im))))
239.0ms
(* (* (* (atan2 x.im x.re) y.im) (* (atan2 x.im x.re) y.im)) (* (atan2 x.im x.re) y.im))
237.0ms
(* (* (* y.re (log (hypot x.re x.im))) (* y.re (log (hypot x.re x.im)))) (* y.re (log (hypot x.re x.im))))

prune1.7s

Pruning

4 alts after pruning (3 fresh and 1 done)

Merged error: 0.3b

localize76.0ms

Local error

Found 4 expressions with local error:

36.0b
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
36.0b
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
36.0b
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
0.7b
(cbrt (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re))))

rewrite26.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt *-un-lft-identity add-cube-cbrt
expm1-log1p-u pow1 add-cbrt-cube add-exp-log insert-posit16 log1p-expm1-u add-log-exp
cbrt-prod sin-sum fma-udef
pow1/3
Counts
4 → 47
Calls
4 calls:
Slowest
12.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
5.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
5.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
2.0ms
(cbrt (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re))))

series772.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
256.0ms
(cbrt (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re))))
188.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
175.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
152.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))

simplify3.4s

Counts
64 → 59
Calls
64 calls:
Slowest
316.0ms
(pow (sin (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ 1 x.re))))) 1/3)
273.0ms
(pow (sin (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ -1 x.re))))) 1/3)
261.0ms
(- (+ (* 1/3 (* y.im (* (exp (* 1/3 (- (log (/ 1 (pow (atan2 x.im x.re) 2))) (* 2 (log y.re))))) (log x.im)))) (exp (* 1/3 (+ (log (atan2 x.im x.re)) (log y.re))))) (* 7/81 (* (pow y.im 2) (* (pow (log x.im) 2) (exp (* 1/3 (+ (log (atan2 x.im x.re)) (log y.re))))))))
134.0ms
(sin (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ -1 x.re)))))
133.0ms
(sin (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ -1 x.re)))))

prune1.0s

Pruning

5 alts after pruning (3 fresh and 2 done)

Merged error: 0.3b

localize87.0ms

Local error

Found 4 expressions with local error:

36.0b
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
36.0b
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
36.0b
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
13.5b
(cbrt (* (* (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re))) (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))) (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))))

rewrite47.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt expm1-log1p-u pow1 *-un-lft-identity add-cbrt-cube add-exp-log add-cube-cbrt insert-posit16 log1p-expm1-u add-log-exp
sin-sum fma-udef
cbrt-prod cbrt-div pow1/3 pow3 associate-*l/ rem-cbrt-cube sin-mult
Counts
4 → 47
Calls
4 calls:
Slowest
33.0ms
(cbrt (* (* (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re))) (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))) (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))))
5.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
5.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
5.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))

series659.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
195.0ms
(cbrt (* (* (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re))) (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))) (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))))
159.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
155.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
150.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))

simplify3.7s

Counts
62 → 59
Calls
62 calls:
Slowest
198.0ms
(cbrt (* (- (cos (- (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)) (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))) (cos (+ (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)) (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re))))) (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))))
156.0ms
(sin (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ -1 x.re)))))
141.0ms
(sin (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ -1 x.re)))))
138.0ms
(sqrt (cbrt (* (* (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re))) (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))) (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re))))))
135.0ms
(sin (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ -1 x.re)))))

prune1.5s

Pruning

6 alts after pruning (3 fresh and 3 done)

Merged error: 0.3b

localize58.0ms

Local error

Found 4 expressions with local error:

36.0b
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
36.0b
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
36.0b
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
6.9b
(cbrt (* (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re))) (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))))

rewrite12.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt expm1-log1p-u pow1 *-un-lft-identity add-cbrt-cube add-exp-log add-cube-cbrt insert-posit16 log1p-expm1-u add-log-exp
sin-sum fma-udef
cbrt-prod cbrt-div pow1/3 sin-mult
Counts
4 → 46
Calls
4 calls:
Slowest
5.0ms
(cbrt (* (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re))) (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))))
2.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
2.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
2.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))

series723.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
316.0ms
(cbrt (* (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re))) (sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))))
157.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
130.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
120.0ms
(sin (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))

simplify3.1s

Counts
62 → 58
Calls
62 calls:
Slowest
324.0ms
(- (+ (exp (* 1/3 (+ (log (pow (atan2 x.im x.re) 2)) (* 2 (log y.re))))) (* 2/3 (* y.im (* (log x.im) (exp (* 1/3 (- (log (/ 1 (atan2 x.im x.re))) (log y.re)))))))) (* 20/81 (* (pow y.im 2) (* (exp (* 1/3 (+ (log (pow (atan2 x.im x.re) 2)) (* 2 (log y.re))))) (pow (log x.im) 2)))))
282.0ms
(pow (pow (sin (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ -1 x.re))))) 2) 1/3)
178.0ms
(sin (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ -1 x.re)))))
174.0ms
(pow (pow (sin (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ 1 x.re))))) 2) 1/3)
152.0ms
(sin (- (* (atan2 x.im x.re) y.re) (* y.im (log (/ -1 x.re)))))

prune1.1s

Pruning

8 alts after pruning (4 fresh and 4 done)

Merged error: 0.3b

regimes403.0ms

Accuracy

0% (0.0b remaining)

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

bsearch4.0ms

end0.0ms

sample3.4m

Algorithm
intervals
Results
3.3m47463×body10240exit
4.0s8000×body80valid