Details

Time bar (total: 4.9s)

sample83.0ms

Algorithm
intervals
Results
32.0ms67×body10240exit
18.0ms361×body80nan
14.0ms256×body80valid

simplify51.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
0135
1225
2445
31145
43215
516275
650015

prune2.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 0.0b

localize8.0ms

Local error

Found 2 expressions with local error:

0.0b
(pow (sqrt (atan2 b b)) (- b a))
1.0b
(sqrt (atan2 b b))

rewrite11.0ms

Algorithm
rewrite-expression-head
Rules
15×add-sqr-sqrt
14×*-un-lft-identity
12×add-cube-cbrt
11×unpow-prod-up
prod-diff
unpow-prod-down sqrt-prod
pow1 pow-unpow
add-exp-log pow-pow
expm1-log1p-u sqrt-pow1 pow1/2 add-cbrt-cube log1p-expm1-u add-log-exp
pow-to-exp sub-neg rem-sqrt-square pow-exp sqrt-pow2 distribute-lft-out-- pow-sub difference-of-squares sqr-pow
Counts
2 → 54
Calls
2 calls:
8.0ms
(pow (sqrt (atan2 b b)) (- b a))
1.0ms
(sqrt (atan2 b b))

series27.0ms

Counts
2 → 6
Calls
2 calls:
18.0ms
(pow (sqrt (atan2 b b)) (- b a))
9.0ms
(sqrt (atan2 b b))

simplify65.0ms

Algorithm
egg-herbie
Counts
60 → 60
Iterations

Useful iterations: 3 (56.0ms)

IterNodesCost
0224417
1632348
22275345
35001329

prune116.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0.0b

localize12.0ms

Local error

Found 4 expressions with local error:

0.0b
(pow (sqrt (sqrt (atan2 b b))) (- b a))
0.0b
(* (pow (sqrt (sqrt (atan2 b b))) (- b a)) (pow (sqrt (sqrt (atan2 b b))) (- b a)))
1.0b
(sqrt (atan2 b b))
1.0b
(sqrt (atan2 b b))

rewrite83.0ms

Algorithm
rewrite-expression-head
Rules
112×add-sqr-sqrt
93×sqrt-prod
87×unpow-prod-down
59×unpow-prod-up
58×*-un-lft-identity
56×add-cube-cbrt
45×prod-diff
32×swap-sqr
25×unswap-sqr
24×associate-*r* associate-*l*
17×add-exp-log
15×sqr-pow
pow1 prod-exp
pow-to-exp sub-neg pow-exp
sqrt-pow1 add-cbrt-cube
pow-unpow pow-pow pow-sub
expm1-log1p-u pow1/2 log1p-expm1-u add-log-exp
rem-sqrt-square
pow2 frac-times associate-*r/ pow-prod-down associate-*l/ pow-sqr *-commutative pow-prod-up sqrt-pow2 cbrt-unprod distribute-lft-out-- difference-of-squares
Counts
4 → 206
Calls
4 calls:
9.0ms
(pow (sqrt (sqrt (atan2 b b))) (- b a))
61.0ms
(* (pow (sqrt (sqrt (atan2 b b))) (- b a)) (pow (sqrt (sqrt (atan2 b b))) (- b a)))
1.0ms
(sqrt (atan2 b b))
1.0ms
(sqrt (atan2 b b))

series84.0ms

Counts
4 → 12
Calls
4 calls:
26.0ms
(pow (sqrt (sqrt (atan2 b b))) (- b a))
36.0ms
(* (pow (sqrt (sqrt (atan2 b b))) (- b a)) (pow (sqrt (sqrt (atan2 b b))) (- b a)))
13.0ms
(sqrt (atan2 b b))
9.0ms
(sqrt (atan2 b b))

simplify68.0ms

Algorithm
egg-herbie
Counts
218 → 218
Iterations

Useful iterations: 2 (43.0ms)

IterNodesCost
04612468
120322166
250022132

prune486.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0.0b

localize11.0ms

Local error

Found 2 expressions with local error:

0.0b
(pow (sqrt (sqrt (atan2 b b))) (* 2 (- b a)))
1.0b
(sqrt (atan2 b b))

rewrite14.0ms

Algorithm
rewrite-expression-head
Rules
22×unpow-prod-up
19×add-sqr-sqrt
18×add-cube-cbrt *-un-lft-identity prod-diff
12×sqrt-prod
11×distribute-rgt-in distribute-lft-in
unpow-prod-down
pow1
pow-pow sqrt-pow1
add-exp-log pow1/2
expm1-log1p-u sub-neg add-cbrt-cube log1p-expm1-u add-log-exp
pow-to-exp rem-sqrt-square pow-unpow pow-exp sqrt-pow2 sqr-pow
Counts
2 → 65
Calls
2 calls:
10.0ms
(pow (sqrt (sqrt (atan2 b b))) (* 2 (- b a)))
1.0ms
(sqrt (atan2 b b))

series37.0ms

Counts
2 → 6
Calls
2 calls:
28.0ms
(pow (sqrt (sqrt (atan2 b b))) (* 2 (- b a)))
9.0ms
(sqrt (atan2 b b))

simplify43.0ms

Algorithm
egg-herbie
Counts
71 → 71
Iterations

Useful iterations: 2 (32.0ms)

IterNodesCost
0360764
11154628
25001583

prune128.0ms

Pruning

2 alts after pruning (1 fresh and 1 done)

Merged error: 0.0b

localize16.0ms

Local error

Found 4 expressions with local error:

0.0b
(pow (pow (sqrt (sqrt (atan2 b b))) (sqrt (- b a))) (sqrt (- b a)))
0.0b
(pow (sqrt (sqrt (atan2 b b))) (sqrt (- b a)))
1.0b
(sqrt (atan2 b b))
1.0b
(sqrt (atan2 b b))

rewrite28.0ms

Algorithm
rewrite-expression-head
Rules
34×sqrt-prod
31×unpow-prod-down
23×add-sqr-sqrt
21×*-un-lft-identity
17×add-cube-cbrt
16×pow-unpow
pow1
add-exp-log
pow-pow sqrt-pow1
pow-exp
expm1-log1p-u pow1/2 add-cbrt-cube log1p-expm1-u add-log-exp
pow-to-exp sqr-pow
rem-sqrt-square distribute-lft-out-- difference-of-squares
sqrt-pow2
Counts
4 → 101
Calls
4 calls:
14.0ms
(pow (pow (sqrt (sqrt (atan2 b b))) (sqrt (- b a))) (sqrt (- b a)))
8.0ms
(pow (sqrt (sqrt (atan2 b b))) (sqrt (- b a)))
1.0ms
(sqrt (atan2 b b))
1.0ms
(sqrt (atan2 b b))

series733.0ms

Counts
4 → 12
Calls
4 calls:
514.0ms
(pow (pow (sqrt (sqrt (atan2 b b))) (sqrt (- b a))) (sqrt (- b a)))
200.0ms
(pow (sqrt (sqrt (atan2 b b))) (sqrt (- b a)))
9.0ms
(sqrt (atan2 b b))
9.0ms
(sqrt (atan2 b b))

simplify43.0ms

Algorithm
egg-herbie
Counts
113 → 113
Iterations

Useful iterations: 2 (33.0ms)

IterNodesCost
03881144
113161068
25001989

prune354.0ms

Pruning

2 alts after pruning (1 fresh and 1 done)

Merged error: 0.0b

regimes175.0ms

Accuracy

0% (0.0b remaining)

Error of 0.2b against oracle of 0.2b and baseline of 0.2b

bsearch0.0ms

simplify1.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0117
1117

end0.0ms

sample2.2s

Algorithm
intervals
Results
778.0ms1922×body10240exit
454.0ms9906×body80nan
441.0ms7983×body80valid
6.0msbody5120valid
4.0msbody2560valid
2.0msbody1280valid
2.0msbody640valid
1.0msbody320valid
0.0msbody160valid