Average Error: 0.0 → 0.0
Time: 42.1s
Precision: 64
Internal Precision: 128
\[\frac{-\left(f + n\right)}{f - n}\]
\[\sqrt[3]{\frac{\frac{\left(-n\right) - f}{f - n}}{\frac{f - n}{n + f} \cdot \frac{f - n}{n + f}}}\]

Error

Bits error versus f

Bits error versus n

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\frac{-\left(f + n\right)}{f - n}\]
  2. Using strategy rm
  3. Applied add-cbrt-cube41.7

    \[\leadsto \frac{-\left(f + n\right)}{\color{blue}{\sqrt[3]{\left(\left(f - n\right) \cdot \left(f - n\right)\right) \cdot \left(f - n\right)}}}\]
  4. Applied add-cbrt-cube41.9

    \[\leadsto \frac{\color{blue}{\sqrt[3]{\left(\left(-\left(f + n\right)\right) \cdot \left(-\left(f + n\right)\right)\right) \cdot \left(-\left(f + n\right)\right)}}}{\sqrt[3]{\left(\left(f - n\right) \cdot \left(f - n\right)\right) \cdot \left(f - n\right)}}\]
  5. Applied cbrt-undiv41.9

    \[\leadsto \color{blue}{\sqrt[3]{\frac{\left(\left(-\left(f + n\right)\right) \cdot \left(-\left(f + n\right)\right)\right) \cdot \left(-\left(f + n\right)\right)}{\left(\left(f - n\right) \cdot \left(f - n\right)\right) \cdot \left(f - n\right)}}}\]
  6. Simplified0.0

    \[\leadsto \sqrt[3]{\color{blue}{\frac{\frac{\left(-n\right) - f}{f - n}}{\frac{f - n}{n + f} \cdot \frac{f - n}{n + f}}}}\]
  7. Final simplification0.0

    \[\leadsto \sqrt[3]{\frac{\frac{\left(-n\right) - f}{f - n}}{\frac{f - n}{n + f} \cdot \frac{f - n}{n + f}}}\]

Reproduce

herbie shell --seed 2019008 +o rules:numerics
(FPCore (f n)
  :name "subtraction fraction"
  (/ (- (+ f n)) (- f n)))

Details

Time bar (total: 41.8s)Debug log

sample70.0ms

Algorithm
intervals

simplify71.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

71.0ms
(/ (- (+ f n)) (- f n))

prune12.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 0.0b

localize24.0ms

Local error

Found 1 expressions with local error:

0.0b
(/ (- (+ f n)) (- f n))

rewrite15.0ms

Algorithm
rewrite-expression-head
Counts
1 → 63
Calls

1 calls. Slowest were:

11.0ms
(/ (- (+ f n)) (- f n))

series76.0ms

Counts
1 → 3
Calls

1 calls. Slowest were:

76.0ms
(/ (- (+ f n)) (- f n))

simplify1.2s

Counts
81 → 66
Calls

81 calls. Slowest were:

256.0ms
(- (- (* f f) (* n n)))
80.0ms
(/ (- (* (cbrt (+ f n)) (cbrt (+ f n)))) (* (cbrt (- f n)) (cbrt (- f n))))
72.0ms
(/ (* (* (- (+ f n)) (- (+ f n))) (- (+ f n))) (* (* (- f n) (- f n)) (- f n)))

prune556.0ms

Pruning

4 alts after pruning (4 fresh and 0 done)

Merged error: 0b

localize20.0ms

Local error

Found 4 expressions with local error:

0.0b
(/ (/ (- (- n) f) (- f n)) (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))))
0.0b
(* (/ (- f n) (+ n f)) (/ (- f n) (+ n f)))
0.0b
(cbrt (/ (/ (- (- n) f) (- f n)) (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f)))))
0.0b
(/ (- (- n) f) (- f n))

rewrite50.0ms

Algorithm
rewrite-expression-head
Counts
4 → 190
Calls

4 calls. Slowest were:

14.0ms
(/ (/ (- (- n) f) (- f n)) (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))))
14.0ms
(/ (- (- n) f) (- f n))
9.0ms
(cbrt (/ (/ (- (- n) f) (- f n)) (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f)))))

series320.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

149.0ms
(cbrt (/ (/ (- (- n) f) (- f n)) (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f)))))
72.0ms
(/ (/ (- (- n) f) (- f n)) (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))))
62.0ms
(* (/ (- f n) (+ n f)) (/ (- f n) (+ n f)))
38.0ms
(/ (- (- n) f) (- f n))

simplify19.9s

Counts
180 → 202
Calls

180 calls. Slowest were:

858.0ms
(* (- f n) (/ (- f n) (+ n f)))
650.0ms
(* (* (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))) (/ (- f n) (+ n f))) (* (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))) (/ (- f n) (+ n f))))
489.0ms
(- (- (log (- (- n) f)) (log (- f n))) (+ (- (log (- f n)) (log (+ n f))) (log (/ (- f n) (+ n f)))))

prune2.0s

Pruning

4 alts after pruning (3 fresh and 1 done)

Merged error: 0b

localize30.0ms

Local error

Found 4 expressions with local error:

0.0b
(* (cbrt (/ (- (- n) f) (- f n))) (cbrt (/ (- (- n) f) (- f n))))
0.0b
(* (/ (- f n) (+ n f)) (/ (- f n) (+ n f)))
0.0b
(cbrt (/ (* (cbrt (/ (- (- n) f) (- f n))) (cbrt (/ (- (- n) f) (- f n)))) (/ (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))) (cbrt (/ (- (- n) f) (- f n))))))
0.0b
(/ (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))) (cbrt (/ (- (- n) f) (- f n))))

rewrite97.0ms

Algorithm
rewrite-expression-head
Counts
4 → 214
Calls

4 calls. Slowest were:

32.0ms
(/ (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))) (cbrt (/ (- (- n) f) (- f n))))
21.0ms
(cbrt (/ (* (cbrt (/ (- (- n) f) (- f n))) (cbrt (/ (- (- n) f) (- f n)))) (/ (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))) (cbrt (/ (- (- n) f) (- f n))))))
21.0ms
(* (cbrt (/ (- (- n) f) (- f n))) (cbrt (/ (- (- n) f) (- f n))))

series769.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

351.0ms
(/ (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))) (cbrt (/ (- (- n) f) (- f n))))
226.0ms
(* (cbrt (/ (- (- n) f) (- f n))) (cbrt (/ (- (- n) f) (- f n))))
138.0ms
(cbrt (/ (* (cbrt (/ (- (- n) f) (- f n))) (cbrt (/ (- (- n) f) (- f n)))) (/ (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))) (cbrt (/ (- (- n) f) (- f n))))))
55.0ms
(* (/ (- f n) (+ n f)) (/ (- f n) (+ n f)))

simplify11.7s

Counts
203 → 226
Calls

203 calls. Slowest were:

481.0ms
(* (* (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))) (/ (- f n) (+ n f))) (* (* (/ (- f n) (+ n f)) (/ (- f n) (+ n f))) (/ (- f n) (+ n f))))
424.0ms
(* (- f n) (/ (- f n) (+ n f)))
398.0ms
(* (/ (- (- n) f) (- f n)) (/ (- (- n) f) (- f n)))

prune2.3s

Pruning

4 alts after pruning (2 fresh and 2 done)

Merged error: 0b

localize5.0ms

Local error

Found 2 expressions with local error:

0.2b
(* (- (+ f n)) (/ 1 (- f n)))
0.0b
(/ 1 (- f n))

rewrite6.0ms

Algorithm
rewrite-expression-head
Counts
2 → 57
Calls

2 calls. Slowest were:

5.0ms
(* (- (+ f n)) (/ 1 (- f n)))
1.0ms
(/ 1 (- f n))

series51.0ms

Counts
2 → 6
Calls

2 calls. Slowest were:

34.0ms
(* (- (+ f n)) (/ 1 (- f n)))
17.0ms
(/ 1 (- f n))

simplify1.1s

Counts
38 → 63
Calls

38 calls. Slowest were:

284.0ms
(* (- (- (* f f) (* n n))) 1)
260.0ms
(* (- (+ f n)) (/ 1 (- f n)))
96.0ms
(* (- (+ (pow f 3) (pow n 3))) 1)

prune420.0ms

Pruning

4 alts after pruning (1 fresh and 3 done)

Merged error: 0b

regimes103.0ms

Accuracy

0% (0.0b remaining)

Error of 0.0b against oracle of 0.0b and baseline of 0.0b

bsearch2.0ms

end0.0ms

sample872.0ms

Algorithm
intervals