Re: factorial of negative numbers

Поиск
Список
Период
Сортировка
От Juan José Santamaría Flecha
Тема Re: factorial of negative numbers
Дата
Msg-id CAC+AXB1CZveV6xtrquxijL8k4FeFLo6zTmpTsbgUWtFH4GnNiA@mail.gmail.com
обсуждение исходный текст
Ответ на Re: factorial of negative numbers  (Peter Eisentraut <peter.eisentraut@2ndquadrant.com>)
Список pgsql-hackers

On Thu, Jun 18, 2020 at 1:57 PM Peter Eisentraut <peter.eisentraut@2ndquadrant.com> wrote:
On 2020-06-18 09:43, Juan José Santamaría Flecha wrote:
> The gamma function from math.h returns a NaN for negative integer
> values, the postgres factorial function returns a numeric, which allows
> NaN. Raising an out-of-range error seems only reasonable for an integer
> output.

But this is not the gamma function.  The gamma function is undefined at
zero, but factorial(0) returns 1.  So this is similar but not the same.

factorial(n) = gamma(n + 1)
 
Moreover, functions such as log() also error out on unsupportable input
values, so it's consistent with the spec.

If factorial() ever gets extended to other input types it might get inconsistent, should !(-1.0) also raise an error?

Logarithm is just different case:


Regards,

Juan José Santamaría Flecha

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: Re: factorial of negative numbers
Следующее
От: Vyacheslav Makarov
Дата:
Сообщение: [PATCH] Allow to specify restart_lsn inpg_create_physical_replication_slot()