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 44944
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 44943.

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 44920 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥 𝑧 ≠ ∅ ↔ ∀𝑧𝑀 (𝑧𝑥𝑧 ≠ ∅)))
2 n0abso 44928 . . . . . . . 8 ((Tr 𝑀𝑧𝑀) → (𝑧 ≠ ∅ ↔ ∃𝑤𝑀 𝑤𝑧))
32adantlr 715 . . . . . . 7 (((Tr 𝑀𝑥𝑀) ∧ 𝑧𝑀) → (𝑧 ≠ ∅ ↔ ∃𝑤𝑀 𝑤𝑧))
43imbi2d 340 . . . . . 6 (((Tr 𝑀𝑥𝑀) ∧ 𝑧𝑀) → ((𝑧𝑥𝑧 ≠ ∅) ↔ (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧)))
54ralbidva 3159 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑀 (𝑧𝑥𝑧 ≠ ∅) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧)))
61, 5bitrd 279 . . . 4 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥 𝑧 ≠ ∅ ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧)))
7 simpl 482 . . . . . . 7 ((Tr 𝑀𝑥𝑀) → Tr 𝑀)
8 ralabso 44920 . . . . . . 7 ((Tr 𝑀𝑥𝑀) → (∀𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))))
97, 8ralabsobidv 44924 . . . . . 6 (((Tr 𝑀𝑥𝑀) ∧ 𝑥𝑀) → (∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅)))))
109anabss3 675 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅)))))
11 r19.21v 3163 . . . . . . . 8 (∀𝑤𝑀 (𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))))
12 impexp 450 . . . . . . . . . 10 (((𝑧𝑥𝑤𝑥) → (𝑧𝑤 → (𝑧𝑤) = ∅)) ↔ (𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))))
13 df-ne 2932 . . . . . . . . . . . . 13 (𝑧𝑤 ↔ ¬ 𝑧 = 𝑤)
1413imbi1i 349 . . . . . . . . . . . 12 ((𝑧𝑤 → (𝑧𝑤) = ∅) ↔ (¬ 𝑧 = 𝑤 → (𝑧𝑤) = ∅))
15 disjabso 44927 . . . . . . . . . . . . 13 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑤) = ∅ ↔ ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))
1615imbi2d 340 . . . . . . . . . . . 12 ((Tr 𝑀𝑧𝑀) → ((¬ 𝑧 = 𝑤 → (𝑧𝑤) = ∅) ↔ (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤))))
1714, 16bitrid 283 . . . . . . . . . . 11 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑤 → (𝑧𝑤) = ∅) ↔ (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤))))
1817imbi2d 340 . . . . . . . . . 10 ((Tr 𝑀𝑧𝑀) → (((𝑧𝑥𝑤𝑥) → (𝑧𝑤 → (𝑧𝑤) = ∅)) ↔ ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
1912, 18bitr3id 285 . . . . . . . . 9 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2019ralbidv 3161 . . . . . . . 8 ((Tr 𝑀𝑧𝑀) → (∀𝑤𝑀 (𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2111, 20bitr3id 285 . . . . . . 7 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2221ralbidva 3159 . . . . . 6 (Tr 𝑀 → (∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2322adantr 480 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2410, 23bitrd 279 . . . 4 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
256, 24anbi12d 632 . . 3 ((Tr 𝑀𝑥𝑀) → ((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) ↔ (∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤))))))
26 simpl 482 . . . . . 6 ((Tr 𝑀𝑦𝑀) → Tr 𝑀)
27 elin 3940 . . . . . . . . 9 (𝑣 ∈ (𝑧𝑦) ↔ (𝑣𝑧𝑣𝑦))
2827eubii 2583 . . . . . . . 8 (∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃!𝑣(𝑣𝑧𝑣𝑦))
29 trel 5235 . . . . . . . . . . . 12 (Tr 𝑀 → ((𝑣𝑦𝑦𝑀) → 𝑣𝑀))
3029imp 406 . . . . . . . . . . 11 ((Tr 𝑀 ∧ (𝑣𝑦𝑦𝑀)) → 𝑣𝑀)
3130anass1rs 655 . . . . . . . . . 10 (((Tr 𝑀𝑦𝑀) ∧ 𝑣𝑦) → 𝑣𝑀)
3231adantrl 716 . . . . . . . . 9 (((Tr 𝑀𝑦𝑀) ∧ (𝑣𝑧𝑣𝑦)) → 𝑣𝑀)
3332reueubd 3376 . . . . . . . 8 ((Tr 𝑀𝑦𝑀) → (∃!𝑣𝑀 (𝑣𝑧𝑣𝑦) ↔ ∃!𝑣(𝑣𝑧𝑣𝑦)))
3428, 33bitr4id 290 . . . . . . 7 ((Tr 𝑀𝑦𝑀) → (∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃!𝑣𝑀 (𝑣𝑧𝑣𝑦)))
35 reu6 3707 . . . . . . 7 (∃!𝑣𝑀 (𝑣𝑧𝑣𝑦) ↔ ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))
3634, 35bitrdi 287 . . . . . 6 ((Tr 𝑀𝑦𝑀) → (∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))
3726, 36ralabsobidv 44924 . . . . 5 (((Tr 𝑀𝑦𝑀) ∧ 𝑥𝑀) → (∀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))))
3837an32s 652 . . . 4 (((Tr 𝑀𝑥𝑀) ∧ 𝑦𝑀) → (∀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))))
3938rexbidva 3160 . . 3 ((Tr 𝑀𝑥𝑀) → (∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))))
4025, 39imbi12d 344 . 2 ((Tr 𝑀𝑥𝑀) → (((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) → ∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦)) ↔ ((∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))) → ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))))
4140ralbidva 3159 1 (Tr 𝑀 → (∀𝑥𝑀 ((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) → ∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦)) ↔ ∀𝑥𝑀 ((∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))) → ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 206  wa 395   = wceq 1539  wcel 2107  ∃!weu 2566  wne 2931  wral 3050  wrex 3059  ∃!wreu 3355  cin 3923  c0 4306  Tr wtr 5226
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1794  ax-4 1808  ax-5 1909  ax-6 1966  ax-7 2006  ax-8 2109  ax-9 2117  ax-10 2140  ax-12 2176  ax-ext 2706
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-tru 1542  df-fal 1552  df-ex 1779  df-nf 1783  df-sb 2064  df-mo 2538  df-eu 2567  df-clab 2713  df-cleq 2726  df-clel 2808  df-ne 2932  df-ral 3051  df-rex 3060  df-reu 3358  df-v 3459  df-dif 3927  df-in 3931  df-ss 3941  df-nul 4307  df-uni 4881  df-tr 5227
This theorem is referenced by:  wfac8prim  44954
  Copyright terms: Public domain W3C validator