
    sg.                        d dl mZ d dlmZmZmZ d dlmZ d dlm	Z	m
Z
 d dlmZ d dlmZ d dlmZ d dlmZmZ d	D  cg c]
  }  e
|        c} \  ZZZZZZZZd
 Zd Zd Zd Zd Z d Z!d Z"d Z#d Z$d Z%d Z&d Z'd Z(d Z)yc c} w )    )Mul)IIntegerRational)Symbol)rootsqrt)cos)Integral)
sqrtdenest)_subsets_sqrt_numeric_denest)               
         c                  v   t        ddt        z  z         t        t        z   t        ddt        z  z         t        ddt        z  z         t        ddt        ddt        z  z         z  z         t        ddt        z  z   dt        z  z         t        t              t        t              t        dt        z         t        dt        z         t        dt        ddt        z  z         z         dt        z  ddt        z  z   t        dd      z  z  dt        ddt        z  z         z  z  t        t        ddt        z  z         z  dddt        z  z   t        dd      z  z  z  z   t        ddt        z  z         dt        dd      z  t        dz  dt        z  dz  z   z  dz  i} | D ]  }t        |      | |   k(  rJ |        y )Nr   r   g      @   r      r   )r	   r6r2r3r7r   r   )dis     W/var/www/html/venv/lib/python3.12/site-packages/sympy/simplify/tests/test_sqrtdenest.pytest_sqrtdenestr!      s}   	a!b&j	27R!b&[4QV,R!DQV$$$%tC!B$J2,='>R$r(QVd1r6lQa!B$h 	
2q1R4x(1a.(	(!DQrTN*:	;	DQrTN	Aq1R4x(1a.88	9
:Q2X8Aq>)2a4!B$q&=9!;	=A  (!}!$'a'$(    c                     t        t        ddt        z  z
  dt        ddt        z  z
        z  z               t        t        ddt        z  z
        z   k(  sJ t        t         t        dt        z  dt        dt        z  dz         z  z   dz         z         } t        |       t	        dt        z  dz   d      k(  sJ t        d	t
        z         }t        t        d	|z               t        d	|z         k(  sJ t        d	t        d	dt        d
t        z   t        z         z  z         z   dz  j                               } t        |       d	t        d	dt        t        t        z   d
z         z  z         z   k(  sJ t        t        dt        z  dt        z  z               t        d      t	        d
d      z  t	        d
d      d
z  z   k(  sJ t        t        d	t        z   t        d	t        z         z   dz  j                                     d	t        z   t        d	t        z         z   k(  sJ t        t        d	t        z   t
        z   t        d	t        z         z   dz  j                                     d	t        d	t        z         z   t        z   t
        z   k(  sJ t        d	t        d      z   t        d
      z   t        d	t        z         z   dz  j                               } t        |       t        d
      t        d      z   d	z   t        d	t        z         z   k(  sJ t        dt        z  dt        z  t        dt        z  dz         z  z   dz         } t        |       t        dt        z  dt        z  z
  dt        z  z   dz         k(  sJ t        dt        z  t        d      z   dt        dt        z  dz         z  z   dz         }t        |      |k(  sJ t        t        t        t        d      z               t        t        t        d      z         k(  sJ t        ddt        d      z  z
  dt        ddt        z  z
        z  z         }t        |      |k(  sJ y )N   r   7   r      r   r   r   r   r      r      )r   r	   r29r5r   r   r   expandr   r
   r10r   )erzs      r    test_sqrtdenest2r2      s   d2#:$rBsF{*;(;;<=
T"qu*  bS434C"#5!55:;;<Aa=DC"a0000QVAd1q5k"d1q5k111q4Ad1r6B;///0014<<>?Aa=AQ4R!+<)<%< =====d1R4!B$;'(QQ
T!QZ]*+ + + dQVd1r6l2Q6>>@AB	Ba"f   dQVb[4B<7!;CCEFG	DRL2"# # # 	q3q6zCF"T!b&\1A5==?@Aa=CFSVOa/$q2v,>>>>RVad43,,,r12Aa=DC!B$2!5!:;;;; 	RVc!f_qc#gl!333b89Aa=Ad2R=)*d2R=.AAAAR!DH*_qb2c6k!2223Aa=Ar"   c            	         t        t        dt        d      z  dt        z  z
  dt        d      z  z   dz               t         t        z   dt
        z  z   k(  sJ t        t        dt
        z  dt        z  z
  dt        d      z  z   d	z               d
t        z   dt
        z  z   k(  sJ t        t        dt        z  dz  dt        d      z  dz  z   dt        d      z  dz  z   dz               t        d      t        dz   t        d      z   z  dz  k(  sJ t        t        dt        z  dt        z  z   dt        z  z   dz               dt        z  dz   dt        z  z   k(  sJ t        dt        z  dt        d      z  z
  dt        d      z  z
  dz
        } t        |       t        d      dt        z  dt        z  z   dt        d      z  z   z  k(  sJ t        dt        d      z  dt        z  z
  dt        d      z  z   dz         } t        |       | k(  sJ t        t        dt        z  dt        z  z
  d z               t         d!z   t        z   t        z   k(  sJ t        t        d"t        z  dt        z  z   d z
              t        d      t         d!z   t        z   t        z   z  k(  sJ t        t        d"t        z  dz  dt        z  dz  z   t        d#d      z               t         dz  t        z   t        z   dz   k(  sJ t        t        t        dt        z  d$z         t        dt
        z  d"z         z               t        d!t        z   t        z   t
        z         k(  sJ t        t        dt        z  d"t        z  z   d%t        z  z   d&z               d!t        z   t        z   t        z   k(  sJ d!t        z   t        z   t        z   t
        z   }t        t        |dz  j                                     |k(  sJ t        |dz  j                         d!z         } t        |       | k(  sJ t        dt        z  dt        z  z   dt        z  z   d%z   d't        z  z   d(t        z  z         } t        |       | k(  sJ y ))Nr)   r   r      !   i#   R   ir   r&      r   i  i  i`  iM  	      8   ib   s   iY  i;  r      "      r         r         r      )r   r	   r   r   r   r   r,   r15r.   r   r-   )r1   ws     r    test_sqrtdenest_recrK   @   s   d2d2h;2-$r(
:R?@A	b1R4  d3r6BrE>Ad2hJ6;<=
R!B$  d1R47QtBxZ]2QtBxZ]BQFGHR"q&48#$R'( ( (d3r6DG+d2g5=>?	"r	BrE  T"Wr$s)|#bcl2T9:Aa=DHadQsUlQtBxZ&?@@@@RR[1R4!DH*,r12Aa=Ad2b51R4<",-.3$(R-"2DDDDd1R4!B$;+,-R3$(R-"$%& & &d1R46BrE!G+hsA.>>?@	Qb1  d4"q>D2N:;<QVb[2  d1S51R4<"R%/"456!b&2+:KKKK	Bb2AdAqD==?+,111ad]]_q !Aa=AQsUQrT\AbD 2%3.B67Aa=Ar"   c                  l    t        ddt        d      z  z   dt        z  z         } t        |       | k(  sJ y )Ni    r   @   )r	   rI   r   )r1   s    r    test_issue_6241rO   _   s4    dRQZ"S&()Aa=Ar"   c                  ~   t        ddt        z  z
  dt        z  t        dt        z  dz         z  z         } t        |       dt        z   t        z   k(  sJ t        | d      dt        d      z   t        d      z   k(  sJ t        t        t        dz         dz         } t        |       | k(  sJ t        t        dt        z  d	t        z  t        dt        z  dz         z  z   d
z               t        dt        z  d	t        z  z
  dt        z  z   d
z         k(  sJ t        t        ddt        z  z   ddt        z  z   t        z  z               t        dz   d	t        z  z   dt        z  z   k(  sJ t        dt        dt
        z  dz         t        dt        z  dt        dt        z  dz         z  z   dz         z  z         } t        dt        z  dz         }t        |       t        t        |z  t        |z  z   t        z   t        z   dz         k(  sJ t        dt
        z  dz  dt        z  dz  z   dt        d      z  dz  z   dz         }t        ddt        z  z
  dt        ddt        z  z
        z  z         }t        ||z        t        dt
        z   t        z   z  t        dt        dt        z  dz         t        z   d      z  k(  sJ y )N   r   r'   r&   r?   r   )max_iterr   r      rD   p   F   .   rA   r   r   r(   r%   r$   r   *   F)evaluate)r	   r.   r   r   r,   r   r+   r   rI   r   r   )r1   r0   nr   s       r    test_sqrtdenest3rZ   d   s   R!C%Z!B$tBsFRK0001Aa=BGcM)))a!$T!WtBx(????T"q&\AAa=Ad2c6AbDbfrk):$::R?@ARVad]QrT!B&'( ( (dC"R%KBBJ?:;<a!B$2  QadQhRVaSWr\0B.B%BR%G HHHIARVb[Aa=DA1s!2S!81!<====QrT!Vad1f_qbz!|+a/0AR!C%Z!Dbf---.Aac?b!b&2+.ARVb[8IB8N=B1D E E E Er"   c                  B   t        dt        t        dt        z
        z  z
  t        d      dt        z   z  z
        } t        |       }t        t         dz         }t         |z  t
        |z  z
  |z   t        |z  z   t        z
  t        z
  t        z   t        d      z   dz  j                         }t        |       |k(  sJ t        dt        z  t        t        dz         z  dt        z  z   dt        t        dz         z  z   dz         } t        |       t        t        t        dz         z   dz   k(  sJ dt        z   t
        z   dt
        z   t        dt        z   dt
        z  z         z  z   }t        |dz  j                               } t        |       |j                         k(  sJ y )NrD   r   r   r   rH   r   r   )	r	   r   r,   r   rI   r   r   r.   r-   )r1   z1crJ   s       r    test_sqrtdenest4r^   x   sV   QDRL 47AF#334A	ABbS1WA46BqD=1r!t#b(2-3d2h>
A	I	I	KBa=BQrT$rAv,2%$rAv,6:;Aa=Bb1f-1111	Bq2vtAFQrTM222Aad]]_Aa=AHHJ&&&r"   c                     t        d      } t        dt        t        d| z         dz         z   dz  j                               }t        |      t        dt        t        d| z         dz         z   dz        k(  sJ t        dt        t        dt	        d      z         dz         z   dz  j                               }t        |      dt        t        dt	        d      z         dz         z   k(  sJ dt	        d      z   dz  dz   j                         }t        |      |k(  sJ t        dt        t        dt	        d| z        z         dz         z   dz  dz   j                               }t        |      |k(  sJ t	        d      }|dz  }t        t        dt        dt
        z         z  |z  |z   dz   t
        |z  z               dt        dt
        z         |z  z
  k(  sJ t        dt
        z         }t        d|z  t        ddt
        z  z         z  dt
        z  |z  t        ddt
        z  z         z  z   d	t
        z  z   d
z         }t        |      |k(  sJ y )Nxr   r   r   r   r?   rS   rF   rN   rT   )r   r	   r-   r   r
   r   )r`   r1   r]   c2ras        r    test_sqrt_symbolic_denestrc      s   sAq4QUa((1,4467Aa=D!d4A;?&;";a!?@@@@q4QQZ(1,--199;<Aa=AT!c!f*%5%9 :::::
c!f*q1	$$&Aa=Aq4QQqS\*Q.//!3a7??ABAa=AAA	
ABd1T!b&\>!+b014r"u<=>
T!b&\!^  	a"fBRU4AbD>!BrE"HT!ad(^$;;beCcIJAa=Ar"   c                     ddl m} m} t        ddt        z  dz   z  dz         }t
        t        z   t        dz   z  }t        |      |k(  sJ t        d|z         d|z   k(  sJ t        t        |dz   | ddf            t        d|z   | ddf      k(  sJ t        | t        |      z         | t        |      z   k(  sJ t
        t        z   t        dz   z  }t        |      |k(  sJ t        d|z         d|z   k(  sJ t        t        |dz   | ddf            t        d|z   | ddf      k(  sJ t        | t        |      z         | t        |      z   k(  sJ y )Nr   )r`   yr   r   r   r   )		sympy.abcr`   re   r	   r   r   r   r   r   )r`   re   r1   anss       r    test_issue_5857rh      s\   Q"q\AA7R!V
Ca=Ca!eC'''hq1uq!Qi01S1a)$% % %a$q'k"a$q'k1117R!V
Ca=Ca!eC'''hq1uq!Qi01S1a)$% % %a$q'k"a$q'k111r"   c                      t        d      dggk(  sJ t        d      g dg dg dg dg dg dg d	g d
g dg dg dg dg dg dg dgk(  sJ y )Nr   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )subsets r"   r    test_subsetsrl      sX    1:1#1:lL,lL,lL,N N N Nr"   c                      t        t        dt        dt        d      z         z               t        dt        dt        d      z         z         k(  sJ y )Nr   )r   r	   rk   r"   r    test_issue_5653rn      sP    Qa$q'k""#%(,Qa$q'k1B-B(CD D Dr"   c            	          t        dt        d      t        ddt        z  z         z  z
  dt        z  z   dz        t        k(  sJ dt        d      t        dt        z         z  z
  dt        z  z   } t        |       | k(  sJ y )Nr   r   r   )r   r	   r   r/   s    r    test_issue_12420rq      ss    q474AaC=001Q369:a???	DGDQK!A#%Aa=Ar"   c                      t        t        dt        z         t        ddt        z  z         z   t        ddt        z  z         z
        dk(  sJ y )Nr   r   r   r   r   )r   r	   r   rk   r"   r    test_sqrt_ratcombrs      s?    d1r6lT!ad(^3d2"9oEF!KKKr"   c                      t        ddt        d      z  t        z  z          } t        |       dt        d      t        z  z
  k(  sJ y )Nr'   r   r   r?   )r	   r   r   rp   s    r    test_issue_18041ru      s>    	b1T!W9Q;	Aa=BaN***r"   c                     t        d      } t        d      }t        d      }| | z  ||z  |z  z
  }t        | |||      t        d      t        z  dz  dt        d      z  t        z  dz  z   k(  sJ t	        t        dt        d      z
              t        d      t        z  dz  dt        d      z  t        z  dz  z   k(  sJ y )NrB   r?   ?   r)   r   r   )r   r   r	   r   r   )abr0   d2s       r    test_issue_19914r{      s    AAA	
1qs1uB1a,R
1qay{1}$% % %d2d2h;'(DHQJqL1T!W9Q;q=,HHHHr"   N)*sympy.core.mulr   sympy.core.numbersr   r   r   sympy.core.symbolr   (sympy.functions.elementary.miscellaneousr   r	   (sympy.functions.elementary.trigonometricr
   sympy.integrals.integralsr   sympy.simplify.sqrtdenestr   r   rj   r   r   r   r,   r   r   r.   rI   r+   r!   r2   rK   rO   rZ   r^   rc   rh   rl   rn   rq   rs   ru   r{   )r`   s   0r    <module>r      s     5 5 $ A 8 . 0/72 %3T!W %3 !BBCc( F>
E(' &2"ND
L+Is%3s   B