нарушена ли функция factorial2 в scipy?

#scipy #factorial

#scipy #факториал

Вопрос:

 from scipy.special import factorial2
print(factorial2(-1))
 

В документации говорится, что приведенный выше код должен возвращать 0, но для меня он возвращает 1. Фактически, он возвращает что-то для всех отрицательных чисел. Это ошибка? Я даже не могу понять этот результат, принимая во внимание аналитическое продолжение факториальной функции, т.Е. Учитывая различные расширения факториальной функции до отрицательных значений.

Документация: https://docs.scipy.org/doc/scipy/reference/generated/scipy.special.factorial2.html

Python 3.7.6

Scipy 1.4.1

Комментарии:

1. посмотрите на источник. Поведение при exact значении True отличается.

2. Я получаю такое же странное поведение, когда exact имеет значение True, однако я еще не смотрел на источник, поэтому я посмотрю

3. Некоторые тесты показывают, что он использует формулу из википедии для -1 и ноль для всех других отрицательных целых чисел. В общем, факториал и двойной факториал четко определены только для положительных чисел (и нуля).

4. Перечитывая код, я вижу, что он -1 отличается от других негативов. 1 for -1 является преднамеренным. Документы не соответствуют коду.