Details

Time bar (total: 14.2s)

sample69.0ms

Algorithm
intervals
Results
17.0ms264×body80valid
12.0ms24×body1280valid
11.0ms39×body640valid
5.0ms21×body320valid
2.0ms16×body160valid

simplify51.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
03217
17117
224117
374717
4219617
5500117

prune3.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 38.9b

localize16.0ms

Local error

Found 4 expressions with local error:

0.2b
(* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2.0))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2.0))))
2.8b
(cos (/ (+ phi1 phi2) 2.0))
2.8b
(cos (/ (+ phi1 phi2) 2.0))
35.7b
(sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2.0))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2.0)))) (* (- phi1 phi2) (- phi1 phi2))))

rewrite194.0ms

Algorithm
rewrite-expression-head
Rules
142×associate-*l/
102×flip3-- flip--
68×frac-times
66×sqrt-div
64×frac-add
44×pow1
34×associate-*r/
17×pow-prod-down
16×add-exp-log add-cbrt-cube
prod-exp cbrt-unprod
add-sqr-sqrt
add-cube-cbrt *-un-lft-identity
pow-sqr pow-prod-up add-log-exp
sqrt-prod
pow-plus
pow2 rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 swap-sqr associate-*r* associate-*l* *-commutative flip-+
Counts
4 → 135
Calls
4 calls:
65.0ms
(* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2.0))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2.0))))
10.0ms
(cos (/ (+ phi1 phi2) 2.0))
10.0ms
(cos (/ (+ phi1 phi2) 2.0))
96.0ms
(sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2.0))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2.0)))) (* (- phi1 phi2) (- phi1 phi2))))

series521.0ms

Counts
4 → 12
Calls
4 calls:
88.0ms
(* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2.0))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2.0))))
24.0ms
(cos (/ (+ phi1 phi2) 2.0))
26.0ms
(cos (/ (+ phi1 phi2) 2.0))
382.0ms
(sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2.0))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2.0)))) (* (- phi1 phi2) (- phi1 phi2))))

simplify57.0ms

Algorithm
egg-herbie
Counts
147 → 147
Iterations

Useful iterations: 1 (26.0ms)

IterNodesCost
013733924
150013756

prune441.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 23.9b

localize31.0ms

Local error

Found 4 expressions with local error:

2.8b
(cos (* 0.5 (+ phi2 phi1)))
2.8b
(cos (* 0.5 (+ phi2 phi1)))
3.0b
(- (+ (* (pow lambda2 2) (pow (cos (* 0.5 (+ phi2 phi1))) 2)) (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1))))
35.7b
(sqrt (+ (- (+ (* (pow lambda2 2) (pow (cos (* 0.5 (+ phi2 phi1))) 2)) (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1)))) (* (- phi1 phi2) (- phi1 phi2))))

rewrite410.0ms

Algorithm
rewrite-expression-head
Rules
21×flip3-- flip--
18×sqrt-div
16×frac-add
add-log-exp
frac-times
add-sqr-sqrt
pow1 add-cube-cbrt *-un-lft-identity
add-exp-log cos-sum associate-*r/ associate-*l/ add-cbrt-cube
sqrt-prod
distribute-rgt-in distribute-lft-in diff-log
sub-neg rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 associate--l+ sum-log flip-+
Counts
4 → 63
Calls
4 calls:
9.0ms
(cos (* 0.5 (+ phi2 phi1)))
10.0ms
(cos (* 0.5 (+ phi2 phi1)))
135.0ms
(- (+ (* (pow lambda2 2) (pow (cos (* 0.5 (+ phi2 phi1))) 2)) (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1))))
254.0ms
(sqrt (+ (- (+ (* (pow lambda2 2) (pow (cos (* 0.5 (+ phi2 phi1))) 2)) (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1)))) (* (- phi1 phi2) (- phi1 phi2))))

series700.0ms

Counts
4 → 12
Calls
4 calls:
23.0ms
(cos (* 0.5 (+ phi2 phi1)))
24.0ms
(cos (* 0.5 (+ phi2 phi1)))
187.0ms
(- (+ (* (pow lambda2 2) (pow (cos (* 0.5 (+ phi2 phi1))) 2)) (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1))))
466.0ms
(sqrt (+ (- (+ (* (pow lambda2 2) (pow (cos (* 0.5 (+ phi2 phi1))) 2)) (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1)))) (* (- phi1 phi2) (- phi1 phi2))))

simplify96.0ms

Algorithm
egg-herbie
Counts
75 → 75
Iterations

Useful iterations: 2 (64.0ms)

IterNodesCost
05873440
127893395
250023382

prune401.0ms

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 18.0b

localize47.0ms

Local error

Found 4 expressions with local error:

2.8b
(cos (* 0.5 (+ phi2 phi1)))
2.8b
(cos (* 0.5 (+ phi2 phi1)))
3.0b
(- (+ (* (pow lambda2 2) (pow (cos (* 0.5 (+ phi2 phi1))) 2)) (* (pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1))))
35.7b
(sqrt (+ (- (+ (* (pow lambda2 2) (pow (cos (* 0.5 (+ phi2 phi1))) 2)) (* (pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1)))) (* (- phi1 phi2) (- phi1 phi2))))

rewrite411.0ms

Algorithm
rewrite-expression-head
Rules
21×flip3-- flip--
18×sqrt-div
16×frac-add
add-log-exp
frac-times
add-sqr-sqrt
pow1 add-cube-cbrt *-un-lft-identity
add-exp-log cos-sum associate-*r/ associate-*l/ add-cbrt-cube
sqrt-prod
distribute-rgt-in distribute-lft-in diff-log
sub-neg rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 associate--l+ sum-log flip-+
Counts
4 → 63
Calls
4 calls:
9.0ms
(cos (* 0.5 (+ phi2 phi1)))
9.0ms
(cos (* 0.5 (+ phi2 phi1)))
135.0ms
(- (+ (* (pow lambda2 2) (pow (cos (* 0.5 (+ phi2 phi1))) 2)) (* (pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1))))
253.0ms
(sqrt (+ (- (+ (* (pow lambda2 2) (pow (cos (* 0.5 (+ phi2 phi1))) 2)) (* (pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1)))) (* (- phi1 phi2) (- phi1 phi2))))

series1.3s

Counts
4 → 12
Calls
4 calls:
25.0ms
(cos (* 0.5 (+ phi2 phi1)))
25.0ms
(cos (* 0.5 (+ phi2 phi1)))
396.0ms
(- (+ (* (pow lambda2 2) (pow (cos (* 0.5 (+ phi2 phi1))) 2)) (* (pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1))))
886.0ms
(sqrt (+ (- (+ (* (pow lambda2 2) (pow (cos (* 0.5 (+ phi2 phi1))) 2)) (* (pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1)))) (* (- phi1 phi2) (- phi1 phi2))))

simplify120.0ms

Algorithm
egg-herbie
Counts
75 → 75
Iterations

Useful iterations: 1 (18.0ms)

IterNodesCost
07044521
133994478
250024478

prune791.0ms

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 17.5b

localize57.0ms

Local error

Found 4 expressions with local error:

0.4b
(pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2)
2.8b
(cos (* 0.5 (+ phi2 phi1)))
3.0b
(- (+ (* (pow lambda2 2) (pow (- (* (cos (* 0.5 phi2)) (cos (* 0.5 phi1))) (* (sin (* 0.5 phi2)) (sin (* 0.5 phi1)))) 2)) (* (pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1))))
35.7b
(sqrt (+ (- (+ (* (pow lambda2 2) (pow (- (* (cos (* 0.5 phi2)) (cos (* 0.5 phi1))) (* (sin (* 0.5 phi2)) (sin (* 0.5 phi1)))) 2)) (* (pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1)))) (* (- phi1 phi2) (- phi1 phi2))))

rewrite1.0s

Algorithm
rewrite-expression-head
Rules
21×flip3-- flip--
18×sqrt-div
16×frac-add
add-log-exp
add-sqr-sqrt frac-times
add-cube-cbrt *-un-lft-identity
pow1
add-exp-log
associate-*r/ associate-*l/ add-cbrt-cube
unpow-prod-down pow-unpow sqrt-prod
cos-sum diff-log
distribute-rgt-in pow-to-exp sub-neg rem-sqrt-square pow-pow distribute-lft-in sqrt-pow1 flip3-+ pow1/2 pow-exp associate--l+ sum-log flip-+ unpow2 sqr-pow
Counts
4 → 72
Calls
4 calls:
50.0ms
(pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2)
9.0ms
(cos (* 0.5 (+ phi2 phi1)))
347.0ms
(- (+ (* (pow lambda2 2) (pow (- (* (cos (* 0.5 phi2)) (cos (* 0.5 phi1))) (* (sin (* 0.5 phi2)) (sin (* 0.5 phi1)))) 2)) (* (pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1))))
616.0ms
(sqrt (+ (- (+ (* (pow lambda2 2) (pow (- (* (cos (* 0.5 phi2)) (cos (* 0.5 phi1))) (* (sin (* 0.5 phi2)) (sin (* 0.5 phi1)))) 2)) (* (pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1)))) (* (- phi1 phi2) (- phi1 phi2))))

series3.8s

Counts
4 → 12
Calls
4 calls:
112.0ms
(pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2)
28.0ms
(cos (* 0.5 (+ phi2 phi1)))
702.0ms
(- (+ (* (pow lambda2 2) (pow (- (* (cos (* 0.5 phi2)) (cos (* 0.5 phi1))) (* (sin (* 0.5 phi2)) (sin (* 0.5 phi1)))) 2)) (* (pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1))))
3.0s
(sqrt (+ (- (+ (* (pow lambda2 2) (pow (- (* (cos (* 0.5 phi2)) (cos (* 0.5 phi1))) (* (sin (* 0.5 phi2)) (sin (* 0.5 phi1)))) 2)) (* (pow (- (* (cos (* phi2 0.5)) (cos (* phi1 0.5))) (* (sin (* phi2 0.5)) (sin (* phi1 0.5)))) 2) (pow lambda1 2))) (* 2 (* lambda2 (* (pow (cos (* 0.5 (+ phi2 phi1))) 2) lambda1)))) (* (- phi1 phi2) (- phi1 phi2))))

simplify153.0ms

Algorithm
egg-herbie
Counts
84 → 84
Iterations

Useful iterations: 2 (107.0ms)

IterNodesCost
09456020
148245842
250015809

prune765.0ms

Pruning

11 alts after pruning (10 fresh and 1 done)

Merged error: 17.4b

regimes672.0ms

Accuracy

31.7% (12.8b remaining)

Error of 32.0b against oracle of 19.3b and baseline of 38.0b

bsearch3.0ms

simplify5.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
0144174
1156174
2162174
3168174
4174174
5174174

end0.0ms

sample2.0s

Algorithm
intervals
Results
580.0ms8514×body80valid
380.0ms1285×body640valid
341.0ms806×body1280valid
152.0ms726×body320valid
51.0ms361×body160valid