Details

Time bar (total: 12.4s)

sample201.0ms

Algorithm
intervals
Results
117.0ms110×body1280valid
45.0ms75×body640valid
13.0ms32×body320valid
8.0ms15×body160valid
3.0ms24×body80valid

simplify11.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
02012
12312
22312

prune5.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 1.0b

localize20.0ms

Local error

Found 4 expressions with local error:

0.2b
(atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))
0.4b
(+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))
3.1b
(cos (- lambda1 lambda2))
3.2b
(sin (- lambda1 lambda2))

rewrite43.0ms

Algorithm
rewrite-expression-head
Rules
18×prod-diff
17×add-sqr-sqrt add-cube-cbrt *-un-lft-identity
11×cos-sum sin-sum
add-log-exp
pow1 add-exp-log expm1-log1p-u add-cbrt-cube log1p-expm1-u
cos-diff fma-def
sub-neg associate-+r+
+-commutative distribute-rgt-in distribute-lft-in flip3-+ sum-log sin-diff flip-+
Counts
4 → 69
Calls
4 calls:
0.0ms
(atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))
12.0ms
(+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))
12.0ms
(cos (- lambda1 lambda2))
12.0ms
(sin (- lambda1 lambda2))

series135.0ms

Counts
4 → 12
Calls
4 calls:
9.0ms
(atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))
92.0ms
(+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))
15.0ms
(cos (- lambda1 lambda2))
20.0ms
(sin (- lambda1 lambda2))

simplify67.0ms

Algorithm
egg-herbie
Counts
81 → 81
Iterations

Useful iterations: 3 (59.0ms)

IterNodesCost
03651011
1800787
22597784
35002735

prune684.0ms

Pruning

14 alts after pruning (14 fresh and 0 done)

Merged error: 0.7b

localize35.0ms

Local error

Found 4 expressions with local error:

0.2b
(atan2 (* (cos phi2) (+ (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin (- lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))
0.2b
(* (cos lambda1) (sin (- lambda2)))
0.4b
(+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))
3.1b
(cos (- lambda1 lambda2))

rewrite41.0ms

Algorithm
rewrite-expression-head
Rules
15×add-sqr-sqrt
13×add-cube-cbrt *-un-lft-identity
11×cos-sum
prod-diff
pow1 add-exp-log add-cbrt-cube add-log-exp
expm1-log1p-u log1p-expm1-u
cos-diff fma-def associate-*r* associate-*l*
associate-+r+
+-commutative distribute-rgt-in sub-neg distribute-lft-in flip3-+ pow-prod-down prod-exp sin-neg sum-log *-commutative distribute-rgt-neg-out cbrt-unprod flip-+ unswap-sqr
Counts
4 → 69
Calls
4 calls:
0.0ms
(atan2 (* (cos phi2) (+ (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin (- lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))
14.0ms
(* (cos lambda1) (sin (- lambda2)))
12.0ms
(+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))
13.0ms
(cos (- lambda1 lambda2))

series165.0ms

Counts
4 → 12
Calls
4 calls:
12.0ms
(atan2 (* (cos phi2) (+ (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin (- lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))
48.0ms
(* (cos lambda1) (sin (- lambda2)))
90.0ms
(+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))
15.0ms
(cos (- lambda1 lambda2))

simplify105.0ms

Algorithm
egg-herbie
Counts
81 → 81
Iterations

Useful iterations: 3 (97.0ms)

IterNodesCost
0404909
11169743
24635741
35001739

prune952.0ms

Pruning

12 alts after pruning (12 fresh and 0 done)

Merged error: 0.1b

localize32.0ms

Local error

Found 4 expressions with local error:

0.2b
(* (cos lambda1) (sin (- lambda2)))
0.2b
(atan2 (* (cos phi2) (+ (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin (- lambda2))))) (+ (fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1)) (* (* (sin lambda1) (sin lambda2)) (cos phi2))))
0.2b
(* (sin lambda1) (sin lambda2))
0.4b
(fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1))

rewrite31.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt
pow1 add-exp-log add-cube-cbrt *-un-lft-identity add-cbrt-cube
associate-*r* associate-*l*
expm1-log1p-u log1p-expm1-u add-log-exp
pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
sin-neg distribute-rgt-neg-out fma-udef sin-mult
Counts
4 → 61
Calls
4 calls:
14.0ms
(* (cos lambda1) (sin (- lambda2)))
0.0ms
(atan2 (* (cos phi2) (+ (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin (- lambda2))))) (+ (fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1)) (* (* (sin lambda1) (sin lambda2)) (cos phi2))))
14.0ms
(* (sin lambda1) (sin lambda2))
1.0ms
(fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1))

series213.0ms

Counts
4 → 12
Calls
4 calls:
44.0ms
(* (cos lambda1) (sin (- lambda2)))
19.0ms
(atan2 (* (cos phi2) (+ (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin (- lambda2))))) (+ (fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1)) (* (* (sin lambda1) (sin lambda2)) (cos phi2))))
40.0ms
(* (sin lambda1) (sin lambda2))
110.0ms
(fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1))

simplify71.0ms

Algorithm
egg-herbie
Counts
73 → 73
Iterations

Useful iterations: 2 (22.0ms)

IterNodesCost
0269717
1854623
23268622
35002622

prune927.0ms

Pruning

12 alts after pruning (12 fresh and 0 done)

Merged error: 0.1b

localize36.0ms

Local error

Found 4 expressions with local error:

0.2b
(atan2 (* (cos phi2) (+ (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin (- lambda2))))) (+ (log (exp (fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1)))) (* (* (sin lambda1) (sin lambda2)) (cos phi2))))
0.2b
(* (sin lambda1) (sin lambda2))
0.4b
(fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1))
0.5b
(log (exp (fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1))))

rewrite19.0ms

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt
add-cube-cbrt *-un-lft-identity
pow1
add-exp-log add-cbrt-cube
expm1-log1p-u log-prod log-pow log1p-expm1-u add-log-exp
exp-prod associate-*r* associate-*l*
fma-udef
rem-log-exp exp-sum pow-prod-down prod-exp *-commutative cbrt-unprod sin-mult unswap-sqr
Counts
4 → 58
Calls
4 calls:
0.0ms
(atan2 (* (cos phi2) (+ (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin (- lambda2))))) (+ (log (exp (fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1)))) (* (* (sin lambda1) (sin lambda2)) (cos phi2))))
11.0ms
(* (sin lambda1) (sin lambda2))
0.0ms
(fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1))
6.0ms
(log (exp (fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1))))

series288.0ms

Counts
4 → 12
Calls
4 calls:
17.0ms
(atan2 (* (cos phi2) (+ (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin (- lambda2))))) (+ (log (exp (fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1)))) (* (* (sin lambda1) (sin lambda2)) (cos phi2))))
46.0ms
(* (sin lambda1) (sin lambda2))
113.0ms
(fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1))
112.0ms
(log (exp (fma (cos lambda1) (* (cos lambda2) (cos phi2)) (cos phi1))))

simplify51.0ms

Algorithm
egg-herbie
Counts
70 → 70
Iterations

Useful iterations: 2 (16.0ms)

IterNodesCost
0224787
1569683
21792681
35001681

prune763.0ms

Pruning

12 alts after pruning (12 fresh and 0 done)

Merged error: 0.1b

regimes1.3s

Accuracy

0% (0.2b remaining)

Error of 0.3b against oracle of 0.1b and baseline of 0.3b

bsearch0.0ms

simplify1.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03526
13526

end0.0ms

sample6.1s

Algorithm
intervals
Results
3.8s3527×body1280valid
1.5s2404×body640valid
385.0ms922×body320valid
116.0ms427×body160valid
108.0ms720×body80valid