Documentation

Mathlib.Tactic.Bound.Attribute

The bound attribute #

Any lemma tagged with @[bound] is registered as an apply rule for the bound tactic, by converting it to either norm apply or safe apply <priority>. The classification is based on the number and types of the lemma's hypotheses.

def Mathlib.Tactic.Bound.isZero {u : Lean.Level} {α : Q(Type u)} (e : Q(«$α»)) :

Check if an expression is zero

Equations
    Instances For
      def Mathlib.Tactic.Bound.ineqPriority {u : Lean.Level} {α : Q(Type u)} (a b : Q(«$α»)) :

      Map the arguments of an inequality expression to a score

      Equations
        Instances For

          Map a hypothesis type to a score

          Map a type to a score

          Equations
            Instances For

              Score the type of argument x

              Equations
                Instances For

                  Insist that our conclusion is an inequality

                  Equations
                    Instances For

                      Map a theorem decl to a score (0 means norm apply, 0 < means safe apply)

                      Equations
                        Instances For

                          Map a score to either norm apply or safe apply <priority>

                          Equations
                            Instances For

                              Attribute for forward rules for the bound tactic.

                              @[bound_forward] lemmas should produce inequalities given other hypotheses that might be in the context. A typical example is exposing an inequality field of a structure, such as HasPowerSeriesOnBall.r_pos.

                              Equations
                                Instances For