26 lines
500 B
Text
26 lines
500 B
Text
structure S :=
|
||
(g {α} : α → α)
|
||
|
||
def f (h : Nat → (forall {α : Type}, α → α) × Bool) : Nat :=
|
||
(h 0).1 1
|
||
|
||
new_frontend
|
||
|
||
def tst : Nat :=
|
||
f (fun n => (fun x => x, true))
|
||
|
||
theorem ex : id (Nat → Nat) :=
|
||
by {
|
||
intro;
|
||
assumption
|
||
}
|
||
|
||
def g (i j k : Nat) (a : Array Nat) (h₁ : i < k) (h₂ : k < j) (h₃ : j < a.size) : Nat :=
|
||
let vj := a.get ⟨j, h₃⟩;
|
||
let vi := a.get ⟨i, Nat.ltTrans h₁ (Nat.ltTrans h₂ h₃)⟩;
|
||
vi + vj
|
||
|
||
set_option pp.all true in
|
||
#print g
|
||
|
||
#check g.proof_1
|