27 lines
609 B
Text
27 lines
609 B
Text
def f : Nat × Nat → Nat
|
||
| (a, b) => a + b
|
||
|
||
def f' : Nat × Nat → Nat
|
||
| (a, b) => by done
|
||
|
||
example (x : Nat × Nat) (h : x.1 > 0) : f x > 0 := by
|
||
match x with
|
||
| (a, b) => done
|
||
|
||
def g (x : Nat) : Nat × Nat :=
|
||
(x, x+1)
|
||
|
||
example (x : Nat) : Nat :=
|
||
match g x with
|
||
| (a, b) => by done
|
||
|
||
inductive Vector (α : Type u) : Nat → Type u where
|
||
| nil : Vector α 0
|
||
| cons : α → Vector α n → Vector α (n+1)
|
||
|
||
namespace Vector
|
||
def insert (a: α): Fin (n+1) → Vector α n → Vector α (n+1)
|
||
| ⟨0 , _⟩, xs => cons a xs
|
||
| ⟨i+1, h⟩, cons x xs => by done
|
||
|
||
end Vector
|