factorial of negative numbers

Поиск
Список
Период
Сортировка
От Peter Eisentraut
Тема factorial of negative numbers
Дата
Msg-id 6ce1df0e-86a3-e544-743a-f357ff663f68@2ndquadrant.com
обсуждение исходный текст
Ответы Re: factorial of negative numbers  (Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>)
Re: factorial of negative numbers  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: factorial of negative numbers  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Adjacent to the discussion in [0] I wanted to document the factorial() 
function and expand the tests for that slightly with some edge cases.

I noticed that the current implementation returns 1 for the factorial of 
all negative numbers:

SELECT factorial(-4);
  factorial
-----------
          1

While there are some advanced mathematical constructions that define 
factorials for negative numbers, they certainly produce different 
answers than this.

Curiously, before the reimplementation of factorial using numeric 
(04a4821adef38155b7920ba9eb83c4c3c29156f8), it returned 0 for negative 
numbers, which is also not correct by any theory I could find.

I propose to change this to error out for negative numbers.

See attached patches for test and code changes.


[0]: 
https://www.postgresql.org/message-id/flat/38ca86db-42ab-9b48-2902-337a0d6b8311%402ndquadrant.com

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Вложения

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

Предыдущее
От: Tatsuo Ishii
Дата:
Сообщение: Re: Transactions involving multiple postgres foreign servers, take2
Следующее
От: Kyotaro Horiguchi
Дата:
Сообщение: Re: Review for GetWALAvailability()