Details

Time bar (total: 41.3s)

sample32.0ms

Algorithm
intervals
Results
23.0ms274×body80valid

simplify14.0ms

Calls
1 calls:
Slowest
14.0ms
(/ (+ (* x.re y.re) (* x.im y.im)) (+ (* y.re y.re) (* y.im y.im)))

prune20.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 25.7b

localize32.0ms

Local error

Found 2 expressions with local error:

25.7b
(/ (fma x.re y.re (* x.im y.im)) (fma y.im y.im (* y.re y.re)))
0.0b
(fma y.im y.im (* y.re y.re))

rewrite9.0ms

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt *-un-lft-identity add-cube-cbrt
times-frac
add-cbrt-cube add-exp-log
associate-/r* associate-/l*
expm1-log1p-u pow1 insert-posit16 log1p-expm1-u add-log-exp
cbrt-undiv clear-num frac-2neg div-exp fma-udef div-inv
Calls
2 calls:
Slowest
8.0ms
(/ (fma x.re y.re (* x.im y.im)) (fma y.im y.im (* y.re y.re)))
0.0ms
(fma y.im y.im (* y.re y.re))

series198.0ms

Calls
2 calls:
Slowest
137.0ms
(/ (fma x.re y.re (* x.im y.im)) (fma y.im y.im (* y.re y.re)))
61.0ms
(fma y.im y.im (* y.re y.re))

simplify1.2s

Calls
31 calls:
Slowest
421.0ms
(/ (* (* (fma x.re y.re (* x.im y.im)) (fma x.re y.re (* x.im y.im))) (fma x.re y.re (* x.im y.im))) (* (* (fma y.im y.im (* y.re y.re)) (fma y.im y.im (* y.re y.re))) (fma y.im y.im (* y.re y.re))))
51.0ms
(/ (* (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma x.re y.re (* x.im y.im)))) (sqrt (fma y.im y.im (* y.re y.re))))
51.0ms
(/ (* (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma x.re y.re (* x.im y.im)))) (* (cbrt (fma y.im y.im (* y.re y.re))) (cbrt (fma y.im y.im (* y.re y.re)))))
48.0ms
(/ (sqrt (fma x.re y.re (* x.im y.im))) (* (cbrt (fma y.im y.im (* y.re y.re))) (cbrt (fma y.im y.im (* y.re y.re)))))
41.0ms
(/ (sqrt (fma x.re y.re (* x.im y.im))) (sqrt (fma y.im y.im (* y.re y.re))))

prune660.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 25.3b

localize22.0ms

Local error

Found 4 expressions with local error:

27.5b
(sqrt (fma y.im y.im (* y.re y.re)))
27.5b
(sqrt (fma y.im y.im (* y.re y.re)))
16.1b
(/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re))))
0.0b
(/ (/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re)))) (sqrt (fma y.im y.im (* y.re y.re))))

rewrite27.0ms

Algorithm
rewrite-expression-head
Rules
276×times-frac
160×add-sqr-sqrt
158×*-un-lft-identity add-cube-cbrt
150×sqrt-prod
25×associate-/l*
12×associate-/r*
11×add-cbrt-cube add-exp-log
div-inv
pow1
expm1-log1p-u cbrt-undiv div-exp insert-posit16 log1p-expm1-u add-log-exp
rem-sqrt-square clear-num frac-2neg sqrt-pow1 pow1/2 fma-udef hypot-def
associate-/l/
Calls
4 calls:
Slowest
9.0ms
(/ (/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re)))) (sqrt (fma y.im y.im (* y.re y.re))))
5.0ms
(/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re))))
1.0ms
(sqrt (fma y.im y.im (* y.re y.re)))
1.0ms
(sqrt (fma y.im y.im (* y.re y.re)))

series440.0ms

Calls
4 calls:
Slowest
160.0ms
(/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re))))
142.0ms
(/ (/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re)))) (sqrt (fma y.im y.im (* y.re y.re))))
73.0ms
(sqrt (fma y.im y.im (* y.re y.re)))
64.0ms
(sqrt (fma y.im y.im (* y.re y.re)))

simplify17.2s

Calls
364 calls:
Slowest
407.0ms
(/ (* (* (/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re)))) (/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re))))) (/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re))))) (* (* (sqrt (fma y.im y.im (* y.re y.re))) (sqrt (fma y.im y.im (* y.re y.re)))) (sqrt (fma y.im y.im (* y.re y.re)))))
284.0ms
(/ (* (* (fma x.re y.re (* x.im y.im)) (fma x.re y.re (* x.im y.im))) (fma x.re y.re (* x.im y.im))) (* (* (sqrt (fma y.im y.im (* y.re y.re))) (sqrt (fma y.im y.im (* y.re y.re)))) (sqrt (fma y.im y.im (* y.re y.re)))))
188.0ms
(/ (/ (* (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma x.re y.re (* x.im y.im)))) (* (cbrt (sqrt (fma y.im y.im (* y.re y.re)))) (cbrt (sqrt (fma y.im y.im (* y.re y.re)))))) (sqrt (sqrt (fma y.im y.im (* y.re y.re)))))
187.0ms
(/ (/ (* (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma x.re y.re (* x.im y.im)))) (* (cbrt (sqrt (fma y.im y.im (* y.re y.re)))) (cbrt (sqrt (fma y.im y.im (* y.re y.re)))))) (* (cbrt (sqrt (fma y.im y.im (* y.re y.re)))) (cbrt (sqrt (fma y.im y.im (* y.re y.re))))))
176.0ms
(/ (/ (* (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma x.re y.re (* x.im y.im)))) (* (cbrt (sqrt (fma y.im y.im (* y.re y.re)))) (cbrt (sqrt (fma y.im y.im (* y.re y.re)))))) (sqrt (* (cbrt (fma y.im y.im (* y.re y.re))) (cbrt (fma y.im y.im (* y.re y.re))))))

prune3.8s

Pruning

7 alts after pruning (7 fresh and 0 done)

Merged error: 14.8b

localize51.0ms

Local error

Found 4 expressions with local error:

16.1b
(/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re))
0.0b
(/ (/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re)) (hypot y.im y.re))
0.0b
(hypot y.im y.re)
0.0b
(hypot y.im y.re)

rewrite27.0ms

Algorithm
rewrite-expression-head
Rules
84×times-frac
54×add-sqr-sqrt *-un-lft-identity add-cube-cbrt
16×associate-/l*
11×add-cbrt-cube add-exp-log
associate-/r* div-inv
expm1-log1p-u pow1 cbrt-undiv div-exp insert-posit16 log1p-expm1-u add-log-exp
hypot-udef clear-num frac-2neg
associate-/l/
Calls
4 calls:
Slowest
15.0ms
(/ (/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re)) (hypot y.im y.re))
9.0ms
(/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re))
0.0ms
(hypot y.im y.re)
0.0ms
(hypot y.im y.re)

series461.0ms

Calls
4 calls:
Slowest
182.0ms
(/ (/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re)) (hypot y.im y.re))
156.0ms
(/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re))
62.0ms
(hypot y.im y.re)
61.0ms
(hypot y.im y.re)

simplify5.8s

Calls
135 calls:
Slowest
524.0ms
(/ (* (* (/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re)) (/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re))) (/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re))) (* (* (hypot y.im y.re) (hypot y.im y.re)) (hypot y.im y.re)))
427.0ms
(/ (/ (sqrt (fma x.re y.re (* x.im y.im))) (sqrt (hypot y.im y.re))) (sqrt (hypot y.im y.re)))
295.0ms
(/ (* (* (fma x.re y.re (* x.im y.im)) (fma x.re y.re (* x.im y.im))) (fma x.re y.re (* x.im y.im))) (* (* (hypot y.im y.re) (hypot y.im y.re)) (hypot y.im y.re)))
204.0ms
(/ (/ (* (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma x.re y.re (* x.im y.im)))) (* (cbrt (hypot y.im y.re)) (cbrt (hypot y.im y.re)))) (* (cbrt (hypot y.im y.re)) (cbrt (hypot y.im y.re))))
173.0ms
(/ (/ (* (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma x.re y.re (* x.im y.im)))) (* (cbrt (hypot y.im y.re)) (cbrt (hypot y.im y.re)))) (sqrt (hypot y.im y.re)))

prune1.7s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 6.2b

localize41.0ms

Local error

Found 4 expressions with local error:

16.1b
(/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re))
0.0b
(/ (/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re)) (hypot y.im y.re))
0.0b
(hypot y.im y.re)
0.0b
(hypot y.im y.re)

rewrite19.0ms

Algorithm
rewrite-expression-head
Rules
84×times-frac
54×add-sqr-sqrt *-un-lft-identity add-cube-cbrt
16×associate-/l*
11×add-cbrt-cube add-exp-log
associate-/r* div-inv
expm1-log1p-u pow1 cbrt-undiv div-exp insert-posit16 log1p-expm1-u add-log-exp
hypot-udef clear-num frac-2neg
associate-/l/
Calls
4 calls:
Slowest
12.0ms
(/ (/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re)) (hypot y.im y.re))
4.0ms
(/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re))
0.0ms
(hypot y.im y.re)
0.0ms
(hypot y.im y.re)

series440.0ms

Calls
4 calls:
Slowest
159.0ms
(/ (/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re)) (hypot y.im y.re))
150.0ms
(/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re))
66.0ms
(hypot y.im y.re)
64.0ms
(hypot y.im y.re)

simplify5.3s

Calls
135 calls:
Slowest
439.0ms
(/ (* (* (/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re)) (/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re))) (/ (fma x.re y.re (* x.im y.im)) (hypot y.im y.re))) (* (* (hypot y.im y.re) (hypot y.im y.re)) (hypot y.im y.re)))
225.0ms
(/ (* (* (fma x.re y.re (* x.im y.im)) (fma x.re y.re (* x.im y.im))) (fma x.re y.re (* x.im y.im))) (* (* (hypot y.im y.re) (hypot y.im y.re)) (hypot y.im y.re)))
193.0ms
(/ (/ (* (* (fma x.re y.re (* x.im y.im)) (fma x.re y.re (* x.im y.im))) (fma x.re y.re (* x.im y.im))) (* (* (hypot y.im y.re) (hypot y.im y.re)) (hypot y.im y.re))) (* (* (hypot y.im y.re) (hypot y.im y.re)) (hypot y.im y.re)))
181.0ms
(/ (/ (* (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma x.re y.re (* x.im y.im)))) (* (cbrt (hypot y.im y.re)) (cbrt (hypot y.im y.re)))) (* (cbrt (hypot y.im y.re)) (cbrt (hypot y.im y.re))))
178.0ms
(/ (/ (* (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma x.re y.re (* x.im y.im)))) (* (cbrt (hypot y.im y.re)) (cbrt (hypot y.im y.re)))) (sqrt (hypot y.im y.re)))

prune1.8s

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 6.2b

regimes440.0ms

Accuracy

36.5% (6.7b remaining)

Error of 12.5b against oracle of 5.8b and baseline of 16.4b

bsearch120.0ms

end0.0ms

sample1.5s

Algorithm
intervals
Results
1.2s8446×body80valid