Reflection Tactics for Polynomials #
Rewrites polynomials into forms with type-class instances in our reflection systems. This is typically rewriting polynomials that are synonyms for constants as those constants. Performing this step before the instance inference reduces the necessary breadth of the type-class instances.
Equations
- tacticPoly_rfl_rw = Lean.ParserDescr.node `tacticPoly_rfl_rw 1024 (Lean.ParserDescr.nonReservedSymbol "poly_rfl_rw" false)
Instances For
Definitionally simplifies an expression in terms of values from inferred instances.
This step is performed after instance inference transforms the goal in terms of instances.
With a computable represenatation,
the resulting goal should be autmatically verifiable with rfl
, decide
, simp
, etc.
Equations
- tacticPoly_rfl_dsimp = Lean.ParserDescr.node `tacticPoly_rfl_dsimp 1024 (Lean.ParserDescr.nonReservedSymbol "poly_rfl_dsimp" false)
Instances For
Performs type-class reflection tactic t
after rewriting the polynomial into a compatible form
and before definitionally simplifying the resulting instanced values in the goal.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A standard tactic to resolve subgoals produced during infer_instance_trying
Equations
- tacticPoly_infer_try = Lean.ParserDescr.node `tacticPoly_infer_try 1024 (Lean.ParserDescr.nonReservedSymbol "poly_infer_try" false)
Instances For
Automates goals of the form p.degree ≤ d
Equations
- tacticPoly_rfl_degree_le = Lean.ParserDescr.node `tacticPoly_rfl_degree_le 1024 (Lean.ParserDescr.nonReservedSymbol "poly_rfl_degree_le" false)
Instances For
Automates goals of the form p.degree = d
Equations
- tacticPoly_rfl_degree_eq = Lean.ParserDescr.node `tacticPoly_rfl_degree_eq 1024 (Lean.ParserDescr.nonReservedSymbol "poly_rfl_degree_eq" false)
Instances For
Automates goals of the form p.degree = d
using infer_instance_trying <:> t
to handle more complex intermediate subgoals
Equations
- One or more equations did not get rendered due to their size.
Instances For
Automates goals of the form p.degree = d
by constructing a coefficient represenatation t
with a computable degree
Equations
- One or more equations did not get rendered due to their size.
Instances For
Automates goals of the form p.leadingCoeff = c
Equations
- tacticPoly_rfl_leading_coeff = Lean.ParserDescr.node `tacticPoly_rfl_leading_coeff 1024 (Lean.ParserDescr.nonReservedSymbol "poly_rfl_leading_coeff" false)
Instances For
Automates goals of the form p.leadingCoeff = c
using infer_instance_trying <:> t
to handle more complex intermediate subgoals
Equations
- One or more equations did not get rendered due to their size.
Instances For
Automates goals of the form p.leadingCoeff = c
by constructing a coefficient represenatation t
with a computable leading coefficient
Equations
- One or more equations did not get rendered due to their size.
Instances For
Automates goals of the form p.coeff n = c
using coefficient representation t
Equations
- One or more equations did not get rendered due to their size.
Instances For
Automates goals of the form p.eval x = y
using evaluation representation t
Equations
- One or more equations did not get rendered due to their size.
Instances For
Automates goals of the form p = q
by rewriting the p
into a normal form determined by coefficient representation t
Equations
- One or more equations did not get rendered due to their size.