精益中选择的定义

时间:2019-02-19 11:13:32

标签: choice lean

Lean中,“ choice”是根据以下条件实现的:

我们选择的公理现在简单表示如下:

axiom choice {α : Sort u} : nonempty α → α

仅给出断言h,即α为非空,选择h神奇地产生了一个α元素。


现在,如果我读有关集合论和选择公理的文献(Jech):

选择公理(AC)。每个非空集族都有选择功能。

如果S是一组集合,而∅不是S,则S的选择函数是S上的函数f,使得 f(X)∈X 对于每个X∈S。


对我来说,这些事情似乎并不等同。有人可以详细说明吗?

1 个答案:

答案 0 :(得分:1)

精益中的公理choice实际上与集合论中的axiom of choice不同。精益理论中的公理choice在集合论中并没有相应的陈述。这就是说,有一个 function 可以证明某个类型α是非空的,并产生α的居民。在集合论中,我们不能定义以证明为参数的函数,因为证明不是集合论中的对象,因此它们位于逻辑之上。

也就是说,两个选择公理并非完全无关。通过精益公理choice,您可以从集合论中证明更熟悉的选择公理,即可以找到here的一种版本。

theorem axiom_of_choice {α : Sort u} {β : α → Sort v} {r : Π x, β x → Prop} (h : ∀ x, ∃ y, r x y) :
  ∃ (f : Π x, β x), ∀ x, r x (f x)

在库的其他部分,也证明了选择公理的其他等效语句,例如every surjective function has a right inverse

也许与您引用的选择公理版本最接近的语句如下:

theorem axiom_of_choice' {α : Sort u} {β : α → Sort v} (h : ∀ x, nonempty (β x)) : 
  nonempty (Π x, β x) :=
⟨λ x, classical.choice (h x)⟩

这句话说:给定一个非空类型(集合)族,选择函数的类型为非空。如您所见,证明是直接来自精益choice的。