Pythagoras

class PythagoreanPremises(**data)

Bases: PredicateInterface

PythagoreanPremises a b c abc is in the form of a right angled triangle. ab is perpendicular to ac

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

predicate_type: Literal[PredicateType.PYTHAGOREAN_PREMISES]
A: Point
B: Point
C: Point
static preparse(args)

Preparse the predicate arguments.

Return type:

tuple[NewType(PredicateArgument, str), ...] | None

check_numerical()

Check numerically the predicate.

Return type:

bool

check(proof_state)

Check symbolically the predicate in the current proof state.

If the predicate cannot be decided, return None.

Return type:

bool | None

why(proof_state)
Return type:

tuple[str, tuple[Circumcenter | Cong | Coll | NColl | Cyclic | ConstantAngle | ACompute | LCompute | ConstantLength | ConstantRatio | EqAngle | Diff | RCompute | ObtuseAngle | MidPoint | EqRatio | Perp | NPerp | Para | NPara | SameClock | SameSide | NSameSide | PythagoreanPremises | PythagoreanConclusions | SquaredConstantLength | SquaredConstantRatio | SimtriClock | SimtriReflect | ContriClock | ContriReflect | AngleEquation | LengthEquation, ...]] | None

to_tokens()

Convert the predicate to a tuple of strings.

Return type:

tuple[NewType(PredicateArgument, str), ...]

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class PythagoreanConclusions(**data)

Bases: PredicateInterface

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

predicate_type: Literal[PredicateType.PYTHAGOREAN_CONCLUSIONS]
A: Point
B: Point
C: Point
static preparse(args)

Preparse the predicate arguments.

Return type:

tuple[NewType(PredicateArgument, str), ...] | None

check_numerical()

Check numerically the predicate.

Return type:

bool

add(proof_state)

Add the predicate to the proof state.

Return a tuple of predicates that are direct consequences of the predicate by definition.

Return type:

tuple[PredicateInterface, ...]

to_tokens()

Convert the predicate to a tuple of strings.

Return type:

tuple[NewType(PredicateArgument, str), ...]

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].