proposition: Lemma tl_drop {A} (ls : list A) (n : nat) : tl (List.drop n ls) = List.drop n (tl ls).
proof: Proof. revert n; induction ls as [|x xs IHxs]. { intros [|?]; reflexivity. } { simpl. destruct n; simpl; trivial. rewrite IHxs; destruct xs; trivial; simpl. apply drop_all; simpl; omega. } 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