Coq - Extract witness from Proposition
问题 I'm trying to extract a witness from a coq proposition (or something like that...). I have something that goes like Parameter atom_fresh_for_list : forall (xs : list atom), {x : atom | ~ List.In x xs}. (Which is proven afterward, with an explicit type for atom : Lemma atom_fresh_for_list : forall (xs : list nat), { n : nat | ~ List.In n xs }. How do I extract such an x ? The Documentation says From such a (exist x p) we may in turn extract its witness x:A (using an elimination construct such