Average Error: 2.0 → 1.9
Time: 13.9s
Precision: 64
Internal Precision: 128
\[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
\[\frac{{k}^{m} \cdot a}{1 + \left(k + 10\right) \cdot k}\]

Error

Bits error versus a

Bits error versus k

Bits error versus m

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 2.0

    \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
  2. Simplified1.9

    \[\leadsto \color{blue}{\frac{{k}^{m} \cdot a}{1 + k \cdot \left(k + 10\right)}}\]
  3. Final simplification1.9

    \[\leadsto \frac{{k}^{m} \cdot a}{1 + \left(k + 10\right) \cdot k}\]

Reproduce

herbie shell --seed 2019022 
(FPCore (a k m)
  :name "Falkner and Boettcher, Appendix A"
  (/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))

Details

Time bar (total: 13.6s)Debug log

sample105.0ms

Algorithm
intervals
Results
64.0ms390×body80valid
19.0ms124×body80nan

simplify65.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
65.0ms
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k)))

prune23.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 2.9b

localize33.0ms

Local error

Found 3 expressions with local error:

2.9b
(/ (* (pow k m) a) (+ 1 (* k (+ k 10))))
0.0b
(* k (+ k 10))
0.0b
(+ 1 (* k (+ k 10)))

rewrite7.0ms

Algorithm
rewrite-expression-head
Rules
add-cube-cbrt
*-un-lft-identity
add-sqr-sqrt
add-exp-log
add-cbrt-cube
add-log-exp
flip-+
associate-*r*
times-frac
flip3-+
associate-/r*
pow1
associate-/r/
associate-*r/
distribute-lft-in
associate-+r+
distribute-rgt-in
associate-/l*
div-inv
*-commutative
div-exp
frac-2neg
clear-num
+-commutative
cbrt-undiv
Counts
3 → 48
Calls
3 calls:
Slowest
5.0ms
(/ (* (pow k m) a) (+ 1 (* k (+ k 10))))
1.0ms
(* k (+ k 10))
1.0ms
(+ 1 (* k (+ k 10)))

series143.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
113.0ms
(/ (* (pow k m) a) (+ 1 (* k (+ k 10))))
18.0ms
(* k (+ k 10))
13.0ms
(+ 1 (* k (+ k 10)))

simplify1.5s

Counts
32 → 57
Calls
32 calls:
Slowest
474.0ms
(- (+ (* 99 (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (pow k 4))) (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (pow k 2))) (* 10 (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (pow k 3))))
228.0ms
(- (+ (* 99 (/ (* a (exp (* m (- (log -1) (log (/ -1 k)))))) (pow k 4))) (/ (* a (exp (* m (- (log -1) (log (/ -1 k)))))) (pow k 2))) (* 10 (/ (* a (exp (* m (- (log -1) (log (/ -1 k)))))) (pow k 3))))
126.0ms
(/ (* (* (* (pow k m) a) (* (pow k m) a)) (* (pow k m) a)) (* (* (+ 1 (* k (+ k 10))) (+ 1 (* k (+ k 10)))) (+ 1 (* k (+ k 10)))))
106.0ms
(- (+ a (* (log k) (* m a))) (* 10 (* a k)))
99.0ms
(+ (* 1 1) (- (* (* k (+ k 10)) (* k (+ k 10))) (* 1 (* k (+ k 10)))))

prune515.0ms

Pruning

2 alts after pruning (1 fresh and 1 done)

Merged error: 2.9b

localize11.0ms

Local error

Found 4 expressions with local error:

14.1b
(sqrt (+ 1 (* k (+ k 10))))
14.1b
(sqrt (+ 1 (* k (+ k 10))))
0.0b
(* (/ (pow k m) (sqrt (+ 1 (* k (+ k 10))))) (/ a (sqrt (+ 1 (* k (+ k 10))))))
0.0b
(/ a (sqrt (+ 1 (* k (+ k 10)))))

rewrite15.0ms

Algorithm
rewrite-expression-head
Rules
24×associate-*l*
24×add-sqr-sqrt
22×add-cube-cbrt
22×*-un-lft-identity
18×sqrt-prod
18×times-frac
11×add-exp-log
10×sqrt-div
add-cbrt-cube
associate-/r/
associate-*r*
associate-/r*
pow1
flip-+
flip3-+
add-log-exp
div-inv
prod-exp
cbrt-unprod
div-exp
pow1/2
rem-sqrt-square
*-commutative
associate-*r/
associate-*l/
pow-prod-down
frac-2neg
clear-num
cbrt-undiv
pow-to-exp
frac-times
Counts
4 → 93
Calls
4 calls:
Slowest
7.0ms
(* (/ (pow k m) (sqrt (+ 1 (* k (+ k 10))))) (/ a (sqrt (+ 1 (* k (+ k 10))))))
5.0ms
(/ a (sqrt (+ 1 (* k (+ k 10)))))
1.0ms
(sqrt (+ 1 (* k (+ k 10))))
1.0ms
(sqrt (+ 1 (* k (+ k 10))))

series197.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
123.0ms
(* (/ (pow k m) (sqrt (+ 1 (* k (+ k 10))))) (/ a (sqrt (+ 1 (* k (+ k 10))))))
42.0ms
(/ a (sqrt (+ 1 (* k (+ k 10)))))
18.0ms
(sqrt (+ 1 (* k (+ k 10))))
15.0ms
(sqrt (+ 1 (* k (+ k 10))))

simplify6.2s

Counts
71 → 105
Calls
71 calls:
Slowest
471.0ms
(sqrt (+ (pow 1 3) (pow (* k (+ k 10)) 3)))
469.0ms
(- (+ (* 99 (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (pow k 4))) (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (pow k 2))) (* 10 (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (pow k 3))))
446.0ms
(sqrt (+ (pow 1 3) (pow (* k (+ k 10)) 3)))
423.0ms
(/ (pow k m) (sqrt (+ (pow 1 3) (pow (* k (+ k 10)) 3))))
416.0ms
(* (* (* (/ (pow k m) (sqrt (+ 1 (* k (+ k 10))))) (/ (pow k m) (sqrt (+ 1 (* k (+ k 10)))))) (/ (pow k m) (sqrt (+ 1 (* k (+ k 10)))))) (* (* (/ a (sqrt (+ 1 (* k (+ k 10))))) (/ a (sqrt (+ 1 (* k (+ k 10)))))) (/ a (sqrt (+ 1 (* k (+ k 10)))))))

prune1.4s

Pruning

2 alts after pruning (0 fresh and 2 done)

Merged error: 2.9b

regimes135.0ms

Accuracy

0% (0.0b remaining)

Error of 1.9b against oracle of 1.9b and baseline of 1.9b

bsearch3.0ms

end0.0ms

sample3.2s

Algorithm
intervals
Results
2.2s12010×body80valid
590.0ms4281×body80nan