Timeout in 10.0m

Use the --timeout flag to change the timeout.

Details

Time bar (total: 36.1s)Debug log

sample154.0ms

Algorithm
intervals

simplify164.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

164.0ms
(* R (sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- phi1 phi2) (- phi1 phi2)))))

prune18.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 37.8b

localize62.0ms

Local error

Found 4 expressions with local error:

36.7b
(sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- phi1 phi2) (- phi1 phi2))))
3.3b
(cos (/ (+ phi1 phi2) 2))
3.3b
(cos (/ (+ phi1 phi2) 2))
0.2b
(* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))))

rewrite97.0ms

Algorithm
rewrite-expression-head
Counts
4 → 129
Calls

4 calls. Slowest were:

44.0ms
(sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- phi1 phi2) (- phi1 phi2))))
39.0ms
(* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))))
3.0ms
(cos (/ (+ phi1 phi2) 2))

series589.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

418.0ms
(sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- phi1 phi2) (- phi1 phi2))))
122.0ms
(* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))))
25.0ms
(cos (/ (+ phi1 phi2) 2))
24.0ms
(cos (/ (+ phi1 phi2) 2))

simplify27.9s

Counts
118 → 141
Calls

118 calls. Slowest were:

1.1s
(* (* (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))
548.0ms
(* (* (- (* lambda1 lambda1) (* lambda2 lambda2)) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))))
546.0ms
(* (* (- (* lambda1 lambda1) (* lambda2 lambda2)) (cos (/ (+ phi1 phi2) 2))) (* (- (pow lambda1 3) (pow lambda2 3)) (cos (/ (+ phi1 phi2) 2))))

prune3.7s

Pruning

9 alts after pruning (8 fresh and 1 done)

Merged error: 24.7b

localize34.0ms

Local error

Found 4 expressions with local error:

36.7b
(sqrt (+ (* (* (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))))) (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))) (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))) (* (- phi1 phi2) (- phi1 phi2))))
27.6b
(cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))
27.6b
(cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))
27.6b
(cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))

rewrite1.5s

Algorithm
rewrite-expression-head
Counts
4 → 5889
Calls

4 calls. Slowest were:

223.0ms
(sqrt (+ (* (* (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))))) (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))) (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))) (* (- phi1 phi2) (- phi1 phi2))))
21.0ms
(cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))
13.0ms
(cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))

series1.8s

Counts
4 → 12
Calls

4 calls. Slowest were:

1.0s
(sqrt (+ (* (* (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))))) (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))) (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))) (* (- phi1 phi2) (- phi1 phi2))))
277.0ms
(cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))
252.0ms
(cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))
237.0ms
(cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))

Reproduce

herbie shell --seed 2019008 
(FPCore (R lambda1 lambda2 phi1 phi2)
  :name "Equirectangular approximation to distance on a great circle"
  (* R (sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- phi1 phi2) (- phi1 phi2))))))