Details

Time bar (total: 8.6s)

sample418.0ms

Algorithm
intervals
Results
61.0ms64×body1280valid
49.0ms261×body80valid
23.0ms37×body640valid
9.0ms20×body320valid
3.0ms10×body160valid

simplify40.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03521
16317
29817
321717
489517
5500117

prune15.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 32.7b

localize25.0ms

Local error

Found 4 expressions with local error:

1.8b
(* (atan2 x.im x.re) y.im)
29.3b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite28.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
expm1-log1p-u sqrt-div log1p-expm1-u add-log-exp
associate-*r* associate-*l*
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+ hypot-def
cos-sum pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
Counts
4 → 66
Calls
4 calls:
3.0ms
(* (atan2 x.im x.re) y.im)
12.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series242.0ms

Counts
4 → 12
Calls
4 calls:
16.0ms
(* (atan2 x.im x.re) y.im)
143.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
36.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
47.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify81.0ms

Algorithm
egg-herbie
Counts
78 → 78
Iterations

Useful iterations: 2 (14.0ms)

IterNodesCost
0207454
1556413
21286411
32863411
45002411

prune380.0ms

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 18.6b

localize27.0ms

Local error

Found 4 expressions with local error:

1.0b
(* (atan2 x.im x.re) y.re)
1.8b
(* (atan2 x.im x.re) y.im)
29.3b
(cos (+ (* (log (* 1 (hypot x.re x.im))) y.im) (* (atan2 x.im x.re) y.re)))
29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite18.0ms

Algorithm
rewrite-expression-head
Rules
14×add-sqr-sqrt
pow1 add-cube-cbrt *-un-lft-identity
add-exp-log add-cbrt-cube
associate-*r* associate-*l*
expm1-log1p-u log1p-expm1-u add-log-exp
sqrt-prod
sqrt-div pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
rem-sqrt-square cos-sum sqrt-pow1 flip3-+ pow1/2 flip-+ hypot-def
Counts
4 → 68
Calls
4 calls:
3.0ms
(* (atan2 x.im x.re) y.re)
3.0ms
(* (atan2 x.im x.re) y.im)
7.0ms
(cos (+ (* (log (* 1 (hypot x.re x.im))) y.im) (* (atan2 x.im x.re) y.re)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series215.0ms

Counts
4 → 12
Calls
4 calls:
16.0ms
(* (atan2 x.im x.re) y.re)
16.0ms
(* (atan2 x.im x.re) y.im)
144.0ms
(cos (+ (* (log (* 1 (hypot x.re x.im))) y.im) (* (atan2 x.im x.re) y.re)))
39.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify114.0ms

Algorithm
egg-herbie
Counts
80 → 80
Iterations

Useful iterations: 2 (19.0ms)

IterNodesCost
0257400
1746356
21815355
34329355
45001355

prune388.0ms

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 2.7b

localize20.0ms

Local error

Found 4 expressions with local error:

0.3b
(* (log (* 1 (hypot x.re x.im))) y.im)
1.0b
(* (atan2 x.im x.re) y.re)
1.8b
(* (atan2 x.im x.re) y.im)
29.3b
(cos (+ (* (log (* 1 (hypot x.re x.im))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite22.0ms

Algorithm
rewrite-expression-head
Rules
16×add-sqr-sqrt
13×pow1
11×associate-*l*
10×add-exp-log add-cube-cbrt *-un-lft-identity add-cbrt-cube
associate-*r*
expm1-log1p-u pow-prod-down log1p-expm1-u add-log-exp
prod-exp *-commutative cbrt-unprod unswap-sqr
log-pow
cos-sum
Counts
4 → 72
Calls
4 calls:
7.0ms
(* (log (* 1 (hypot x.re x.im))) y.im)
3.0ms
(* (atan2 x.im x.re) y.re)
3.0ms
(* (atan2 x.im x.re) y.im)
8.0ms
(cos (+ (* (log (* 1 (hypot x.re x.im))) y.im) (* (atan2 x.im x.re) y.re)))

series285.0ms

Counts
4 → 12
Calls
4 calls:
106.0ms
(* (log (* 1 (hypot x.re x.im))) y.im)
16.0ms
(* (atan2 x.im x.re) y.re)
16.0ms
(* (atan2 x.im x.re) y.im)
146.0ms
(cos (+ (* (log (* 1 (hypot x.re x.im))) y.im) (* (atan2 x.im x.re) y.re)))

simplify61.0ms

Algorithm
egg-herbie
Counts
84 → 84
Iterations

Useful iterations: 3 (55.0ms)

IterNodesCost
0224439
1688383
21996376
35002374

prune357.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 2.3b

localize25.0ms

Local error

Found 4 expressions with local error:

1.0b
(* (atan2 x.im x.re) (* (cbrt y.im) (cbrt y.im)))
1.0b
(* (atan2 x.im x.re) y.re)
1.1b
(* (* (atan2 x.im x.re) (* (cbrt y.im) (cbrt y.im))) (cbrt y.im))
29.3b
(cos (+ (* (log (* 1 (hypot x.re x.im))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite56.0ms

Algorithm
rewrite-expression-head
Rules
20×pow1 add-exp-log
13×add-cbrt-cube
12×add-sqr-sqrt
10×associate-*r* pow-prod-down prod-exp cbrt-unprod
add-cube-cbrt *-un-lft-identity
associate-*l*
expm1-log1p-u log1p-expm1-u add-log-exp
cbrt-prod *-commutative
unswap-sqr
cos-sum
Counts
4 → 77
Calls
4 calls:
9.0ms
(* (atan2 x.im x.re) (* (cbrt y.im) (cbrt y.im)))
3.0ms
(* (atan2 x.im x.re) y.re)
35.0ms
(* (* (atan2 x.im x.re) (* (cbrt y.im) (cbrt y.im))) (cbrt y.im))
7.0ms
(cos (+ (* (log (* 1 (hypot x.re x.im))) y.im) (* (atan2 x.im x.re) y.re)))

series286.0ms

Counts
4 → 12
Calls
4 calls:
85.0ms
(* (atan2 x.im x.re) (* (cbrt y.im) (cbrt y.im)))
16.0ms
(* (atan2 x.im x.re) y.re)
41.0ms
(* (* (atan2 x.im x.re) (* (cbrt y.im) (cbrt y.im))) (cbrt y.im))
144.0ms
(cos (+ (* (log (* 1 (hypot x.re x.im))) y.im) (* (atan2 x.im x.re) y.re)))

simplify41.0ms

Algorithm
egg-herbie
Counts
89 → 89
Iterations

Useful iterations: 2 (34.0ms)

IterNodesCost
0288626
11204512
25001481

prune351.0ms

Pruning

8 alts after pruning (7 fresh and 1 done)

Merged error: 2.3b

regimes208.0ms

Accuracy

0% (0.6b remaining)

Error of 3.3b against oracle of 2.7b and baseline of 3.3b

bsearch0.0ms

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03324
13524
23524

end0.0ms

sample4.9s

Algorithm
intervals
Results
1.8s2036×body1280valid
1.4s7997×body80valid
896.0ms1448×body640valid
286.0ms626×body320valid
105.0ms328×body160valid