o
    *Î®cê  ã                   @   sP  d Z ddlmZmZ ddlmZ ddlmZmZmZmZ ddl	m
Z
mZ ddlmZ ddlmZmZmZ ddlmZmZmZmZ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* dd
l+m,Z,m-Z-m.Z. ddl/m0Z0m1Z1 ddl2m3Z3 ddl4m5Z5 ddl6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZC ddlDmEZE ddlFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZYmZZZ ddl[m\Z\m]Z] ddl^m_Z_m`Z` ddlambZbmcZcmdZd ddlemfZf ddlgmhZhmiZimjZj ddlkmlZlmmZmmnZnmoZo ddlpmqZqmrZr ejsZsejtZtejuZuejvZvg d¢ZwdS )z<Core module. Provides the basic operations needed in sympy.
é   )ÚsympifyÚSympifyError)Úcacheit)ÚassumptionsÚcheck_assumptionsÚfailing_assumptionsÚcommon_assumptions)ÚBasicÚAtom)ÚS)ÚExprÚ
AtomicExprÚUnevaluatedExpr)ÚSymbolÚWildÚDummyÚsymbolsÚvar)ÚNumberÚFloatÚRationalÚIntegerÚNumberSymbolÚ
RealNumberÚigcdÚilcmÚseterrÚEÚIÚnanÚooÚpiÚzooÚAlgebraicNumberÚcompÚmod_inverse)ÚPowÚinteger_nthrootÚinteger_log)ÚMulÚprod)ÚAdd)ÚMod)ÚRelÚEqÚNeÚLtÚLeÚGtÚGeÚEqualityÚGreaterThanÚLessThanÚ
UnequalityÚStrictGreaterThanÚStrictLessThan)Ú	vectorize)ÚLambdaÚWildFunctionÚ
DerivativeÚdiffÚFunctionClassÚFunctionÚSubsÚexpandÚ	PoleErrorÚ	count_opsÚ
expand_mulÚ
expand_logÚexpand_funcÚexpand_trigÚexpand_complexÚexpand_multinomialÚnfloatÚexpand_power_baseÚexpand_power_expÚarity)ÚPrecisionExhaustedÚN)ÚTupleÚDict)Ú	gcd_termsÚfactor_termsÚ	factor_nc)Úevaluate)ÚUndefinedKindÚ
NumberKindÚBooleanKind)Úpreorder_traversalÚ	bottom_upÚuseÚpostorder_traversal)Údefault_sort_keyÚordered)cr   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/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   ÚevalfrQ   rR   rS   rT   rU   rV   ÚCatalanÚ
EulerGammaÚGoldenRatioÚTribonacciConstantrW   rX   rY   rZ   r[   r\   r]   r^   r_   N)xÚ__doc__r   r   Úcacher   r   r   r   r   Úbasicr	   r
   Ú	singletonr   Úexprr   r   r   Úsymbolr   r   r   r   r   Únumbersr   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   Úpowerr&   r'   r(   Úmulr)   r*   Úaddr+   Úmodr,   Ú
relationalr-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   Úmultidimensionalr:   Úfunctionr;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   r`   rO   rP   Ú
containersrQ   rR   Ú	exprtoolsrS   rT   rU   Ú
parametersrV   ÚkindrW   rX   rY   Ú	traversalrZ   r[   r\   r]   Úsortingr^   r_   ra   rb   rc   rd   Ú__all__© rz   rz   ú:/tmp/pip-target-vg8gfxp4/lib/python/sympy/core/__init__.pyÚ<module>   s8    P<X