Documentation

Lean.Elab.PreDefinition.PartialFixpoint.Induction

def Lean.Elab.PartialFixpoint.mkAdmAnd (α instα adm₁ adm₂ : Expr) :
Equations
    Instances For
      partial def Lean.Elab.PartialFixpoint.mkAdmProj (packedInst : Expr) (i : Nat) (e : Expr) :
      Equations
        Instances For
          def Lean.Elab.PartialFixpoint.unfoldPredRel (predType body : Expr) (fixpointType : PartialFixpointType) (reduceConclusion : Bool := false) :

          Unfolds an appropriate PartialOrder instance on predicates to quantifications and implications. I.e. ImplicationOrder.instPartialOrder.rel P Q becomes ∀ x y, P x y → Q x y.

          In the premise of the Park induction principle (lfp_le_of_le_monotone) we use a monotone map defining the predicate in the eta expanded form. In such a case, besides desugaring the predicate, we need to perform a weak head reduction. The optional parameter reduceConclusion (false by default) indicates whether we need to perform this reduction.

          Equations
            Instances For
              Equations
                Instances For

                  Returns true if name defined by partial_fixpoint, the first in its mutual group, and all functions are defined using the CCPO instance for Option.

                  Equations
                    Instances For

                      Given motive : α → β → γ → Prop, construct a proof of admissible (fun f => ∀ x y r, f x y = r → motive x y r)

                      Equations
                        Instances For