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

Theorem ctssdc 7090
Description: A set is countable iff there is a surjection from a decidable subset of the natural numbers onto it. The decidability condition is needed as shown at ctssexmid 7126. (Contributed by Jim Kingdon, 15-Aug-2023.)
Assertion
Ref Expression
ctssdc (∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) ↔ ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o))
Distinct variable group:   𝐴,𝑓,𝑠,𝑛

Proof of Theorem ctssdc
Dummy variables 𝑔 𝑚 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 simp3 994 . . . . . . . . . . . . . . . . . 18 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → 𝑓:𝑠onto𝐴)
2 fof 5420 . . . . . . . . . . . . . . . . . 18 (𝑓:𝑠onto𝐴𝑓:𝑠𝐴)
31, 2syl 14 . . . . . . . . . . . . . . . . 17 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → 𝑓:𝑠𝐴)
43ad3antrrr 489 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ 𝑚𝑠) → 𝑓:𝑠𝐴)
5 simpr 109 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ 𝑚𝑠) → 𝑚𝑠)
64, 5ffvelrnd 5632 . . . . . . . . . . . . . . 15 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ 𝑚𝑠) → (𝑓𝑚) ∈ 𝐴)
73ad3antrrr 489 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ ¬ 𝑚𝑠) → 𝑓:𝑠𝐴)
8 simpllr 529 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ ¬ 𝑚𝑠) → ∅ ∈ 𝑠)
97, 8ffvelrnd 5632 . . . . . . . . . . . . . . 15 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ ¬ 𝑚𝑠) → (𝑓‘∅) ∈ 𝐴)
10 elequ1 2145 . . . . . . . . . . . . . . . . 17 (𝑛 = 𝑚 → (𝑛𝑠𝑚𝑠))
1110dcbid 833 . . . . . . . . . . . . . . . 16 (𝑛 = 𝑚 → (DECID 𝑛𝑠DECID 𝑚𝑠))
12 simpll2 1032 . . . . . . . . . . . . . . . 16 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
13 simpr 109 . . . . . . . . . . . . . . . 16 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → 𝑚 ∈ ω)
1411, 12, 13rspcdva 2839 . . . . . . . . . . . . . . 15 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → DECID 𝑚𝑠)
156, 9, 14ifcldadc 3555 . . . . . . . . . . . . . 14 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)) ∈ 𝐴)
1615fmpttd 5651 . . . . . . . . . . . . 13 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω⟶𝐴)
1716ffnd 5348 . . . . . . . . . . . 12 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) Fn ω)
18 fvelrnb 5544 . . . . . . . . . . . . . . 15 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) Fn ω → (𝑦 ∈ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ↔ ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
1917, 18syl 14 . . . . . . . . . . . . . 14 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦 ∈ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ↔ ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
201ad2antrr 485 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → 𝑓:𝑠onto𝐴)
21 foelrn 5732 . . . . . . . . . . . . . . . . . 18 ((𝑓:𝑠onto𝐴𝑦𝐴) → ∃𝑧𝑠 𝑦 = (𝑓𝑧))
2220, 21sylancom 418 . . . . . . . . . . . . . . . . 17 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → ∃𝑧𝑠 𝑦 = (𝑓𝑧))
23 simpll1 1031 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → 𝑠 ⊆ ω)
24 eqid 2170 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) = (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))
25 elequ1 2145 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑚 = 𝑧 → (𝑚𝑠𝑧𝑠))
26 fveq2 5496 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑚 = 𝑧 → (𝑓𝑚) = (𝑓𝑧))
2725, 26ifbieq1d 3548 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑚 = 𝑧 → if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)) = if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)))
2823sselda 3147 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → 𝑧 ∈ ω)
293ad4antr 491 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑧𝑠) → 𝑓:𝑠𝐴)
30 simpr 109 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑧𝑠) → 𝑧𝑠)
3129, 30ffvelrnd 5632 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑧𝑠) → (𝑓𝑧) ∈ 𝐴)
323ffvelrnda 5631 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑓‘∅) ∈ 𝐴)
3332ad3antrrr 489 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ ¬ 𝑧𝑠) → (𝑓‘∅) ∈ 𝐴)
34 elequ1 2145 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑛 = 𝑧 → (𝑛𝑠𝑧𝑠))
3534dcbid 833 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑛 = 𝑧 → (DECID 𝑛𝑠DECID 𝑧𝑠))
36 simp2 993 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
3736ad3antrrr 489 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
3835, 37, 28rspcdva 2839 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → DECID 𝑧𝑠)
3931, 33, 38ifcldadc 3555 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)) ∈ 𝐴)
4024, 27, 28, 39fvmptd3 5589 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)))
41 simpr 109 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → 𝑧𝑠)
4241iftrued 3533 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)) = (𝑓𝑧))
4340, 42eqtrd 2203 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = (𝑓𝑧))
4443adantr 274 . . . . . . . . . . . . . . . . . . . . 21 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑦 = (𝑓𝑧)) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = (𝑓𝑧))
45 simpr 109 . . . . . . . . . . . . . . . . . . . . 21 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑦 = (𝑓𝑧)) → 𝑦 = (𝑓𝑧))
4644, 45eqtr4d 2206 . . . . . . . . . . . . . . . . . . . 20 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑦 = (𝑓𝑧)) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦)
4746ex 114 . . . . . . . . . . . . . . . . . . 19 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → (𝑦 = (𝑓𝑧) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
4847reximdva 2572 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → (∃𝑧𝑠 𝑦 = (𝑓𝑧) → ∃𝑧𝑠 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
49 ssrexv 3212 . . . . . . . . . . . . . . . . . 18 (𝑠 ⊆ ω → (∃𝑧𝑠 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦 → ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
5023, 48, 49sylsyld 58 . . . . . . . . . . . . . . . . 17 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → (∃𝑧𝑠 𝑦 = (𝑓𝑧) → ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
5122, 50mpd 13 . . . . . . . . . . . . . . . 16 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦)
5251ex 114 . . . . . . . . . . . . . . 15 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦𝐴 → ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
53 simpr 109 . . . . . . . . . . . . . . . . 17 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦)
54 simpr 109 . . . . . . . . . . . . . . . . . . . 20 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → 𝑧 ∈ ω)
553ad3antrrr 489 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ 𝑧𝑠) → 𝑓:𝑠𝐴)
56 simpr 109 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ 𝑧𝑠) → 𝑧𝑠)
5755, 56ffvelrnd 5632 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ 𝑧𝑠) → (𝑓𝑧) ∈ 𝐴)
5832ad2antrr 485 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ¬ 𝑧𝑠) → (𝑓‘∅) ∈ 𝐴)
59 simpll2 1032 . . . . . . . . . . . . . . . . . . . . . 22 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
6035, 59, 54rspcdva 2839 . . . . . . . . . . . . . . . . . . . . 21 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → DECID 𝑧𝑠)
6157, 58, 60ifcldadc 3555 . . . . . . . . . . . . . . . . . . . 20 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)) ∈ 𝐴)
6224, 27, 54, 61fvmptd3 5589 . . . . . . . . . . . . . . . . . . 19 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)))
6362, 61eqeltrd 2247 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) ∈ 𝐴)
6463adantr 274 . . . . . . . . . . . . . . . . 17 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) ∈ 𝐴)
6553, 64eqeltrrd 2248 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦) → 𝑦𝐴)
6665rexlimdva2 2590 . . . . . . . . . . . . . . 15 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦𝑦𝐴))
6752, 66impbid 128 . . . . . . . . . . . . . 14 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦𝐴 ↔ ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
6819, 67bitr4d 190 . . . . . . . . . . . . 13 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦 ∈ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ↔ 𝑦𝐴))
6968eqrdv 2168 . . . . . . . . . . . 12 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) = 𝐴)
70 df-fo 5204 . . . . . . . . . . . 12 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴 ↔ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) Fn ω ∧ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) = 𝐴))
7117, 69, 70sylanbrc 415 . . . . . . . . . . 11 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴)
72 omex 4577 . . . . . . . . . . . . 13 ω ∈ V
7372mptex 5722 . . . . . . . . . . . 12 (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ∈ V
74 foeq1 5416 . . . . . . . . . . . 12 (𝑔 = (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) → (𝑔:ω–onto𝐴 ↔ (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴))
7573, 74spcev 2825 . . . . . . . . . . 11 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴 → ∃𝑔 𝑔:ω–onto𝐴)
7671, 75syl 14 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ∃𝑔 𝑔:ω–onto𝐴)
77 elex2 2746 . . . . . . . . . . . 12 ((𝑓‘∅) ∈ 𝐴 → ∃𝑥 𝑥𝐴)
7832, 77syl 14 . . . . . . . . . . 11 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ∃𝑥 𝑥𝐴)
79 ctm 7086 . . . . . . . . . . 11 (∃𝑥 𝑥𝐴 → (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑔 𝑔:ω–onto𝐴))
8078, 79syl 14 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑔 𝑔:ω–onto𝐴))
8176, 80mpbird 166 . . . . . . . . 9 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
82 simpl1 995 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → 𝑠 ⊆ ω)
8336adantr 274 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
841adantr 274 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → 𝑓:𝑠onto𝐴)
85 simpr 109 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → ¬ ∅ ∈ 𝑠)
8682, 83, 84, 85ctssdclemn0 7087 . . . . . . . . 9 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
87 eleq1 2233 . . . . . . . . . . . 12 (𝑛 = ∅ → (𝑛𝑠 ↔ ∅ ∈ 𝑠))
8887dcbid 833 . . . . . . . . . . 11 (𝑛 = ∅ → (DECID 𝑛𝑠DECID ∅ ∈ 𝑠))
89 peano1 4578 . . . . . . . . . . . 12 ∅ ∈ ω
9089a1i 9 . . . . . . . . . . 11 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → ∅ ∈ ω)
9188, 36, 90rspcdva 2839 . . . . . . . . . 10 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → DECID ∅ ∈ 𝑠)
92 exmiddc 831 . . . . . . . . . 10 (DECID ∅ ∈ 𝑠 → (∅ ∈ 𝑠 ∨ ¬ ∅ ∈ 𝑠))
9391, 92syl 14 . . . . . . . . 9 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → (∅ ∈ 𝑠 ∨ ¬ ∅ ∈ 𝑠))
9481, 86, 93mpjaodan 793 . . . . . . . 8 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
95943expia 1200 . . . . . . 7 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → (𝑓:𝑠onto𝐴 → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)))
9695exlimdv 1812 . . . . . 6 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → (∃𝑓 𝑓:𝑠onto𝐴 → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)))
97963impia 1195 . . . . 5 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠 ∧ ∃𝑓 𝑓:𝑠onto𝐴) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
98973com23 1204 . . . 4 ((𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
9998exlimiv 1591 . . 3 (∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
100 foeq1 5416 . . . 4 (𝑔 = 𝑓 → (𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ 𝑓:ω–onto→(𝐴 ⊔ 1o)))
101100cbvexv 1911 . . 3 (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o))
10299, 101sylib 121 . 2 (∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o))
103 ctssdclemr 7089 . 2 (∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o) → ∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠))
104102, 103impbii 125 1 (∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) ↔ ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wa 103  wb 104  wo 703  DECID wdc 829  w3a 973   = wceq 1348  wex 1485  wcel 2141  wral 2448  wrex 2449  wss 3121  c0 3414  ifcif 3526  cmpt 4050  ωcom 4574  ran crn 4612   Fn wfn 5193  wf 5194  ontowfo 5196  cfv 5198  1oc1o 6388  cdju 7014
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 609  ax-in2 610  ax-io 704  ax-5 1440  ax-7 1441  ax-gen 1442  ax-ie1 1486  ax-ie2 1487  ax-8 1497  ax-10 1498  ax-11 1499  ax-i12 1500  ax-bndl 1502  ax-4 1503  ax-17 1519  ax-i9 1523  ax-ial 1527  ax-i5r 1528  ax-13 2143  ax-14 2144  ax-ext 2152  ax-coll 4104  ax-sep 4107  ax-nul 4115  ax-pow 4160  ax-pr 4194  ax-un 4418  ax-iinf 4572
This theorem depends on definitions:  df-bi 116  df-dc 830  df-3an 975  df-tru 1351  df-fal 1354  df-nf 1454  df-sb 1756  df-eu 2022  df-mo 2023  df-clab 2157  df-cleq 2163  df-clel 2166  df-nfc 2301  df-ne 2341  df-ral 2453  df-rex 2454  df-reu 2455  df-rab 2457  df-v 2732  df-sbc 2956  df-csb 3050  df-dif 3123  df-un 3125  df-in 3127  df-ss 3134  df-nul 3415  df-if 3527  df-pw 3568  df-sn 3589  df-pr 3590  df-op 3592  df-uni 3797  df-int 3832  df-iun 3875  df-br 3990  df-opab 4051  df-mpt 4052  df-tr 4088  df-id 4278  df-iord 4351  df-on 4353  df-suc 4356  df-iom 4575  df-xp 4617  df-rel 4618  df-cnv 4619  df-co 4620  df-dm 4621  df-rn 4622  df-res 4623  df-ima 4624  df-iota 5160  df-fun 5200  df-fn 5201  df-f 5202  df-f1 5203  df-fo 5204  df-f1o 5205  df-fv 5206  df-1st 6119  df-2nd 6120  df-1o 6395  df-dju 7015  df-inl 7024  df-inr 7025  df-case 7061
This theorem is referenced by:  ctiunct  12395  ssomct  12400
  Copyright terms: Public domain W3C validator