Details

Time bar (total: 31.0s)

sample676.0ms

Algorithm
intervals
Results
52.0ms61×body1280valid
34.0ms257×body80valid
15.0ms30×body640valid
6.0ms15×body320valid
2.0msbody160valid

simplify2.9s

Counts
1 → 1
Iterations
IterNodes
done5001
5808
4197
382
253
131
019

prune7.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 29.3b

localize89.0ms

Local error

Found 4 expressions with local error:

1.3b
(* (atan2 x.im x.re) y.im)
25.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
25.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.9b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite56.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt
pow1 *-un-lft-identity add-cube-cbrt
add-cbrt-cube add-exp-log sqrt-prod
sqrt-div insert-posit16 add-log-exp
associate-*r* associate-*l*
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
sin-sum pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
Counts
4 → 60
Calls
4 calls:
5.0ms
(* (atan2 x.im x.re) y.im)
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
36.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series294.0ms

Counts
4 → 12
Calls
4 calls:
18.0ms
(* (atan2 x.im x.re) y.im)
50.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
44.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
182.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify2.2s

Counts
72 → 72
Iterations
IterNodes
done5001
42127
3906
2432
1207
0102

prune729.0ms

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 15.2b

localize115.0ms

Local error

Found 4 expressions with local error:

25.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.9b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.9b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.9b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite85.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt
pow1 *-un-lft-identity add-cube-cbrt
add-cbrt-cube add-exp-log insert-posit16 add-log-exp
sin-sum sqrt-prod
sqrt-div
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
Counts
4 → 43
Calls
4 calls:
12.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
16.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
24.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series616.0ms

Counts
4 → 12
Calls
4 calls:
44.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
184.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
183.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
205.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify2.9s

Counts
55 → 55
Iterations
IterNodes
done5000
53634
41189
3531
2270
1146
073

prune755.0ms

Pruning

11 alts after pruning (9 fresh and 2 done)

Merged error: 15.2b

localize87.0ms

Local error

Found 4 expressions with local error:

25.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.9b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.9b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.9b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite71.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt
pow1 *-un-lft-identity add-cube-cbrt
add-cbrt-cube add-exp-log insert-posit16 add-log-exp
sin-sum sqrt-prod
sqrt-div
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
Counts
4 → 43
Calls
4 calls:
12.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
18.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
15.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
24.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series662.0ms

Counts
4 → 12
Calls
4 calls:
42.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
232.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
195.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
193.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify2.9s

Counts
55 → 55
Iterations
IterNodes
done5000
53634
41189
3531
2270
1146
073

prune674.0ms

Pruning

12 alts after pruning (9 fresh and 3 done)

Merged error: 15.2b

localize160.0ms

Local error

Found 4 expressions with local error:

31.9b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.9b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.9b
(sin (+ (* (log (posit16->real (real->posit16 (sqrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))
60.2b
(posit16->real (real->posit16 (sqrt (+ (* x.re x.re) (* x.im x.im)))))

rewrite69.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt pow1 *-un-lft-identity add-cbrt-cube add-exp-log add-cube-cbrt insert-posit16 add-log-exp
sin-sum
remove-posit16
Counts
4 → 36
Calls
4 calls:
29.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
15.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
23.0ms
(sin (+ (* (log (posit16->real (real->posit16 (sqrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))
1.0ms
(posit16->real (real->posit16 (sqrt (+ (* x.re x.re) (* x.im x.im)))))

series617.0ms

Counts
4 → 12
Calls
4 calls:
181.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
165.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
202.0ms
(sin (+ (* (log (posit16->real (real->posit16 (sqrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))
70.0ms
(posit16->real (real->posit16 (sqrt (+ (* x.re x.re) (* x.im x.im)))))

simplify3.5s

Counts
48 → 48
Iterations
IterNodes
done5011
94248
82354
71406
61087
5489
4279
3177
2122
1100
069

prune833.0ms

Pruning

11 alts after pruning (8 fresh and 3 done)

Merged error: 15.2b

regimes1.0s

Accuracy

75.7% (3.3b remaining)

Error of 22.3b against oracle of 19.0b and baseline of 32.5b

bsearch190.0ms

Steps
ItersRangePoint
9
-3.624048073274082e-307
9.672750817997472e-303
4.11803379523495e-310

simplify11.0ms

Iterations
IterNodes
done39
139
030

end0.0ms

sample8.7s

Algorithm
intervals
Results
3.5s2190×body1280valid
1.8s1392×body640valid
1.8s7957×body80valid
745.0ms590×body320valid
133.0ms247×body160valid
133.0ms56×body2560valid