properties.orderings

Protocols for orderings of algebraic structures.

class boring_math.abstract_algebra.properties.orderings.PartialOrder

Bases: Protocol, Generic

Partially Ordered.

Important

Contract: Operator <= is reflexive, anti-symmetric and transitive.

__le__(right: Self) bool

Return self<=value.

__init__(*args, **kwargs)
classmethod __subclasshook__(other)

Abstract classes can override this to customize issubclass().

This is invoked early on by abc.ABCMeta.__subclasscheck__(). It should return True, False or NotImplemented. If it returns NotImplemented, the normal algorithm is used. Otherwise, it overrides the normal algorithm (and the outcome is cached).

class boring_math.abstract_algebra.properties.orderings.TotalOrder

Bases: PartialOrder, Protocol, Generic

Totally Ordered.

Important

Contract: Overloaded methods must still define a total order.

__lt__(right: Self) bool

Return self<value.

__ge__(right: Self) bool

Return self>=value.

__gt__(right: Self) bool

Return self>value.

__init__(*args, **kwargs)
__le__(right: Self) bool

Return self<=value.

classmethod __subclasshook__(other)

Abstract classes can override this to customize issubclass().

This is invoked early on by abc.ABCMeta.__subclasscheck__(). It should return True, False or NotImplemented. If it returns NotImplemented, the normal algorithm is used. Otherwise, it overrides the normal algorithm (and the outcome is cached).