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

Theorem acexmidlemcase 6018
Description: Lemma for acexmid 6022. 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 5330.

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 4629 . . . . . . . . . . . . . 14 {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = ∅ ∨ 𝜑)} ∈ On
31, 2eqeltri 2303 . . . . . . . . . . . . 13 𝐴 ∈ On
4 prid1g 3776 . . . . . . . . . . . . 13 (𝐴 ∈ On → 𝐴 ∈ {𝐴, 𝐵})
53, 4ax-mp 5 . . . . . . . . . . . 12 𝐴 ∈ {𝐴, 𝐵}
6 acexmidlem.c . . . . . . . . . . . 12 𝐶 = {𝐴, 𝐵}
75, 6eleqtrri 2306 . . . . . . . . . . 11 𝐴𝐶
8 eleq1 2293 . . . . . . . . . . . . . . 15 (𝑧 = 𝐴 → (𝑧𝑢𝐴𝑢))
98anbi1d 465 . . . . . . . . . . . . . 14 (𝑧 = 𝐴 → ((𝑧𝑢𝑣𝑢) ↔ (𝐴𝑢𝑣𝑢)))
109rexbidv 2532 . . . . . . . . . . . . 13 (𝑧 = 𝐴 → (∃𝑢𝑦 (𝑧𝑢𝑣𝑢) ↔ ∃𝑢𝑦 (𝐴𝑢𝑣𝑢)))
1110reueqd 2743 . . . . . . . . . . . 12 (𝑧 = 𝐴 → (∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) ↔ ∃!𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)))
1211rspcv 2905 . . . . . . . . . . 11 (𝐴𝐶 → (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ∃!𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)))
137, 12ax-mp 5 . . . . . . . . . 10 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ∃!𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢))
14 riotacl 5992 . . . . . . . . . 10 (∃!𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢) → (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ 𝐴)
1513, 14syl 14 . . . . . . . . 9 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ 𝐴)
16 elrabi 2958 . . . . . . . . . 10 ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = ∅ ∨ 𝜑)} → (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ {∅, {∅}})
1716, 1eleq2s 2325 . . . . . . . . 9 ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ 𝐴 → (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ {∅, {∅}})
18 elpri 3693 . . . . . . . . 9 ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ {∅, {∅}} → ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = {∅}))
1915, 17, 183syl 17 . . . . . . . 8 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = {∅}))
20 eleq1 2293 . . . . . . . . . 10 ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = {∅} → ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) ∈ 𝐴 ↔ {∅} ∈ 𝐴))
2115, 20syl5ibcom 155 . . . . . . . . 9 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = {∅} → {∅} ∈ 𝐴))
2221orim2d 795 . . . . . . . 8 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → (((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ (𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = {∅}) → ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ {∅} ∈ 𝐴)))
2319, 22mpd 13 . . . . . . 7 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ {∅} ∈ 𝐴))
24 acexmidlem.b . . . . . . . . . . . . . 14 𝐵 = {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = {∅} ∨ 𝜑)}
25 pp0ex 4281 . . . . . . . . . . . . . . 15 {∅, {∅}} ∈ V
2625rabex 4235 . . . . . . . . . . . . . 14 {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = {∅} ∨ 𝜑)} ∈ V
2724, 26eqeltri 2303 . . . . . . . . . . . . 13 𝐵 ∈ V
2827prid2 3779 . . . . . . . . . . . 12 𝐵 ∈ {𝐴, 𝐵}
2928, 6eleqtrri 2306 . . . . . . . . . . 11 𝐵𝐶
30 eleq1 2293 . . . . . . . . . . . . . . 15 (𝑧 = 𝐵 → (𝑧𝑢𝐵𝑢))
3130anbi1d 465 . . . . . . . . . . . . . 14 (𝑧 = 𝐵 → ((𝑧𝑢𝑣𝑢) ↔ (𝐵𝑢𝑣𝑢)))
3231rexbidv 2532 . . . . . . . . . . . . 13 (𝑧 = 𝐵 → (∃𝑢𝑦 (𝑧𝑢𝑣𝑢) ↔ ∃𝑢𝑦 (𝐵𝑢𝑣𝑢)))
3332reueqd 2743 . . . . . . . . . . . 12 (𝑧 = 𝐵 → (∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) ↔ ∃!𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)))
3433rspcv 2905 . . . . . . . . . . 11 (𝐵𝐶 → (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ∃!𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)))
3529, 34ax-mp 5 . . . . . . . . . 10 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ∃!𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢))
36 riotacl 5992 . . . . . . . . . 10 (∃!𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢) → (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ 𝐵)
3735, 36syl 14 . . . . . . . . 9 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ 𝐵)
38 elrabi 2958 . . . . . . . . . 10 ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ {𝑥 ∈ {∅, {∅}} ∣ (𝑥 = {∅} ∨ 𝜑)} → (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ {∅, {∅}})
3938, 24eleq2s 2325 . . . . . . . . 9 ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ 𝐵 → (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ {∅, {∅}})
40 elpri 3693 . . . . . . . . 9 ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ {∅, {∅}} → ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = ∅ ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))
4137, 39, 403syl 17 . . . . . . . 8 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = ∅ ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))
42 eleq1 2293 . . . . . . . . . 10 ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = ∅ → ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) ∈ 𝐵 ↔ ∅ ∈ 𝐵))
4337, 42syl5ibcom 155 . . . . . . . . 9 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = ∅ → ∅ ∈ 𝐵))
4443orim1d 794 . . . . . . . 8 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → (((𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = ∅ ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}) → (∅ ∈ 𝐵 ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})))
4541, 44mpd 13 . . . . . . 7 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → (∅ ∈ 𝐵 ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))
4623, 45jca 306 . . . . . 6 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → (((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ {∅} ∈ 𝐴) ∧ (∅ ∈ 𝐵 ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})))
47 anddi 828 . . . . . 6 ((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∨ {∅} ∈ 𝐴) ∧ (∅ ∈ 𝐵 ∨ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ↔ ((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ∨ (({∅} ∈ 𝐴 ∧ ∅ ∈ 𝐵) ∨ ({∅} ∈ 𝐴 ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))))
4846, 47sylib 122 . . . . 5 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ∨ (({∅} ∈ 𝐴 ∧ ∅ ∈ 𝐵) ∨ ({∅} ∈ 𝐴 ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))))
49 simpl 109 . . . . . . 7 (({∅} ∈ 𝐴 ∧ ∅ ∈ 𝐵) → {∅} ∈ 𝐴)
50 simpl 109 . . . . . . 7 (({∅} ∈ 𝐴 ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}) → {∅} ∈ 𝐴)
5149, 50jaoi 723 . . . . . 6 ((({∅} ∈ 𝐴 ∧ ∅ ∈ 𝐵) ∨ ({∅} ∈ 𝐴 ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) → {∅} ∈ 𝐴)
5251orim2i 768 . . . . 5 (((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ∨ (({∅} ∈ 𝐴 ∧ ∅ ∈ 𝐵) ∨ ({∅} ∈ 𝐴 ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))) → ((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ∨ {∅} ∈ 𝐴))
5348, 52syl 14 . . . 4 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ∨ {∅} ∈ 𝐴))
5453orcomd 736 . . 3 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ({∅} ∈ 𝐴 ∨ (((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))))
55 simpr 110 . . . . 5 (((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) → ∅ ∈ 𝐵)
5655orim1i 767 . . . 4 ((((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) → (∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})))
5756orim2i 768 . . 3 (({∅} ∈ 𝐴 ∨ (((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ ∅ ∈ 𝐵) ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))) → ({∅} ∈ 𝐴 ∨ (∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))))
5854, 57syl 14 . 2 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ({∅} ∈ 𝐴 ∨ (∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))))
59 3orass 1007 . 2 (({∅} ∈ 𝐴 ∨ ∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})) ↔ ({∅} ∈ 𝐴 ∨ (∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅}))))
6058, 59sylibr 134 1 (∀𝑧𝐶 ∃!𝑣𝑧𝑢𝑦 (𝑧𝑢𝑣𝑢) → ({∅} ∈ 𝐴 ∨ ∅ ∈ 𝐵 ∨ ((𝑣𝐴𝑢𝑦 (𝐴𝑢𝑣𝑢)) = ∅ ∧ (𝑣𝐵𝑢𝑦 (𝐵𝑢𝑣𝑢)) = {∅})))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 104  wo 715  w3o 1003   = wceq 1397  wcel 2201  wral 2509  wrex 2510  ∃!wreu 2511  {crab 2513  Vcvv 2801  c0 3493  {csn 3670  {cpr 3671  Oncon0 4462  crio 5975
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 619  ax-in2 620  ax-io 716  ax-5 1495  ax-7 1496  ax-gen 1497  ax-ie1 1541  ax-ie2 1542  ax-8 1552  ax-10 1553  ax-11 1554  ax-i12 1555  ax-bndl 1557  ax-4 1558  ax-17 1574  ax-i9 1578  ax-ial 1582  ax-i5r 1583  ax-14 2204  ax-ext 2212  ax-sep 4208  ax-nul 4216  ax-pow 4266
This theorem depends on definitions:  df-bi 117  df-3or 1005  df-3an 1006  df-tru 1400  df-nf 1509  df-sb 1810  df-eu 2081  df-clab 2217  df-cleq 2223  df-clel 2226  df-nfc 2362  df-ral 2514  df-rex 2515  df-reu 2516  df-rab 2518  df-v 2803  df-sbc 3031  df-dif 3201  df-un 3203  df-in 3205  df-ss 3212  df-nul 3494  df-pw 3655  df-sn 3676  df-pr 3677  df-uni 3895  df-tr 4189  df-iord 4465  df-on 4467  df-suc 4470  df-iota 5288  df-riota 5976
This theorem is referenced by:  acexmidlem1  6019
  Copyright terms: Public domain W3C validator