Details

Time bar (total: 9.6s)

sample452.0ms

Algorithm
intervals
Results
54.0ms71×body1280valid
30.0ms256×body80valid
20.0ms40×body640valid
10.0ms29×body320valid
2.0msbody160valid
2.0msbody2560valid

simplify41.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune25.0ms

Filtered
1 candidates to 1 candidates (0.0%)
Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 32.0b

Counts
2 → 2

localize33.0ms

Local error

Found 4 expressions with local error:

1.1b
(* (atan2 x.im x.re) y.re)
28.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.6b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite21.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt
pow1 add-cube-cbrt *-un-lft-identity
add-exp-log sqrt-prod add-cbrt-cube
sqrt-div 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 → 56
Calls
4 calls:
3.0ms
(* (atan2 x.im x.re) y.re)
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
8.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series283.0ms

Counts
4 → 12
Calls
4 calls:
17.0ms
(* (atan2 x.im x.re) y.re)
45.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
43.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
178.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify73.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (13.0ms)

IterNodesCost
0194425
1496388
21117386
32390386
45002386

prune439.0ms

Filtered
68 candidates to 54 candidates (20.6%)
Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New61768
Fresh101
Picked101
Done000
Total63770

Merged error: 19.7b

Counts
70 → 7

localize31.0ms

Local error

Found 4 expressions with local error:

28.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.6b
(sin (+ (* (log (* (* (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im))))) (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite37.0ms

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt
sqrt-prod
pow1 add-cube-cbrt *-un-lft-identity
sqrt-div
add-exp-log add-cbrt-cube add-log-exp
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
sin-sum
Counts
4 → 53
Calls
4 calls:
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
25.0ms
(sin (+ (* (log (* (* (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im))))) (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))

series288.0ms

Counts
4 → 12
Calls
4 calls:
42.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
44.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
43.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
158.0ms
(sin (+ (* (log (* (* (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im))))) (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))

simplify64.0ms

Algorithm
egg-herbie
Counts
65 → 65
Iterations

Useful iterations: 4 (58.0ms)

IterNodesCost
0148607
1303551
2643551
31810551
45001548

prune624.0ms

Filtered
65 candidates to 55 candidates (15.4%)
Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New65065
Fresh066
Picked011
Done000
Total65772

Merged error: 19.7b

Counts
72 → 7

localize31.0ms

Local error

Found 4 expressions with local error:

28.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.6b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.6b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.6b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite23.0ms

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

series510.0ms

Counts
4 → 12
Calls
4 calls:
42.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
156.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
157.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
155.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify161.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 4 (52.0ms)

IterNodesCost
0142553
1288487
2611487
31512487
44748486
55001486

prune385.0ms

Filtered
51 candidates to 48 candidates (5.9%)
Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New50151
Fresh055
Picked011
Done011
Total50858

Merged error: 19.7b

Counts
58 → 8

localize30.0ms

Local error

Found 4 expressions with local error:

12.7b
(cbrt (pow (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))) 3))
28.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.6b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite20.0ms

Algorithm
rewrite-expression-head
Rules
12×cbrt-prod
11×add-sqr-sqrt
add-cube-cbrt *-un-lft-identity
pow1 sqrt-prod
add-exp-log sqrt-div add-cbrt-cube add-log-exp
unpow-prod-down cube-prod
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
cube-mult sin-sum pow1/3 unpow3 rem-cbrt-cube sqr-pow
Counts
4 → 59
Calls
4 calls:
5.0ms
(cbrt (pow (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))) 3))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series400.0ms

Counts
4 → 12
Calls
4 calls:
157.0ms
(cbrt (pow (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))) 3))
44.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
42.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
157.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify151.0ms

Algorithm
egg-herbie
Counts
71 → 71
Iterations

Useful iterations: 4 (143.0ms)

IterNodesCost
0191725
1493717
21262717
34720717
45001647

prune400.0ms

Filtered
71 candidates to 54 candidates (23.9%)
Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New70171
Fresh055
Picked011
Done022
Total70979

Merged error: 19.7b

Counts
79 → 9

regimes526.0ms

Accuracy

63% (5.1b remaining)

Error of 24.6b against oracle of 19.5b and baseline of 33.3b

bsearch315.0ms

Steps
ItersRangePoint
9
6.247741763499922e-65
1.783555370542413e-59
6.71890239690567e-65
10
-0.00010039535931347623
-1.4806861344246088e-18
-1.5779631307095852e-18

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05469
15469

end0.0ms

sample4.3s

Algorithm
intervals
Results
1.7s2270×body1280valid
878.0ms7983×body80valid
712.0ms1405×body640valid
208.0ms595×body320valid
61.0ms35×body2560valid
58.0ms252×body160valid

Profiling

Loading profile data...