Details

Time bar (total: 4.2s)

sample20.0ms

Algorithm
intervals
Results
9.0ms269×body80valid

simplify13.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
0217
1407
2567
3767
4907
5947
6947

prune2.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)))

rewrite17.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))
3.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)))

series155.0ms

Counts
3 → 9
Calls
3 calls:
28.0ms
(+ (* y.re y.re) (* y.im y.im))
40.0ms
(- (* x.im y.re) (* x.re y.im))
87.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

prune203.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))

rewrite39.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))

series387.0ms

Counts
4 → 12
Calls
4 calls:
48.0ms
(hypot y.re y.im)
184.0ms
(* (/ 1 (* (hypot y.re y.im) 1)) (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)))
35.0ms
(- (* x.im y.re) (* x.re y.im))
120.0ms
(/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))

simplify57.0ms

Algorithm
egg-herbie
Counts
132 → 132
Iterations

Useful iterations: 2 (47.0ms)

IterNodesCost
05461126
12250931
25003929

prune510.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) 1))
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))

rewrite23.0ms

Algorithm
rewrite-expression-head
Rules
40×times-frac
26×add-sqr-sqrt add-cube-cbrt *-un-lft-identity
23×add-exp-log
18×add-cbrt-cube
16×associate-/l*
10×div-exp
cbrt-undiv
add-log-exp
pow1 expm1-log1p-u prod-exp associate-/r* log1p-expm1-u div-inv
div-sub associate-/l/
flip3-- frac-2neg 1-exp clear-num flip-- cbrt-unprod
sub-neg hypot-udef fma-neg diff-log prod-diff
Counts
4 → 109
Calls
4 calls:
0.0ms
(hypot y.re y.im)
10.0ms
(/ (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)) (* (hypot y.re y.im) 1))
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))

series318.0ms

Counts
4 → 12
Calls
4 calls:
50.0ms
(hypot y.re y.im)
116.0ms
(/ (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)) (* (hypot y.re y.im) 1))
39.0ms
(- (* x.im y.re) (* x.re y.im))
113.0ms
(/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))

simplify47.0ms

Algorithm
egg-herbie
Counts
121 → 121
Iterations

Useful iterations: 2 (37.0ms)

IterNodesCost
0432989
11705876
25001875

prune326.0ms

Pruning

11 alts after pruning (9 fresh and 2 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))

rewrite103.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:
27.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))

series608.0ms

Counts
4 → 12
Calls
4 calls:
267.0ms
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)))
186.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))))
40.0ms
(- (* x.im y.re) (* x.re y.im))
114.0ms
(/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))

simplify79.0ms

Algorithm
egg-herbie
Counts
141 → 141
Iterations

Useful iterations: 2 (65.0ms)

IterNodesCost
05271554
126661314
250011267

prune403.0ms

Pruning

10 alts after pruning (8 fresh and 2 done)

Merged error: 7.3b

regimes248.0ms

Accuracy

31.8% (8.5b remaining)

Error of 13.4b against oracle of 4.9b and baseline of 17.4b

bsearch3.0ms

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03935
14335
24335

end0.0ms

sample509.0ms

Algorithm
intervals
Results
292.0ms8464×body80valid