Module docstring
{"# Definition and notation for extended natural numbers "}
{"# Definition and notation for extended natural numbers "}
ENat
definition
: Type
termℕ∞
definition
: Lean.ParserDescr✝
@[inherit_doc] notation "ℕ∞" => ENat
ENat.instNatCast
instance
: NatCast ℕ∞
instance instNatCast : NatCast ℕ∞ := ⟨WithTop.some⟩
ENat.recTopCoe
definition
{C : ℕ∞ → Sort*} (top : C ⊤) (coe : ∀ a : ℕ, C a) : ∀ n : ℕ∞, C n
/-- Recursor for `ENat` using the preferred forms `⊤` and `↑a`. -/
@[elab_as_elim, induction_eliminator, cases_eliminator]
def recTopCoe {C : ℕ∞ → Sort*} (top : C ⊤) (coe : ∀ a : ℕ, C a) : ∀ n : ℕ∞, C n
| none => top
| Option.someOption.some a => coe a
ENat.recTopCoe_top
theorem
{C : ℕ∞ → Sort*} (d : C ⊤) (f : ∀ a : ℕ, C a) : @recTopCoe C d f ⊤ = d
ENat.recTopCoe_coe
theorem
{C : ℕ∞ → Sort*} (d : C ⊤) (f : ∀ a : ℕ, C a) (x : ℕ) : @recTopCoe C d f ↑x = f x