proposition: Lemma in_up_to_iff {n m} : (n < m) <-> List.In n (up_to m).
proof: Proof. revert n; induction m; intros n; simpl. { split; intro; exfalso; omega. } { simpl. specialize (IHm n). destruct IHm. destruct (lt_eq_lt_dec n m) as [[?|?]|?]; split; intros; try omega; eauto; intuition. } 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