Users' Mathboxes Mathbox for Eric Schmidt < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  modelac8prim Structured version   Visualization version   GIF version

Theorem modelac8prim 45701
Description: If 𝑀 is a transitive class, then the following are equivalent. (1) Every nonempty set 𝑥𝑀 of pairwise disjoint nonempty sets has a choice set in 𝑀. (2) The class 𝑀 models the Axiom of Choice, in the form ac8prim 45700.

Lemma II.2.11(7) of [Kunen2] p. 114. Kunen has the additional hypotheses that the Extensionality, Separation, Pairing, and Union axioms are true in 𝑀. This, apparently, is because Kunen's statement of the Axiom of Choice uses defined notions, including and , and these axioms guarantee that these notions are well-defined. When we state the axiom using primitives only, the need for these hypotheses disappears. (Contributed by Eric Schmidt, 19-Oct-2025.)

Assertion
Ref Expression
modelac8prim (Tr 𝑀 → (∀𝑥𝑀 ((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) → ∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦)) ↔ ∀𝑥𝑀 ((∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))) → ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))))
Distinct variable group:   𝑥,𝑧,𝑦,𝑤,𝑣,𝑀

Proof of Theorem modelac8prim
StepHypRef Expression
1 ralabso 45677 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥 𝑧 ≠ ∅ ↔ ∀𝑧𝑀 (𝑧𝑥𝑧 ≠ ∅)))
2 n0abso 45685 . . . . . . . 8 ((Tr 𝑀𝑧𝑀) → (𝑧 ≠ ∅ ↔ ∃𝑤𝑀 𝑤𝑧))
32adantlr 727 . . . . . . 7 (((Tr 𝑀𝑥𝑀) ∧ 𝑧𝑀) → (𝑧 ≠ ∅ ↔ ∃𝑤𝑀 𝑤𝑧))
43imbi2d 343 . . . . . 6 (((Tr 𝑀𝑥𝑀) ∧ 𝑧𝑀) → ((𝑧𝑥𝑧 ≠ ∅) ↔ (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧)))
54ralbidva 3186 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑀 (𝑧𝑥𝑧 ≠ ∅) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧)))
61, 5bitrd 282 . . . 4 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥 𝑧 ≠ ∅ ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧)))
7 simpl 487 . . . . . . 7 ((Tr 𝑀𝑥𝑀) → Tr 𝑀)
8 ralabso 45677 . . . . . . 7 ((Tr 𝑀𝑥𝑀) → (∀𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))))
97, 8ralabsobidv 45681 . . . . . 6 (((Tr 𝑀𝑥𝑀) ∧ 𝑥𝑀) → (∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅)))))
109anabss3 687 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅)))))
11 r19.21v 3190 . . . . . . . 8 (∀𝑤𝑀 (𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))))
12 impexp 455 . . . . . . . . . 10 (((𝑧𝑥𝑤𝑥) → (𝑧𝑤 → (𝑧𝑤) = ∅)) ↔ (𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))))
13 df-ne 2959 . . . . . . . . . . . . 13 (𝑧𝑤 ↔ ¬ 𝑧 = 𝑤)
1413imbi1i 352 . . . . . . . . . . . 12 ((𝑧𝑤 → (𝑧𝑤) = ∅) ↔ (¬ 𝑧 = 𝑤 → (𝑧𝑤) = ∅))
15 disjabso 45684 . . . . . . . . . . . . 13 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑤) = ∅ ↔ ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))
1615imbi2d 343 . . . . . . . . . . . 12 ((Tr 𝑀𝑧𝑀) → ((¬ 𝑧 = 𝑤 → (𝑧𝑤) = ∅) ↔ (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤))))
1714, 16bitrid 286 . . . . . . . . . . 11 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑤 → (𝑧𝑤) = ∅) ↔ (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤))))
1817imbi2d 343 . . . . . . . . . 10 ((Tr 𝑀𝑧𝑀) → (((𝑧𝑥𝑤𝑥) → (𝑧𝑤 → (𝑧𝑤) = ∅)) ↔ ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
1912, 18bitr3id 288 . . . . . . . . 9 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2019ralbidv 3188 . . . . . . . 8 ((Tr 𝑀𝑧𝑀) → (∀𝑤𝑀 (𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2111, 20bitr3id 288 . . . . . . 7 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2221ralbidva 3186 . . . . . 6 (Tr 𝑀 → (∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2322adantr 485 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2410, 23bitrd 282 . . . 4 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
256, 24anbi12d 643 . . 3 ((Tr 𝑀𝑥𝑀) → ((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) ↔ (∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤))))))
26 simpl 487 . . . . . 6 ((Tr 𝑀𝑦𝑀) → Tr 𝑀)
27 elin 3921 . . . . . . . . 9 (𝑣 ∈ (𝑧𝑦) ↔ (𝑣𝑧𝑣𝑦))
2827eubii 2613 . . . . . . . 8 (∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃!𝑣(𝑣𝑧𝑣𝑦))
29 trel 5226 . . . . . . . . . . . 12 (Tr 𝑀 → ((𝑣𝑦𝑦𝑀) → 𝑣𝑀))
3029imp 411 . . . . . . . . . . 11 ((Tr 𝑀 ∧ (𝑣𝑦𝑦𝑀)) → 𝑣𝑀)
3130anass1rs 667 . . . . . . . . . 10 (((Tr 𝑀𝑦𝑀) ∧ 𝑣𝑦) → 𝑣𝑀)
3231adantrl 728 . . . . . . . . 9 (((Tr 𝑀𝑦𝑀) ∧ (𝑣𝑧𝑣𝑦)) → 𝑣𝑀)
3332reueubd 3386 . . . . . . . 8 ((Tr 𝑀𝑦𝑀) → (∃!𝑣𝑀 (𝑣𝑧𝑣𝑦) ↔ ∃!𝑣(𝑣𝑧𝑣𝑦)))
3428, 33bitr4id 293 . . . . . . 7 ((Tr 𝑀𝑦𝑀) → (∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃!𝑣𝑀 (𝑣𝑧𝑣𝑦)))
35 reu6 3689 . . . . . . 7 (∃!𝑣𝑀 (𝑣𝑧𝑣𝑦) ↔ ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))
3634, 35bitrdi 290 . . . . . 6 ((Tr 𝑀𝑦𝑀) → (∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))
3726, 36ralabsobidv 45681 . . . . 5 (((Tr 𝑀𝑦𝑀) ∧ 𝑥𝑀) → (∀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))))
3837an32s 664 . . . 4 (((Tr 𝑀𝑥𝑀) ∧ 𝑦𝑀) → (∀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))))
3938rexbidva 3187 . . 3 ((Tr 𝑀𝑥𝑀) → (∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))))
4025, 39imbi12d 347 . 2 ((Tr 𝑀𝑥𝑀) → (((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) → ∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦)) ↔ ((∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))) → ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))))
4140ralbidva 3186 1 (Tr 𝑀 → (∀𝑥𝑀 ((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) → ∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦)) ↔ ∀𝑥𝑀 ((∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))) → ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 209  wa 400   = wceq 1570  wcel 2143  ∃!weu 2596  wne 2958  wral 3079  wrex 3089  ∃!wreu 3367  cin 3904  c0 4286  Tr wtr 5218
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1825  ax-4 1839  ax-5 1940  ax-6 1997  ax-7 2038  ax-8 2145  ax-9 2153  ax-10 2176  ax-12 2213  ax-ext 2735
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-tru 1573  df-fal 1583  df-ex 1810  df-nf 1814  df-sb 2097  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2838  df-ne 2959  df-ral 3080  df-rex 3090  df-reu 3370  df-v 3457  df-dif 3908  df-in 3912  df-ss 3922  df-nul 4287  df-uni 4873  df-tr 5219
This theorem is referenced by:  wfac8prim  45711
  Copyright terms: Public domain W3C validator