Details

Time bar (total: 13.7s)

sample57.0ms

Algorithm
intervals
Results
39.0ms267×body80valid

simplify29.0ms

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

prune25.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 22.7b

localize18.0ms

Local error

Found 2 expressions with local error:

22.7b
(/ (fma x.re y.re (* x.im y.im)) (fma y.im y.im (* y.re y.re)))
0.5b
(fma x.re y.re (* x.im y.im))

rewrite5.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
Counts
2 → 41
Calls
2 calls:
Slowest
4.0ms
(/ (fma x.re y.re (* x.im y.im)) (fma y.im y.im (* y.re y.re)))
0.0ms
(fma x.re y.re (* x.im y.im))

series194.0ms

Counts
2 → 6
Calls
2 calls:
Slowest
134.0ms
(/ (fma x.re y.re (* x.im y.im)) (fma y.im y.im (* y.re y.re)))
60.0ms
(fma x.re y.re (* x.im y.im))

simplify1.1s

Counts
31 → 47
Calls
31 calls:
Slowest
422.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))))
72.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)))))
47.0ms
(- (log (fma x.re y.re (* x.im y.im))) (log (fma y.im y.im (* y.re y.re))))
40.0ms
(/ (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma y.im y.im (* y.re y.re))))
35.0ms
(/ (fma x.re y.re (* x.im y.im)) (cbrt (fma y.im y.im (* y.re y.re))))

prune498.0ms

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 22.3b

localize30.0ms

Local error

Found 4 expressions with local error:

29.2b
(sqrt (fma y.im y.im (* y.re y.re)))
29.2b
(sqrt (fma y.im y.im (* y.re y.re)))
14.2b
(/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re))))
0.5b
(fma x.re y.re (* x.im y.im))

rewrite15.0ms

Algorithm
rewrite-expression-head
Rules
23×add-sqr-sqrt
21×*-un-lft-identity add-cube-cbrt
18×times-frac sqrt-prod
pow1 associate-/r* add-cbrt-cube add-exp-log
expm1-log1p-u insert-posit16 log1p-expm1-u add-log-exp
fma-udef associate-/l*
rem-sqrt-square sqrt-pow1 pow1/2 hypot-def
cbrt-undiv clear-num frac-2neg div-exp div-inv
Counts
4 → 87
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))))
2.0ms
(sqrt (fma y.im y.im (* y.re y.re)))
2.0ms
(sqrt (fma y.im y.im (* y.re y.re)))
0.0ms
(fma x.re y.re (* x.im y.im))

series390.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
176.0ms
(/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re))))
75.0ms
(fma x.re y.re (* x.im y.im))
70.0ms
(sqrt (fma y.im y.im (* y.re y.re)))
69.0ms
(sqrt (fma y.im y.im (* y.re y.re)))

simplify2.0s

Counts
68 → 99
Calls
68 calls:
Slowest
303.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)))))
77.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))))))
65.0ms
(/ (* (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma x.re y.re (* x.im y.im)))) (sqrt 1))
65.0ms
(/ (* (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma x.re y.re (* x.im y.im)))) (sqrt (* (cbrt (fma y.im y.im (* y.re y.re))) (cbrt (fma y.im y.im (* y.re y.re))))))
48.0ms
(/ (cbrt (fma x.re y.re (* x.im y.im))) (sqrt (cbrt (fma y.im y.im (* y.re y.re)))))

prune1.3s

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 18.8b

localize16.0ms

Local error

Found 2 expressions with local error:

22.7b
(/ (fma y.im x.im (* y.re x.re)) (fma y.im y.im (* y.re y.re)))
0.3b
(fma y.im x.im (* y.re x.re))

rewrite5.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
Counts
2 → 41
Calls
2 calls:
Slowest
4.0ms
(/ (fma y.im x.im (* y.re x.re)) (fma y.im y.im (* y.re y.re)))
0.0ms
(fma y.im x.im (* y.re x.re))

series204.0ms

Counts
2 → 6
Calls
2 calls:
Slowest
132.0ms
(/ (fma y.im x.im (* y.re x.re)) (fma y.im y.im (* y.re y.re)))
71.0ms
(fma y.im x.im (* y.re x.re))

simplify1.2s

Counts
31 → 47
Calls
31 calls:
Slowest
422.0ms
(/ (* (* (fma y.im x.im (* y.re x.re)) (fma y.im x.im (* y.re x.re))) (fma y.im x.im (* y.re x.re))) (* (* (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))))
67.0ms
(/ (* (cbrt (fma y.im x.im (* y.re x.re))) (cbrt (fma y.im x.im (* y.re x.re)))) (* (cbrt (fma y.im y.im (* y.re y.re))) (cbrt (fma y.im y.im (* y.re y.re)))))
54.0ms
(/ (sqrt (fma y.im x.im (* y.re x.re))) (* (cbrt (fma y.im y.im (* y.re y.re))) (cbrt (fma y.im y.im (* y.re y.re)))))
46.0ms
(- (log (fma y.im x.im (* y.re x.re))) (log (fma y.im y.im (* y.re y.re))))
44.0ms
(/ (sqrt (fma y.im x.im (* y.re x.re))) (sqrt (fma y.im y.im (* y.re y.re))))

prune607.0ms

Pruning

9 alts after pruning (8 fresh and 1 done)

Merged error: 18.8b

localize24.0ms

Local error

Found 4 expressions with local error:

29.2b
(sqrt (fma y.im y.im (* y.re y.re)))
29.2b
(sqrt (fma y.im y.im (* y.re y.re)))
14.2b
(/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re))))
0.5b
(fma x.re y.re (* x.im y.im))

rewrite15.0ms

Algorithm
rewrite-expression-head
Rules
23×add-sqr-sqrt
21×*-un-lft-identity add-cube-cbrt
18×times-frac sqrt-prod
pow1 associate-/r* add-cbrt-cube add-exp-log
expm1-log1p-u insert-posit16 log1p-expm1-u add-log-exp
fma-udef associate-/l*
rem-sqrt-square sqrt-pow1 pow1/2 hypot-def
cbrt-undiv clear-num frac-2neg div-exp div-inv
Counts
4 → 87
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))))
2.0ms
(sqrt (fma y.im y.im (* y.re y.re)))
1.0ms
(sqrt (fma y.im y.im (* y.re y.re)))
0.0ms
(fma x.re y.re (* x.im y.im))

series356.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
164.0ms
(/ (fma x.re y.re (* x.im y.im)) (sqrt (fma y.im y.im (* y.re y.re))))
93.0ms
(sqrt (fma y.im y.im (* y.re y.re)))
55.0ms
(sqrt (fma y.im y.im (* y.re y.re)))
43.0ms
(fma x.re y.re (* x.im y.im))

simplify1.9s

Counts
68 → 99
Calls
68 calls:
Slowest
266.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)))))
62.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))))))
53.0ms
(/ (* (cbrt (fma x.re y.re (* x.im y.im))) (cbrt (fma x.re y.re (* x.im y.im)))) (sqrt (sqrt (fma y.im y.im (* y.re y.re)))))
50.0ms
(/ (sqrt (fma x.re y.re (* x.im y.im))) (sqrt (sqrt (fma y.im y.im (* y.re y.re)))))
50.0ms
(- (log (fma x.re y.re (* x.im y.im))) (log (sqrt (fma y.im y.im (* y.re y.re)))))

prune1.5s

Pruning

9 alts after pruning (7 fresh and 2 done)

Merged error: 18.8b

regimes329.0ms

Accuracy

4% (2.7b remaining)

Error of 25.6b against oracle of 22.8b and baseline of 25.7b

bsearch95.0ms

end0.0ms

sample1.8s

Algorithm
intervals
Results
1.5s8464×body80valid