ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  acexmidlemcase GIF version

Theorem acexmidlemcase 6002
Description: Lemma for acexmid 6006. Here we divide the proof into cases (based on the disjunction implicit in an unordered pair, not the sort of case elimination which relies on excluded middle).

The cases are (1) the choice function evaluated at 𝐴 equals {∅}, (2) the choice function evaluated at 𝐵 equals , and (3) the choice function evaluated at 𝐴 equals and the choice function evaluated at 𝐵 equals {∅}.

Because of the way we represent the choice function 𝑦, the choice function evaluated at 𝐴 is (𝑣𝐴𝑢𝑦(𝐴𝑢𝑣𝑢)) and the choice function evaluated at 𝐵 is (𝑣𝐵𝑢𝑦(𝐵𝑢𝑣𝑢)). Other than the difference in notation these work just as (𝑦𝐴) and (𝑦𝐵) would if 𝑦 were a function as defined by df-fun 5320.

Although it isn't exactly about the division into cases, it is also convenient for this lemma to also include the step that if the choice function evaluated at 𝐴 equals {∅}, then {∅} ∈ 𝐴 and likewise for 𝐵.

(Contributed by Jim Kingdon, 7-Aug-2019.)

Hypotheses
Ref Expression
acexmidlem.a 𝐴 = {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = ∅ ∨ 𝜑)}
acexmidlem.b 𝐵 = {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = {∅} ∨ 𝜑)}
acexmidlem.c 𝐶 = {𝐴, 𝐵}
Assertion
Ref Expression
acexmidlemcase (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ({∅} ∈ 𝐴 ∨ ∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})))
Distinct variable groups:   𝑥,𝑦,𝑧,𝑣,𝑢,𝐴   𝑥,𝐵,𝑦,𝑧,𝑣,𝑢   𝑥,𝐶,𝑦,𝑧,𝑣,𝑢   𝜑,𝑥,𝑦,𝑧,𝑣,𝑢

Proof of Theorem acexmidlemcase
StepHypRef Expression
1 acexmidlem.a . . . . . . . . . . . . . 14 𝐴 = {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = ∅ ∨ 𝜑)}
2 onsucelsucexmidlem 4621 . . . . . . . . . . . . . 14 {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = ∅ ∨ 𝜑)} ∈ On
31, 2eqeltri 2302 . . . . . . . . . . . . 13 𝐴 ∈ On
4 prid1g 3770 . . . . . . . . . . . . 13 (𝐴 ∈ On → 𝐴 ∈ {𝐴, 𝐵})
53, 4ax-mp 5 . . . . . . . . . . . 12 𝐴 ∈ {𝐴, 𝐵}
6 acexmidlem.c . . . . . . . . . . . 12 𝐶 = {𝐴, 𝐵}
75, 6eleqtrri 2305 . . . . . . . . . . 11 𝐴𝐶
8 eleq1 2292 . . . . . . . . . . . . . . 15 (𝑧 = 𝐴 → (𝑧𝑢𝐴𝑢))
98anbi1d 465 . . . . . . . . . . . . . 14 (𝑧 = 𝐴 → ((𝑧𝑢𝑣𝑢) ↔ (𝐴𝑢𝑣𝑢)))
109rexbidv 2531 . . . . . . . . . . . . 13 (𝑧 = 𝐴 → (∃𝑢𝑦 (𝑧𝑢𝑣𝑢) ↔ ∃𝑢𝑦 (𝐴𝑢𝑣𝑢)))
1110reueqd 2742 . . . . . . . . . . . 12 (𝑧 = 𝐴 → (∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) ↔ ∃!𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)))
1211rspcv 2903 . . . . . . . . . . 11 (𝐴𝐶 → (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ∃!𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)))
137, 12ax-mp 5 . . . . . . . . . 10 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ∃!𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢))
14 riotacl 5976 . . . . . . . . . 10 (∃!𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢) → (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ 𝐴)
1513, 14syl 14 . . . . . . . . 9 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ 𝐴)
16 elrabi 2956 . . . . . . . . . 10 ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = ∅ ∨ 𝜑)} → (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ {∅, {∅}})
1716, 1eleq2s 2324 . . . . . . . . 9 ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ 𝐴 → (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ {∅, {∅}})
18 elpri 3689 . . . . . . . . 9 ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ {∅, {∅}} → ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = {∅}))
1915, 17, 183syl 17 . . . . . . . 8 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = {∅}))
20 eleq1 2292 . . . . . . . . . 10 ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = {∅} → ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ 𝐴 ↔ {∅} ∈ 𝐴))
2115, 20syl5ibcom 155 . . . . . . . . 9 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = {∅} → {∅} ∈ 𝐴))
2221orim2d 793 . . . . . . . 8 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → (((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = {∅}) → ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ {∅} ∈ 𝐴)))
2319, 22mpd 13 . . . . . . 7 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ {∅} ∈ 𝐴))
24 acexmidlem.b . . . . . . . . . . . . . 14 𝐵 = {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = {∅} ∨ 𝜑)}
25 pp0ex 4273 . . . . . . . . . . . . . . 15 {∅, {∅}} ∈ V
2625rabex 4228 . . . . . . . . . . . . . 14 {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = {∅} ∨ 𝜑)} ∈ V
2724, 26eqeltri 2302 . . . . . . . . . . . . 13 𝐵 ∈ V
2827prid2 3773 . . . . . . . . . . . 12 𝐵 ∈ {𝐴, 𝐵}
2928, 6eleqtrri 2305 . . . . . . . . . . 11 𝐵𝐶
30 eleq1 2292 . . . . . . . . . . . . . . 15 (𝑧 = 𝐵 → (𝑧𝑢𝐵𝑢))
3130anbi1d 465 . . . . . . . . . . . . . 14 (𝑧 = 𝐵 → ((𝑧𝑢𝑣𝑢) ↔ (𝐵𝑢𝑣𝑢)))
3231rexbidv 2531 . . . . . . . . . . . . 13 (𝑧 = 𝐵 → (∃𝑢𝑦 (𝑧𝑢𝑣𝑢) ↔ ∃𝑢𝑦 (𝐵𝑢𝑣𝑢)))
3332reueqd 2742 . . . . . . . . . . . 12 (𝑧 = 𝐵 → (∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) ↔ ∃!𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)))
3433rspcv 2903 . . . . . . . . . . 11 (𝐵𝐶 → (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ∃!𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)))
3529, 34ax-mp 5 . . . . . . . . . 10 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ∃!𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢))
36 riotacl 5976 . . . . . . . . . 10 (∃!𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢) → (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ 𝐵)
3735, 36syl 14 . . . . . . . . 9 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ 𝐵)
38 elrabi 2956 . . . . . . . . . 10 ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = {∅} ∨ 𝜑)} → (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ {∅, {∅}})
3938, 24eleq2s 2324 . . . . . . . . 9 ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ 𝐵 → (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ {∅, {∅}})
40 elpri 3689 . . . . . . . . 9 ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ {∅, {∅}} → ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = ∅ ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))
4137, 39, 403syl 17 . . . . . . . 8 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = ∅ ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))
42 eleq1 2292 . . . . . . . . . 10 ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = ∅ → ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ 𝐵 ↔ ∅ ∈ 𝐵))
4337, 42syl5ibcom 155 . . . . . . . . 9 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = ∅ → ∅ ∈ 𝐵))
4443orim1d 792 . . . . . . . 8 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → (((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = ∅ ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}) → (∅ ∈ 𝐵 ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})))
4541, 44mpd 13 . . . . . . 7 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → (∅ ∈ 𝐵 ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))
4623, 45jca 306 . . . . . 6 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → (((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ {∅} ∈ 𝐴) ∧ (∅ ∈ 𝐵 ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})))
47 anddi 826 . . . . . 6 ((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ {∅} ∈ 𝐴) ∧ (∅ ∈ 𝐵 ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ↔ ((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ∨ (({∅} ∈ 𝐴 ∧ ∅ ∈ 𝐵) ∨ ({∅} ∈ 𝐴 ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))))
4846, 47sylib 122 . . . . 5 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ∨ (({∅} ∈ 𝐴 ∧ ∅ ∈ 𝐵) ∨ ({∅} ∈ 𝐴 ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))))
49 simpl 109 . . . . . . 7 (({∅} ∈ 𝐴 ∧ ∅ ∈ 𝐵) → {∅} ∈ 𝐴)
50 simpl 109 . . . . . . 7 (({∅} ∈ 𝐴 ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}) → {∅} ∈ 𝐴)
5149, 50jaoi 721 . . . . . 6 ((({∅} ∈ 𝐴 ∧ ∅ ∈ 𝐵) ∨ ({∅} ∈ 𝐴 ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) → {∅} ∈ 𝐴)
5251orim2i 766 . . . . 5 (((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ∨ (({∅} ∈ 𝐴 ∧ ∅ ∈ 𝐵) ∨ ({∅} ∈ 𝐴 ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))) → ((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ∨ {∅} ∈ 𝐴))
5348, 52syl 14 . . . 4 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ∨ {∅} ∈ 𝐴))
5453orcomd 734 . . 3 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ({∅} ∈ 𝐴 ∨ (((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))))
55 simpr 110 . . . . 5 (((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) → ∅ ∈ 𝐵)
5655orim1i 765 . . . 4 ((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) → (∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})))
5756orim2i 766 . . 3 (({∅} ∈ 𝐴 ∨ (((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))) → ({∅} ∈ 𝐴 ∨ (∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))))
5854, 57syl 14 . 2 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ({∅} ∈ 𝐴 ∨ (∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))))
59 3orass 1005 . 2 (({∅} ∈ 𝐴 ∨ ∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ↔ ({∅} ∈ 𝐴 ∨ (∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))))
6058, 59sylibr 134 1 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ({∅} ∈ 𝐴 ∨ ∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 104  wo 713  w3o 1001   = wceq 1395  wcel 2200  wral 2508  wrex 2509  ∃!wreu 2510  {crab 2512  Vcvv 2799  c0 3491  {csn 3666  {cpr 3667  Oncon0 4454  crio 5959
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 617  ax-in2 618  ax-io 714  ax-5 1493  ax-7 1494  ax-gen 1495  ax-ie1 1539  ax-ie2 1540  ax-8 1550  ax-10 1551  ax-11 1552  ax-i12 1553  ax-bndl 1555  ax-4 1556  ax-17 1572  ax-i9 1576  ax-ial 1580  ax-i5r 1581  ax-14 2203  ax-ext 2211  ax-sep 4202  ax-nul 4210  ax-pow 4258
This theorem depends on definitions:  df-bi 117  df-3or 1003  df-3an 1004  df-tru 1398  df-nf 1507  df-sb 1809  df-eu 2080  df-clab 2216  df-cleq 2222  df-clel 2225  df-nfc 2361  df-ral 2513  df-rex 2514  df-reu 2515  df-rab 2517  df-v 2801  df-sbc 3029  df-dif 3199  df-un 3201  df-in 3203  df-ss 3210  df-nul 3492  df-pw 3651  df-sn 3672  df-pr 3673  df-uni 3889  df-tr 4183  df-iord 4457  df-on 4459  df-suc 4462  df-iota 5278  df-riota 5960
This theorem is referenced by:  acexmidlem1  6003
  Copyright terms: Public domain W3C validator