proposition: Lemma nth_error_map'_strong {A B} : forall (f : A -> B) l m b, nth_error (map f l) m = Some b -> { a | nth_error l m = Some a /\ f a = b }.
proof: Proof. induction l; destruct m; simpl; intros; try discriminate; injections; eauto. 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