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

Theorem ctssdc 6950
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 6974. (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 966 . . . . . . . . . . . . . . . . . 18 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → 𝑓:𝑠onto𝐴)
2 fof 5303 . . . . . . . . . . . . . . . . . 18 (𝑓:𝑠onto𝐴𝑓:𝑠𝐴)
31, 2syl 14 . . . . . . . . . . . . . . . . 17 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → 𝑓:𝑠𝐴)
43ad3antrrr 481 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ 𝑚𝑠) → 𝑓:𝑠𝐴)
5 simpr 109 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ 𝑚𝑠) → 𝑚𝑠)
64, 5ffvelrnd 5510 . . . . . . . . . . . . . . 15 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ 𝑚𝑠) → (𝑓𝑚) ∈ 𝐴)
73ad3antrrr 481 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ ¬ 𝑚𝑠) → 𝑓:𝑠𝐴)
8 simpllr 506 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ ¬ 𝑚𝑠) → ∅ ∈ 𝑠)
97, 8ffvelrnd 5510 . . . . . . . . . . . . . . 15 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ ¬ 𝑚𝑠) → (𝑓‘∅) ∈ 𝐴)
10 elequ1 1673 . . . . . . . . . . . . . . . . 17 (𝑛 = 𝑚 → (𝑛𝑠𝑚𝑠))
1110dcbid 806 . . . . . . . . . . . . . . . 16 (𝑛 = 𝑚 → (DECID 𝑛𝑠DECID 𝑚𝑠))
12 simpll2 1004 . . . . . . . . . . . . . . . 16 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
13 simpr 109 . . . . . . . . . . . . . . . 16 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → 𝑚 ∈ ω)
1411, 12, 13rspcdva 2765 . . . . . . . . . . . . . . 15 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → DECID 𝑚𝑠)
156, 9, 14ifcldadc 3467 . . . . . . . . . . . . . 14 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)) ∈ 𝐴)
1615fmpttd 5529 . . . . . . . . . . . . 13 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω⟶𝐴)
1716ffnd 5231 . . . . . . . . . . . 12 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) Fn ω)
18 fvelrnb 5423 . . . . . . . . . . . . . . 15 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) Fn ω → (𝑦 ∈ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ↔ ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
1917, 18syl 14 . . . . . . . . . . . . . 14 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦 ∈ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ↔ ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
201ad2antrr 477 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → 𝑓:𝑠onto𝐴)
21 foelrn 5608 . . . . . . . . . . . . . . . . . 18 ((𝑓:𝑠onto𝐴𝑦𝐴) → ∃𝑧𝑠 𝑦 = (𝑓𝑧))
2220, 21sylancom 414 . . . . . . . . . . . . . . . . 17 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → ∃𝑧𝑠 𝑦 = (𝑓𝑧))
23 simpll1 1003 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → 𝑠 ⊆ ω)
24 eqid 2115 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) = (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))
25 elequ1 1673 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑚 = 𝑧 → (𝑚𝑠𝑧𝑠))
26 fveq2 5375 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑚 = 𝑧 → (𝑓𝑚) = (𝑓𝑧))
2725, 26ifbieq1d 3460 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑚 = 𝑧 → if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)) = if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)))
2823sselda 3063 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → 𝑧 ∈ ω)
293ad4antr 483 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑧𝑠) → 𝑓:𝑠𝐴)
30 simpr 109 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑧𝑠) → 𝑧𝑠)
3129, 30ffvelrnd 5510 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑧𝑠) → (𝑓𝑧) ∈ 𝐴)
323ffvelrnda 5509 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑓‘∅) ∈ 𝐴)
3332ad3antrrr 481 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ ¬ 𝑧𝑠) → (𝑓‘∅) ∈ 𝐴)
34 elequ1 1673 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑛 = 𝑧 → (𝑛𝑠𝑧𝑠))
3534dcbid 806 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑛 = 𝑧 → (DECID 𝑛𝑠DECID 𝑧𝑠))
36 simp2 965 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
3736ad3antrrr 481 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
3835, 37, 28rspcdva 2765 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → DECID 𝑧𝑠)
3931, 33, 38ifcldadc 3467 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)) ∈ 𝐴)
4024, 27, 28, 39fvmptd3 5468 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)))
41 simpr 109 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → 𝑧𝑠)
4241iftrued 3447 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)) = (𝑓𝑧))
4340, 42eqtrd 2147 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = (𝑓𝑧))
4443adantr 272 . . . . . . . . . . . . . . . . . . . . 21 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑦 = (𝑓𝑧)) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = (𝑓𝑧))
45 simpr 109 . . . . . . . . . . . . . . . . . . . . 21 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑦 = (𝑓𝑧)) → 𝑦 = (𝑓𝑧))
4644, 45eqtr4d 2150 . . . . . . . . . . . . . . . . . . . 20 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑦 = (𝑓𝑧)) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦)
4746ex 114 . . . . . . . . . . . . . . . . . . 19 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → (𝑦 = (𝑓𝑧) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
4847reximdva 2508 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → (∃𝑧𝑠 𝑦 = (𝑓𝑧) → ∃𝑧𝑠 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
49 ssrexv 3128 . . . . . . . . . . . . . . . . . 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 481 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ 𝑧𝑠) → 𝑓:𝑠𝐴)
56 simpr 109 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ 𝑧𝑠) → 𝑧𝑠)
5755, 56ffvelrnd 5510 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ 𝑧𝑠) → (𝑓𝑧) ∈ 𝐴)
5832ad2antrr 477 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ¬ 𝑧𝑠) → (𝑓‘∅) ∈ 𝐴)
59 simpll2 1004 . . . . . . . . . . . . . . . . . . . . . 22 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
6035, 59, 54rspcdva 2765 . . . . . . . . . . . . . . . . . . . . 21 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → DECID 𝑧𝑠)
6157, 58, 60ifcldadc 3467 . . . . . . . . . . . . . . . . . . . 20 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)) ∈ 𝐴)
6224, 27, 54, 61fvmptd3 5468 . . . . . . . . . . . . . . . . . . 19 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)))
6362, 61eqeltrd 2191 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) ∈ 𝐴)
6463adantr 272 . . . . . . . . . . . . . . . . 17 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) ∈ 𝐴)
6553, 64eqeltrrd 2192 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦) → 𝑦𝐴)
6665rexlimdva2 2526 . . . . . . . . . . . . . . 15 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦𝑦𝐴))
6752, 66impbid 128 . . . . . . . . . . . . . 14 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦𝐴 ↔ ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
6819, 67bitr4d 190 . . . . . . . . . . . . 13 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦 ∈ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ↔ 𝑦𝐴))
6968eqrdv 2113 . . . . . . . . . . . 12 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) = 𝐴)
70 df-fo 5087 . . . . . . . . . . . 12 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴 ↔ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) Fn ω ∧ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) = 𝐴))
7117, 69, 70sylanbrc 411 . . . . . . . . . . 11 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴)
72 omex 4467 . . . . . . . . . . . . 13 ω ∈ V
7372mptex 5600 . . . . . . . . . . . 12 (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ∈ V
74 foeq1 5299 . . . . . . . . . . . 12 (𝑔 = (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) → (𝑔:ω–onto𝐴 ↔ (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴))
7573, 74spcev 2751 . . . . . . . . . . 11 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴 → ∃𝑔 𝑔:ω–onto𝐴)
7671, 75syl 14 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ∃𝑔 𝑔:ω–onto𝐴)
77 elex2 2673 . . . . . . . . . . . 12 ((𝑓‘∅) ∈ 𝐴 → ∃𝑥 𝑥𝐴)
7832, 77syl 14 . . . . . . . . . . 11 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ∃𝑥 𝑥𝐴)
79 ctm 6946 . . . . . . . . . . 11 (∃𝑥 𝑥𝐴 → (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑔 𝑔:ω–onto𝐴))
8078, 79syl 14 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑔 𝑔:ω–onto𝐴))
8176, 80mpbird 166 . . . . . . . . 9 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
82 simpl1 967 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → 𝑠 ⊆ ω)
8336adantr 272 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
841adantr 272 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → 𝑓:𝑠onto𝐴)
85 simpr 109 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → ¬ ∅ ∈ 𝑠)
8682, 83, 84, 85ctssdclemn0 6947 . . . . . . . . 9 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
87 eleq1 2177 . . . . . . . . . . . 12 (𝑛 = ∅ → (𝑛𝑠 ↔ ∅ ∈ 𝑠))
8887dcbid 806 . . . . . . . . . . 11 (𝑛 = ∅ → (DECID 𝑛𝑠DECID ∅ ∈ 𝑠))
89 peano1 4468 . . . . . . . . . . . 12 ∅ ∈ ω
9089a1i 9 . . . . . . . . . . 11 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → ∅ ∈ ω)
9188, 36, 90rspcdva 2765 . . . . . . . . . 10 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → DECID ∅ ∈ 𝑠)
92 exmiddc 804 . . . . . . . . . 10 (DECID ∅ ∈ 𝑠 → (∅ ∈ 𝑠 ∨ ¬ ∅ ∈ 𝑠))
9391, 92syl 14 . . . . . . . . 9 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → (∅ ∈ 𝑠 ∨ ¬ ∅ ∈ 𝑠))
9481, 86, 93mpjaodan 770 . . . . . . . 8 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
95943expia 1166 . . . . . . 7 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → (𝑓:𝑠onto𝐴 → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)))
9695exlimdv 1773 . . . . . 6 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → (∃𝑓 𝑓:𝑠onto𝐴 → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)))
97963impia 1161 . . . . 5 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠 ∧ ∃𝑓 𝑓:𝑠onto𝐴) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
98973com23 1170 . . . 4 ((𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
9998exlimiv 1560 . . 3 (∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
100 foeq1 5299 . . . 4 (𝑔 = 𝑓 → (𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ 𝑓:ω–onto→(𝐴 ⊔ 1o)))
101100cbvexv 1870 . . 3 (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o))
10299, 101sylib 121 . 2 (∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o))
103 ctssdclemr 6949 . 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 680  DECID wdc 802  w3a 945   = wceq 1314  wex 1451  wcel 1463  wral 2390  wrex 2391  wss 3037  c0 3329  ifcif 3440  cmpt 3949  ωcom 4464  ran crn 4500   Fn wfn 5076  wf 5077  ontowfo 5079  cfv 5081  1oc1o 6260  cdju 6874
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 586  ax-in2 587  ax-io 681  ax-5 1406  ax-7 1407  ax-gen 1408  ax-ie1 1452  ax-ie2 1453  ax-8 1465  ax-10 1466  ax-11 1467  ax-i12 1468  ax-bndl 1469  ax-4 1470  ax-13 1474  ax-14 1475  ax-17 1489  ax-i9 1493  ax-ial 1497  ax-i5r 1498  ax-ext 2097  ax-coll 4003  ax-sep 4006  ax-nul 4014  ax-pow 4058  ax-pr 4091  ax-un 4315  ax-iinf 4462
This theorem depends on definitions:  df-bi 116  df-dc 803  df-3an 947  df-tru 1317  df-fal 1320  df-nf 1420  df-sb 1719  df-eu 1978  df-mo 1979  df-clab 2102  df-cleq 2108  df-clel 2111  df-nfc 2244  df-ne 2283  df-ral 2395  df-rex 2396  df-reu 2397  df-rab 2399  df-v 2659  df-sbc 2879  df-csb 2972  df-dif 3039  df-un 3041  df-in 3043  df-ss 3050  df-nul 3330  df-if 3441  df-pw 3478  df-sn 3499  df-pr 3500  df-op 3502  df-uni 3703  df-int 3738  df-iun 3781  df-br 3896  df-opab 3950  df-mpt 3951  df-tr 3987  df-id 4175  df-iord 4248  df-on 4250  df-suc 4253  df-iom 4465  df-xp 4505  df-rel 4506  df-cnv 4507  df-co 4508  df-dm 4509  df-rn 4510  df-res 4511  df-ima 4512  df-iota 5046  df-fun 5083  df-fn 5084  df-f 5085  df-f1 5086  df-fo 5087  df-f1o 5088  df-fv 5089  df-1st 5992  df-2nd 5993  df-1o 6267  df-dju 6875  df-inl 6884  df-inr 6885  df-case 6921
This theorem is referenced by:  ctiunct  11796
  Copyright terms: Public domain W3C validator