20 lines
488 B
Text
20 lines
488 B
Text
theorem some_induction
|
|
{motive : Nat → Prop}
|
|
(zero : motive 0)
|
|
(succ : forall n, 0 < n → let m := n - 1; motive m → motive n) :
|
|
∀ n, motive n
|
|
| 0 => zero
|
|
| n+1 => succ (n+1) (Nat.zero_lt_succ n) (some_induction zero succ n)
|
|
|
|
|
|
example (n : Nat) : n = n := by
|
|
induction n using some_induction
|
|
case zero => rfl
|
|
case succ n _h _m _IH =>
|
|
rfl
|
|
|
|
example (n : Nat) : n = n := by
|
|
induction n using some_induction with
|
|
| zero => rfl
|
|
| succ n _h _m _IH =>
|
|
rfl
|