### Recommended Links

Like this piece? Share it with your friends:

This morning Dave Richeson posted a humorous fake proof that depends on the famous approximation 22/7 for pi. It occurred to me that nearly everyone knows a decent rational approximation to pi. Some people may know more. But hardly anyone, myself included, knows a decent rational approximation for *e*.

Another approximation for pi is 355/113. I like this approximation because it’s easy to remember: take the sequence 113355, split it in the middle, and make it into a fraction. It’s accurate to six decimal places, which is sufficient for most practical applications.

The approximations 22/7 and 355/113 are part of the sequence of approximations coming from the continued fraction approximation for pi. So to come up with rational approximations for *e*, I turned to its continued fraction representation.

The best analog of the approximation 22/7 for pi may be the approximation 19/7 for *e*. Obviously the denominators are the same, and the accuracy of the two approximations is roughly comparable.

Here’s how you can make your own rational approximations for *e*. Find the coefficients in the continued fraction for *e*, for example here. You can turn this into a sequence of approximations by using the following Python code:

from __future__ import division
from math import e
e_frac = [2,1,2,1,1,4,1,1,6,1,1,8]
def display(n, d, exact):
print n, d, n/d, n/d - exact
def approx(a, exact):
# initialize the recurrence
n0 = a[0]
d0 = 1
n1 = a[0]*a[1] + 1
d1 = a[1]
display(n0, d0, exact)
display(n1, d1, exact)
for x in a[2:]:
n = x*n1 + n0 # numerator
d = x*d1 + d0 # denominator
display(n, d, exact)
n1, n0 = n, n1
d1, d0 = d, d1
approx(e_frac, e)

This will print the numerator, denominator, value, and error for each approximation. You could include more terms in the continued fraction for *e* if you’d like. Here are some of the results: 19/7, 87/32, 106/39, etc. Unfortunately it doesn’t look like there are any approximations as memorable as 355/113 for pi.

You could also use the code to create rational approximations to other numbers if you’d like. For example, you can find the continued fraction expansion for pi here and use the code above to find rational approximations for pi.

## Comments

## Eric Jablow replied on Thu, 2013/01/31 - 11:53am

Using standard continued fractions will get you the best rational approximants to numbers, but the process is somewhat circular. You need to know the number well enough to come up with its continued fraction. If you are trying to calculate somethinng like erf 1/5, you won't have a canned approximation.

Many mathematical functions have non-standard continued fraction developments which one can use to calculate values better. Either they do subtractions, or the numerators are not necessarily 1. You'll find references in Abromowitz and Stegun (AMS55) or the new NIST Digital Library of Mathematical Functions.