


Bits error versus g



Bits error versus h



Bits error versus a
Results
if g < -6.359331887313869e-161Initial program 33.6
Simplified33.6
rmApplied cbrt-div30.0
if -6.359331887313869e-161 < g Initial program 36.9
Simplified36.9
rmApplied cbrt-prod33.2
Taylor expanded around inf 32.8
Final simplification31.5
herbie shell --seed 2019007
(FPCore (g h a)
:name "2-ancestry mixing, positive discriminant"
(+ (cbrt (* (/ 1 (* 2 a)) (+ (- g) (sqrt (- (* g g) (* h h)))))) (cbrt (* (/ 1 (* 2 a)) (- (- g) (sqrt (- (* g g) (* h h))))))))
Time bar (total: 51.6s)Debug log
1 calls. Slowest were:
| 299.0ms | (+ (cbrt (* (/ 1 (* 2 a)) (+ (- g) (sqrt (- (* g g) (* h h)))))) (cbrt (* (/ 1 (* 2 a)) (- (- g) (sqrt (- (* g g) (* h h))))))) |
2 alts after pruning (2 fresh and 0 done)
Merged error: 33.6b
Found 4 expressions with local error:
| 29.9b | (sqrt (* (+ g h) (- g h))) |
| 29.9b | (sqrt (* (+ g h) (- g h))) |
| 8.1b | (cbrt (* (/ -1/2 a) (+ g (sqrt (* (+ g h) (- g h)))))) |
| 6.7b | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
4 calls. Slowest were:
| 2.0ms | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 2.0ms | (cbrt (* (/ -1/2 a) (+ g (sqrt (* (+ g h) (- g h)))))) |
| 1.0ms | (sqrt (* (+ g h) (- g h))) |
4 calls. Slowest were:
| 318.0ms | (cbrt (* (/ -1/2 a) (+ g (sqrt (* (+ g h) (- g h)))))) |
| 266.0ms | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 40.0ms | (sqrt (* (+ g h) (- g h))) |
| 31.0ms | (sqrt (* (+ g h) (- g h))) |
44 calls. Slowest were:
| 353.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 350.0ms | (sqrt (* (+ (pow g 3) (pow h 3)) (- g h))) |
| 337.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
18 alts after pruning (18 fresh and 0 done)
Merged error: 30.9b
Found 4 expressions with local error:
| 29.9b | (sqrt (* (+ g h) (- g h))) |
| 29.9b | (sqrt (* (+ g h) (- g h))) |
| 6.7b | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 1.7b | (- (sqrt (* (+ g h) (- g h))) g) |
4 calls. Slowest were:
| 5.0ms | (- (sqrt (* (+ g h) (- g h))) g) |
| 2.0ms | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 1.0ms | (sqrt (* (+ g h) (- g h))) |
4 calls. Slowest were:
| 214.0ms | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 48.0ms | (sqrt (* (+ g h) (- g h))) |
| 43.0ms | (sqrt (* (+ g h) (- g h))) |
| 42.0ms | (- (sqrt (* (+ g h) (- g h))) g) |
38 calls. Slowest were:
| 345.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 325.0ms | (sqrt (* (+ (pow g 3) (pow h 3)) (- g h))) |
| 322.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
19 alts after pruning (19 fresh and 0 done)
Merged error: 30.1b
Found 4 expressions with local error:
| 29.9b | (sqrt (* (+ g h) (- g h))) |
| 29.9b | (sqrt (* (+ g h) (- g h))) |
| 29.9b | (sqrt (* (+ g h) (- g h))) |
| 29.9b | (sqrt (* (+ g h) (- g h))) |
4 calls. Slowest were:
| 3.0ms | (sqrt (* (+ g h) (- g h))) |
| 1.0ms | (sqrt (* (+ g h) (- g h))) |
| 1.0ms | (sqrt (* (+ g h) (- g h))) |
4 calls. Slowest were:
| 48.0ms | (sqrt (* (+ g h) (- g h))) |
| 32.0ms | (sqrt (* (+ g h) (- g h))) |
| 31.0ms | (sqrt (* (+ g h) (- g h))) |
| 31.0ms | (sqrt (* (+ g h) (- g h))) |
48 calls. Slowest were:
| 730.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 393.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 377.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
19 alts after pruning (19 fresh and 0 done)
Merged error: 30.1b
Found 4 expressions with local error:
| 29.9b | (sqrt (* (+ g h) (- g h))) |
| 29.9b | (sqrt (* (+ g h) (- g h))) |
| 6.7b | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 1.7b | (- (sqrt (* (+ g h) (- g h))) g) |
4 calls. Slowest were:
| 9.0ms | (- (sqrt (* (+ g h) (- g h))) g) |
| 3.0ms | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 2.0ms | (sqrt (* (+ g h) (- g h))) |
4 calls. Slowest were:
| 243.0ms | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 55.0ms | (- (sqrt (* (+ g h) (- g h))) g) |
| 48.0ms | (sqrt (* (+ g h) (- g h))) |
| 48.0ms | (sqrt (* (+ g h) (- g h))) |
38 calls. Slowest were:
| 462.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 389.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 363.0ms | (- (+ (* 1/18 (* (cbrt 1/2) (* (exp (* 1/3 (- (log (/ 1 (sqrt -1))) (+ (* 5 (log h)) (log a))))) (pow g 2)))) (* (cbrt 1/2) (exp (* 1/3 (- (+ (log (sqrt -1)) (log h)) (log a)))))) (* 1/3 (* (cbrt 1/2) (* g (exp (* 1/3 (- (log -1) (+ (* 2 (log h)) (log a))))))))) |
19 alts after pruning (19 fresh and 0 done)
Merged error: 30.1b
70.9% (1.1b remaining)
Error of 31.5b against oracle of 30.4b and baseline of 34.1b