§
    OŠtjo  ã                   óÂ   — d dl mZmZmZ d dlmZ d dlmZmZm	Z	m
Z
mZmZmZmZ d dlmZmZmZmZ d dlmZ  ed¦  «        \  ZZZZd„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Z d„ Z!dS )é    )ÚFloatÚIntegerÚRational)Úsymbols)ÚbetaÚEiÚzetaÚMaxÚMinÚsqrtÚ
riemann_xiÚfrac)ÚCXX98CodePrinterÚCXX11CodePrinterÚCXX17CodePrinterÚcxxcode)Úlog1pzx y u vc            	      óŒ  — t          ¦   «                              t          t          d¦  «        ¦  «        dv sJ ‚t          ¦   «                              t	          t          dt          t          ¦  «        ¦  «        ¦  «        dk    sJ ‚t          ¦   «         } | j        dk    sJ ‚| j        dk    sJ ‚d| j        v sJ ‚d| j        vsJ ‚d S )Né   )zstd::max(x, 3)zstd::max(3, x)z&std::min(3, std::min(x, std::sqrt(x)))úC++zC++98ÚtemplateÚalignas)	r   Údoprintr
   Úxr   r   ÚlanguageÚstandardÚreserved_words)Úcxx98printers    ú[/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/printing/tests/test_cxx.pyÚtest_CXX98CodePrinterr       sÉ   € ÝÑÔ×%Ò%¥c­!¨Q¡i¤iÑ0Ô0Ð4XÐXÐXÐXÐXÝÑÔ×%Ò%¥c­!¨QµµQ±´Ñ&8Ô&8Ñ9Ô9Ð=eÒeÐeÐeÐeÝ#Ñ%Ô%€LØÔ  EÒ)Ð)Ð)Ð)ØÔ  GÒ+Ð+Ð+Ð+Ø˜Ô4Ð4Ð4Ð4Ð4Ø˜LÔ7Ð7Ð7Ð7Ð7Ð7Ð7ó    c                  ó
  — t          ¦   «                              t          t          ¦  «        ¦  «        dk    sJ ‚t          ¦   «         } | j        dk    sJ ‚| j        dk    sJ ‚d| j        v sJ ‚d| j        v sJ ‚d| j        vsJ ‚d S )Nústd::log1p(x)r   zC++11ÚoperatorÚnoexceptÚconcept)r   r   r   r   r   r   r   )Úcxx11printers    r   Útest_CXX11CodePrinterr(      s¢   € ÝÑÔ×%Ò%¥e­A¡h¤hÑ/Ô/°?ÒBÐBÐBÐBå#Ñ%Ô%€LØÔ  EÒ)Ð)Ð)Ð)ØÔ  GÒ+Ð+Ð+Ð+Ø˜Ô4Ð4Ð4Ð4Ð4Ø˜Ô4Ð4Ð4Ð4Ð4Ø˜LÔ7Ð7Ð7Ð7Ð7Ð7Ð7r!   c                  ó–   —  G d„ dt           ¦  «        }  | ¦   «                              t          t          ¦  «        ¦  «        dk    sJ ‚d S )Nc                   ó   — e Zd Zd„ ZdS )ú-test_subclass_print_method.<locals>.MyPrinterc                 ób   — dd                      t          | j        |j        ¦  «        ¦  «        z  S )Nzmy_library::log1p(%s)ú, )ÚjoinÚmapÚ_printÚargs)ÚselfÚexprs     r   Ú_print_log1pz:test_subclass_print_method.<locals>.MyPrinter._print_log1p"   s'   € Ø*¨T¯YªYµs¸4¼;ÈÌ	Ñ7RÔ7RÑ-SÔ-SÑSÐSr!   N)Ú__name__Ú
__module__Ú__qualname__r4   © r!   r   Ú	MyPrinterr+   !   s(   € € € € € ð	Tð 	Tð 	Tð 	Tð 	Tr!   r9   úmy_library::log1p(x)©r   r   r   r   )r9   s    r   Útest_subclass_print_methodr<       si   € ðTð Tð Tð Tð TÕ$ñ Tô Tð Tð ˆ9‰;Œ;×Ò�u¥Q™xœxÑ(Ô(Ð,BÒBÐBÐBÐBÐBÐBr!   c                  ó  —  G d„ dt           ¦  «        } t          ¦   «         } | ¦   «         }|                     t          t          ¦  «        ¦  «        dk    sJ ‚|                     t          t          ¦  «        ¦  «        dk    sJ ‚d S )Nc                   ó   — e Zd ZdZdS )ú1test_subclass_print_method__ns.<locals>.MyPrinterzmy_library::N)r5   r6   r7   Ú_nsr8   r!   r   r9   r?   )   s   € € € € € Øˆˆˆr!   r9   r#   r:   r;   )r9   ÚpÚmyps      r   Útest_subclass_print_method__nsrC   (   s’   € ðð ð ð ð Õ$ñ ô ð õ 	ÑÔ€AØ
ˆ)‰+Œ+€Cà�9Š9•U�1‘X”XÑÔ /Ò1Ð1Ð1Ð1Ø�;Š;•u�Q‘x”xÑ Ô Ð$:Ò:Ð:Ð:Ð:Ð:Ð:r!   c                  óL  — t          ¦   «                              t          t          t          ¦  «        ¦  «        dk    sJ ‚t          ¦   «                              t          t          ¦  «        ¦  «        dk    sJ ‚t          ¦   «                              t          t          ¦  «        ¦  «        dk    sJ ‚t          ¦   «                              t          t          ¦  «        ¦  «        dk    sJ ‚t          ¦   «                              t          t          ¦  «        ¦  «        dk    sJ ‚d S )Nzstd::beta(x, y)zstd::expint(x)zstd::riemann_zeta(x)z(x - std::floor(x))z^((1.0/2.0)*std::pow(M_PI, -1.0/2.0*x)*x*(x - 1)*std::tgamma((1.0/2.0)*x)*std::riemann_zeta(x)))	r   r   r   r   Úyr   r	   r   r   r8   r!   r   Útest_CXX17CodePrinterrF   3   sý   € ÝÑÔ×%Ò%¥d­1­a¡j¤jÑ1Ô1Ð5FÒFÐFÐFÐFÝÑÔ×%Ò%¥b­¡e¤eÑ,Ô,Ð0@Ò@Ð@Ð@Ð@ÝÑÔ×%Ò%¥d­1¡g¤gÑ.Ô.Ð2HÒHÐHÐHÐHõ ÑÔ×%Ò%¥d­1¡g¤gÑ.Ô.Ð2GÒGÐGÐGÐGÝÑÔ×%Ò%¥jµ¡m¤mÑ4Ô4ð  9Yò  Yð  Yð  Yð  Yð  Yð  Yr!   c                  ó¸   — t          t          t          t          ¦  «        dz  ¦  «                             d¦  «        ¦  «        t          ddg¦  «        k    sJ ‚d S )Nç      à?Ú*z0.5zstd::sqrt(x))Úsortedr   r   r   Úsplitr8   r!   r   Útest_cxxcoderL   =   sN   € Ý•'�$�q™'œ' "™*Ñ%Ô%×+Ò+¨CÑ0Ô0Ñ1Ô1µV¸UÀNÐ<SÑ5TÔ5TÒTÐTÐTÐTÐTÐTr!   c            	      óR  — t          t          t          t          t          ¦  «        t          t
          t          ¦  «        ¦  «        ¦  «        dk    sJ ‚t          t          t          t          t          ¦  «        t          t
          t          ¦  «        ¦  «        ¦  «        dk    sJ ‚d S )Nz(std::max(std::min(u, v), std::min(x, y))z(std::min(std::max(u, v), std::max(x, y)))r   r
   r   r   rE   ÚuÚvr8   r!   r   Útest_cxxcode_nested_minmaxrP   @   s„   € Ý•3•s�1�a‘y”y¥#¥a­¡)¤)Ñ,Ô,Ñ-Ô-Ø5ò6ð 6ð 6ð 6å•3•s�1�a‘y”y¥#¥a­¡)¤)Ñ,Ô,Ñ-Ô-Ø5ò6ð 6ð 6ð 6ð 6ð 6r!   c                  ó6  —  G d„ dt           ¦  «        }  | ¦   «         }t          d¦  «        D ] }|                     |¦  «        d|z  k    sJ ‚Œ!|                     t          d¦  «        ¦  «        dk    sJ ‚|                     t          dz  ¦  «        dk    sJ ‚d S )	Nc                   ó$   ‡ — e Zd Zˆ fd„Zd„ Zˆ xZS )ú.test_subclass_Integer_Float.<locals>.MyPrinterc                 óL   •— dt          ¦   «                              |¦  «        z  S )NzbigInt("%s"))ÚsuperÚ_print_Integer)r2   ÚargÚ	__class__s     €r   rV   z=test_subclass_Integer_Float.<locals>.MyPrinter._print_IntegerH   s    ø€ Ø!¥E¡G¤G×$:Ò$:¸3Ñ$?Ô$?Ñ?Ð?r!   c                 óÆ   — t          |¦  «        }d|                      t          |j        ¦  «        ¦  «        ›d|                      t          |j        ¦  «        ¦  «        ›d�S )Nz	bigFloat(r-   ú))r   r0   r   rA   Úq)r2   rW   Úrats      r   Ú_print_Floatz;test_subclass_Integer_Float.<locals>.MyPrinter._print_FloatK   sS   € Ý˜3‘-”-ˆCˆCà—’�G C¤E™NœNÑ+Ô+Ð+Ð+Ø—’�G C¤E™NœNÑ+Ô+Ð+Ð+ðð r!   )r5   r6   r7   rV   r]   Ú__classcell__)rX   s   @r   r9   rS   G   sL   ø€ € € € € ð	@ð 	@ð 	@ð 	@ð 	@ð	ð 	ð 	ð 	ð 	ð 	ð 	r!   r9   é   zbigInt("%d")rH   z"bigFloat(bigInt("1"), bigInt("2"))g      ð¿z$bigFloat(bigInt("1"), bigInt("1"))/x)r   Úranger   r   r   )r9   rA   Úis      r   Útest_subclass_Integer_Floatrb   F   s¾   € ð	ð 	ð 	ð 	ð 	Õ$ñ 	ô 	ð 	ð 	ˆ	‰Œ€AÝ�2‰YŒYð 2ð 2ˆØ�yŠy˜‰|Œ|˜~°Ñ1Ò1Ð1Ð1Ð1Ð1Ø�9Š9•U˜3‘Z”ZÑ Ô Ð$HÒHÐHÐHÐHØ�9Š9•Q˜‘WÑÔÐ!GÒGÐGÐGÐGÐGÐGr!   N)"Úsympy.core.numbersr   r   r   Úsympy.core.symbolr   Úsympy.functionsr   r   r	   r
   r   r   r   r   Úsympy.printing.cxxr   r   r   r   Úsympy.codegen.cfunctionsr   r   rE   rN   rO   r    r(   r<   rC   rF   rL   rP   rb   r8   r!   r   ú<module>rh      sP  ðØ 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ø %Ð %Ð %Ð %Ð %Ð %Ø LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LØ \Ð \Ð \Ð \Ð \Ð \Ð \Ð \Ð \Ð \Ð \Ð \Ø *Ð *Ð *Ð *Ð *Ð *ð ˆW�YÑÔ�
€€1€aˆð8ð 8ð 8ð8ð 8ð 8ðCð Cð Cð;ð ;ð ;ðYð Yð YðUð Uð Uð6ð 6ð 6ðHð Hð Hð Hð Hr!   