



Bits error versus eps
Results
| Original | 58.6 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 58.6
Taylor expanded around 0 0.2
Final simplification0.2
herbie shell --seed 2019018
(FPCore (eps)
:name "logq (problem 3.4.3)"
:herbie-target
(* -2 (+ (+ eps (/ (pow eps 3) 3)) (/ (pow eps 5) 5)))
(log (/ (- 1 eps) (+ 1 eps))))
Time bar (total: 15.4s)Debug log
| 59.0ms | 100× | body | 1280 | valid |
| 25.0ms | 78× | body | 640 | valid |
| 12.0ms | 257× | body | 80 | nan |
| 10.0ms | 49× | body | 320 | valid |
| 3.0ms | 19× | body | 160 | valid |
| 1.0ms | 10× | body | 80 | valid |
| 10.0ms | (log (/ (- 1 eps) (+ 1 eps))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 58.2b
Found 2 expressions with local error:
| 6.0b | (log (/ (- 1 eps) (+ 1 eps))) |
| 0.0b | (/ (- 1 eps) (+ 1 eps)) |
| 18× | times-frac |
| 17× | add-cube-cbrt |
| 17× | *-un-lft-identity |
| 17× | add-sqr-sqrt |
| 15× | log-prod |
| 7× | add-exp-log |
| 4× | associate-/r/ |
| 4× | add-cbrt-cube |
| 3× | associate-/l* |
| 3× | associate-/r* |
| 3× | pow1 |
| 2× | associate-/l/ |
| 2× | add-log-exp |
| 2× | div-inv |
| 2× | flip-+ |
| 2× | rem-log-exp |
| 2× | div-exp |
| 2× | flip3-+ |
| 1× | flip-- |
| 1× | log-pow |
| 1× | div-sub |
| 1× | flip3-- |
| 1× | frac-2neg |
| 1× | clear-num |
| 1× | log-div |
| 1× | cbrt-undiv |
| 16.0ms | (/ (- 1 eps) (+ 1 eps)) |
| 2.0ms | (log (/ (- 1 eps) (+ 1 eps))) |
| 66.0ms | (log (/ (- 1 eps) (+ 1 eps))) |
| 16.0ms | (/ (- 1 eps) (+ 1 eps)) |
| 337.0ms | (/ (* (* (- 1 eps) (- 1 eps)) (- 1 eps)) (* (* (+ 1 eps) (+ 1 eps)) (+ 1 eps))) |
| 155.0ms | (- (+ (* 2/3 (pow eps 3)) (+ (* 2/5 (pow eps 5)) (* 2 eps)))) |
| 138.0ms | (- (log -1) (+ (* 2 (/ 1 eps)) (* 2/3 (/ 1 (pow eps 3))))) |
| 108.0ms | (- (log -1) (+ (* 2 (/ 1 eps)) (* 2/3 (/ 1 (pow eps 3))))) |
| 100.0ms | (- (* 2 (/ 1 eps)) (+ (* 2 (/ 1 (pow eps 2))) 1)) |
5 alts after pruning (5 fresh and 0 done)
Merged error: 0.0b
Found 3 expressions with local error:
| 0.1b | (* 2/3 (pow eps 3)) |
| 0.1b | (* 2/5 (pow eps 5)) |
| 0.0b | (+ (* 2/3 (pow eps 3)) (+ (* 2/5 (pow eps 5)) (* 2 eps))) |
| 8× | add-log-exp |
| 8× | associate-*r* |
| 5× | add-cube-cbrt |
| 5× | *-un-lft-identity |
| 5× | add-sqr-sqrt |
| 3× | add-exp-log |
| 3× | add-cbrt-cube |
| 3× | sum-log |
| 3× | pow1 |
| 2× | *-commutative |
| 1× | flip-+ |
| 1× | unpow3 |
| 1× | flip3-+ |
| 1× | associate-+r+ |
| 1× | +-commutative |
| 1× | cube-mult |
| 12.0ms | (+ (* 2/3 (pow eps 3)) (+ (* 2/5 (pow eps 5)) (* 2 eps))) |
| 2.0ms | (* 2/3 (pow eps 3)) |
| 2.0ms | (* 2/5 (pow eps 5)) |
| 42.0ms | (+ (* 2/3 (pow eps 3)) (+ (* 2/5 (pow eps 5)) (* 2 eps))) |
| 35.0ms | (* 2/5 (pow eps 5)) |
| 29.0ms | (* 2/3 (pow eps 3)) |
| 136.0ms | (* (exp (* 2/3 (pow eps 3))) (* (exp (* 2/5 (pow eps 5))) (exp (* 2 eps)))) |
| 123.0ms | (* (exp (* 2/3 (pow eps 3))) (exp (+ (* 2/5 (pow eps 5)) (* 2 eps)))) |
| 57.0ms | (+ (* 2/3 (pow eps 3)) (+ (* 2/5 (pow eps 5)) (* 2 eps))) |
| 37.0ms | (+ (* 2/3 (pow eps 3)) (+ (* 2 eps) (* 2/5 (pow eps 5)))) |
| 36.0ms | (+ (* 2/3 (pow eps 3)) (+ (* 2 eps) (* 2/5 (pow eps 5)))) |
5 alts after pruning (4 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 6.0b | (log (- (/ 1 (+ 1 eps)) (/ eps (+ 1 eps)))) |
| 0.0b | (- (/ 1 (+ 1 eps)) (/ eps (+ 1 eps))) |
| 0.0b | (/ 1 (+ 1 eps)) |
| 0.0b | (/ eps (+ 1 eps)) |
| 15× | *-un-lft-identity |
| 12× | associate-/r/ |
| 11× | add-sqr-sqrt |
| 10× | div-inv |
| 10× | log-prod |
| 8× | distribute-rgt-out-- |
| 7× | add-cube-cbrt |
| 6× | add-log-exp |
| 6× | flip-+ |
| 6× | add-exp-log |
| 6× | flip3-+ |
| 6× | associate-/r* |
| 6× | pow1 |
| 4× | distribute-lft-out-- |
| 4× | add-cbrt-cube |
| 4× | log-div |
| 2× | difference-of-squares |
| 2× | sub-div |
| 2× | flip-- |
| 2× | frac-sub |
| 2× | flip3-- |
| 2× | frac-2neg |
| 2× | clear-num |
| 1× | inv-pow |
| 1× | pow-flip |
| 1× | log-pow |
| 1× | rem-log-exp |
| 1× | diff-log |
| 1× | sub-neg |
| 1× | rec-exp |
| 5.0ms | (- (/ 1 (+ 1 eps)) (/ eps (+ 1 eps))) |
| 4.0ms | (log (- (/ 1 (+ 1 eps)) (/ eps (+ 1 eps)))) |
| 2.0ms | (/ 1 (+ 1 eps)) |
| 1.0ms | (/ eps (+ 1 eps)) |
| 108.0ms | (log (- (/ 1 (+ 1 eps)) (/ eps (+ 1 eps)))) |
| 15.0ms | (- (/ 1 (+ 1 eps)) (/ eps (+ 1 eps))) |
| 13.0ms | (/ eps (+ 1 eps)) |
| 6.0ms | (/ 1 (+ 1 eps)) |
| 519.0ms | (log (- (* 1 (+ 1 eps)) (* (+ 1 eps) eps))) |
| 386.0ms | (log (- (* (/ 1 (+ 1 eps)) (/ 1 (+ 1 eps))) (* (/ eps (+ 1 eps)) (/ eps (+ 1 eps))))) |
| 275.0ms | (- (* 1 (+ 1 eps)) (* (+ 1 eps) eps)) |
| 243.0ms | (log (- (pow (/ 1 (+ 1 eps)) 3) (pow (/ eps (+ 1 eps)) 3))) |
| 171.0ms | (- (log -1) (+ (* 2 (/ 1 eps)) (* 2/3 (/ 1 (pow eps 3))))) |
4 alts after pruning (3 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 6.1b | (log (- 1 eps)) |
| 6.1b | (log (/ 1 (+ 1 eps))) |
| 0.0b | (/ 1 (+ 1 eps)) |
| 0.0b | (+ (log (- 1 eps)) (log (/ 1 (+ 1 eps)))) |
| 18× | log-prod |
| 13× | *-un-lft-identity |
| 12× | pow1 |
| 9× | add-cube-cbrt |
| 9× | add-sqr-sqrt |
| 8× | log-pow |
| 8× | add-exp-log |
| 6× | associate-/r/ |
| 6× | associate-+r+ |
| 6× | log-div |
| 4× | add-log-exp |
| 4× | distribute-lft-out |
| 4× | flip-+ |
| 4× | add-cbrt-cube |
| 4× | flip3-+ |
| 3× | div-inv |
| 3× | log-rec |
| 3× | rem-log-exp |
| 3× | associate-/r* |
| 3× | associate-+l+ |
| 2× | inv-pow |
| 2× | flip-- |
| 2× | pow-flip |
| 2× | associate-+l- |
| 2× | flip3-- |
| 2× | rec-exp |
| 1× | unsub-neg |
| 1× | frac-2neg |
| 1× | sum-log |
| 1× | associate-+r- |
| 1× | clear-num |
| 1× | +-commutative |
| 5.0ms | (+ (log (- 1 eps)) (log (/ 1 (+ 1 eps)))) |
| 1.0ms | (/ 1 (+ 1 eps)) |
| 1.0ms | (log (/ 1 (+ 1 eps))) |
| 1.0ms | (log (- 1 eps)) |
| 128.0ms | (+ (log (- 1 eps)) (log (/ 1 (+ 1 eps)))) |
| 33.0ms | (log (/ 1 (+ 1 eps))) |
| 27.0ms | (log (- 1 eps)) |
| 9.0ms | (/ 1 (+ 1 eps)) |
| 327.0ms | (- (+ (* 1/2 (pow eps 2)) (+ (* 1/3 (pow eps 3)) eps))) |
| 258.0ms | (- (+ (/ 1 eps) (+ (* 1/2 (/ 1 (pow eps 2))) (log (/ -1 eps))))) |
| 250.0ms | (- (+ (* 1/2 (/ 1 (pow eps 2))) (+ (log (/ -1 eps)) (log -1))) (/ 1 eps)) |
| 210.0ms | (- (* 1/2 (pow eps 2)) (+ (* 1/3 (pow eps 3)) eps)) |
| 188.0ms | (- (log -1) (+ (/ 1 eps) (+ (* 1/2 (/ 1 (pow eps 2))) (log (/ 1 eps))))) |
5 alts after pruning (4 fresh and 1 done)
Merged error: 0.0b
0% (0.2b remaining)
Error of 0.2b against oracle of 0.0b and baseline of 0.2b
| 3.2s | 3428× | body | 1280 | valid |
| 1.2s | 2533× | body | 640 | valid |
| 553.0ms | 7852× | body | 80 | nan |
| 332.0ms | 1217× | body | 320 | valid |
| 129.0ms | 632× | body | 160 | valid |
| 37.0ms | 191× | body | 80 | valid |