Details

Time bar (total: 2.4m)

sample4.0s

Algorithm
intervals
Results
3.8s1008×body10240exit
67.0ms256×body80valid

simplify335.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
334.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))))

prune31.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0.3b

localize36.0ms

Local error

Found 4 expressions with local error:

21.4b
(cos (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
0.3b
(* y.re (log (hypot x.re x.im)))
0.2b
(* (atan2 x.im x.re) y.re)
0.2b
(* (atan2 x.im x.re) y.im)

rewrite33.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
cos-sum log-pow fma-udef
Counts
4 → 81
Calls
4 calls:
Slowest
13.0ms
(* (atan2 x.im x.re) y.re)
8.0ms
(* y.re (log (hypot x.re x.im)))
6.0ms
(* (atan2 x.im x.re) y.im)
5.0ms
(cos (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))

series341.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
219.0ms
(cos (fma y.im (log (hypot x.re x.im)) (* (atan2 x.im x.re) y.re)))
80.0ms
(* y.re (log (hypot x.re x.im)))
25.0ms
(* (atan2 x.im x.re) y.im)
17.0ms
(* (atan2 x.im x.re) y.re)

simplify1.7s

Counts
48 → 93
Calls
48 calls:
Slowest
302.0ms
(- 1 (+ (* y.im (* (atan2 x.im x.re) (* y.re (log x.im)))) (* 1/2 (* (pow y.im 2) (pow (log x.im) 2)))))
285.0ms
(* (* (* (atan2 x.im x.re) (atan2 x.im x.re)) (atan2 x.im x.re)) (* (* y.im y.im) y.im))
260.0ms
(* (* (* (atan2 x.im x.re) (atan2 x.im x.re)) (atan2 x.im x.re)) (* (* y.re y.re) y.re))
252.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))))
143.0ms
(* -1 (* y.re (log (/ -1 x.re))))

prune1.6s

Pruning

2 alts after pruning (1 fresh and 1 done)

Merged error: 0.3b

localize53.0ms

Local error

Found 4 expressions with local error:

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

rewrite58.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
expm1-log1p-u sqrt-div insert-posit16 log1p-expm1-u add-log-exp
sqrt-pow1 pow1/2 associate-*r* log-pow
rem-sqrt-square flip3-+ flip-+ hypot-def
cos-sum pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
Counts
4 → 73
Calls
4 calls:
Slowest
23.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
20.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im)
7.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series423.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
187.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.im)
65.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
51.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify2.4s

Counts
37 → 85
Calls
37 calls:
Slowest
454.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.im y.im) y.im))
349.0ms
(sqrt (+ (pow (* x.re x.re) 3) (pow (* x.im x.im) 3)))
309.0ms
(sqrt (+ (pow (* x.re x.re) 3) (pow (* x.im x.im) 3)))
309.0ms
(sqrt (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))))
305.0ms
(sqrt (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))))

prune1.5s

Pruning

2 alts after pruning (1 fresh and 1 done)

Merged error: 0.0b

localize34.0ms

Local error

Found 4 expressions with local error:

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

rewrite32.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
expm1-log1p-u insert-posit16 log1p-expm1-u
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-- fma-neg diff-log prod-diff flip-+ hypot-def flip--
Counts
4 → 81
Calls
4 calls:
Slowest
10.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
8.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)))
6.0ms
(* (atan2 x.im x.re) y.im)

series369.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
157.0ms
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
140.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
55.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
17.0ms
(* (atan2 x.im x.re) y.im)

simplify2.3s

Counts
42 → 93
Calls
42 calls:
Slowest
433.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))
317.0ms
(sqrt (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))))
317.0ms
(sqrt (+ (pow (* x.re x.re) 3) (pow (* x.im x.im) 3)))
280.0ms
(* (* (* (atan2 x.im x.re) (atan2 x.im x.re)) (atan2 x.im x.re)) (* (* y.im y.im) y.im))
200.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

1 alts after pruning (1 fresh and 0 done)

Merged error: 0b

localize30.0ms

Local error

Found 3 expressions with local error:

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

rewrite26.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
expm1-log1p-u insert-posit16 log1p-expm1-u
pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
sub-neg flip3-- fma-neg diff-log prod-diff log-pow flip--
Counts
3 → 60
Calls
3 calls:
Slowest
11.0ms
(* (log (hypot x.re x.im)) y.re)
8.0ms
(- (* (log (hypot x.re x.im)) y.re) (* (atan2 x.im x.re) y.im))
6.0ms
(* (atan2 x.im x.re) y.im)

series325.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
179.0ms
(- (* (log (hypot x.re x.im)) y.re) (* (atan2 x.im x.re) y.im))
129.0ms
(* (log (hypot x.re x.im)) y.re)
17.0ms
(* (atan2 x.im x.re) y.im)

simplify1.5s

Counts
31 → 69
Calls
31 calls:
Slowest
314.0ms
(* (* (* (atan2 x.im x.re) (atan2 x.im x.re)) (atan2 x.im x.re)) (* (* y.im y.im) y.im))
302.0ms
(* (* (* (log (hypot x.re x.im)) (log (hypot x.re x.im))) (log (hypot x.re x.im))) (* (* y.re y.re) y.re))
191.0ms
(/ (exp (* (log (hypot x.re x.im)) y.re)) (exp (* (atan2 x.im x.re) y.im)))
158.0ms
(- (+ (* y.re (log (/ -1 x.re))) (* y.im (atan2 x.im x.re))))
124.0ms
(* -1 (* y.re (log (/ 1 x.re))))

prune1.0s

Pruning

1 alts after pruning (0 fresh and 1 done)

Merged error: 0b

end0.0ms

sample2.1m

Algorithm
intervals
Results
2.0m30118×body10240exit
3.1s8000×body80valid