Details

Time bar (total: 5.5s)

sample29.0ms

Algorithm
intervals
Results
16.0ms267×body80valid

simplify5.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
0177
1217
2217

prune6.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 27.7b

localize10.0ms

Local error

Found 3 expressions with local error:

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

rewrite18.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
flip3-+ flip-+
pow1 expm1-log1p-u associate-/r* log1p-expm1-u associate-/l*
+-commutative fma-def sum-log associate-/r/ associate-/l/
cbrt-undiv frac-2neg div-exp clear-num div-inv
Counts
3 → 61
Calls
3 calls:
3.0ms
(+ (* y.re y.re) (* y.im y.im))
2.0ms
(+ (* x.re y.re) (* x.im y.im))
11.0ms
(/ (+ (* x.re y.re) (* x.im y.im)) (+ (* y.re y.re) (* y.im y.im)))

series49.0ms

Counts
3 → 9
Calls
3 calls:
5.0ms
(+ (* y.re y.re) (* y.im y.im))
11.0ms
(+ (* x.re y.re) (* x.im y.im))
33.0ms
(/ (+ (* x.re y.re) (* x.im y.im)) (+ (* y.re y.re) (* y.im y.im)))

simplify133.0ms

Algorithm
egg-herbie
Counts
70 → 70
Iterations

Useful iterations: 2 (30.0ms)

IterNodesCost
0290532
11199475
24872462
35001462

prune555.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 17.9b

localize11.0ms

Local error

Found 4 expressions with local error:

0.0b
(hypot y.re y.im)
0.0b
(hypot y.re y.im)
0.3b
(* (/ 1 (* (hypot y.re y.im) 1)) (/ (fma x.re y.re (* x.im y.im)) (* (hypot y.re y.im) 1)))
17.5b
(/ (fma x.re y.re (* x.im y.im)) (* (hypot y.re y.im) 1))

rewrite30.0ms

Algorithm
rewrite-expression-head
Rules
155×add-exp-log
86×prod-exp
57×div-exp
45×add-cbrt-cube
35×1-exp
16×cbrt-unprod
14×cbrt-undiv
12×add-sqr-sqrt rec-exp
10×add-cube-cbrt *-un-lft-identity
times-frac
associate-*r* associate-*l*
pow1
expm1-log1p-u log1p-expm1-u add-log-exp
div-inv associate-/l*
hypot-udef
frac-times frac-2neg associate-*r/ pow-prod-down associate-*l/ clear-num associate-/r* *-commutative unswap-sqr
Counts
4 → 122
Calls
4 calls:
0.0ms
(hypot y.re y.im)
0.0ms
(hypot y.re y.im)
21.0ms
(* (/ 1 (* (hypot y.re y.im) 1)) (/ (fma x.re y.re (* x.im y.im)) (* (hypot y.re y.im) 1)))
3.0ms
(/ (fma x.re y.re (* x.im y.im)) (* (hypot y.re y.im) 1))

series98.0ms

Counts
4 → 12
Calls
4 calls:
7.0ms
(hypot y.re y.im)
7.0ms
(hypot y.re y.im)
41.0ms
(* (/ 1 (* (hypot y.re y.im) 1)) (/ (fma x.re y.re (* x.im y.im)) (* (hypot y.re y.im) 1)))
43.0ms
(/ (fma x.re y.re (* x.im y.im)) (* (hypot y.re y.im) 1))

simplify44.0ms

Algorithm
egg-herbie
Counts
134 → 134
Iterations

Useful iterations: 2 (33.0ms)

IterNodesCost
04791092
11588808
25001806

prune747.0ms

Pruning

11 alts after pruning (10 fresh and 1 done)

Merged error: 7.6b

localize10.0ms

Local error

Found 4 expressions with local error:

0.0b
(hypot y.re y.im)
0.0b
(hypot y.re y.im)
0.1b
(/ (/ (fma x.re y.re (* x.im y.im)) (hypot y.re y.im)) (* (hypot y.re y.im) 1))
17.5b
(/ (fma x.re y.re (* x.im y.im)) (hypot y.re y.im))

rewrite12.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
pow1 expm1-log1p-u prod-exp associate-/r* log1p-expm1-u div-inv add-log-exp
hypot-udef frac-2neg 1-exp clear-num cbrt-unprod
associate-/l/
Counts
4 → 99
Calls
4 calls:
0.0ms
(hypot y.re y.im)
0.0ms
(hypot y.re y.im)
6.0ms
(/ (/ (fma x.re y.re (* x.im y.im)) (hypot y.re y.im)) (* (hypot y.re y.im) 1))
2.0ms
(/ (fma x.re y.re (* x.im y.im)) (hypot y.re y.im))

series100.0ms

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

simplify75.0ms

Algorithm
egg-herbie
Counts
111 → 111
Iterations

Useful iterations: 3 (66.0ms)

IterNodesCost
0301780
11076689
23153689
35001681

prune854.0ms

Pruning

11 alts after pruning (9 fresh and 2 done)

Merged error: 7.5b

localize14.0ms

Local error

Found 4 expressions with local error:

0.1b
(sqrt (/ 1 (* (hypot y.re y.im) 1)))
0.3b
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (/ (* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (fma x.re y.re (* x.im y.im))) (hypot y.re y.im)))
8.6b
(/ (* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (fma x.re y.re (* x.im y.im))) (hypot y.re y.im))
9.3b
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (fma x.re y.re (* x.im y.im)))

rewrite93.0ms

Algorithm
rewrite-expression-head
Rules
26×add-sqr-sqrt
23×sqrt-prod
20×add-exp-log associate-*l* add-cbrt-cube
17×add-cube-cbrt *-un-lft-identity
15×times-frac
12×pow1
10×associate-*r*
prod-exp cbrt-unprod
sqrt-div div-inv
cbrt-undiv expm1-log1p-u sqrt-pow1 div-exp log1p-expm1-u add-log-exp unswap-sqr
pow-prod-down associate-*l/ associate-/r*
pow-flip *-commutative fma-udef
distribute-rgt-in frac-times rem-sqrt-square frac-2neg distribute-lft-in pow1/2 associate-*r/ clear-num associate-/l/ associate-/l* inv-pow
Counts
4 → 117
Calls
4 calls:
4.0ms
(sqrt (/ 1 (* (hypot y.re y.im) 1)))
52.0ms
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (/ (* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (fma x.re y.re (* x.im y.im))) (hypot y.re y.im)))
14.0ms
(/ (* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (fma x.re y.re (* x.im y.im))) (hypot y.re y.im))
18.0ms
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (fma x.re y.re (* x.im y.im)))

series161.0ms

Counts
4 → 12
Calls
4 calls:
10.0ms
(sqrt (/ 1 (* (hypot y.re y.im) 1)))
41.0ms
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (/ (* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (fma x.re y.re (* x.im y.im))) (hypot y.re y.im)))
64.0ms
(/ (* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (fma x.re y.re (* x.im y.im))) (hypot y.re y.im))
46.0ms
(* (sqrt (/ 1 (* (hypot y.re y.im) 1))) (fma x.re y.re (* x.im y.im)))

simplify66.0ms

Algorithm
egg-herbie
Counts
129 → 129
Iterations

Useful iterations: 2 (54.0ms)

IterNodesCost
04701373
122271115
250011054

prune1.1s

Pruning

11 alts after pruning (8 fresh and 3 done)

Merged error: 7.5b

regimes474.0ms

Accuracy

40.1% (6.6b remaining)

Error of 12.7b against oracle of 6.1b and baseline of 17.1b

bsearch40.0ms

Steps
ItersRangePoint
8
1.2064922412751594e+141
5.462432632406119e+143
8.609811038902364e+142
7
-4.759549154242407e+125
-1.6091628437142707e+124
-3.264789729519792e+125

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02714
13014
23014

end0.0ms

sample741.0ms

Algorithm
intervals
Results
519.0ms8442×body80valid