proposition: Lemma DoubleNoDup_cons_InEither: forall l a b, DoubleNoDup (a :: l) -> InEither b l -> ~ IsEither b a.
proof: Proof. intros. destruct a as [x y]. rewrite DoubleNoDup_cons_iff in H. destruct H as [? [? [? ?]]]. intro. red in H4. simpl in H4. destruct H4; now subst. Qed.
imports: Coq.Lists.List Coq.micromega.Lia Coq.Sorting.Permutation Coq.ZArith.ZArith_base Coq.ZArith.Zcomplements Coq.Logic.FunctionalExtensionality CertiGraph.lib.Coqlib CertiGraph.lib.EquivDec_ext VST.zlist.sublist VST.zlist.list_solver