如何在Coq中创建集合

时间:2014-03-12 13:46:11

标签: coq

如何在Coq中创建一组元素?

我查看了Ensembles的文档,但我没有看到任何构建它的方法。例如,在Haskell中,我使用" Data.Set.fromList [1..10]"创建一个包含10个元素的集合。什么是Coq中的等价物?

感谢。

1 个答案:

答案 0 :(得分:3)

正如here所述,你可以做一些像

这样的事情
Require Import List Ensembles.

Fixpoint list_to_set {A:Type} (l : list A) {struct l}: Ensemble A :=
  match l with
    | nil => Empty_set A
    | hd :: tl => Add A (list_to_set tl) hd
  end.