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 44975
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 44974.

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 44951 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥 𝑧 ≠ ∅ ↔ ∀𝑧𝑀 (𝑧𝑥𝑧 ≠ ∅)))
2 n0abso 44959 . . . . . . . 8 ((Tr 𝑀𝑧𝑀) → (𝑧 ≠ ∅ ↔ ∃𝑤𝑀 𝑤𝑧))
32adantlr 715 . . . . . . 7 (((Tr 𝑀𝑥𝑀) ∧ 𝑧𝑀) → (𝑧 ≠ ∅ ↔ ∃𝑤𝑀 𝑤𝑧))
43imbi2d 340 . . . . . 6 (((Tr 𝑀𝑥𝑀) ∧ 𝑧𝑀) → ((𝑧𝑥𝑧 ≠ ∅) ↔ (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧)))
54ralbidva 3155 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑀 (𝑧𝑥𝑧 ≠ ∅) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧)))
61, 5bitrd 279 . . . 4 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥 𝑧 ≠ ∅ ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧)))
7 simpl 482 . . . . . . 7 ((Tr 𝑀𝑥𝑀) → Tr 𝑀)
8 ralabso 44951 . . . . . . 7 ((Tr 𝑀𝑥𝑀) → (∀𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))))
97, 8ralabsobidv 44955 . . . . . 6 (((Tr 𝑀𝑥𝑀) ∧ 𝑥𝑀) → (∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅)))))
109anabss3 675 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅)))))
11 r19.21v 3159 . . . . . . . 8 (∀𝑤𝑀 (𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))))
12 impexp 450 . . . . . . . . . 10 (((𝑧𝑥𝑤𝑥) → (𝑧𝑤 → (𝑧𝑤) = ∅)) ↔ (𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))))
13 df-ne 2927 . . . . . . . . . . . . 13 (𝑧𝑤 ↔ ¬ 𝑧 = 𝑤)
1413imbi1i 349 . . . . . . . . . . . 12 ((𝑧𝑤 → (𝑧𝑤) = ∅) ↔ (¬ 𝑧 = 𝑤 → (𝑧𝑤) = ∅))
15 disjabso 44958 . . . . . . . . . . . . 13 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑤) = ∅ ↔ ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))
1615imbi2d 340 . . . . . . . . . . . 12 ((Tr 𝑀𝑧𝑀) → ((¬ 𝑧 = 𝑤 → (𝑧𝑤) = ∅) ↔ (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤))))
1714, 16bitrid 283 . . . . . . . . . . 11 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑤 → (𝑧𝑤) = ∅) ↔ (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤))))
1817imbi2d 340 . . . . . . . . . 10 ((Tr 𝑀𝑧𝑀) → (((𝑧𝑥𝑤𝑥) → (𝑧𝑤 → (𝑧𝑤) = ∅)) ↔ ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
1912, 18bitr3id 285 . . . . . . . . 9 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2019ralbidv 3157 . . . . . . . 8 ((Tr 𝑀𝑧𝑀) → (∀𝑤𝑀 (𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2111, 20bitr3id 285 . . . . . . 7 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2221ralbidva 3155 . . . . . 6 (Tr 𝑀 → (∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2322adantr 480 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2410, 23bitrd 279 . . . 4 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
256, 24anbi12d 632 . . 3 ((Tr 𝑀𝑥𝑀) → ((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) ↔ (∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤))))))
26 simpl 482 . . . . . 6 ((Tr 𝑀𝑦𝑀) → Tr 𝑀)
27 elin 3932 . . . . . . . . 9 (𝑣 ∈ (𝑧𝑦) ↔ (𝑣𝑧𝑣𝑦))
2827eubii 2579 . . . . . . . 8 (∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃!𝑣(𝑣𝑧𝑣𝑦))
29 trel 5225 . . . . . . . . . . . 12 (Tr 𝑀 → ((𝑣𝑦𝑦𝑀) → 𝑣𝑀))
3029imp 406 . . . . . . . . . . 11 ((Tr 𝑀 ∧ (𝑣𝑦𝑦𝑀)) → 𝑣𝑀)
3130anass1rs 655 . . . . . . . . . 10 (((Tr 𝑀𝑦𝑀) ∧ 𝑣𝑦) → 𝑣𝑀)
3231adantrl 716 . . . . . . . . 9 (((Tr 𝑀𝑦𝑀) ∧ (𝑣𝑧𝑣𝑦)) → 𝑣𝑀)
3332reueubd 3375 . . . . . . . 8 ((Tr 𝑀𝑦𝑀) → (∃!𝑣𝑀 (𝑣𝑧𝑣𝑦) ↔ ∃!𝑣(𝑣𝑧𝑣𝑦)))
3428, 33bitr4id 290 . . . . . . 7 ((Tr 𝑀𝑦𝑀) → (∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃!𝑣𝑀 (𝑣𝑧𝑣𝑦)))
35 reu6 3699 . . . . . . 7 (∃!𝑣𝑀 (𝑣𝑧𝑣𝑦) ↔ ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))
3634, 35bitrdi 287 . . . . . 6 ((Tr 𝑀𝑦𝑀) → (∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))
3726, 36ralabsobidv 44955 . . . . 5 (((Tr 𝑀𝑦𝑀) ∧ 𝑥𝑀) → (∀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))))
3837an32s 652 . . . 4 (((Tr 𝑀𝑥𝑀) ∧ 𝑦𝑀) → (∀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))))
3938rexbidva 3156 . . 3 ((Tr 𝑀𝑥𝑀) → (∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))))
4025, 39imbi12d 344 . 2 ((Tr 𝑀𝑥𝑀) → (((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) → ∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦)) ↔ ((∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))) → ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))))
4140ralbidva 3155 1 (Tr 𝑀 → (∀𝑥𝑀 ((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) → ∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦)) ↔ ∀𝑥𝑀 ((∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))) → ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 206  wa 395   = wceq 1540  wcel 2109  ∃!weu 2562  wne 2926  wral 3045  wrex 3054  ∃!wreu 3354  cin 3915  c0 4298  Tr wtr 5216
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-12 2178  ax-ext 2702
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2534  df-eu 2563  df-clab 2709  df-cleq 2722  df-clel 2804  df-ne 2927  df-ral 3046  df-rex 3055  df-reu 3357  df-v 3452  df-dif 3919  df-in 3923  df-ss 3933  df-nul 4299  df-uni 4874  df-tr 5217
This theorem is referenced by:  wfac8prim  44985
  Copyright terms: Public domain W3C validator