# [SciPy-User] Simple math question

Robert Kern robert.kern@gmail....
Thu Feb 14 10:45:37 CST 2013

```On Thu, Feb 14, 2013 at 1:31 PM, nicky van foreest <vanforeest@gmail.com> wrote:
>  1 - exp(n*log(1.-p))
>
> should do too. Taking logs is an easy way  to handle this sort of problems.

Possibly better depending on the values:

-np.expm1(n * np.log(1-p))

You could use np.log1p(-p), but given the values of p, it doesn't
appear to be worth it.

> On 13 February 2013 14:45, Neal Becker <ndbecker2@gmail.com> wrote:
>>
>> Neal Becker wrote:
>>
>> > josef.pktd@gmail.com wrote:
>> >
>> >> On Wed, Feb 13, 2013 at 8:34 AM, Neal Becker <ndbecker2@gmail.com>
>> >> wrote:
>> >>> Pierre Barbier de Reuille wrote:
>> >>>
>> >>>> Assuming 0 <= p <= 1, I don't see the problem there.
>> >>>>
>> >>>
>> >>> I had just assumed there'd be numerical accuracy issues, but maybe
>> >>> not.
>> >>
>> >> Any numerical problems that you might have with the power gets swamped
>> >> because you can only get within floating point precision of 1.
>> >>
>> >> If the results were zero, then there are special function to get
>> >> better precision for tiny numbers.
>> >>
>> >> AFAICS.
>> >>
>> >> Josef
>> >
>> > Here, 0 <= p < 10^-8
>> Sorry, that should be 10^-8 < p < 1, so 1-p is between 0 and 1-10^-8
>>
>> _______________________________________________
>> SciPy-User mailing list
>> SciPy-User@scipy.org
>> http://mail.scipy.org/mailman/listinfo/scipy-user
>
>
>
> _______________________________________________
> SciPy-User mailing list
> SciPy-User@scipy.org
> http://mail.scipy.org/mailman/listinfo/scipy-user
>

--
Robert Kern
```