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)))

prune11.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 6.4b

localize74.0ms

Local error

Found 4 expressions with local error:

3.9b
(/ (* (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.5b
(pow (/ 1 (+ 1 (exp (- s)))) c_p)
0.5b
(pow (/ 1 (+ 1 (exp (- t)))) c_p)
0.0b
(pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n)

rewrite25.0ms

Algorithm
rewrite-expression-head
Counts
4 → 245
Calls

4 calls. Slowest were:

13.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)))
2.0ms
(pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n)
1.0ms
(pow (/ 1 (+ 1 (exp (- s)))) c_p)

series724.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

553.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)))
66.0ms
(pow (/ 1 (+ 1 (exp (- s)))) c_p)
54.0ms
(pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n)
51.0ms
(pow (/ 1 (+ 1 (exp (- t)))) c_p)

simplify45.4s

Counts
216 → 257
Calls

216 calls. Slowest were:

626.0ms
(- (+ (* (- (log (+ 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))))
585.0ms
(- (+ (* (log (/ 1 (+ 1 (exp (- s))))) c_p) (* (log (- 1 (/ 1 (+ 1 (exp (- s)))))) c_n)) (+ (* (- (log (+ 1 (exp (- t))))) c_p) (* (log (- 1 (/ 1 (+ 1 (exp (- t)))))) c_n)))
374.0ms
(- (log (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n))) (+ (* (log (/ 1 (+ 1 (exp (- t))))) c_p) (log (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n))))

prune4.4s

Pruning

4 alts after pruning (4 fresh and 0 done)

Merged error: 0.0b

localize43.0ms

Local error

Found 4 expressions with local error:

9.7b
(- (log1p (exp (- s))) (log1p (exp (- t))))
5.6b
(- (* (log1p (/ -1 (+ (exp (- s)) 1))) c_n) (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t)))))))
1.5b
(log1p (exp (- s)))
0.5b
(log1p (exp (- t)))

rewrite12.0ms

Algorithm
rewrite-expression-head
Counts
4 → 72
Calls

4 calls. Slowest were:

6.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 (- s)))

series532.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

339.0ms
(- (* (log1p (/ -1 (+ (exp (- s)) 1))) c_n) (fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (- (log1p (exp (- s))) (log1p (exp (- t)))))))
78.0ms
(- (log1p (exp (- s))) (log1p (exp (- t))))
60.0ms
(log1p (exp (- s)))
54.0ms
(log1p (exp (- t)))

simplify3.4s

Counts
50 → 84
Calls

50 calls. Slowest were:

403.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))))))))))
353.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)))))))))
315.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.4s

Pruning

3 alts after pruning (3 fresh and 0 done)

Merged error: 0.0b

localize44.0ms

Local error

Found 4 expressions with local error:

7.2b
(- (* (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.1b
(* c_p (fma s (fma s 1/8 -1/2) (* 1/2 t)))

rewrite17.0ms

Algorithm
rewrite-expression-head
Counts
4 → 57
Calls

4 calls. Slowest were:

9.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)))))
4.0ms
(* (log1p (/ -1 (+ (exp (- s)) 1))) c_n)
2.0ms
(* c_p (fma s (fma s 1/8 -1/2) (* 1/2 t)))

series414.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

159.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)))))
129.0ms
(fma (log1p (/ -1 (+ (exp (- t)) 1))) c_n (* c_p (fma s (fma s 1/8 -1/2) (* 1/2 t))))
89.0ms
(* (log1p (/ -1 (+ (exp (- s)) 1))) c_n)
36.0ms
(* c_p (fma s (fma s 1/8 -1/2) (* 1/2 t)))

simplify3.4s

Counts
28 → 69
Calls

28 calls. Slowest were:

279.0ms
(- (* 1/2 (* c_p s)) (+ (* 1/2 (* t c_p)) (* 1/8 (* c_p (pow s 2)))))
255.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))))))))
249.0ms
(- (* (log 1/2) c_n) (+ (* 1/2 (* c_n s)) (* 1/8 (* c_n (pow s 2)))))

prune1.2s

Pruning

3 alts after pruning (2 fresh and 1 done)

Merged error: 0.0b

localize22.0ms

Local error

Found 2 expressions with local error:

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

rewrite4.0ms

Algorithm
rewrite-expression-head
Counts
2 → 33
Calls

2 calls. Slowest were:

4.0ms
(* (* 1/2 c_p) (- s t))
0.0ms
(fma (* c_p -1/8) (* s s) (* (* 1/2 c_p) (- s t)))

series75.0ms

Counts
2 → 6
Calls

2 calls. Slowest were:

38.0ms
(fma (* c_p -1/8) (* s s) (* (* 1/2 c_p) (- s t)))
37.0ms
(* (* 1/2 c_p) (- s t))

simplify1.3s

Counts
18 → 39
Calls

18 calls. Slowest were:

303.0ms
(- (* 1/2 (* c_p s)) (+ (* 1/2 (* t c_p)) (* 1/8 (* c_p (pow s 2)))))
291.0ms
(- (* 1/2 (* c_p s)) (+ (* 1/2 (* t c_p)) (* 1/8 (* c_p (pow s 2)))))
264.0ms
(- (* 1/2 (* c_p s)) (+ (* 1/2 (* t c_p)) (* 1/8 (* c_p (pow s 2)))))

prune385.0ms

Pruning

3 alts after pruning (1 fresh and 2 done)

Merged error: 0.0b

regimes189.0ms

bsearch3.0ms

end0.0ms

Reproduce

herbie shell --seed 2019008 +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))))