�
H�gO � �> � d dl mZ ddlmZ ej Zn# e$ r
ej ZY nw xY wed� � � Zd� Z edd�� � Z
d� Zedd �� � Zd
� Z
ed� � � Zi fd�Zed
� � � Zedd�� � Zedd�� � Zed� � � Zed� � � ZdS )� )�xrange� )�defunc � � t |� � }| j }d|dz z }t |dz � � D ]}|||| z z
}|||z
z |dz z }�|S )z�
Given a sequence `(s_k)` containing at least `n+1` items, returns the
`n`-th forward difference,
.. math ::
\Delta^n = \sum_{k=0}^{\infty} (-1)^{k+n} {n \choose k} s_k.
�����r )�int�zeror )�ctx�s�n�d�b�ks �o/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/mpmath/calculus/differentiation.py�
differencer
sj � � �A���A���A� ��Q���A�
�A�a�C�[�[� !� !�� �Q��1��X�
��
�!�A�#�Y�A�a�C� ����H� c �� ���� |� d� � }|� dd� � }|� dd� � }|d|z z |dz z } | j }
| | _ |� d� � ���X|� d � � r#t | � �� � � � }nd}| � d| |z
|z
� � �n| � �� � �|� dd� � }|r-�| � |� � z �t |dz � � }�}
nt | |dz d� � }d�z }
|r�d
�z z
����fd�|D � � }||
| f|
| _ S # |
| _ w xY w)N�singular�addprec�
� direction� r r �h�relativeg �?c �2 �� g | ]} ��|�z z � � ��S � r )�.0r �fr �xs ���r �
<listcomp>zhsteps.<locals>.<listcomp>= s) �� �*�*�*�q�!�!�A�a��c�E�(�(�*�*�*r )�get�precr �mag�ldexp�convert�signr )r
r r r r"