this is a consequenc of #4807 that only shows up once that change made it to stage0, it seem.
30 lines
1.1 KiB
Text
30 lines
1.1 KiB
Text
protected def Nat.add : Nat → Nat → Nat :=
|
||
fun x x_1 =>
|
||
Nat.brecOn x_1
|
||
(fun x f x_2 =>
|
||
(match x_2, x with
|
||
| a, Nat.zero => fun x => a
|
||
| a, b.succ => fun x => (x.1 a).succ)
|
||
f)
|
||
x
|
||
protected def Nat.add : Nat → Nat → Nat :=
|
||
fun x x_1 =>
|
||
Nat.brecOn (motive := fun x => Nat → Nat) x_1
|
||
(fun x f x_2 =>
|
||
(match (motive := Nat → (x : Nat) → Nat.below (motive := fun x => Nat → Nat) x → Nat) x_2, x with
|
||
| a, Nat.zero => fun x => a
|
||
| a, b.succ => fun x => (x.1 a).succ)
|
||
f)
|
||
x
|
||
theorem ex.{u} : ∀ {α β : Sort u} (h : α = β) (a : α), HEq (cast h a) a :=
|
||
fun x x_1 x_2 x_3 =>
|
||
match x, x_1, x_2, x_3 with
|
||
| α, .(α), Eq.refl α, a => HEq.refl a
|
||
theorem ex.{u} : ∀ {α β : Sort u} (h : α = β) (a : α), HEq (cast h a) a :=
|
||
fun x x_1 x_2 x_3 =>
|
||
match (motive := ∀ (x x_4 : Sort u) (x_5 : x = x_4) (x_6 : x), HEq (cast x_5 x_6) x_6) x, x_1, x_2, x_3 with
|
||
| α, .(α), Eq.refl α, a => HEq.refl a
|
||
def fact : Nat → Nat :=
|
||
fun n => Nat.recOn n 1 fun n acc => (n + 1) * acc
|
||
def fact : Nat → Nat :=
|
||
fun n => Nat.recOn (motive := fun x => Nat) n 1 fun n acc => (n + 1) * acc
|