选择公理（英語：Axiom of Choice，縮寫AC）是数学中的一条集合论公理，用來證明一些難以明確構造的物件的存在性。选择公理最早于1904年，由恩斯特·策梅洛为了证明良序定理而作為一條公理加入。
非正式地說，給定一些盒子（可以是無限個），每个盒子中都含有至少一个小球，這時选择公理相當於是在說——可以從每個盒子裡拿出一顆球。在很多情况下这样的选择並不需要借助选择公理；尤其是在「盒子个数有限」或「盒子內的球具有額外的特徵」这两种情况下，經常可以直接指明選擇的方式。關於“存在具體的選擇方式”可以透過以下例子理解：假设有许多（甚至是无限）双鞋子，则可以选取每双鞋左边的鞋子构成一个具体的选择，由於在鞋子之中“存在具體的選擇規則”(左边的鞋子不同於右边的鞋子)，所以即使沒有選擇公理也依然可以做出具體的選擇。但是，如果把鞋子改成襪子，且每双袜子都没有可区分的特征，在这种情况下，「选择的存在性」只能通过选择公理得到。
尽管曾經具有争议，选择公理現在已經被大部份数学家毫无保留地使用着，例如带有选择公理的策梅洛-弗兰克尔集合论（ZFC）。数学家们使用选择公理的原因是，有许多被普遍接受的数学定理，比如是吉洪诺夫定理，都需要选择公理来证明。現代研究集合论的數学家也研究与选择公理相矛盾的公理，例如决定公理。
在一些構造性數學的理論中會避免选择公理的使用，不過也有的將选择公理包括在內。


陈述 首先定义几个概念：
集族：指由非空集合组成的集合。
选择函数：它是一个集族上的函数。它规定：对于所有在集族
  
    
      
        X
      
    
    {\displaystyle X}
  
中的集合
  
    
      
        s
      
    
    {\displaystyle s}
  
，
  
    
      
        f
        (
        s
        )
      
    
    {\displaystyle f(s)}
  
是
  
    
      
        s
      
    
    {\displaystyle s}
  
的一个元素。
那么，选择公理表示：

对于所有的集族，均存在选择函数。
上述可表示为：

  
    
      
        ∀
        X
        
          [
          
            ∅
            ∈
            X
            
            ⟹
            
            ∃
            f
            :
            X
            →
            ⋃
            X
            
            ∀
            A
            ∈
            X
            
            (
            f
            (
            A
            )
            ∈
            A
            )
          
          ]
        
        
        .
      
    
    {\displaystyle \forall X\left[\emptyset \notin X\implies \exists f\colon X\rightarrow \bigcup X\quad \forall A\in X\,(f(A)\in A)\right]\,.}
  

或者：

设
  
    
      
        X
      
    
    {\displaystyle X}
  
是一个集族，则存在着在
  
    
      
        X
      
    
    {\displaystyle X}
  
上定义的一个选择函数
  
    
      
        f
      
    
    {\displaystyle f}
  
。
该定理也可表達為：

集族上的任意笛卡尔积總是非空的。


= 变体 =
第二个版本的选择公理声称：

给定由相互不交的非空集合組成的任何集合，存在着至少一个集合，它與每个非空集合恰好有一个公共元素。
第三个版本声称：

对于任何集合
  
    
      
        A
      
    
    {\displaystyle A}
  
，
  
    
      
        A
      
    
    {\displaystyle A}
  
的幂集（減去空集）有一个选择函数。
使用这个版本的作者通常谈及“在
  
    
      
        A
      
    
    {\displaystyle A}
  
上的选择函数”，但要注意这裡选择函数的概念是稍微不同的。它的定義域是
  
    
      
        A
      
    
    {\displaystyle A}
  
的幂集（减去空集），因此对任何集合
  
    
      
        A
      
    
    {\displaystyle A}
  
有意义；至於本文中其他地方用的定义，在“集合的搜集”上的选择函数的定義域是这个搜集，所以只对集合的集合有意义。透過這個變體的定義，选择公理也可以简洁的陈述为

所有集合有一个选择函数。
它等价于

对于任何集合
  
    
      
        A
      
    
    {\displaystyle A}
  
有一个函数使得对于
  
    
      
        A
      
    
    {\displaystyle A}
  
的任何非空子集
  
    
      
        B
      
    
    {\displaystyle B}
  
，
  
    
      
        f
        (
        B
        )
        ∈
        B
      
    
    {\displaystyle f(B)\in B}
  
。
而选择公理的否定表达为：

有一个集合
  
    
      
        A
      
    
    {\displaystyle A}
  
使得对于所有函数
  
    
      
        f
      
    
    {\displaystyle f}
  
（在
  
    
      
        A
      
    
    {\displaystyle A}
  
的非空子集的集合上），有一个
  
    
      
        B
      
    
    {\displaystyle B}
  
使得
  
    
      
        f
        (
        B
        )
        ∈
        B
      
    
    {\displaystyle f(B)\notin B}
  
。


= 术语（AC，ZF，ZFC） =
以下列出了这篇条目中各种與“选择公理”相關的缩写：

AC：选择公理。
ZF：策梅洛-弗兰克尔集合论，不包括选择公理。
ZFC：策梅洛-弗兰克尔集合论，包括选择公理。


使用 直到19世纪晚期，选择公理的使用一直都没有得到明确声明。例如，建立了只包含非空集合的集合
  
    
      
        X
      
    
    {\displaystyle X}
  
之后，當時的数学家可能會直接说「设对于
  
    
      
        X
      
    
    {\displaystyle X}
  
中所有
  
    
      
        s
      
    
    {\displaystyle s}
  
有
  
    
      
        F
        (
        s
        )
      
    
    {\displaystyle F(s)}
  
是
  
    
      
        s
      
    
    {\displaystyle s}
  
的成员之一」。一般來说，要是不用选择公理，是不可能证明
  
    
      
        F
      
    
    {\displaystyle F}
  
的存在性的。這一點直到策梅洛之前似乎没有引起人们的注意。
不是所有的情況都需要选择公理。选择公理对于那些没有可定义的选择才有必要。值得指出的是，对于有限集合
  
    
      
        X
      
    
    {\displaystyle X}
  
，选择公理的有限版本可以通过其他集合论公理推导得出。在这种情况下，它等价于说我们有多个（有限数目的）盒子，每个包含至少一个物体，则我们可以从每个盒子恰好选择一个物体。顯然我们可以这么做：從第一个盒子開始，选择其中的一个物体；到下一个盒子，选择一个物体；如此类推。因为盒子數量有限，所以我们的选择过程最后一定会结束。这里给出的选择函数是明确的：第一個盒子對應于第一个選擇的物体，第二個盒子對應于第二个選擇物体；如此类推——此法之所以可行，是因为序对公理的原因。可以通过数学归纳法做出对所有有限集合的形式证明。


例子 对于特定的无限集合
  
    
      
        X
      
    
    {\displaystyle X}
  
，也可以避免使用选择公理。例如，假设
  
    
      
        X
      
    
    {\displaystyle X}
  
的元素是自然数的集合。每个自然数的非空集合都有一个最小的自然數，所以只要简单的把每个集合映射到这个集合內最小的數字，就得到了選擇函數。这使得我们可以从每个集合明确地选择元素，以及写出一个明确的表达式，说明我们的选择函数如何取值。在能夠指定一個明确选择方式的时候，选择公理都是没有必要的。
當缺乏从每个集合得到元素的直觀选择方式时，困难就出现了。如果不知道选择的方式，那要怎麼確認選擇函數的存在？例如，假设X是实数的所有非空子集的集合。第一個可能產生的思路是套用有限的情況去处理
  
    
      
        X
      
    
    {\displaystyle X}
  
。如果尝试从每个集合选择一个元素，那么，因为實數集合是无限不可數，所以选择的过程永远不会结束。也因為如此，永远不能構造出对
  
    
      
        X
      
    
    {\displaystyle X}
  
的成员的选择函数。所以这種方法不能奏效。第二個可能產生的思路是尝试給每个集合指定最小元素，但是很多实数的子集没有最小元素。例如，开区间
  
    
      
        (
        0
        ,
        1
        )
      
    
    {\displaystyle (0,1)}
  
没有最小元素：如果
  
    
      
        x
      
    
    {\displaystyle x}
  
在
  
    
      
        (
        0
        ,
        1
        )
      
    
    {\displaystyle (0,1)}
  
中，则
  
    
      
        
          
            x
            2
          
        
      
    
    {\displaystyle {\frac {x}{2}}}
  
也在其中，而
  
    
      
        
          
            x
            2
          
        
      
    
    {\displaystyle {\frac {x}{2}}}
  
总是严格的小于
  
    
      
        x
      
    
    {\displaystyle x}
  
。所以這種方法也不行。
我们之所以能够从自然数的非空子集选择最小元素，是因為自然数上有一個良序：所有自然数的非空子集都有一个唯一的最小元素。
因此，第三個思路，「即使实数的正常排序方式不是良序，是不是也能找到一个排序使得实数是良序的？」。如果真的有這種排序方式，那就能夠选择实数非空子集的最小元素，從而得到了選擇函數——然而问题就变成如何构造这样的排序。而事實上，“存在一个排序使得所有集合是良序的”等價於选择公理。
有必要用到选择公理的证明总是非构造性的，即使证明給出了一个对象，精确地说出那个对象卻是不可能的。如果不能写出选择函数的定义，那這個选择到底是什麼？这是一些数学家不喜欢选择公理的理由之一。例如，构造主义者论断说所有涉及存在性的证明都应当是完全明确的；构造任何存在的对象应当是可能的。他们拒绝选择公理，因为它断言了「不能具體描述的对象」存在。


构造性数学 像上面讨论的那样，在ZFC中，选择公理能为一个不能明确构造出的对象给出“非构造性证明”来证明其存在性。然而，ZFC依然是在经典逻辑下被形式化的。在构造性数学领域，选择公理仍被深入研究，而當中應用的是非古典逻辑。在构造性数学的不同版本中，选择公理的狀況也有所差別。
在直觉类型论和高阶的Heyting算术中，选择公理的適當陳述（按照推導方式）可以是作為一个公理，又或者作為一个可证明的定理。埃里特‧畢夏普认为选择公理可被視作是構造性的：

但在構造性集合論中，迪亚科内斯库定理表明选择公理蘊涵了排中律（在直觉类型论中，选择公理不蘊涵排中律）。因此选择公理在構造性集合論中並非普遍被接受。在类型论中的选择公理与在構造性集合論中的选择公理的区别是，前者不具有外延性而后者具有。
一些構造性集合論的结果用到了可数选择公理或依賴選擇公理，这兩個公理在構造性集合論內並不蘊涵排中律。尽管可数选择公理在构造性數學中的应用特別广泛，它的使用也受到質疑。


强形式公理 可构造性公理与连续统假设都蘊涵了选择公理，更準確地說，兩者都嚴格強於选择公理。在类理论中，如冯诺伊曼-博内斯-哥德尔集合论和Morse–Kelley集合论，存在一个叫全局选择公理的公理，它比选择公理要强，因其同时也适用于真类。全局选择公理可由大小限制公理推出。


结论 哥德尔证明了选择公理與ZF的相对协调性。保罗·寇恩用力迫法证明了选择公理独立於ZF。


参考文献 = 引用 =


= 来源 =
Ernst Zermelo, "Untersuchungen uber die Grundlagen der Mengenlehre I," Mathematische Annalen 65: (1908) pp. 261-81. PDF download via digizeitschriften.de
Translated in: Jean van Heijenoort, 2002. From Frege to Godel: A Source Book in Mathematical Logic, 1879-1931. New edition. Harvard Univ. Press. ISBN 978-0-674-32449-7.
1904. "Proof that every set can be well-ordered," 139-41.
1908. "Investigations in the foundations of set theory I," 199-215.
Gregory H Moore, "Zermelo's axiom of choice, Its origins, development and influence", Springer; 1982. ISBN 978-0-387-90670-6.
Paul Howard and Jean Rubin, "Consequences of the Axiom of Choice". Mathematical Surveys and Monographs 59; American Mathematical Society; 1998.


外部链接 Paul Howard at EMU （页面存档备份，存于互联网档案馆）有很多人仍然在为选择公理和它的推论而乐此不疲地工作。如果你有兴趣了解更多内容，请参考这个网站。


参见