How to define set in coq without defining set as a list of elements
问题 I am trying to define (1,2,3) as a set of elements in coq. I can define it using list as (1 :: (2 :: (3 :: nil))). Is there any way to define set in coq without using list. 回答1: The are basically four possible choices to be made when defining sets in Coq depending on your constraints on the base type of the set and computation needs: If the base type doesn't have decidable equality, it is common to use: Definition Set A := A -> Prop Definition cup A B := fun x => A x /\ B x. ... basically,