proposition: Lemma in_list_exists {A} : forall (xs : list A) x, List.In x xs -> exists n, nth_error xs n = Some x.
proof: Proof. intros; induction xs; inversion H; subst. exists 0; reflexivity. apply IHxs in H0; destruct_ex; exists (1 + x0); auto. Qed.
imports: Fiat.Common.Coq__8_4__8_5__Compat Coq.ZArith.ZArith Coq.Lists.List Coq.Lists.SetoidList Coq.Bool.Bool Fiat.Common Fiat.Common.List.Operations Fiat.Common.Equality Fiat.Common.List.FlattenList Fiat.Common.LogicFacts