Details

Time bar (total: 6.1s)

sample29.0ms

Algorithm
intervals
Results
16.0ms269×body80valid

simplify13.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
0217
1407
2567
3767
4907
5947
6947

prune7.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 26.0b

localize9.0ms

Local error

Found 3 expressions with local error:

0.0b
(+ (* y.re y.re) (* y.im y.im))
0.7b
(- (* x.im y.re) (* x.re y.im))
25.6b
(/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im)))

rewrite20.0ms

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

series49.0ms

Counts
3 → 9
Calls
3 calls:
6.0ms
(+ (* y.re y.re) (* y.im y.im))
12.0ms
(- (* x.im y.re) (* x.re y.im))
32.0ms
(/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im)))

simplify40.0ms

Algorithm
egg-herbie
Counts
73 → 73
Iterations

Useful iterations: 2 (33.0ms)

IterNodesCost
0316555
11343496
25001481

prune553.0ms

Pruning

7 alts after pruning (6 fresh and 1 done)

Merged error: 14.0b

localize11.0ms

Local error

Found 4 expressions with local error:

0.0b
(hypot y.re y.im)
0.2b
(* (/ 1 (* (hypot y.re y.im) 1)) (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)))
0.7b
(- (* x.im y.re) (* x.re y.im))
17.3b
(/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))

rewrite38.0ms

Algorithm
rewrite-expression-head
Rules
68×add-exp-log
32×prod-exp
27×add-cbrt-cube
26×add-sqr-sqrt
23×div-exp
22×times-frac
21×add-cube-cbrt *-un-lft-identity
13×associate-*r*
12×1-exp
cbrt-undiv cbrt-unprod
associate-*l*
pow1 rec-exp add-log-exp
expm1-log1p-u log1p-expm1-u
associate-/r* div-inv associate-/l*
flip3-- flip-- associate-/l/ unswap-sqr
frac-times sub-neg hypot-udef frac-2neg fma-neg diff-log div-sub associate-*r/ prod-diff pow-prod-down associate-*l/ clear-num *-commutative
Counts
4 → 120
Calls
4 calls:
0.0ms
(hypot y.re y.im)
24.0ms
(* (/ 1 (* (hypot y.re y.im) 1)) (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)))
3.0ms
(- (* x.im y.re) (* x.re y.im))
7.0ms
(/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))

series104.0ms

Counts
4 → 12
Calls
4 calls:
7.0ms
(hypot y.re y.im)
42.0ms
(* (/ 1 (* (hypot y.re y.im) 1)) (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)))
11.0ms
(- (* x.im y.re) (* x.re y.im))
44.0ms
(/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))

simplify59.0ms

Algorithm
egg-herbie
Counts
132 → 132
Iterations

Useful iterations: 2 (48.0ms)

IterNodesCost
05461122
12249931
25002929

prune907.0ms

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 7.3b

localize10.0ms

Local error

Found 4 expressions with local error:

0.0b
(hypot y.re y.im)
0.1b
(/ (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)) (hypot y.re y.im))
0.7b
(- (* x.im y.re) (* x.re y.im))
17.3b
(/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))

rewrite24.0ms

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

series108.0ms

Counts
4 → 12
Calls
4 calls:
7.0ms
(hypot y.re y.im)
45.0ms
(/ (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)) (hypot y.re y.im))
11.0ms
(- (* x.im y.re) (* x.re y.im))
44.0ms
(/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))

simplify51.0ms

Algorithm
egg-herbie
Counts
143 → 143
Iterations

Useful iterations: 2 (37.0ms)

IterNodesCost
04601435
116691331
250011322

prune1.2s

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 7.3b

localize13.0ms

Local error

Found 4 expressions with local error:

0.3b
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)))
0.3b
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))))
0.7b
(- (* x.im y.re) (* x.re y.im))
17.3b
(/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))

rewrite101.0ms

Algorithm
rewrite-expression-head
Rules
35×add-sqr-sqrt
26×times-frac
25×add-cube-cbrt *-un-lft-identity
20×add-exp-log associate-*l* add-cbrt-cube
16×sqrt-prod
14×associate-*r*
11×pow1
10×sqrt-div
prod-exp cbrt-unprod
frac-times associate-*r/ add-log-exp
expm1-log1p-u pow-prod-down associate-*l/ log1p-expm1-u div-inv unswap-sqr
cbrt-undiv div-exp associate-/r* associate-/l*
flip3-- *-commutative flip-- associate-/l/
sub-neg frac-2neg fma-neg diff-log div-sub prod-diff clear-num
Counts
4 → 129
Calls
4 calls:
26.0ms
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)))
61.0ms
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))))
3.0ms
(- (* x.im y.re) (* x.re y.im))
7.0ms
(/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))

series163.0ms

Counts
4 → 12
Calls
4 calls:
66.0ms
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)))
42.0ms
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))))
11.0ms
(- (* x.im y.re) (* x.re y.im))
44.0ms
(/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))

simplify78.0ms

Algorithm
egg-herbie
Counts
141 → 141
Iterations

Useful iterations: 2 (64.0ms)

IterNodesCost
05271554
126661314
250011267

prune1.2s

Pruning

11 alts after pruning (9 fresh and 2 done)

Merged error: 7.3b

regimes675.0ms

Accuracy

31.6% (8.7b remaining)

Error of 13.6b against oracle of 4.9b and baseline of 17.7b

bsearch1.0ms

simplify3.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04642
15242
25742
36842
47042
57042

end0.0ms

sample741.0ms

Algorithm
intervals
Results
525.0ms8464×body80valid