Experimental/internal API for 0.2; subject to change before 0.3. A theorem-like rewrite rule over a core equality term.
Summary
Functions
Builds a rewrite rule from equation-lemma metadata.
Builds a rewrite rule from a realized equation artifact.
Builds a rewrite rule.
Types
@type t() :: %Theoria.Rewrite.Rule{ binders: [Theoria.Equation.Lemma.binder()], direction: :forward | :backward, equality: Theoria.Term.Eq.t(), identity: Theoria.Equation.Identity.t() | nil, name: atom() | Theoria.Equation.Identity.t(), proof: Theoria.Term.t() | nil, realized: Theoria.Equation.Realized.t() | nil }
Functions
@spec from_lemma(Theoria.Equation.Lemma.t(), Theoria.Term.t() | keyword(), keyword()) :: t()
Builds a rewrite rule from equation-lemma metadata.
@spec from_realized(Theoria.Equation.Realized.t()) :: t()
Builds a rewrite rule from a realized equation artifact.
@spec new(atom() | Theoria.Equation.Identity.t(), Theoria.Term.Eq.t(), keyword()) :: t()
Builds a rewrite rule.