



Bits error versus a1




Bits error versus a2




Bits error versus b1




Bits error versus b2
Results
| Original | 10.9 |
|---|---|
| Target | 11.1 |
| Herbie | 6.3 |
if (* a1 a2) < -4.874472426675501e+191Initial program 30.3
rmApplied associate-/r*30.9
rmApplied associate-/l*16.7
rmApplied associate-/r/16.6
if -4.874472426675501e+191 < (* a1 a2) < -5.866961245433944e-207Initial program 4.8
rmApplied associate-/r*4.6
rmApplied div-inv4.6
rmApplied div-inv4.7
Applied associate-*l*4.7
if -5.866961245433944e-207 < (* a1 a2) < 3.2733143053841e-311 or 7.535942824848952e+88 < (* a1 a2) Initial program 18.0
Initial simplification7.0
if 3.2733143053841e-311 < (* a1 a2) < 7.535942824848952e+88Initial program 4.0
rmApplied associate-/r*4.3
rmApplied div-inv4.4
Final simplification6.3
herbie shell --seed 2018365
(FPCore (a1 a2 b1 b2)
:name "Quotient of products"
:herbie-target
(* (/ a1 b1) (/ a2 b2))
(/ (* a1 a2) (* b1 b2)))
Time bar (total: 3.5s)Debug log
2 alts after pruning (2 fresh and 0 done)
Merged error: 1.5b
Found 1 expressions with local error:
| 10.2b | (/ (* a1 a2) (* b1 b2)) |
1 calls. Slowest were:
| 3.0ms | (/ (* a1 a2) (* b1 b2)) |
1 calls. Slowest were:
| 22.0ms | (/ (* a1 a2) (* b1 b2)) |
7 calls. Slowest were:
| 157.0ms | (/ (* (* (* a1 a2) (* a1 a2)) (* a1 a2)) (* (* (* b1 b2) (* b1 b2)) (* b1 b2))) |
| 55.0ms | (- (log (* a1 a2)) (log (* b1 b2))) |
| 37.0ms | (/ (* a1 a2) (* b2 b1)) |
8 alts after pruning (8 fresh and 0 done)
Merged error: 0.0b
Found 2 expressions with local error:
| 5.6b | (/ (* a1 a2) b1) |
| 5.2b | (/ (/ (* a1 a2) b1) b2) |
2 calls. Slowest were:
| 7.0ms | (/ (/ (* a1 a2) b1) b2) |
| 4.0ms | (/ (* a1 a2) b1) |
2 calls. Slowest were:
| 34.0ms | (/ (/ (* a1 a2) b1) b2) |
| 22.0ms | (/ (* a1 a2) b1) |
10 calls. Slowest were:
| 34.0ms | (/ (* a1 a2) (* b2 b1)) |
| 22.0ms | (* (cbrt (/ (* a1 a2) b1)) (cbrt (/ (* a1 a2) b1))) |
| 21.0ms | (/ (* a1 a2) (* b2 b1)) |
8 alts after pruning (8 fresh and 0 done)
Merged error: 0.0b
Found 2 expressions with local error:
| 6.4b | (/ a1 (/ b1 a2)) |
| 5.2b | (/ (/ a1 (/ b1 a2)) b2) |
2 calls. Slowest were:
| 5.0ms | (/ (/ a1 (/ b1 a2)) b2) |
| 1.0ms | (/ a1 (/ b1 a2)) |
2 calls. Slowest were:
| 34.0ms | (/ (/ a1 (/ b1 a2)) b2) |
| 23.0ms | (/ a1 (/ b1 a2)) |
13 calls. Slowest were:
| 29.0ms | (/ (* a1 a2) (* b2 b1)) |
| 20.0ms | (/ (* a1 a2) (* b2 b1)) |
| 18.0ms | (/ (* a1 a2) (* b2 b1)) |
8 alts after pruning (7 fresh and 1 done)
Merged error: 0.0b
Found 2 expressions with local error:
| 5.6b | (/ (* a1 a2) b1) |
| 5.2b | (* (/ (* a1 a2) b1) (/ 1 b2)) |
2 calls. Slowest were:
| 8.0ms | (* (/ (* a1 a2) b1) (/ 1 b2)) |
| 4.0ms | (/ (* a1 a2) b1) |
2 calls. Slowest were:
| 33.0ms | (* (/ (* a1 a2) b1) (/ 1 b2)) |
| 21.0ms | (/ (* a1 a2) b1) |
19 calls. Slowest were:
| 335.0ms | (* (/ (* a1 a2) b1) (/ 1 b2)) |
| 144.0ms | (+ (log (/ (* a1 a2) b1)) (log (/ 1 b2))) |
| 66.0ms | (* (* (* (/ (* a1 a2) b1) (/ (* a1 a2) b1)) (/ (* a1 a2) b1)) (* (* (/ 1 b2) (/ 1 b2)) (/ 1 b2))) |
7 alts after pruning (5 fresh and 2 done)
Merged error: 0.0b
43% (6.2b remaining)
Error of 6.3b against oracle of 0.0b and baseline of 11.0b