ó
    Š*£h:  ã                   óR   • S r  " S S\5      r " S S\5      r " S S\5      r/ SQrg)	z,Special exception classes for numberfields. c                   ó   • \ rS rSrSrSrg)ÚClosureFailureé   aë  
Signals that a :py:class:`ModuleElement` which we tried to represent in a
certain :py:class:`Module` cannot in fact be represented there.

Examples
========

>>> from sympy.polys import Poly, cyclotomic_poly, ZZ
>>> from sympy.polys.matrices import DomainMatrix
>>> from sympy.polys.numberfields.modules import PowerBasis, to_col
>>> T = Poly(cyclotomic_poly(5))
>>> A = PowerBasis(T)
>>> B = A.submodule_from_matrix(2 * DomainMatrix.eye(4, ZZ))

Because we are in a cyclotomic field, the power basis ``A`` is an integral
basis, and the submodule ``B`` is just the ideal $(2)$. Therefore ``B`` can
represent an element having all even coefficients over the power basis:

>>> a1 = A(to_col([2, 4, 6, 8]))
>>> print(B.represent(a1))
DomainMatrix([[1], [2], [3], [4]], (4, 1), ZZ)

but ``B`` cannot represent an element with an odd coefficient:

>>> a2 = A(to_col([1, 2, 2, 2]))
>>> B.represent(a2)
Traceback (most recent call last):
...
ClosureFailure: Element in QQ-span but not ZZ-span of this basis.

© N©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú__static_attributes__r   ó    Ú`/home/mande/repo/quber/.venv/lib/python3.13/site-packages/sympy/polys/numberfields/exceptions.pyr   r      s   † ñò> 	r   r   c                   ó   • \ rS rSrSrSrg)ÚStructureErroré'   z�
Represents cases in which an algebraic structure was expected to have a
certain property, or be of a certain type, but was not.
r   Nr   r   r   r   r   r   '   s   † ñò 	r   r   c                   ó   • \ rS rSrSrSrg)ÚMissingUnityErroré/   z6Structure should contain a unity element but does not.r   Nr   r   r   r   r   r   /   s   † ÙAÚr   r   )r   r   r   N)r   Ú	Exceptionr   r   r   Ú__all__r   r   r   Ú<module>r      s4   ðÙ 2ô 	�Yô  	ôF	�Yô 	ô	˜ô 	ò
�r   