Buckets:
MisterAI/LocalAI_Demo_backends / cpu-diffusers.upgrade-tmp /venv /lib /python3.10 /site-packages /sympy /sets /contains.py
| from sympy.core import S | |
| from sympy.core.sympify import sympify | |
| from sympy.core.relational import Eq, Ne | |
| from sympy.core.parameters import global_parameters | |
| from sympy.logic.boolalg import Boolean | |
| from sympy.utilities.misc import func_name | |
| from .sets import Set | |
| class Contains(Boolean): | |
| """ | |
| Asserts that x is an element of the set S. | |
| Examples | |
| ======== | |
| >>> from sympy import Symbol, Integer, S, Contains | |
| >>> Contains(Integer(2), S.Integers) | |
| True | |
| >>> Contains(Integer(-2), S.Naturals) | |
| False | |
| >>> i = Symbol('i', integer=True) | |
| >>> Contains(i, S.Naturals) | |
| Contains(i, Naturals) | |
| References | |
| ========== | |
| .. [1] https://en.wikipedia.org/wiki/Element_%28mathematics%29 | |
| """ | |
| def __new__(cls, x, s, evaluate=None): | |
| x = sympify(x) | |
| s = sympify(s) | |
| if evaluate is None: | |
| evaluate = global_parameters.evaluate | |
| if not isinstance(s, Set): | |
| raise TypeError('expecting Set, not %s' % func_name(s)) | |
| if evaluate: | |
| # _contains can return symbolic booleans that would be returned by | |
| # s.contains(x) but here for Contains(x, s) we only evaluate to | |
| # true, false or return the unevaluated Contains. | |
| result = s._contains(x) | |
| if isinstance(result, Boolean): | |
| if result in (S.true, S.false): | |
| return result | |
| elif result is not None: | |
| raise TypeError("_contains() should return Boolean or None") | |
| return super().__new__(cls, x, s) | |
| def binary_symbols(self): | |
| return set().union(*[i.binary_symbols | |
| for i in self.args[1].args | |
| if i.is_Boolean or i.is_Symbol or | |
| isinstance(i, (Eq, Ne))]) | |
| def as_set(self): | |
| return self.args[1] | |
Xet Storage Details
- Size:
- 1.83 kB
- Xet hash:
- 7ee3ca364bcaaa7b20ff7e9a2f41a68e741473c8deaa1e1034c0b120c2556b8d
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.