ó
¡¼™\c           @  s  d  Z  d d l m Z m Z d d l m Z e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d e f d	 „  ƒ  Yƒ Z	 e d
 e f d „  ƒ  Yƒ Z
 e d e f d „  ƒ  Yƒ Z d e f d „  ƒ  YZ e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d  e f d! „  ƒ  Yƒ Z e d" e f d# „  ƒ  Yƒ Z e d$ e f d% „  ƒ  Yƒ Z e d& e f d' „  ƒ  Yƒ Z e d( e f d) „  ƒ  Yƒ Z e d* e f d+ „  ƒ  Yƒ Z e d, e f d- „  ƒ  Yƒ Z e d. e f d/ „  ƒ  Yƒ Z e d0 e f d1 „  ƒ  Yƒ Z e d2 e f d3 „  ƒ  Yƒ Z e d4 e f d5 „  ƒ  Yƒ Z e d6 e f d7 „  ƒ  Yƒ Z  d8 S(9   s5   Definitions of common exceptions for `polys` module. iÿÿÿÿ(   t   print_functiont   division(   t   publict   BasePolynomialErrorc           B  s   e  Z d  Z d „  Z RS(   s.   Base class for polynomial related exceptions. c         G  s   t  d ƒ ‚ d  S(   Ns   abstract base class(   t   NotImplementedError(   t   selft   args(    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyt   new   s    (   t   __name__t
   __module__t   __doc__R   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR      s   t   ExactQuotientFailedc           B  s&   e  Z d d  „ Z d „  Z d „  Z RS(   c         C  s!   | | | |  _  |  _ |  _ d  S(   N(   t   ft   gt   dom(   R   R   R   R   (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyt   __init__   s    c         C  so   d d l  m } |  j d  k r? d | |  j ƒ | |  j ƒ f Sd | |  j ƒ | |  j ƒ | |  j ƒ f Sd  S(   Niÿÿÿÿ(   t   sstrs   %s does not divide %ss   %s does not divide %s in %s(   t   sympy.printing.strR   R   t   NoneR   R   (   R   R   (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyt   __str__   s     c         C  s   |  j  | | |  j ƒ S(   N(   t	   __class__R   (   R   R   R   (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR      s    N(   R   R	   R   R   R   R   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR      s   	t   PolynomialDivisionFailedc           B  s   e  Z d  „  Z d „  Z RS(   c         C  s   | |  _  | |  _ | |  _ d  S(   N(   R   R   t   domain(   R   R   R   R   (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR   "   s    		c         C  sM   |  j  j r d } n |  j  j s* d } n d } d |  j |  j |  j  | f S(   NsŒ   You may want to use a different simplification algorithm. Note that in general it's not possible to guarantee to detect zero in this domain.s‹   Your working precision or tolerance of computations may be set improperly. Adjust those parameters of the coefficient domain and try again.s¦   Zero detection is guaranteed in this coefficient domain. This may indicate a bug in SymPy or the domain is user defined and doesn't implement zero detection properly.sÆ   couldn't reduce degree in a polynomial division algorithm when dividing %s by %s. This can happen when it's not possible to detect zero in the coefficient domain. The domain of computation is %s. %s(   R   t   is_EXt   is_ExactR   R   (   R   t   msg(    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR   '   s    		(   R   R	   R   R   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR      s   	t   OperationNotSupportedc           B  s   e  Z d  „  Z d „  Z RS(   c         C  s   | |  _  | |  _ d  S(   N(   t   polyt   func(   R   R   R   (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR   =   s    	c         C  s   d |  j  |  j j j j f S(   Ns1   `%s` operation not supported by %s representation(   R   R   t   repR   R   (   R   (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR   A   s    (   R   R	   R   R   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR   :   s   	t   HeuristicGCDFailedc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR   D   s   t   ModularGCDFailedc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR   H   s   t   HomomorphismFailedc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR    K   s   t   IsomorphismFailedc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR!   O   s   t   ExtraneousFactorsc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR"   S   s   t   EvaluationFailedc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR#   W   s   t   RefinementFailedc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR$   [   s   t   CoercionFailedc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR%   _   s   t   NotInvertiblec           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR&   c   s   t   NotReversiblec           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR'   g   s   t   NotAlgebraicc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR(   k   s   t   DomainErrorc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR)   o   s   t   PolynomialErrorc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR*   s   s   t   UnificationFailedc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR+   w   s   t   GeneratorsErrorc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR,   {   s   t   GeneratorsNeededc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR-      s   t   ComputationFailedc           B  s   e  Z d  „  Z d „  Z RS(   c         C  s   | |  _  | |  _ | |  _ d  S(   N(   R   t   nargst   exc(   R   R   R/   R0   (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR   †   s    		c         C  s0   d |  j  d j t t |  j j |  j  ƒ ƒ f S(   Ns    %s(%s) failed without generatorss   , (   R   t   joint   mapt   strR0   t   exprsR/   (   R   (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR   ‹   s    (   R   R	   R   R   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR.   ƒ   s   	t   UnivariatePolynomialErrorc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR5   Ž   s   t   MultivariatePolynomialErrorc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR6   ’   s   t   PolificationFailedc           B  s   e  Z e d  „ Z d „  Z RS(   c         C  s[   | s3 | |  _  | |  _ | g |  _ | g |  _ n | |  _ | |  _ | |  _ | |  _ d  S(   N(   t   origt   exprt   origsR4   t   optt   seq(   R   R;   R:   R4   R<   (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR   ™   s    					c         C  s;   |  j  s d t |  j ƒ Sd d j t t |  j ƒ ƒ Sd  S(   Ns$   can't construct a polynomial from %ss#   can't construct polynomials from %ss   , (   R<   R3   R8   R1   R2   R:   (   R   (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR   ¦   s    	(   R   R	   t   FalseR   R   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR7   –   s   t   OptionErrorc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR>   ¬   s   t	   FlagErrorc           B  s   e  Z RS(    (   R   R	   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyR?   °   s   N(!   R
   t
   __future__R    R   t   sympy.utilitiesR   t	   ExceptionR   R   R   R   R   R   R    R!   R"   R#   R$   R%   R&   R'   R(   R)   R*   R+   R,   R-   R.   R5   R6   R7   R>   R?   (    (    (    s5   lib/python2.7/site-packages/sympy/polys/polyerrors.pyt   <module>   sj   	
