# Functions similar to Log but with results between 0 and 1

I need a function similar to Log but it should produce numbers between 0 and 1 Something like:

f(0)=0
f(1)=0.1
f(2)=0.15
f(3)=0.17
f(100)=0.8
f(1000)=0.95
f(1000000000)=0.99999999

I need this in my program that I am programming and I can use only standard functions like log, exp, etc... Any help would be appreciated.

-
I've got a question: f(1000000001)=1 is ok or do you need something like $f(n)_{n \rightarrow \infty}<1$ ? –  ulead86 Aug 14 '11 at 17:09
$f(x) = 1-\mathrm{e}^{-x}$ ? –  Sasha Aug 14 '11 at 17:09
Or take the partial sums $a_1=\frac {1}{2^n}$ or some other geometric series, maybe with a weighing factor. –  gary Aug 14 '11 at 17:13
"I need this in my program that I am programming" - what exactly are you trying to do that makes you need such a function? –  Guess who it is. Aug 14 '11 at 17:13
There's a lot of sigmoidal functions to choose from: arctangent, hyperbolic tangent, the logistic function... –  Guess who it is. Aug 14 '11 at 17:32

Sasha's suggestion of $f(x) = 1-\exp(-x)$ is good, but doesn't fit your example values too well, even if you scale $x$ appropriately. However, some other similar function, such as $f(x) = 1-1/(1+x)$, might work even better.

-
In case you're using this, you can generalize the example to $f(x) = x/(a+x)$; this way, you can adjust $a$ to have a slower or faster growing curve. –  Gerben Aug 14 '11 at 19:03

I like the hyperbolic tan (and it likes me) $$f(x) = \tanh(x) = \frac{e^x-e^{-x}}{e^x+e^{-x}} = \frac{e^{2x}-1}{e^{2x}+1} = 1 - \frac{2}{e^{2x}+1}$$

$f$ is strictly increasing and satisfies $f'(0) = 1$, $f(0) = 0$, $f(\infty) = 1$.

If you want to map $(-\infty, \infty)$ into $[0, 1)$ (instead of $[0, \infty)$), use $$f(x) = \frac{\tanh(x)+1}{2} = 1 - \frac{1}{e^{2x}+1}.$$

I have seen this called the "logistic" curve, or "s-shaped" curve.

-

If you want it to involve log, try $f(x) = 1 - \log(a)/\log(a+bx)$ for suitable positive numbers $a$ and $b$.

-
The beauty of this answer is that you can interpret $\log$ here as either the common or natural one... :D –  Guess who it is. Aug 14 '11 at 19:02