Details

Time bar (total: 10.5s)

sample20.0ms

Algorithm
intervals
Results
10.0ms277×body80valid

simplify45.0ms

Counts
1 → 1
Iterations

Useful iterations: 1 (2.0ms)

IterNodesCost
01115
12114
24014
35614
47614
58814
69214
done9214

prune5.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 27.1b

localize9.0ms

Local error

Found 3 expressions with local error:

0.0b
(fma y.re y.re (* y.im y.im))
0.8b
(- (* x.im y.re) (* x.re y.im))
26.6b
(/ (- (* x.im y.re) (* x.re y.im)) (fma y.re y.re (* y.im y.im)))

rewrite12.0ms

Algorithm
rewrite-expression-head
Rules
11×add-sqr-sqrt add-cube-cbrt *-un-lft-identity
times-frac
add-exp-log add-cbrt-cube add-log-exp
pow1 expm1-log1p-u associate-/r* log1p-expm1-u associate-/l*
flip3-- flip-- associate-/l/
cbrt-undiv sub-neg frac-2neg fma-neg diff-log div-sub div-exp prod-diff clear-num fma-udef div-inv
Counts
3 → 58
Calls
3 calls:
0.0ms
(fma y.re y.re (* y.im y.im))
3.0ms
(- (* x.im y.re) (* x.re y.im))
7.0ms
(/ (- (* x.im y.re) (* x.re y.im)) (fma y.re y.re (* y.im y.im)))

series155.0ms

Counts
3 → 9
Calls
3 calls:
36.0ms
(fma y.re y.re (* y.im y.im))
34.0ms
(- (* x.im y.re) (* x.re y.im))
85.0ms
(/ (- (* x.im y.re) (* x.re y.im)) (fma y.re y.re (* y.im y.im)))

simplify1.5s

Counts
67 → 67
Iterations

Useful iterations: done (1.5s)

IterNodesCost
0971039
12241011
2784892
33587892
done5000890

prune202.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 16.0b

localize15.0ms

Local error

Found 4 expressions with local error:

0.0b
(/ 1 (hypot y.im y.re))
0.2b
(* (/ 1 (hypot y.im y.re)) (/ (fma x.im y.re (- (* y.im x.re))) (hypot y.im y.re)))
0.5b
(fma x.im y.re (- (* y.im x.re)))
15.5b
(/ (fma x.im y.re (- (* y.im x.re))) (hypot y.im y.re))

rewrite23.0ms

Algorithm
rewrite-expression-head
Rules
51×add-sqr-sqrt
43×times-frac
36×*-un-lft-identity
34×add-cube-cbrt
32×add-exp-log
20×add-cbrt-cube
13×associate-*r* associate-*l*
11×div-exp
prod-exp
pow1
cbrt-undiv associate-/r* associate-/l* unswap-sqr
expm1-log1p-u cbrt-unprod log1p-expm1-u div-inv add-log-exp
rec-exp 1-exp
frac-2neg clear-num
frac-times pow-flip associate-*r/ pow-prod-down associate-*l/ *-commutative fma-udef inv-pow
Counts
4 → 130
Calls
4 calls:
2.0ms
(/ 1 (hypot y.im y.re))
14.0ms
(* (/ 1 (hypot y.im y.re)) (/ (fma x.im y.re (- (* y.im x.re))) (hypot y.im y.re)))
0.0ms
(fma x.im y.re (- (* y.im x.re)))
2.0ms
(/ (fma x.im y.re (- (* y.im x.re))) (hypot y.im y.re))

series415.0ms

Counts
4 → 12
Calls
4 calls:
54.0ms
(/ 1 (hypot y.im y.re))
179.0ms
(* (/ 1 (hypot y.im y.re)) (/ (fma x.im y.re (- (* y.im x.re))) (hypot y.im y.re)))
47.0ms
(fma x.im y.re (- (* y.im x.re)))
135.0ms
(/ (fma x.im y.re (- (* y.im x.re))) (hypot y.im y.re))

simplify2.3s

Counts
142 → 142
Iterations

Useful iterations: done (2.3s)

IterNodesCost
01552322
13792140
211361874
346811874
done50001873

prune351.0ms

Pruning

12 alts after pruning (11 fresh and 1 done)

Merged error: 6.1b

localize10.0ms

Local error

Found 3 expressions with local error:

0.1b
(/ (/ (fma x.im y.re (- (* y.im x.re))) (hypot y.im y.re)) (hypot y.im y.re))
0.5b
(fma x.im y.re (- (* y.im x.re)))
15.5b
(/ (fma x.im y.re (- (* y.im x.re))) (hypot y.im y.re))

rewrite12.0ms

Algorithm
rewrite-expression-head
Rules
84×times-frac
53×add-sqr-sqrt add-cube-cbrt *-un-lft-identity
16×associate-/l*
10×add-exp-log add-cbrt-cube
associate-/r* div-inv
cbrt-undiv div-exp
pow1 expm1-log1p-u log1p-expm1-u add-log-exp
frac-2neg clear-num
fma-udef associate-/l/
Counts
3 → 111
Calls
3 calls:
6.0ms
(/ (/ (fma x.im y.re (- (* y.im x.re))) (hypot y.im y.re)) (hypot y.im y.re))
0.0ms
(fma x.im y.re (- (* y.im x.re)))
2.0ms
(/ (fma x.im y.re (- (* y.im x.re))) (hypot y.im y.re))

series314.0ms

Counts
3 → 9
Calls
3 calls:
134.0ms
(/ (/ (fma x.im y.re (- (* y.im x.re))) (hypot y.im y.re)) (hypot y.im y.re))
44.0ms
(fma x.im y.re (- (* y.im x.re)))
136.0ms
(/ (fma x.im y.re (- (* y.im x.re))) (hypot y.im y.re))

simplify1.4s

Counts
120 → 120
Iterations

Useful iterations: done (1.4s)

IterNodesCost
01622652
13352592
29012403
331772349
done50012347

prune341.0ms

Pruning

13 alts after pruning (11 fresh and 2 done)

Merged error: 6.1b

localize12.0ms

Local error

Found 4 expressions with local error:

0.1b
(/ (/ 1 (/ (hypot y.im y.re) (fma x.im y.re (- (* y.im x.re))))) (hypot y.im y.re))
0.3b
(/ 1 (/ (hypot y.im y.re) (fma x.im y.re (- (* y.im x.re)))))
0.5b
(fma x.im y.re (- (* y.im x.re)))
15.5b
(/ (hypot y.im y.re) (fma x.im y.re (- (* y.im x.re))))

rewrite43.0ms

Algorithm
rewrite-expression-head
Rules
480×times-frac
239×add-sqr-sqrt add-cube-cbrt *-un-lft-identity
50×associate-/l*
36×add-exp-log
23×div-inv
22×div-exp
20×add-cbrt-cube
19×associate-/r*
10×cbrt-undiv
pow1 associate-/r/
expm1-log1p-u rec-exp 1-exp log1p-expm1-u add-log-exp
frac-2neg clear-num
pow-flip fma-udef associate-/l/ inv-pow
Counts
4 → 319
Calls
4 calls:
16.0ms
(/ (/ 1 (/ (hypot y.im y.re) (fma x.im y.re (- (* y.im x.re))))) (hypot y.im y.re))
5.0ms
(/ 1 (/ (hypot y.im y.re) (fma x.im y.re (- (* y.im x.re)))))
0.0ms
(fma x.im y.re (- (* y.im x.re)))
2.0ms
(/ (hypot y.im y.re) (fma x.im y.re (- (* y.im x.re))))

series477.0ms

Counts
4 → 12
Calls
4 calls:
178.0ms
(/ (/ 1 (/ (hypot y.im y.re) (fma x.im y.re (- (* y.im x.re))))) (hypot y.im y.re))
161.0ms
(/ 1 (/ (hypot y.im y.re) (fma x.im y.re (- (* y.im x.re)))))
43.0ms
(fma x.im y.re (- (* y.im x.re)))
95.0ms
(/ (hypot y.im y.re) (fma x.im y.re (- (* y.im x.re))))

simplify1.5s

Counts
331 → 331
Iterations

Useful iterations: done (1.5s)

IterNodesCost
04599296
110798209
225047631
done50017589

prune584.0ms

Pruning

9 alts after pruning (7 fresh and 2 done)

Merged error: 2.6b

regimes170.0ms

Accuracy

29.3% (10.4b remaining)

Error of 12.9b against oracle of 2.5b and baseline of 17.2b

bsearch85.0ms

Steps
ItersRangePoint
9
1.7730613794721092e+90
2.146195974309642e+97
9.660964437171677e+96
10
-9.740554122961985e+194
-6.1643187501909224e+178
-3.8916390277007425e+179

simplify3.0ms

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01934
12434
22634
done2634

end0.0ms

sample531.0ms

Algorithm
intervals
Results
311.0ms8494×body80valid