proposition: Lemma app_take_drop {A} (ls : list A) n : (Operations.List.take n ls ++ Operations.List.drop n ls)%list = ls.
proof: Proof. revert ls; induction n as [|n IHn]; intros. { reflexivity. } { destruct ls as [|x xs]; simpl; trivial. apply f_equal. apply IHn. } 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