ó
¡¼™\c        v   @   s²  d  d l  Z  d  d l Z d  d l Z d  d l Z d  d l Z d  d l m Z m Z m Z 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 m Z m Z m Z m Z m Z m Z m Z m Z m  Z  m! Z! m" Z" m# Z# 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/ m0 Z0 m1 Z1 m2 Z2 m3 Z3 m4 Z4 m5 Z5 e d ƒ Z6 e6 s‘e7 Z8 n  e d ƒ Z9 e+ d	 ƒ Z: d
 „  Z; d „  Z< d „  Z= d „  Z> d „  Z? d „  Z@ dË dÌ d e< d  d ƒ f d e< e< d  d ƒ d ƒ f d e- f d d e- f d e- d f d e- e; d d ƒ f d e2 f d  e0 e1 f d! e0 e1 f d" e0 e1 f d# e0 e1 f d$ e; e0 e1 e0 ƒ f d% e e0 d e1 d e2 d ƒ f d& e e9 ƒ f d' e e9 ƒ f d( e e0 ƒ f d) e< e e0 ƒ e e1 ƒ ƒ f d* e e e9 ƒ ƒ f d+ e e e9 ƒ ƒ f d, e0 e1 f d- e< e0 e1 e= e2 d  ƒ ƒ f d. e< d/ e= d d  ƒ ƒ f d0 e e- ƒ e e. ƒ f d1 e e0 e- d ƒ f d2 e e0 e- d ƒ f d3 e e0 e- d ƒ f d4 e e0 e- d ƒ f d5 e e0 e- d ƒ f d6 e e0 e- d d7 d8 ƒf d9 e e0 e- d d7 d: ƒf d; e f d< e e< d e= e- d  ƒ ƒ e- e ƒ f d= e e- e- ƒ f d> e e- e3 ƒ f d? e: e- ƒ f d@ e: e- e. ƒ f dA e: e- e. e/ ƒ f dB e e: e- ƒ e- ƒ f dC e e+ d ƒ e- ƒ e- ƒ f dD e> e- ƒ f dE e> e e- ƒ ƒ f dF e> e- ƒ e> e. ƒ f dG e> e> e- ƒ e> e. ƒ ƒ f dH e dI ƒ e> e- e. ƒ f dJ e e- e- ƒ f dK e e- e9 ƒ f dL e e- d e. e- ƒ f dM e e; e- e0 ƒ e- ƒ f dN e d e0 ƒ f dO e d e- d d/ f ƒ f dP e e- e- e0 e1 f ƒ f dQ e e- e- e0 e1 f ƒ f dR e e- e- e0 e1 f ƒ f dS e e- e- e0 e1 f ƒ f dT e e- e- e0 e1 f ƒ f dU e e- e- e0 e1 f ƒ f dV e e: e/ ƒ e/ e: e0 ƒ e: e1 ƒ f ƒ f dW e e; e- e0 ƒ e- ƒ f dX e e; e; e0 e1 ƒ e2 ƒ e- ƒ f dY e e e/ d  ƒ e/ ƒ f dZ e d e e/ d  ƒ e/ ƒ f d[ e e e- d  ƒ e- ƒ f d\ e e; e= e0 d  ƒ e e1 d  ƒ ƒ e- ƒ f d] e d e= e9 d  ƒ e9 ƒ f d^ e e; e= e- d  ƒ d ƒ e- ƒ f d_ e d` ƒ f da e da ƒ f db e dc ƒ f dd e dd ƒ f de e df ƒ f dg e df ƒ f dh e+ df ƒ e d` ƒ e da ƒ ƒ f di e? e- ƒ f dj e? dk ƒ f dl e? e9 ƒ f dm e? e; e- d ƒ ƒ f dn e? e? e- ƒ ƒ f do e? e? e? e- ƒ ƒ ƒ f dp e< e? dq ƒ e? d/ ƒ ƒ f dr e  e- ƒ f ds e  e; e- e1 ƒ ƒ f dt e! e e- ƒ d ƒ f du e! e e- ƒ e. ƒ f dv e! e e- ƒ e9 ƒ f dw e" e- e. ƒ f dx e# e- e. ƒ f dy e$ e- e. ƒ f dz e% e- e. ƒ f d{ e d ƒ f d| e d} ƒ f d~ e d ƒ f d€ e d ƒ f d‚ e& e2 e4 d d f ƒ f dƒ e& e2 e4 d d f ƒ f d„ e& e2 e4 d d f ƒ f d… e& e2 e4 d d f ƒ f d† e& e4 d e4 d d‡ f ƒ f dˆ e& e= e? e5 ƒ d  ƒ e5 d e f ƒ f d‰ e' e- e0 e1 e2 f ƒ f dŠ e' e- e0 e1 e2 f ƒ f d‹ e' e- e0 e1 e2 f ƒ f dŒ e' e- e0 e1 e2 f ƒ f d e@ e- e( ƒ f dŽ e@ e- e. e( ƒ f d e@ e- d‡ ƒ f d e@ e- e. d‡ ƒ f d‘ e@ e- d ƒ f d’ e@ e- e0 ƒ f d“ e@ e- d” ƒ f d• e@ e- e= e0 d ƒ ƒ f d– e- f d— e; e0 e1 ƒ f d˜ e e* e- ƒ e- ƒ f gs ZA d™ „  ZB dš e@ e- d ƒ f d› e@ e- e0 ƒ f g ZC dœ „  ZD d dž dŸ d  d¡ d¢ d£ d¤ d¥ d¦ d§ d¨ d© dª d« d¬ d­ d® d¯ d° d: d± d² d³ d´ dµ d¶ d· d¸ d¹ dº d» d¼ d½ d¾ g# ZE d¿ „  ZF dÀ dÁ dÂ dÃ dÄ dÅ dÆ dÇ dÈ dÉ g
 ZG e dÊ „  ƒ ZH d S(Í   iÿÿÿÿN(   t   build_parsert   check_antlr_versiont   dir_latex_antlr(   t   raisest   skipt   XFAIL(   t   import_module(   t   Symbolt   Mult   Addt   Eqt   Abst   sint   asint   cost   Powt   csct   sect   Limitt   oot
   Derivativet   Integralt	   factorialt   sqrtt   roott   StrictLessThant   LessThant   StrictGreaterThant   GreaterThant   Sumt   Productt   Et   logt   tant   Function(	   t   xt   yt   zt   at   bt   ct   tt   kt   nt   antlr4t   thetat   fc         C   s   t  |  | d t ƒS(   Nt   evaluate(   R	   t   False(   R&   R'   (    (    s=   lib/python2.7/site-packages/sympy/parsing/tests/test_latex.pyt   _Add"   s    c         C   s   t  |  | d t ƒS(   NR/   (   R   R0   (   R&   R'   (    (    s=   lib/python2.7/site-packages/sympy/parsing/tests/test_latex.pyt   _Mul&   s    c         C   s   t  |  | d t ƒS(   NR/   (   R   R0   (   R&   R'   (    (    s=   lib/python2.7/site-packages/sympy/parsing/tests/test_latex.pyt   _Pow*   s    c         C   s   t  |  d t ƒS(   NR/   (   R   R0   (   R&   (    (    s=   lib/python2.7/site-packages/sympy/parsing/tests/test_latex.pyt   _Abs.   s    c         C   s   t  |  d t ƒS(   NR/   (   R   R0   (   R&   (    (    s=   lib/python2.7/site-packages/sympy/parsing/tests/test_latex.pyt
   _factorial2   s    c         C   s   t  |  | d t ƒS(   NR/   (   R    R0   (   R&   R'   (    (    s=   lib/python2.7/site-packages/sympy/parsing/tests/test_latex.pyt   _log6   s    t   0i    t   1i   s   -3.14g…ëQ¸	@s   (-7.13)(1.5)g…ëQ¸…@g      ø?R#   t   2xi   s   x^2s	   x^{3 + 1}i   s   -cs	   a \cdot bs   a / bs   a \div bs   a + bs	   a + b - as   a^2 + b^2 = c^2s   \sin \thetas   \sin(\theta)s   \sin^{-1} as   \sin a \cos bs   \sin \cos \thetas   \sin(\cos \theta)s   \frac{a}{b}s   \frac{a + b}{c}s   \frac{7}{3}i   s   (\csc x)(\sec y)s   \lim_{x \to 3} as   \lim_{x \rightarrow 3} as   \lim_{x \Rightarrow 3} as   \lim_{x \longrightarrow 3} as   \lim_{x \Longrightarrow 3} as   \lim_{x \to 3^{+}} at   dirt   +s   \lim_{x \to 3^{-}} at   -s   \inftys   \lim_{x \to \infty} \frac{1}{x}s   \frac{d}{dx} xs   \frac{d}{dt} xs   f(x)s   f(x, y)s
   f(x, y, z)s   \frac{d f(x)}{dx}s   \frac{d\theta(x)}{dx}s   |x|s   ||x||s   |x||y|s   ||x||y||s
   \pi^{|xy|}t   pis	   \int x dxs   \int x d\thetas   \int (x^2 - y)dxs   \int x + a dxs   \int das   \int_0^7 dxs   \int_a^b x dxs   \int^b_a x dxs   \int_{a}^b x dxs   \int^{b}_a x dxs   \int_{a}^{b} x dxs   \int^{b}_{a} x dxs   \int_{f(a)}^{f(b)} f(z) dzs
   \int (x+a)s   \int a + b + c dxs   \int \frac{dz}{z}s   \int \frac{3 dz}{z}s   \int \frac{1}{x} dxs!   \int \frac{1}{a} + \frac{1}{b} dxs#   \int \frac{3 \cdot d\theta}{\theta}s   \int \frac{1}{x} + 1 dxt   x_0s   x_{0}s   x_{1}t   x_as   x_{a}s   x_{b}s   h_\thetas	   h_{theta}s
   h_{\theta}s   h_{\theta}(x_0, x_1)s   x!s   100!id   s   \theta!s   (x + 1)!s   (x!)!s   x!!!s   5!7!i   s   \sqrt{x}s   \sqrt{x + b}s   \sqrt[3]{\sin x}s   \sqrt[y]{\sin x}s   \sqrt[\theta]{\sin x}s   x < ys   x \leq ys   x > ys   x \geq ys
   \mathit{x}s   \mathit{test}t   tests   \mathit{TEST}t   TESTs   \mathit{HELLO world}s   HELLO worlds   \sum_{k = 1}^{3} cs   \sum_{k = 1}^3 cs   \sum^{3}_{k = 1} cs   \sum^3_{k = 1} cs   \sum_{k = 1}^{10} k^2i
   s"   \sum_{n = 0}^{\infty} \frac{1}{n!}s   \prod_{a = b}^{c} xs   \prod_{a = b}^c xs   \prod^{c}_{a = b} xs   \prod^c_{a = b} xs   \ln xs   \ln xys   \log xs   \log xys
   \log_{2} xs
   \log_{a} xs   \log_{11} xi   s   \log_{a^2} xs   [x]s   [a + b]s   \frac{d}{dx} [ \tan x ]c          C   sC   d d l  m }  x, t D]$ \ } } |  | ƒ | k s t ‚ q Wd  S(   Niÿÿÿÿ(   t   parse_latex(   t   sympy.parsing.latexRB   t
   GOOD_PAIRSt   AssertionError(   RB   t	   latex_strt
   sympy_expr(    (    s=   lib/python2.7/site-packages/sympy/parsing/tests/test_latex.pyt   test_parseable¶   s    s   \log_2 xs   \log_a xc          C   sV   d d l  m }  x? t D]7 \ } } t t ƒ  |  | ƒ | k sH t ‚ Wd  QXq Wd  S(   Niÿÿÿÿ(   RB   (   RC   RB   t   FAILING_PAIRSR   t	   ExceptionRE   (   RB   RF   RG   (    (    s=   lib/python2.7/site-packages/sympy/parsing/tests/test_latex.pyt   test_failing_parseableÀ   s    t   (t   )s   \frac{d}{dx}s   (\frac{d}{dx})\sqrt{}s   \sqrtt   {t   }s   \mathit{x + y}s   \mathit{21}s
   \frac{2}{}s
   \frac{}{2}s   \intt   !s   !0t   _t   ^t   |s   ||x|s   ()s"   ((((((((((((((((()))))))))))))))))s   \frac{d}{dx} + \frac{d}{dt}s   f(x,,y)s   f(x,y,s   \sin^xs   \cos^2t   @t   #t   $t   %t   &t   *s   \t   ~s   \frac{(2 + x}{1 - x)}c          C   sH   d d l  m }  m } x+ t D]# } t | ƒ  |  | ƒ Wd  QXq Wd  S(   Niÿÿÿÿ(   RB   t   LaTeXParsingError(   RC   RB   R[   t   BAD_STRINGSR   (   RB   R[   RF   (    (    s=   lib/python2.7/site-packages/sympy/parsing/tests/test_latex.pyt   test_not_parseableî   s    s   \cos 1 \coss   f(,s   f()s   a \div \div bs   a \cdot \cdot bs   a // bs   a +s   1.1.1s   1 +s   a / b /c          C   sH   d d l  m }  m } x+ t D]# } t | ƒ  |  | ƒ Wd  QXq Wd  S(   Niÿÿÿÿ(   RB   R[   (   RC   RB   R[   t   FAILING_BAD_STRINGSR   (   RB   R[   RF   (    (    s=   lib/python2.7/site-packages/sympy/parsing/tests/test_latex.pyt   test_failing_not_parseable  s    (   R7   i    (   R8   i   (I   t   ost   globt   tempfilet   shutilt   difflibt&   sympy.parsing.latex._build_latex_antlrR    R   R   t   sympy.utilities.pytestR   R   R   t   sympy.externalR   t   sympyR   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"   t	   sympy.abcR#   R$   R%   R&   R'   R(   R)   R*   R+   R,   t   Truet   disabledR-   R.   R1   R2   R3   R4   R5   R6   RD   RH   RI   RK   R\   R]   R^   R_   (    (    (    s=   lib/python2.7/site-packages/sympy/parsing/tests/test_latex.pyt   <module>   s~  ²@								
"	$-$*$!'						