Symbolics#

This module contains a mixin for symbolic algebra.

It is not intended to be used directly by the user.

from qhronology.utilities import symbolics

A mixin for symbolic algebra. Not intended to be used directly by the user.

class SymbolicsProperties(
symbols: dict[MatrixSymbol | MatrixElement | Symbol | str, dict[str, Any]] | None = None,
conditions: list[tuple[Number | generic | Basic | MatrixSymbol | MatrixElement | Symbol | str, Number | generic | Basic | MatrixSymbol | MatrixElement | Symbol | str]] | None = None,
)[source]#

A mixin for endowing derived classes with algebraic symbolism.

Not intended to be instantiated itself, but rather indirectly via the constructor in its child classes.

property symbols: dict[MatrixSymbol | MatrixElement | Symbol | str, dict[str, Any]]#

A dictionary in which the keys are individual symbols (contained within the object’s matrix representation) and the values are dictionaries of their respective SymPy keyword-argument assumptions (“predicates”). A full list of currently supported predicates, and their defaults, is as follows:

  • "algebraic": True

  • "commutative": True

  • "complex": True

  • "extended_negative": False

  • "extended_nonnegative": True

  • "extended_nonpositive": False

  • "extended_nonzero": True

  • "extended_positive": True

  • "extended_real": True

  • "finite": True

  • "hermitian": True

  • "imaginary": False

  • "infinite": False

  • "integer": True

  • "irrational": False

  • "negative": False

  • "noninteger": False

  • "nonnegative": True

  • "nonpositive": False

  • "nonzero": True

  • "positive": True

  • "rational": True

  • "real": True

  • "transcendental": False

  • "zero": False

property conditions: list[tuple[Number | generic | Basic | MatrixSymbol | MatrixElement | Symbol | str, Number | generic | Basic | MatrixSymbol | MatrixElement | Symbol | str]]#

A list of \(2\)-tuples of conditions to be applied to the object’s matrix representation.