Timeout in 10.0m

Use the --timeout flag to change the timeout.

Details

Time bar (total: 2.1m)Debug log

sample1.0m

Algorithm
intervals

simplify92.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

92.0ms
(/ (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (- t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n)))

prune12.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 5.6b

localize61.0ms

Local error

Found 4 expressions with local error:

3.2b
(/ (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (- t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n)))
1.7b
(pow (/ 1 (+ 1 (exp (- t)))) c_p)
0.2b
(pow (/ 1 (+ 1 (exp (- s)))) c_p)
0.0b
(/ 1 (+ 1 (exp (- t))))

rewrite33.0ms

Algorithm
rewrite-expression-head
Counts
4 → 250
Calls

4 calls. Slowest were:

14.0ms
(/ (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (- t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n)))
1.0ms
(pow (/ 1 (+ 1 (exp (- t)))) c_p)
1.0ms
(pow (/ 1 (+ 1 (exp (- s)))) c_p)

series723.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

594.0ms
(/ (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (- t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n)))
56.0ms
(pow (/ 1 (+ 1 (exp (- t)))) c_p)
55.0ms
(pow (/ 1 (+ 1 (exp (- s)))) c_p)
18.0ms
(/ 1 (+ 1 (exp (- t))))

simplify48.1s

Counts
217 → 262
Calls

217 calls. Slowest were:

668.0ms
(- (+ (* (- (log (+ 1 (exp (- s))))) c_p) (* (log (- 1 (/ 1 (+ 1 (exp (- s)))))) c_n)) (+ (* (log (/ 1 (+ 1 (exp (- t))))) c_p) (* (log (- 1 (/ 1 (+ 1 (exp (- t)))))) c_n)))
643.0ms
(- (+ (* (log (/ 1 (+ 1 (exp (- s))))) c_p) (* (log (- 1 (/ 1 (+ 1 (exp (- s)))))) c_n)) (+ (* (log (/ 1 (+ 1 (exp (- t))))) c_p) (log (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n))))
373.0ms
(- (+ (* (log (/ 1 (+ 1 (exp (- s))))) c_p) (* (log (- 1 (/ 1 (+ 1 (exp (- s)))))) c_n)) (+ (* (log (/ 1 (+ 1 (exp (- t))))) c_p) (* (log (- 1 (/ 1 (+ 1 (exp (- t)))))) c_n)))

prune3.9s

Pruning

4 alts after pruning (4 fresh and 0 done)

Merged error: 0.1b

localize11.0ms

Local error

Found 1 expressions with local error:

0.0b
(fma (* 1/2 s) (- c_p c_n) 1)

rewrite0.0ms

Algorithm
rewrite-expression-head
Counts
1 → 10
Calls

1 calls. Slowest were:

0.0ms
(fma (* 1/2 s) (- c_p c_n) 1)

series26.0ms

Counts
1 → 3
Calls

1 calls. Slowest were:

26.0ms
(fma (* 1/2 s) (- c_p c_n) 1)

simplify317.0ms

Counts
3 → 13
Calls

3 calls. Slowest were:

106.0ms
(- (+ (* 1/2 (* c_p s)) 1) (* 1/2 (* c_n s)))
106.0ms
(- (+ (* 1/2 (* c_p s)) 1) (* 1/2 (* c_n s)))
104.0ms
(- (+ (* 1/2 (* c_p s)) 1) (* 1/2 (* c_n s)))

prune110.0ms

Pruning

4 alts after pruning (3 fresh and 1 done)

Merged error: 0.1b

localize39.0ms

Local error

Found 4 expressions with local error:

11.6b
(- (log1p (exp (- s))) (log1p (exp (- t))))
5.9b
(- (* (log1p (/ -1 (+ (exp (- s)) 1))) c_n) (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t)))))))
1.7b
(log1p (exp (- t)))
0.2b
(log1p (exp (- s)))

rewrite14.0ms

Algorithm
rewrite-expression-head
Counts
4 → 72
Calls

4 calls. Slowest were:

8.0ms
(- (log1p (exp (- s))) (log1p (exp (- t))))
5.0ms
(- (* (log1p (/ -1 (+ (exp (- s)) 1))) c_n) (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t)))))))
0.0ms
(log1p (exp (- t)))

series472.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

307.0ms
(- (* (log1p (/ -1 (+ (exp (- s)) 1))) c_n) (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t)))))))
67.0ms
(- (log1p (exp (- s))) (log1p (exp (- t))))
49.0ms
(log1p (exp (- t)))
48.0ms
(log1p (exp (- s)))

simplify3.1s

Counts
50 → 84
Calls

50 calls. Slowest were:

595.0ms
(fma (- (sqrt (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t)))))))) (sqrt (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t))))))) (* (sqrt (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t))))))) (sqrt (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t)))))))))
309.0ms
(fma (- (cbrt (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t)))))))) (* (cbrt (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t))))))) (cbrt (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t)))))))) (* (cbrt (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t))))))) (* (cbrt (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t))))))) (cbrt (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t))))))))))
280.0ms
(fma (- (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t))))))) 1 (* (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t)))))) 1))

prune1.2s

Pruning

3 alts after pruning (3 fresh and 0 done)

Merged error: 0.1b

localize25.0ms

Local error

Found 4 expressions with local error:

7.5b
(- (* (log1p (/ -1 (+ (exp (- s)) 1))) c_n) (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (fma s (fma s 1/8 -1/2) (* 1/2 t)))))
0.4b
(fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (fma s (fma s 1/8 -1/2) (* 1/2 t))))
0.2b
(* (log1p (/ -1 (+ (exp (- s)) 1))) c_n)
0.0b
(/ -1 (+ (exp (- t)) 1))

rewrite12.0ms

Algorithm
rewrite-expression-head
Counts
4 → 59
Calls

4 calls. Slowest were:

5.0ms
(- (* (log1p (/ -1 (+ (exp (- s)) 1))) c_n) (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (fma s (fma s 1/8 -1/2) (* 1/2 t)))))
3.0ms
(/ -1 (+ (exp (- t)) 1))
2.0ms
(* (log1p (/ -1 (+ (exp (- s)) 1))) c_n)

series310.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

117.0ms
(- (* (log1p (/ -1 (+ (exp (- s)) 1))) c_n) (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (fma s (fma s 1/8 -1/2) (* 1/2 t)))))
108.0ms
(fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (fma s (fma s 1/8 -1/2) (* 1/2 t))))
69.0ms
(* (log1p (/ -1 (+ (exp (- s)) 1))) c_n)
16.0ms
(/ -1 (+ (exp (- t)) 1))

simplify2.7s

Counts
28 → 71
Calls

28 calls. Slowest were:

230.0ms
(fma (log1p (/ -1 (+ (exp (- s)) 1))) c_n (- (* (sqrt (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (fma s (fma s 1/8 -1/2) (* 1/2 t))))) (sqrt (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (fma s (fma s 1/8 -1/2) (* 1/2 t))))))))
229.0ms
(- (* 1/2 (* c_p s)) (+ (* 1/2 (* t c_p)) (* 1/8 (* c_p (pow s 2)))))
226.0ms
(- (* 1/2 (* c_p s)) (+ (* 1/2 (* t c_p)) (* 1/8 (* c_p (pow s 2)))))

prune1.1s

Pruning

3 alts after pruning (2 fresh and 1 done)

Merged error: 0.1b

regimes370.0ms

bsearch3.0ms

end0.0ms

Reproduce

herbie shell --seed 2019007 +o rules:numerics
(FPCore (c_p c_n t s)
  :name "Harley's example"
  :pre (and (< 0 c_p) (< 0 c_n))

  :herbie-target
  (* (pow (/ (+ 1 (exp (- t))) (+ 1 (exp (- s)))) c_p) (pow (/ (+ 1 (exp t)) (+ 1 (exp s))) c_n))

  (/ (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (- t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n))))