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 44982
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 44981.

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 44958 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥 𝑧 ≠ ∅ ↔ ∀𝑧𝑀 (𝑧𝑥𝑧 ≠ ∅)))
2 n0abso 44966 . . . . . . . 8 ((Tr 𝑀𝑧𝑀) → (𝑧 ≠ ∅ ↔ ∃𝑤𝑀 𝑤𝑧))
32adantlr 715 . . . . . . 7 (((Tr 𝑀𝑥𝑀) ∧ 𝑧𝑀) → (𝑧 ≠ ∅ ↔ ∃𝑤𝑀 𝑤𝑧))
43imbi2d 340 . . . . . 6 (((Tr 𝑀𝑥𝑀) ∧ 𝑧𝑀) → ((𝑧𝑥𝑧 ≠ ∅) ↔ (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧)))
54ralbidva 3175 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑀 (𝑧𝑥𝑧 ≠ ∅) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧)))
61, 5bitrd 279 . . . 4 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥 𝑧 ≠ ∅ ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧)))
7 simpl 482 . . . . . . 7 ((Tr 𝑀𝑥𝑀) → Tr 𝑀)
8 ralabso 44958 . . . . . . 7 ((Tr 𝑀𝑥𝑀) → (∀𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))))
97, 8ralabsobidv 44962 . . . . . 6 (((Tr 𝑀𝑥𝑀) ∧ 𝑥𝑀) → (∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅)))))
109anabss3 675 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅)))))
11 r19.21v 3179 . . . . . . . 8 (∀𝑤𝑀 (𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))))
12 impexp 450 . . . . . . . . . 10 (((𝑧𝑥𝑤𝑥) → (𝑧𝑤 → (𝑧𝑤) = ∅)) ↔ (𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))))
13 df-ne 2940 . . . . . . . . . . . . 13 (𝑧𝑤 ↔ ¬ 𝑧 = 𝑤)
1413imbi1i 349 . . . . . . . . . . . 12 ((𝑧𝑤 → (𝑧𝑤) = ∅) ↔ (¬ 𝑧 = 𝑤 → (𝑧𝑤) = ∅))
15 disjabso 44965 . . . . . . . . . . . . 13 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑤) = ∅ ↔ ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))
1615imbi2d 340 . . . . . . . . . . . 12 ((Tr 𝑀𝑧𝑀) → ((¬ 𝑧 = 𝑤 → (𝑧𝑤) = ∅) ↔ (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤))))
1714, 16bitrid 283 . . . . . . . . . . 11 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑤 → (𝑧𝑤) = ∅) ↔ (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤))))
1817imbi2d 340 . . . . . . . . . 10 ((Tr 𝑀𝑧𝑀) → (((𝑧𝑥𝑤𝑥) → (𝑧𝑤 → (𝑧𝑤) = ∅)) ↔ ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
1912, 18bitr3id 285 . . . . . . . . 9 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2019ralbidv 3177 . . . . . . . 8 ((Tr 𝑀𝑧𝑀) → (∀𝑤𝑀 (𝑧𝑥 → (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2111, 20bitr3id 285 . . . . . . 7 ((Tr 𝑀𝑧𝑀) → ((𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2221ralbidva 3175 . . . . . 6 (Tr 𝑀 → (∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2322adantr 480 . . . . 5 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑀 (𝑧𝑥 → ∀𝑤𝑀 (𝑤𝑥 → (𝑧𝑤 → (𝑧𝑤) = ∅))) ↔ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
2410, 23bitrd 279 . . . 4 ((Tr 𝑀𝑥𝑀) → (∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅) ↔ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))))
256, 24anbi12d 632 . . 3 ((Tr 𝑀𝑥𝑀) → ((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) ↔ (∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤))))))
26 simpl 482 . . . . . 6 ((Tr 𝑀𝑦𝑀) → Tr 𝑀)
27 elin 3966 . . . . . . . . 9 (𝑣 ∈ (𝑧𝑦) ↔ (𝑣𝑧𝑣𝑦))
2827eubii 2584 . . . . . . . 8 (∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃!𝑣(𝑣𝑧𝑣𝑦))
29 trel 5266 . . . . . . . . . . . 12 (Tr 𝑀 → ((𝑣𝑦𝑦𝑀) → 𝑣𝑀))
3029imp 406 . . . . . . . . . . 11 ((Tr 𝑀 ∧ (𝑣𝑦𝑦𝑀)) → 𝑣𝑀)
3130anass1rs 655 . . . . . . . . . 10 (((Tr 𝑀𝑦𝑀) ∧ 𝑣𝑦) → 𝑣𝑀)
3231adantrl 716 . . . . . . . . 9 (((Tr 𝑀𝑦𝑀) ∧ (𝑣𝑧𝑣𝑦)) → 𝑣𝑀)
3332reueubd 3398 . . . . . . . 8 ((Tr 𝑀𝑦𝑀) → (∃!𝑣𝑀 (𝑣𝑧𝑣𝑦) ↔ ∃!𝑣(𝑣𝑧𝑣𝑦)))
3428, 33bitr4id 290 . . . . . . 7 ((Tr 𝑀𝑦𝑀) → (∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃!𝑣𝑀 (𝑣𝑧𝑣𝑦)))
35 reu6 3731 . . . . . . 7 (∃!𝑣𝑀 (𝑣𝑧𝑣𝑦) ↔ ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))
3634, 35bitrdi 287 . . . . . 6 ((Tr 𝑀𝑦𝑀) → (∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))
3726, 36ralabsobidv 44962 . . . . 5 (((Tr 𝑀𝑦𝑀) ∧ 𝑥𝑀) → (∀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))))
3837an32s 652 . . . 4 (((Tr 𝑀𝑥𝑀) ∧ 𝑦𝑀) → (∀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))))
3938rexbidva 3176 . . 3 ((Tr 𝑀𝑥𝑀) → (∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦) ↔ ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤))))
4025, 39imbi12d 344 . 2 ((Tr 𝑀𝑥𝑀) → (((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) → ∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦)) ↔ ((∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))) → ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))))
4140ralbidva 3175 1 (Tr 𝑀 → (∀𝑥𝑀 ((∀𝑧𝑥 𝑧 ≠ ∅ ∧ ∀𝑧𝑥𝑤𝑥 (𝑧𝑤 → (𝑧𝑤) = ∅)) → ∃𝑦𝑀𝑧𝑥 ∃!𝑣 𝑣 ∈ (𝑧𝑦)) ↔ ∀𝑥𝑀 ((∀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀 𝑤𝑧) ∧ ∀𝑧𝑀𝑤𝑀 ((𝑧𝑥𝑤𝑥) → (¬ 𝑧 = 𝑤 → ∀𝑦𝑀 (𝑦𝑧 → ¬ 𝑦𝑤)))) → ∃𝑦𝑀𝑧𝑀 (𝑧𝑥 → ∃𝑤𝑀𝑣𝑀 ((𝑣𝑧𝑣𝑦) ↔ 𝑣 = 𝑤)))))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 206  wa 395   = wceq 1540  wcel 2108  ∃!weu 2567  wne 2939  wral 3060  wrex 3069  ∃!wreu 3377  cin 3949  c0 4332  Tr wtr 5257
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 2007  ax-8 2110  ax-9 2118  ax-10 2141  ax-12 2177  ax-ext 2707
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2065  df-mo 2539  df-eu 2568  df-clab 2714  df-cleq 2728  df-clel 2815  df-ne 2940  df-ral 3061  df-rex 3070  df-reu 3380  df-v 3481  df-dif 3953  df-in 3957  df-ss 3967  df-nul 4333  df-uni 4906  df-tr 5258
This theorem is referenced by:  wfac8prim  44992
  Copyright terms: Public domain W3C validator