
    \h"                        S r SSKJr  SSKJr  SSKJr  SSKJr  SSK	J
r
  SSKJr  SSKJrJr  SS	KJrJr  SS
KJr  SSKJrJrJr  SSKJr  SSKJrJr  SSKJr  \" S5      r \" S5      r!\" S5      r"\" S5      r#\" S5      r$\" S5      r%\" S5      r&\" S5      r'\" S5      r(S r)S r*S r+S r,S r-S r.S r/S r0S  r1\S! 5       r2S" r3g#)$zp
If the arbitrary constant class from issue 4435 is ever implemented, this
should serve as a set of test cases.
    )Function)I)Pow)Eq)S)Symbol)explog)coshsinh)sqrt)acoscossin)Integral)constantsimpconstant_renumber)XFAILxyzu2_aC1C2C3fc                     [        [        [        [        -  [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        /5      5      [        [        -  :X  d   e[        [        S[        -  [        /5      5      [        :X  d   e[        [        [        S-  [        /5      5      [        :X  d   e[        [        [        [        -  [        -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        S-   -  [        /5      5      [        [        -  [        S-   -  :X  d   e[        [        [        [        -  [        S-   -  [        /5      5      [        [        -  [        S-   -  :X  d   e[        [        [        [        [        -  -  [        /5      5      [        [        -  [        -  :X  d   e[        [        [        [        [        -  -  [        /5      5      [        [        -  [        -  :X  d   e[        [        [        [        [        -  -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        S-   -  [        -  [        [        /5      5      [        :X  d   e[        [        [        [        -  [        -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        [        -  -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        -  [        -  [        -  S-  [        [        /5      5      [        [        S-  -  :X  d   e[        [        [        [        -  [        -  [
        -  [        [        [
        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        S-  -  [        [
        5      -  [        [        [
        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        /5      5      [        :X  d   e[        [        [        [        -  [        [        /5      5      [        :X  d   e[        [        [        [        -  [        [        /5      5      [        :X  d   e[        [        [        [        -  [        -  [        [        /5      5      [        :X  d   e[        [        [        [        -  S[        -  -  [        /5      5      [        [        -  S[        -  -  :X  d   eg )N      )r   r   r   r   r   r   r   r        ]/var/www/auris/envauris/lib/python3.13/site-packages/sympy/solvers/tests/test_constantsimp.pytest_constant_mulr$       s   \!B$56"Q$>>>\"Q$56"Q$>>>\!B$56!B$>>>\"Q$56!B$>>>\!B$56"<<<\"Q$56"<<<\!B$q&2q':;r!tCCC\!A#b&2q':;qtCCC\!A#b&2q':;qtCCC\"Q$q&2q':;r!tCCC\!B$q&2q':;qtCCC\"Q$A,=>"Q$!*LLL\!B$A,=>"Q$!*LLL\!QrT(RD9:ac"fDDD\!RT(RD9:ac"fDDD\"ac(RG<=AEEE\1Q3(RG<=2EEE\1Q3(RG<=2EEE\!QU)B,Q@ARGGG\2a4(RG<=AEEE\!QrT(RG<=2EEE\1R4(RG<=2EEE\"Q$q&(1*Q,Q@AR1WLLL\"Q$q&(RAJ?@BqDHHH\"Q$q!t)CF*:RAJGHBqDPPP\"R%"672===\"R%"b:;rAAA\"R%"b:;rAAA\"R%(RH=>"DDD\"Q$q!t)bT:;r!tAqDyHHHr"   c                     [        [        [        [        -   [        /5      5      [        :X  d   e[        [        [        S-   [        /5      5      [        :X  d   e[        [        S[        -   [        /5      5      [        :X  d   e[        [        [        [        -   [        [        /5      5      [        :X  d   e[        [        [        [        -   [        /5      5      [        [        -   :X  d   e[        [        [        [        -   [        /5      5      [        :X  d   e[        [        [        [
        -   [        [
        /5      5      [        :X  d   e[        [        [
        [        -   [        [
        /5      5      [        :X  d   e[        [        [        [
        -   [        -   [        [
        /5      5      [        :X  d   eg Nr   )r   r   r   r   r   r   r!   r"   r#   test_constant_addr'   A   s2   \"r'B489R???\"q&2$78B>>>\!b&2$78B>>>\"q&2q':;rAAA\"q&2$78BFBBB\"r'B489R???\"r'B8<=CCC\"r'B8<=CCC\"r'B,RABbHHHr"   c                     [        [        [        [        -  [        /5      5      [        :X  d   e[        [        [        [        [        5      [        /5      5      [        :X  d   e[        [        [        [        -  [        /5      5      [        :X  d   e[        [        [        [        -  [        [        /5      5      [        :X  d   e[        [        [        [        -  [        [        /5      5      [        :X  d   e[        [        [        [        -  [        [        /5      5      [        :X  d   e[        [        [        [
        -  [        [
        /5      5      [        :X  d   e[        [        [        [        -  [        /5      5      [        [        -  :X  d   e[        [        [        S-  [        /5      5      [        :X  d   e[        [        [        [        [
        -  -  [        /5      5      [        [        [
        -  -  :X  d   eg r&   )r   r   r   r   r   r   r   r!   r"   r#   test_constant_power_as_baser)   M   sf   \"b&2$78B>>>\#b"+t<=CCC\"b&2$78B>>>\"b&2r(;<BBB\"b&2r(;<BBB\"b&2r(;<BBB\"a%"a9:b@@@\"a%"672q5@@@\"a%"672===R!A#Y%'*,qs)4 4 4r"   c                     [        [        [        [        -  [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        [        /5      5      [        :X  d   e[        [        [        [        [        -  -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        -  [        /5      5      [        [        -  [        -  :X  d   e[        [        [        [        [        -  -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        [        -  -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        [        -  -  [        [        /5      5      [        [        -  :X  d   e[        [        [        [        -  [        -  [        /5      5      [        [        -  [        -  :X  d   e[        [        S[        -  [        /5      5      [        :X  d   e[        [        [        S5      [        -  [        /5      5      [        :X  d   e[        [        [        [        5      [        /5      5      [        :X  d   e[        [        [        [        [        -   5      [        /5      5      [        [        [        5      -  :X  d   e[        [        [        S[        5      [        /5      5      [        :X  d   eg r&   )r   r   r   r   r   r   r	   r   r!   r"   r#   test_constant_power_as_expr+   [   s,   \!R%"671b5@@@\!R%"a9:b@@@\!QU(RG<=BFFFadRZ"&(,-qD2:6 6 6QBZ"a)+./e4 4 4\!RU(RG<=BFFFQQZ"a)+./e4 4 4aeaZ"&(,-rEA:6 6 6\!R%"672===\!A$(RD9:b@@@\#b'B489R???Sa[2$'),.s1vI6 6 6\#a*rd;<BBBr"   c            	         [        [        [        [        5      [        /5      5      [        :X  d   e[        [        [	        [        5      [        /5      5      [        :X  d   e[        [        [	        [        [        5      [        /5      5      [        :X  d   e[        [        [	        [        [
        5      [        [
        /5      5      [        :X  d   e[        [        [	        [
        [        5      [        [
        /5      5      [        :X  d   e[        [        [	        [
        [
        5      [        [
        /5      5      [        :X  d   e[        [        [	        [        [        5      [        /5      5      [	        [        [        5      :X  d   e[        [        [	        [        [        5      [        [        /5      5      [        :X  d   e[        [        [	        [        [        5      [        [        /5      5      [        :X  d   e[        [        [	        [        [        [
        5      [        [
        [        /5      5      [        :X  d   eg N)r   r   r   r   r   r   r   r   r!   r"   r#   test_constant_functionr.   p   sr   \#b'B489R???\!B%"672===\!B)bT:;rAAA\!B)b"X>?2EEE\!B)b"X>?2EEE\!B)b"X>?2EEEQr1Xt$&)*2q2 2 2\!B(RG<=CCC\!Ar(RG<=CCC\!B2,RDEKKKr"   c            	          [        [        [        [        [        [        5      [        /5      5      [        [        [        [        5      :X  d   eg r-   )r   r   r   r   r   r!   r"   r#   test_constant_function_multipler0   ~   s:     Qr2q\B4(*-.r2q\: : :r"   c                  >   [        [        [        S-  S-   [        /5      5      [        :X  d   e[        [        [        S-  [        -  [        /5      5      [        [        -  :X  d   e[        [        [        S-  S-  S-   [        /5      5      [        :X  d   e[        [        [	        S[        -  5      [        -   [        S5      -   [        /5      5      [        [        -   :X  d   e[        [        S[        -  [        -   [        [        /5      5      [        :X  d   eg r&   )r   r   r   r   r   r   r   r!   r"   r#   test_constant_multipler2      s    \"Q$(RD9:b@@@\!A#b&2$78BqD@@@\"a%'A+t<=CCCS2Y]T!W,rd358:Q? ? ?\!B$)b"X>?2EEEr"   c                  n    [         [         [        -  -   [        [         [         [        -  -   5      :X  d   eg r-   )r   r   r   r!   r"   r#   test_constant_repeatedr4      s&    19)2195555r"   c                     [        [        [        [        S[        -  5      -  [        [        5      [
        [        -   -  -   [        [
        [        /5      5      [        [        [        [        5      -  [
        [        S[        -  5      -  -   5      :X  d   e[        [        [        [        [        5      [        [        -  [        [        S-  5      -  [
        [        [        S-  5      -  -   5      [        [
        /5      5      [        [        [        [        5      [        [        [        S-  5      -  [
        [        [        S-  5      -  -   5      5      :X  d   e[        [        [        [        [        5      [        [        * [        [        5      -  5      5      [        /5      5      [        [        [        5      [        [        [        [        5      -  5      5      :X  d   e[        [        [        [        [        [        5      [        -  5      S[        [        [        [        5      -  5      -  -   S5      [        /5      5      [        [        [        [        [        5      -  5      S[        [        [        [        5      -  5      -  -   S5      :X  d   e[        [        [        [        [        [        S5      -  [        S[        -  5      -  [        [        [        5      5      -  [        -  5      [        S-  S[        [        5      S-  -  -  -   S5      [        /5      5      [        [        [        [        [        5      -  [        [        [        5      5      -  5      [        S-  S[        [        5      S-  -  -  -   S5      :X  d   e[        [        [        [        [        [        5      * [        -  5      * [!        [        [        5      [        -  5      -  S-  [        [        [        -  5      -   [        [        [        5      [        -  5      [        [        [        5      * [        -  5      -  S-  -
  S5      [        /5      5      [        [        [        [        5      * [        -  5      * [!        [        [        5      [        -  5      -  S-  [        [        [        -  5      -   [        [        [        5      [        -  5      [        [        [        5      * [        -  5      -  S-  -
  S5      :X  d   e[        [        [        [#        S[        S[$        S-  -
  5      [$        -  -  [$        [&        [        [        [        5      -  45      * [        [        [        5      [        -  5      -   S5      [        /5      5      [        [#        S[$        [        S[$        S-  -
  5      -  -  [$        [&        [        [        [        5      -  45      * [        [        [        [        5      -  5      -   S5      :X  d   e[        [        [        5      [        [        * [        -  [        S-  -   5      5      [        [        [        5      [        [        * [        -  [        S-  -   5      * 5      4 V s/ s H  n [        U [        /5      PM     sn [        [        [        5      [        [        [        [        -   -  5      5      [        [        [        5      [        [        [        [        -   -  5      * 5      /:X  d   eg s  sn f )Nr      r   r    )r   r   r   r	   r   r   r   r   r   r   r   r   r   r   r
   r   r   r   r   r   )is    r#   test_ode_solutionsr9      s   \"S1X+AR8H*H2rSU,WX"SV)bQqSk123 3 3R!ad4!9nr$qs)|;<r2hG
r!A$4!9r$qs)|(CDEF F F \"QqT4"c!f3E*FMN
1Q4bQi!" " "RAaDGqQqtV}4a82$?
BqtGqQqtV},a01 1 1 \"S474!91DT!A$Z1O	2 .!tQqtQwY. !"+$&(T+ ,
3r$q'z$qt*$%1a!ai(88!<= = = \"c1Q4%'l]3qtAv;-Fq-H3qQSt9-TAaDFC1aL ".#$%+')+. /
C1aL=QqT!V$Q&RT2S1a[!uQw<66 	   \"hr4BE	?2;M7N	R1Q4/ .!RL.)*++-/1d4 5
HRDRUO+,r2q1v.>??BqtG	   -/qtT2#a%!Q$,5G,H"QqTTXZ\Y\]^Y^abdeaeYeTfSfJg+hi+haLRD!+hi	AaD$q"q&z"	#R!tArAvJ/?.?%@AB B Bis   2[>c                      [        [        [        -   [        [        -  -   [        [        /5      [        [        [        -  -   :X  d   eg r-   )r   r   r   r   r!   r"   r#   test_nonlocal_simplificationr;      s/    R"r2h/219<<<r"   c            	      |   [        [        [        S[        [        5      [        -  -   5      [        /5      [        [        [        [        5      -  [        5      :X  d   e[        [        [        S[        [        5      -  [        -  5      [        /5      [        [        [        5      [        -  [        5      :X  d   eg )Nr6   )r   r   r   r   r   r!   r"   r#   test_constant_Eqr=      sr    2q1Q46z*RD1R!A$^CCC2q1Q4xz*RD1R!Q^CCCr"   N)4__doc__sympy.core.functionr   sympy.core.numbersr   sympy.core.powerr   sympy.core.relationalr   sympy.core.singletonr   sympy.core.symbolr   &sympy.functions.elementary.exponentialr	   r
   %sympy.functions.elementary.hyperbolicr   r   (sympy.functions.elementary.miscellaneousr   (sympy.functions.elementary.trigonometricr   r   r   sympy.integrals.integralsr   sympy.solvers.ode.oder   r   sympy.testing.pytestr   r   r   r   r   r   r   r   r   r   r$   r'   r)   r+   r.   r0   r2   r4   r9   r;   r=   r!   r"   r#   <module>rL      s   
 )     $ " $ = > 9 E E . A & 3K
3K
3KD\D\D\D\D\SMIB	I4C*L:F6B6 = =Dr"   