我想用精益做一些拓扑工作。
作为一个好的开始,我想证明几个关于精益集合的简单引理。
例如
def inter_to_union (H : a ∈ set.inter A B) : a ∈ set.union A B :=
sorry
或者
def set_deMorgan : a ∈ set.inter A B → a ∈ set.compl (set.union (set.compl A) (set.compl B)) :=
sorry
或者,也许更有趣
def set_deMorgan2 : set.inter A B = set.compl (set.union (set.compl A) (set.compl B)) :=
sorry
但是我在任何地方都找不到set.union
or的消除规则set.inter
,所以我只是不知道如何使用它们。
- 我如何证明引理?
另外,查看lean 中集合的定义,我可以看到一些语法,看起来很像纸上数学,但我在依赖类型理论的层面上不理解,例如:
protected def sep (p : α → Prop) (s : set α) : set α :=
{a | a ∈ s ∧ p a}
- 如何将上述示例分解为更简单的依赖/归纳类型概念?