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

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. Simplified2.0

    \[\leadsto \color{blue}{\frac{{k}^{m} \cdot a}{1 + k \cdot \left(k + 10\right)}}\]
  3. Using strategy rm
  4. Applied *-un-lft-identity2.0

    \[\leadsto \frac{{k}^{m} \cdot a}{\color{blue}{1 \cdot \left(1 + k \cdot \left(k + 10\right)\right)}}\]
  5. Applied times-frac2.0

    \[\leadsto \color{blue}{\frac{{k}^{m}}{1} \cdot \frac{a}{1 + k \cdot \left(k + 10\right)}}\]
  6. Simplified2.0

    \[\leadsto \color{blue}{{k}^{m}} \cdot \frac{a}{1 + k \cdot \left(k + 10\right)}\]
  7. Using strategy rm
  8. Applied add-sqr-sqrt2.0

    \[\leadsto \color{blue}{\left(\sqrt{{k}^{m}} \cdot \sqrt{{k}^{m}}\right)} \cdot \frac{a}{1 + k \cdot \left(k + 10\right)}\]
  9. Applied associate-*l*2.0

    \[\leadsto \color{blue}{\sqrt{{k}^{m}} \cdot \left(\sqrt{{k}^{m}} \cdot \frac{a}{1 + k \cdot \left(k + 10\right)}\right)}\]
  10. Final simplification2.0

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

Reproduce

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

Details

Time bar (total: 24.8s)Debug log

sample139.0ms

Algorithm
intervals

simplify62.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

62.0ms
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k)))

prune11.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 1.9b

localize32.0ms

Local error

Found 3 expressions with local error:

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

rewrite15.0ms

Algorithm
rewrite-expression-head
Counts
3 → 47
Calls

3 calls. Slowest were:

9.0ms
(/ (* (pow k m) a) (+ 1 (* k (+ k 10))))
4.0ms
(* (pow k m) a)
2.0ms
(* k (+ k 10))

series252.0ms

Counts
3 → 9
Calls

3 calls. Slowest were:

120.0ms
(* (pow k m) a)
113.0ms
(/ (* (pow k m) a) (+ 1 (* k (+ k 10))))
18.0ms
(* k (+ k 10))

simplify2.2s

Counts
32 → 56
Calls

32 calls. Slowest were:

899.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))))
289.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))))
140.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)))))

prune629.0ms

Pruning

4 alts after pruning (4 fresh and 0 done)

Merged error: 1.8b

localize12.0ms

Local error

Found 3 expressions with local error:

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

rewrite11.0ms

Algorithm
rewrite-expression-head
Counts
3 → 51
Calls

3 calls. Slowest were:

7.0ms
(* (pow k m) (/ a (+ 1 (* k (+ k 10)))))
2.0ms
(* k (+ k 10))
1.0ms
(/ a (+ 1 (* k (+ k 10))))

series194.0ms

Counts
3 → 9
Calls

3 calls. Slowest were:

115.0ms
(* (pow k m) (/ a (+ 1 (* k (+ k 10)))))
49.0ms
(/ a (+ 1 (* k (+ k 10))))
29.0ms
(* k (+ k 10))

simplify2.5s

Counts
33 → 60
Calls

33 calls. Slowest were:

484.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))))
272.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))))
225.0ms
(- (+ (/ a (pow k 2)) (* 99 (/ a (pow k 4)))) (* 10 (/ a (pow k 3))))

prune718.0ms

Pruning

4 alts after pruning (4 fresh and 0 done)

Merged error: 1.8b

localize16.0ms

Local error

Found 4 expressions with local error:

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

rewrite16.0ms

Algorithm
rewrite-expression-head
Counts
4 → 64
Calls

4 calls. Slowest were:

12.0ms
(* (sqrt (pow k m)) (* (sqrt (pow k m)) (/ a (+ 1 (* k (+ k 10))))))
1.0ms
(* k (+ k 10))
1.0ms
(/ a (+ 1 (* k (+ k 10))))

series269.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

117.0ms
(* (sqrt (pow k m)) (* (sqrt (pow k m)) (/ a (+ 1 (* k (+ k 10))))))
84.0ms
(sqrt (pow k m))
36.0ms
(/ a (+ 1 (* k (+ k 10))))
32.0ms
(* k (+ k 10))

simplify3.8s

Counts
41 → 76
Calls

41 calls. Slowest were:

529.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))))
458.0ms
(* (* (* (sqrt (pow k m)) (sqrt (pow k m))) (sqrt (pow k m))) (* (* (* (sqrt (pow k m)) (/ a (+ 1 (* k (+ k 10))))) (* (sqrt (pow k m)) (/ a (+ 1 (* k (+ k 10)))))) (* (sqrt (pow k m)) (/ a (+ 1 (* k (+ k 10)))))))
452.0ms
(* (* (* (sqrt (pow k m)) (sqrt (pow k m))) (sqrt (pow k m))) (* (* (* (sqrt (pow k m)) (sqrt (pow k m))) (sqrt (pow k m))) (* (* (/ a (+ 1 (* k (+ k 10)))) (/ a (+ 1 (* k (+ k 10))))) (/ a (+ 1 (* k (+ k 10)))))))

prune906.0ms

Pruning

4 alts after pruning (3 fresh and 1 done)

Merged error: 1.8b

localize23.0ms

Local error

Found 4 expressions with local error:

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

rewrite16.0ms

Algorithm
rewrite-expression-head
Counts
4 → 117
Calls

4 calls. Slowest were:

8.0ms
(* (/ (pow k m) (sqrt (+ 1 (* k (+ k 10))))) (/ a (sqrt (+ 1 (* k (+ k 10))))))
3.0ms
(/ (pow k m) (sqrt (+ 1 (* k (+ k 10)))))
2.0ms
(sqrt (+ 1 (* k (+ k 10))))

series235.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

107.0ms
(* (/ (pow k m) (sqrt (+ 1 (* k (+ k 10))))) (/ a (sqrt (+ 1 (* k (+ k 10))))))
85.0ms
(/ (pow k m) (sqrt (+ 1 (* k (+ k 10)))))
27.0ms
(sqrt (+ 1 (* k (+ k 10))))
15.0ms
(sqrt (+ 1 (* k (+ k 10))))

simplify7.6s

Counts
112 → 129
Calls

112 calls. Slowest were:

584.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)))))))
559.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))))
532.0ms
(sqrt (+ (pow 1 3) (pow (* k (+ k 10)) 3)))

prune1.6s

Pruning

4 alts after pruning (2 fresh and 2 done)

Merged error: 1.8b

regimes139.0ms

Accuracy

0% (0.0b remaining)

Error of 2.0b against oracle of 2.0b and baseline of 2.0b

bsearch2.0ms

end0.0ms

sample3.4s

Algorithm
intervals