proposition: Lemma Vnth_first_position : forall n (ys : vector A n) i (hi : i<n), Vfirst_position ys = Some i -> P (Vnth ys hi).
proof: Proof. intros n ys i hi h. assert (hi' : i-0 < n). lia. rewrite Vnth_eq with (h2:=hi'). apply Vnth_first_position_aux. hyp. lia. Qed.
imports: Coq(Vector Program Structures.Equalities Morphisms) CoLoR(LogicUtil NatUtil EqUtil ListUtil BoolUtil RelUtil)