blob: a95e179d1ff15ddd1de587b2512a1980b8bdb671 [file] [edit]
namespace Ex
class GetElem (Cont : Type u) (Idx : Type v) (Elem : outParam (Type w)) where
getElem (xs : Cont) (i : Idx) : Elem
export GetElem (getElem)
instance : GetElem (Array α) Nat α where
getElem xs i := xs[i]'sorry
opaque f : Option Bool → Bool
opaque g : Bool → Bool
def bad (xs : Array Bool) : Bool :=
let x := getElem xs 0
f x && g x
end Ex