Section In_Dec.
Variable X : Type.
Hypothesis X_dec : eq_dec X.
Fixpoint in_dec (n : nat) (x : X) (xs : Vector.t X n) { struct xs } : bool :=
match xs with
| [||] => false
| y ::: xs' => if Dec (x = y) then true else in_dec x xs'
end.

Lemma in_dec_correct (n : nat) (x : X) (xs : Vector.t X n) :
in_dec x xs = true <-> In x xs.