
    g                     t    d Z ddlmZ ddlmZ ddlmZ ddlm	Z	m
Z
mZmZmZ ddlmZ d Zd Zd	 Zd
 Zd ZdS )z>Tests for efficient functions for generating Appell sequences.    )Rational)Poly)raises)bernoulli_polybernoulli_c_poly
euler_polygenocchi_poly
andre_poly)xc                     t          t          d            t          dt          d          t	          t          t          dd          z
            k    sJ t          dt                    dk    sJ t          dt                    t          t          dd          z
  k    sJ t          dt                    t          dz  t          z
  t          dd          z   k    sJ t          dt                    t          dz  t          dd          t          dz  z  z
  t          dd          t          z  z   k    sJ t          d	t                    t          d	z  dt          dz  z  z
  t          dz  z   t          dd
          z
  k    sJ t          dt                    t          dz  t          dd          t          d	z  z  z
  t          dd          t          dz  z  z   t          dd          t          z  z
  k    sJ t          dt                    t          dz  dt          dz  z  z
  t          dd          t          d	z  z  z   t          dd          t          dz  z  z
  t          dd          z   k    sJ t          d                              t          t          dd          z
            sJ t          dd          t	          t          t          dd          z
            k    sJ d S )Nc                  ,    t          dt                    S N)r   r        ]/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/polys/tests/test_appellseqs.py<lambda>z%test_bernoulli_poly.<locals>.<lambda>
   s    ~b!44 r      Tpolys   r                  *   )r   
ValueErrorr   r   r   Qdummy_eqr   r   r   test_bernoulli_polyr!   	   sf   
:44555!Qd+++tA!AJ/?/?????!Q1$$$$!Q1q1vv:----!Q1a4!8a!ff#44444!Q1a4!Aa&&A+#5!Aq#@@@@@!Q1a4!AqD&=1a4#7!Ab''#AAAAA!Q1a4!Aa&&A+#5!Aq!t#Ca!ffQh#NNNNN!Q1a4!AqD&=1Qq66!Q$;#>1Q1#LqQRSUww#VVVVV!%%a!Aa&&j11111!4(((DQqVV,<,<<<<<<<r   c                  h   t          t          d            t          dt          d          t	          t          d          k    sJ t          dt                    dk    sJ t          dt                    t          k    sJ t          dt                    t          dz  t          dd	          z
  k    sJ t          d	t                    t          d	z  t          z
  k    sJ t          d
t                    t          d
z  dt          dz  z  z
  t          dd          z   k    sJ t          dt                    t          dz  t          dd	          t          d	z  z  z
  t          dd	          t          z  z   k    sJ t          dt                    t          dz  dt          d
z  z  z
  dt          dz  z  z   t          dd          z
  k    sJ t          d                              t                    sJ t          dd          t	          t          d          k    sJ dt          dt          dz   dz                                            z  t          dt                    k    sJ dt          dt          dz   dz                                            z  t          dt                    k    sJ d S )Nc                  ,    t          dt                    S r   )r   r   r   r   r   r   z'test_bernoulli_c_poly.<locals>.<lambda>   s    /A66 r   r   Tr   QQ)domainr   r   r   r         r   
   r               i   	   )	r   r   r   r   r   r   r    r   expandr   r   r   test_bernoulli_c_polyr/      sZ   
:66777Aq---a1E1E1EEEEEAq!!Q&&&&Aq!!Q&&&&Aq!!QTAaFF]2222Aq!!QTAX----Aq!!QTAadF]QqWW%<<<<<Aq!!QTAbGGAqDL%81Qq66!8%CCCCCAq!!QTAadF]Qq!tV%;a2hh%FFFFFA''*****AT***d1T.B.B.BBBBB.QqS!G,,335559I!Q9O9OOOOO.QqS!G,,335559I!Q9O9OOOOOOOr   c                     t          t          d            t          dt          d          t	          dt          z  dz             k    sJ t          dt                    dk    sJ t          dt                    dk    sJ t          dt                    ddt          z  z
  k    sJ t          d	t                    d	t          z  d	t          dz  z  z
  k    sJ t          d
t                    ddt          dz  z  z   d
t          d	z  z  z
  k    sJ t          dt                    dt          z  dt          d	z  z  z   dt          d
z  z  z
  k    sJ t          dt                    d	dt          dz  z  z
  dt          d
z  z  z   dt          dz  z  z
  k    sJ t          d                              dt          z  dz             sJ t          dd          t	          dt          z  dz             k    sJ dt          dt                    t          dt                    z
  z  t          dt                    k    sJ dt          dt                    t          dt                    z
  z  t          dt                    k    sJ d S )Nc                  ,    t          dt                    S r   )r	   r   r   r   r   r   z$test_genocchi_poly.<locals>.<lambda>+   s    }R33 r   r   Tr   r   r   r   r   r   r   r   r(   r'   r,   r-   )r   r   r	   r   r   r    r   r   r   r   r   test_genocchi_polyr4   *   sI   
:33444AT***d2a4!8nn<<<<A!####A"$$$$A!ac'))))A!A#!Q$,....A"qAv+!Q$"66666A"Q$AqD.1QT6"99999A!bAg+1a4"7!AqD&"@@@@@$$RTAX.....$'''41q>>9999q!$$'71'='==>-PQSTBUBUUUUUq!$$'71'='==>-PQSTBUBUUUUUUUr   c                     t          t          d            t          dt          d          t	          t          t          dd          z
            k    sJ t          dt                    dk    sJ t          dt                    t          t          dd          z
  k    sJ t          dt                    t          dz  t          z
  k    sJ t          dt                    t          dz  t          dd          t          dz  z  z
  t          dd          z   k    sJ t          dt                    t          dz  dt          dz  z  z
  t          z   k    sJ t          d	t                    t          d	z  t          d	d          t          dz  z  z
  t          d	d          t          dz  z  z   t          dd          z
  k    sJ t          d
t                    t          d
z  dt          d	z  z  z
  d	t          dz  z  z   dt          z  z
  k    sJ t          d                              t          t          dd          z
            sJ t          dd          t	          t          t          dd          z
            k    sJ t          dt                    t          dt                    dz  k    sJ t          dt                    t          dt                    dz  k    sJ d S )Nc                  ,    t          dt                    S r   )r   r   r   r   r   r   z!test_euler_poly.<locals>.<lambda>=       z"a00 r   r   Tr   r   r   r   r   r   r   r-   r,   ir(   i)r   r   r   r   r   r   r    r	   r   r   r   test_euler_polyr8   <   so   
:00111a$'''4AaFF
+;+;;;;;aq    aq1Qq66z))))aq!tax''''aq!ta!ffQTk1AaFF:::::aq!ta1f}q00000aq!ta!ffQTk1AaFF1a4K?!Aa&&HHHHHaq!ta1f}qAv5!;;;;;a==!!!a!ff*-----at$$$Q1QZ(8(88888A*Q"2"2R"77777Q:a#3#3c#9999999r   c                     t          t          d            t          dt          d          t	          t                    k    sJ t          dt                    dk    sJ t          dt                    t          k    sJ t          dt                    t          dz  dz
  k    sJ t          dt                    t          dz  dt          z  z
  k    sJ t          dt                    t          dz  d	t          dz  z  z
  d
z   k    sJ t          d
t                    t          d
z  dt          dz  z  z
  dt          z  z   k    sJ t          d	t                    t          d	z  dt          dz  z  z
  dt          dz  z  z   dz
  k    sJ t          d                              t                    sJ t          dd          t	          t                    k    sJ d S )Nc                  ,    t          dt                    S r   )r
   r   r   r   r   r   z!test_andre_poly.<locals>.<lambda>O   r7   r   r   Tr   r   r   r   r   r   r   r(      r'   K   =   )r   r   r
   r   r   r    r   r   r   test_andre_polyr>   N   s   
:00111a$'''4772222aq    aq    aq!tax''''aq!tacz))))aq!ta1f}q00000aq!tbAg~144444aq!tbAg~1a47"<<<<<a==!!!$$$$$at$$$Q//////r   N)__doc__sympy.core.numbersr   r   sympy.polys.polytoolsr   sympy.testing.pytestr   sympy.polys.appellseqsr   r   r   r	   r
   	sympy.abcr   r!   r/   r4   r8   r>   r   r   r   <module>rE      s    D D , , , , , , & & & & & & ' ' ' ' ' '+ + + + + + + + + + + + + +      = = =P P P$V V V$: : :$0 0 0 0 0r   