Metamath Proof Explorer


Theorem dfackm

Description: Equivalence of the Axiom of Choice and Maes' AC ackm . The proof consists of lemmas kmlem1 through kmlem16 and this final theorem. AC is not used for the proof. Note: bypassing the first step (i.e., replacing dfac5 with biid ) establishes the AC equivalence shown by Maes' writeup. The left-hand-side AC shown here was chosen because it is shorter to display. (Contributed by NM, 13-Apr-2004) (Revised by Mario Carneiro, 17-May-2015)

Ref Expression
Assertion dfackm ( CHOICE ↔ ∀ 𝑥𝑦𝑧𝑣𝑢 ( ( 𝑦𝑥 ∧ ( 𝑧𝑦 → ( ( 𝑣𝑥 ∧ ¬ 𝑦 = 𝑣 ) ∧ 𝑧𝑣 ) ) ) ∨ ( ¬ 𝑦𝑥 ∧ ( 𝑧𝑥 → ( ( 𝑣𝑧𝑣𝑦 ) ∧ ( ( 𝑢𝑧𝑢𝑦 ) → 𝑢 = 𝑣 ) ) ) ) ) )

Proof

Step Hyp Ref Expression
1 dfac5 ( CHOICE ↔ ∀ 𝑥 ( ( ∀ 𝑧𝑥 𝑧 ≠ ∅ ∧ ∀ 𝑧𝑥𝑤𝑥 ( 𝑧𝑤 → ( 𝑧𝑤 ) = ∅ ) ) → ∃ 𝑦𝑧𝑥 ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ) )
2 eqid { 𝑡 ∣ ∃ 𝑥 𝑡 = ( ( 𝑥 ∖ { } ) ) } = { 𝑡 ∣ ∃ 𝑥 𝑡 = ( ( 𝑥 ∖ { } ) ) }
3 2 kmlem13 ( ∀ 𝑥 ( ( ∀ 𝑧𝑥 𝑧 ≠ ∅ ∧ ∀ 𝑧𝑥𝑤𝑥 ( 𝑧𝑤 → ( 𝑧𝑤 ) = ∅ ) ) → ∃ 𝑦𝑧𝑥 ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ) ↔ ∀ 𝑥 ( ¬ ∃ 𝑧𝑥𝑣𝑧𝑤𝑥 ( 𝑧𝑤𝑣 ∈ ( 𝑧𝑤 ) ) → ∃ 𝑦𝑧𝑥 ( 𝑧 ≠ ∅ → ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ) ) )
4 kmlem8 ( ( ¬ ∃ 𝑧𝑥𝑣𝑧𝑤𝑥 ( 𝑧𝑤𝑣 ∈ ( 𝑧𝑤 ) ) → ∃ 𝑦𝑧𝑥 ( 𝑧 ≠ ∅ → ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ) ) ↔ ( ∃ 𝑧𝑥𝑣𝑧𝑤𝑥 ( 𝑧𝑤𝑣 ∈ ( 𝑧𝑤 ) ) ∨ ∃ 𝑦 ( ¬ 𝑦𝑥 ∧ ∀ 𝑧𝑥 ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ) ) )
5 4 albii ( ∀ 𝑥 ( ¬ ∃ 𝑧𝑥𝑣𝑧𝑤𝑥 ( 𝑧𝑤𝑣 ∈ ( 𝑧𝑤 ) ) → ∃ 𝑦𝑧𝑥 ( 𝑧 ≠ ∅ → ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ) ) ↔ ∀ 𝑥 ( ∃ 𝑧𝑥𝑣𝑧𝑤𝑥 ( 𝑧𝑤𝑣 ∈ ( 𝑧𝑤 ) ) ∨ ∃ 𝑦 ( ¬ 𝑦𝑥 ∧ ∀ 𝑧𝑥 ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ) ) )
6 3 5 bitri ( ∀ 𝑥 ( ( ∀ 𝑧𝑥 𝑧 ≠ ∅ ∧ ∀ 𝑧𝑥𝑤𝑥 ( 𝑧𝑤 → ( 𝑧𝑤 ) = ∅ ) ) → ∃ 𝑦𝑧𝑥 ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ) ↔ ∀ 𝑥 ( ∃ 𝑧𝑥𝑣𝑧𝑤𝑥 ( 𝑧𝑤𝑣 ∈ ( 𝑧𝑤 ) ) ∨ ∃ 𝑦 ( ¬ 𝑦𝑥 ∧ ∀ 𝑧𝑥 ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ) ) )
7 df-ne ( 𝑦𝑣 ↔ ¬ 𝑦 = 𝑣 )
8 7 bicomi ( ¬ 𝑦 = 𝑣𝑦𝑣 )
9 8 anbi2i ( ( 𝑣𝑥 ∧ ¬ 𝑦 = 𝑣 ) ↔ ( 𝑣𝑥𝑦𝑣 ) )
10 9 anbi1i ( ( ( 𝑣𝑥 ∧ ¬ 𝑦 = 𝑣 ) ∧ 𝑧𝑣 ) ↔ ( ( 𝑣𝑥𝑦𝑣 ) ∧ 𝑧𝑣 ) )
11 10 imbi2i ( ( 𝑧𝑦 → ( ( 𝑣𝑥 ∧ ¬ 𝑦 = 𝑣 ) ∧ 𝑧𝑣 ) ) ↔ ( 𝑧𝑦 → ( ( 𝑣𝑥𝑦𝑣 ) ∧ 𝑧𝑣 ) ) )
12 biid ( ( 𝑧𝑥 → ( ( 𝑣𝑧𝑣𝑦 ) ∧ ( ( 𝑢𝑧𝑢𝑦 ) → 𝑢 = 𝑣 ) ) ) ↔ ( 𝑧𝑥 → ( ( 𝑣𝑧𝑣𝑦 ) ∧ ( ( 𝑢𝑧𝑢𝑦 ) → 𝑢 = 𝑣 ) ) ) )
13 biid ( ∀ 𝑧𝑥 ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ↔ ∀ 𝑧𝑥 ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) )
14 11 12 13 kmlem16 ( ( ∃ 𝑧𝑥𝑣𝑧𝑤𝑥 ( 𝑧𝑤𝑣 ∈ ( 𝑧𝑤 ) ) ∨ ∃ 𝑦 ( ¬ 𝑦𝑥 ∧ ∀ 𝑧𝑥 ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ) ) ↔ ∃ 𝑦𝑧𝑣𝑢 ( ( 𝑦𝑥 ∧ ( 𝑧𝑦 → ( ( 𝑣𝑥 ∧ ¬ 𝑦 = 𝑣 ) ∧ 𝑧𝑣 ) ) ) ∨ ( ¬ 𝑦𝑥 ∧ ( 𝑧𝑥 → ( ( 𝑣𝑧𝑣𝑦 ) ∧ ( ( 𝑢𝑧𝑢𝑦 ) → 𝑢 = 𝑣 ) ) ) ) ) )
15 14 albii ( ∀ 𝑥 ( ∃ 𝑧𝑥𝑣𝑧𝑤𝑥 ( 𝑧𝑤𝑣 ∈ ( 𝑧𝑤 ) ) ∨ ∃ 𝑦 ( ¬ 𝑦𝑥 ∧ ∀ 𝑧𝑥 ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ) ) ↔ ∀ 𝑥𝑦𝑧𝑣𝑢 ( ( 𝑦𝑥 ∧ ( 𝑧𝑦 → ( ( 𝑣𝑥 ∧ ¬ 𝑦 = 𝑣 ) ∧ 𝑧𝑣 ) ) ) ∨ ( ¬ 𝑦𝑥 ∧ ( 𝑧𝑥 → ( ( 𝑣𝑧𝑣𝑦 ) ∧ ( ( 𝑢𝑧𝑢𝑦 ) → 𝑢 = 𝑣 ) ) ) ) ) )
16 6 15 bitri ( ∀ 𝑥 ( ( ∀ 𝑧𝑥 𝑧 ≠ ∅ ∧ ∀ 𝑧𝑥𝑤𝑥 ( 𝑧𝑤 → ( 𝑧𝑤 ) = ∅ ) ) → ∃ 𝑦𝑧𝑥 ∃! 𝑣 𝑣 ∈ ( 𝑧𝑦 ) ) ↔ ∀ 𝑥𝑦𝑧𝑣𝑢 ( ( 𝑦𝑥 ∧ ( 𝑧𝑦 → ( ( 𝑣𝑥 ∧ ¬ 𝑦 = 𝑣 ) ∧ 𝑧𝑣 ) ) ) ∨ ( ¬ 𝑦𝑥 ∧ ( 𝑧𝑥 → ( ( 𝑣𝑧𝑣𝑦 ) ∧ ( ( 𝑢𝑧𝑢𝑦 ) → 𝑢 = 𝑣 ) ) ) ) ) )
17 1 16 bitri ( CHOICE ↔ ∀ 𝑥𝑦𝑧𝑣𝑢 ( ( 𝑦𝑥 ∧ ( 𝑧𝑦 → ( ( 𝑣𝑥 ∧ ¬ 𝑦 = 𝑣 ) ∧ 𝑧𝑣 ) ) ) ∨ ( ¬ 𝑦𝑥 ∧ ( 𝑧𝑥 → ( ( 𝑣𝑧𝑣𝑦 ) ∧ ( ( 𝑢𝑧𝑢𝑦 ) → 𝑢 = 𝑣 ) ) ) ) ) )