


Bits error versus g



Bits error versus h



Bits error versus a
Results
if g < -1.6739327644208389e-167Initial program 33.2
Simplified33.1
rmApplied cbrt-prod33.1
rmApplied cbrt-div29.5
rmApplied flip-+29.4
if -1.6739327644208389e-167 < g Initial program 35.9
Simplified35.9
rmApplied cbrt-prod32.5
Taylor expanded around inf 32.2
Final simplification30.9
herbie shell --seed 2019022
(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: 43.6s)Debug log
| 151.0ms | 86× | body | 2560 | valid |
| 128.0ms | 739× | body | 80 | nan |
| 48.0ms | 53× | body | 1280 | valid |
| 45.0ms | 33× | body | 5120 | valid |
| 30.0ms | 29× | body | 640 | valid |
| 14.0ms | 25× | body | 320 | valid |
| 10.0ms | 25× | body | 160 | valid |
| 1.0ms | 5× | body | 80 | valid |
| 266.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: 34.1b
Found 4 expressions with local error:
| 30.6b | (sqrt (* (+ g h) (- g h))) |
| 30.6b | (sqrt (* (+ g h) (- g h))) |
| 9.6b | (cbrt (* (/ -1/2 a) (+ g (sqrt (* (+ g h) (- g h)))))) |
| 7.5b | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 16× | sqrt-div |
| 10× | frac-times |
| 8× | flip-+ |
| 8× | flip3-+ |
| 8× | cbrt-prod |
| 6× | flip-- |
| 6× | add-cube-cbrt |
| 6× | associate-*r/ |
| 6× | flip3-- |
| 6× | *-un-lft-identity |
| 6× | cbrt-div |
| 6× | add-sqr-sqrt |
| 5× | associate-*l/ |
| 4× | add-log-exp |
| 4× | add-exp-log |
| 4× | add-cbrt-cube |
| 4× | pow1 |
| 3× | times-frac |
| 2× | sqrt-prod |
| 2× | pow1/3 |
| 2× | pow1/2 |
| 1× | div-inv |
| 2.0ms | (cbrt (* (/ -1/2 a) (+ g (sqrt (* (+ g h) (- g h)))))) |
| 2.0ms | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 1.0ms | (sqrt (* (+ g h) (- g h))) |
| 1.0ms | (sqrt (* (+ g h) (- g h))) |
| 282.0ms | (cbrt (* (/ -1/2 a) (+ g (sqrt (* (+ g h) (- g h)))))) |
| 239.0ms | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 47.0ms | (sqrt (* (+ g h) (- g h))) |
| 45.0ms | (sqrt (* (+ g h) (- g h))) |
| 386.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 371.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 299.0ms | (sqrt (* (+ (pow g 3) (pow h 3)) (- g h))) |
| 299.0ms | (* (cbrt 1/2) (exp (* 1/3 (- (+ (log (/ -1 g)) (+ (log (/ -1 a)) (log -1/2))) (* 2 (log (/ -1 h))))))) |
| 274.0ms | (sqrt (* (+ (pow g 3) (pow h 3)) (- g h))) |
18 alts after pruning (18 fresh and 0 done)
Merged error: 31.2b
Found 4 expressions with local error:
| 30.6b | (sqrt (* (+ g h) (- g h))) |
| 30.6b | (sqrt (* (+ g h) (- g h))) |
| 7.5b | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 3.3b | (+ g (sqrt (* (+ g h) (- g h)))) |
| 16× | sqrt-div |
| 8× | frac-times |
| 7× | flip-+ |
| 7× | flip3-+ |
| 7× | cbrt-prod |
| 6× | flip-- |
| 6× | add-cube-cbrt |
| 6× | flip3-- |
| 6× | *-un-lft-identity |
| 6× | add-sqr-sqrt |
| 4× | add-log-exp |
| 4× | add-exp-log |
| 4× | associate-*r/ |
| 4× | associate-*l/ |
| 4× | add-cbrt-cube |
| 4× | pow1 |
| 3× | times-frac |
| 2× | sqrt-prod |
| 2× | pow1/2 |
| 1× | div-inv |
| 1× | pow1/3 |
| 1× | cbrt-div |
| 1× | +-commutative |
| 4.0ms | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 2.0ms | (sqrt (* (+ g h) (- g h))) |
| 2.0ms | (+ g (sqrt (* (+ g h) (- g h)))) |
| 1.0ms | (sqrt (* (+ g h) (- g h))) |
| 219.0ms | (cbrt (/ (- (sqrt (* (+ g h) (- g h))) g) (* a 2))) |
| 53.0ms | (+ g (sqrt (* (+ g h) (- g h)))) |
| 50.0ms | (sqrt (* (+ g h) (- g h))) |
| 29.0ms | (sqrt (* (+ g h) (- g h))) |
| 375.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 348.0ms | (sqrt (* (+ (pow g 3) (pow h 3)) (- g h))) |
| 324.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 320.0ms | (sqrt (* (+ (pow g 3) (pow h 3)) (- g h))) |
| 255.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))))))))) |
22 alts after pruning (22 fresh and 0 done)
Merged error: 30.6b
Found 4 expressions with local error:
| 30.6b | (sqrt (* (+ g h) (- g h))) |
| 30.6b | (sqrt (* (+ g h) (- g h))) |
| 3.3b | (+ g (sqrt (* (+ g h) (- g h)))) |
| 2.2b | (- (sqrt (* (+ g h) (- g h))) g) |
| 16× | sqrt-div |
| 8× | frac-times |
| 7× | flip-- |
| 7× | flip-+ |
| 7× | flip3-- |
| 7× | flip3-+ |
| 4× | add-log-exp |
| 4× | add-cube-cbrt |
| 4× | add-exp-log |
| 4× | associate-*r/ |
| 4× | associate-*l/ |
| 4× | add-cbrt-cube |
| 4× | *-un-lft-identity |
| 4× | pow1 |
| 4× | add-sqr-sqrt |
| 2× | sqrt-prod |
| 2× | pow1/2 |
| 1× | sub-neg |
| 1× | +-commutative |
| 5.0ms | (- (sqrt (* (+ g h) (- g h))) g) |
| 3.0ms | (sqrt (* (+ g h) (- g h))) |
| 2.0ms | (sqrt (* (+ g h) (- g h))) |
| 1.0ms | (+ g (sqrt (* (+ g h) (- g h)))) |
| 40.0ms | (sqrt (* (+ g h) (- g h))) |
| 38.0ms | (sqrt (* (+ g h) (- g h))) |
| 35.0ms | (+ g (sqrt (* (+ g h) (- g h)))) |
| 35.0ms | (- (sqrt (* (+ g h) (- g h))) g) |
| 502.0ms | (sqrt (* (- (* g g) (* h h)) (- (* g g) (* h h)))) |
| 338.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 333.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 282.0ms | (sqrt (* (+ (pow g 3) (pow h 3)) (- g h))) |
| 227.0ms | (sqrt (* (+ (pow g 3) (pow h 3)) (- (pow g 3) (pow h 3)))) |
22 alts after pruning (22 fresh and 0 done)
Merged error: 30.5b
Found 4 expressions with local error:
| 30.6b | (sqrt (* (+ g h) (- g h))) |
| 30.6b | (sqrt (* (+ g h) (- g h))) |
| 3.3b | (+ g (sqrt (* (+ g h) (- g h)))) |
| 2.2b | (- (sqrt (* (+ g h) (- g h))) g) |
| 16× | sqrt-div |
| 8× | frac-times |
| 7× | flip-- |
| 7× | flip-+ |
| 7× | flip3-- |
| 7× | flip3-+ |
| 4× | add-log-exp |
| 4× | add-cube-cbrt |
| 4× | add-exp-log |
| 4× | associate-*r/ |
| 4× | associate-*l/ |
| 4× | add-cbrt-cube |
| 4× | *-un-lft-identity |
| 4× | pow1 |
| 4× | add-sqr-sqrt |
| 2× | sqrt-prod |
| 2× | pow1/2 |
| 1× | sub-neg |
| 1× | +-commutative |
| 5.0ms | (- (sqrt (* (+ g h) (- g h))) g) |
| 2.0ms | (sqrt (* (+ g h) (- g h))) |
| 1.0ms | (sqrt (* (+ g h) (- g h))) |
| 1.0ms | (+ g (sqrt (* (+ g h) (- g h)))) |
| 45.0ms | (+ g (sqrt (* (+ g h) (- g h)))) |
| 43.0ms | (sqrt (* (+ g h) (- g h))) |
| 41.0ms | (- (sqrt (* (+ g h) (- g h))) g) |
| 33.0ms | (sqrt (* (+ g h) (- g h))) |
| 376.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 358.0ms | (sqrt (* (+ g h) (- (* g g) (* h h)))) |
| 282.0ms | (sqrt (* (+ (pow g 3) (pow h 3)) (- g h))) |
| 279.0ms | (sqrt (* (+ (pow g 3) (pow h 3)) (- g h))) |
| 208.0ms | (sqrt (* (+ (pow g 3) (pow h 3)) (- (pow g 3) (pow h 3)))) |
22 alts after pruning (22 fresh and 0 done)
Merged error: 30.5b
64.9% (1.0b remaining)
Error of 30.9b against oracle of 29.8b and baseline of 32.8b
| 5.4s | 23779× | body | 80 | nan |
| 4.6s | 2639× | body | 2560 | valid |
| 2.9s | 1928× | body | 1280 | valid |
| 2.9s | 1174× | body | 5120 | valid |
| 1.3s | 1074× | body | 640 | valid |
| 692.0ms | 599× | body | 320 | valid |
| 199.0ms | 427× | body | 160 | valid |
| 34.0ms | 159× | body | 80 | valid |