Documentation

Lean.Meta.Tactic.Grind.Arith.Simproc

Applies a^(m+n) = a^m * a^n, a^0 = 1, a^1 = a.

We do normalize a^0 and a^1 when converting expressions into polynomials, but we need to normalize them here when for other preprocessing steps such as a / b = a*b⁻¹. If b is of the form c^1, it will be treated as an atom in the comm ring module.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      Normalize arithmetic instances for Nat and Int operations. Recall that both Nat and Int have builtin support in grind, and we use the default instances. However, Mathlib may register nonstandard ones after instances such as

      instance instDistrib : Distrib Nat where
        mul := (· * ·)
      

      are added to the environment.

      Generic instance normalizer

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              Equations
              • One or more equations did not get rendered due to their size.
              Instances For

                Add additional arithmetic simprocs

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For