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

Theorem ctssdc 7078
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 7114. (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 989 . . . . . . . . . . . . . . . . . 18 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → 𝑓:𝑠onto𝐴)
2 fof 5410 . . . . . . . . . . . . . . . . . 18 (𝑓:𝑠onto𝐴𝑓:𝑠𝐴)
31, 2syl 14 . . . . . . . . . . . . . . . . 17 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → 𝑓:𝑠𝐴)
43ad3antrrr 484 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ 𝑚𝑠) → 𝑓:𝑠𝐴)
5 simpr 109 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ 𝑚𝑠) → 𝑚𝑠)
64, 5ffvelrnd 5621 . . . . . . . . . . . . . . 15 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ 𝑚𝑠) → (𝑓𝑚) ∈ 𝐴)
73ad3antrrr 484 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ ¬ 𝑚𝑠) → 𝑓:𝑠𝐴)
8 simpllr 524 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ ¬ 𝑚𝑠) → ∅ ∈ 𝑠)
97, 8ffvelrnd 5621 . . . . . . . . . . . . . . 15 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ ¬ 𝑚𝑠) → (𝑓‘∅) ∈ 𝐴)
10 elequ1 2140 . . . . . . . . . . . . . . . . 17 (𝑛 = 𝑚 → (𝑛𝑠𝑚𝑠))
1110dcbid 828 . . . . . . . . . . . . . . . 16 (𝑛 = 𝑚 → (DECID 𝑛𝑠DECID 𝑚𝑠))
12 simpll2 1027 . . . . . . . . . . . . . . . 16 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
13 simpr 109 . . . . . . . . . . . . . . . 16 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → 𝑚 ∈ ω)
1411, 12, 13rspcdva 2835 . . . . . . . . . . . . . . 15 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → DECID 𝑚𝑠)
156, 9, 14ifcldadc 3549 . . . . . . . . . . . . . 14 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)) ∈ 𝐴)
1615fmpttd 5640 . . . . . . . . . . . . 13 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω⟶𝐴)
1716ffnd 5338 . . . . . . . . . . . 12 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) Fn ω)
18 fvelrnb 5534 . . . . . . . . . . . . . . 15 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) Fn ω → (𝑦 ∈ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ↔ ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
1917, 18syl 14 . . . . . . . . . . . . . 14 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦 ∈ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ↔ ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
201ad2antrr 480 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → 𝑓:𝑠onto𝐴)
21 foelrn 5721 . . . . . . . . . . . . . . . . . 18 ((𝑓:𝑠onto𝐴𝑦𝐴) → ∃𝑧𝑠 𝑦 = (𝑓𝑧))
2220, 21sylancom 417 . . . . . . . . . . . . . . . . 17 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → ∃𝑧𝑠 𝑦 = (𝑓𝑧))
23 simpll1 1026 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → 𝑠 ⊆ ω)
24 eqid 2165 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) = (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))
25 elequ1 2140 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑚 = 𝑧 → (𝑚𝑠𝑧𝑠))
26 fveq2 5486 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑚 = 𝑧 → (𝑓𝑚) = (𝑓𝑧))
2725, 26ifbieq1d 3542 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑚 = 𝑧 → if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)) = if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)))
2823sselda 3142 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → 𝑧 ∈ ω)
293ad4antr 486 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑧𝑠) → 𝑓:𝑠𝐴)
30 simpr 109 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑧𝑠) → 𝑧𝑠)
3129, 30ffvelrnd 5621 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑧𝑠) → (𝑓𝑧) ∈ 𝐴)
323ffvelrnda 5620 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑓‘∅) ∈ 𝐴)
3332ad3antrrr 484 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ ¬ 𝑧𝑠) → (𝑓‘∅) ∈ 𝐴)
34 elequ1 2140 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑛 = 𝑧 → (𝑛𝑠𝑧𝑠))
3534dcbid 828 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑛 = 𝑧 → (DECID 𝑛𝑠DECID 𝑧𝑠))
36 simp2 988 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
3736ad3antrrr 484 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
3835, 37, 28rspcdva 2835 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → DECID 𝑧𝑠)
3931, 33, 38ifcldadc 3549 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)) ∈ 𝐴)
4024, 27, 28, 39fvmptd3 5579 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)))
41 simpr 109 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → 𝑧𝑠)
4241iftrued 3527 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)) = (𝑓𝑧))
4340, 42eqtrd 2198 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = (𝑓𝑧))
4443adantr 274 . . . . . . . . . . . . . . . . . . . . 21 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑦 = (𝑓𝑧)) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = (𝑓𝑧))
45 simpr 109 . . . . . . . . . . . . . . . . . . . . 21 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑦 = (𝑓𝑧)) → 𝑦 = (𝑓𝑧))
4644, 45eqtr4d 2201 . . . . . . . . . . . . . . . . . . . 20 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑦 = (𝑓𝑧)) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦)
4746ex 114 . . . . . . . . . . . . . . . . . . 19 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → (𝑦 = (𝑓𝑧) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
4847reximdva 2568 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → (∃𝑧𝑠 𝑦 = (𝑓𝑧) → ∃𝑧𝑠 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
49 ssrexv 3207 . . . . . . . . . . . . . . . . . 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 484 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ 𝑧𝑠) → 𝑓:𝑠𝐴)
56 simpr 109 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ 𝑧𝑠) → 𝑧𝑠)
5755, 56ffvelrnd 5621 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ 𝑧𝑠) → (𝑓𝑧) ∈ 𝐴)
5832ad2antrr 480 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ¬ 𝑧𝑠) → (𝑓‘∅) ∈ 𝐴)
59 simpll2 1027 . . . . . . . . . . . . . . . . . . . . . 22 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
6035, 59, 54rspcdva 2835 . . . . . . . . . . . . . . . . . . . . 21 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → DECID 𝑧𝑠)
6157, 58, 60ifcldadc 3549 . . . . . . . . . . . . . . . . . . . 20 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)) ∈ 𝐴)
6224, 27, 54, 61fvmptd3 5579 . . . . . . . . . . . . . . . . . . 19 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)))
6362, 61eqeltrd 2243 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) ∈ 𝐴)
6463adantr 274 . . . . . . . . . . . . . . . . 17 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) ∈ 𝐴)
6553, 64eqeltrrd 2244 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦) → 𝑦𝐴)
6665rexlimdva2 2586 . . . . . . . . . . . . . . 15 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦𝑦𝐴))
6752, 66impbid 128 . . . . . . . . . . . . . 14 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦𝐴 ↔ ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
6819, 67bitr4d 190 . . . . . . . . . . . . 13 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦 ∈ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ↔ 𝑦𝐴))
6968eqrdv 2163 . . . . . . . . . . . 12 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) = 𝐴)
70 df-fo 5194 . . . . . . . . . . . 12 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴 ↔ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) Fn ω ∧ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) = 𝐴))
7117, 69, 70sylanbrc 414 . . . . . . . . . . 11 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴)
72 omex 4570 . . . . . . . . . . . . 13 ω ∈ V
7372mptex 5711 . . . . . . . . . . . 12 (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ∈ V
74 foeq1 5406 . . . . . . . . . . . 12 (𝑔 = (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) → (𝑔:ω–onto𝐴 ↔ (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴))
7573, 74spcev 2821 . . . . . . . . . . 11 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴 → ∃𝑔 𝑔:ω–onto𝐴)
7671, 75syl 14 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ∃𝑔 𝑔:ω–onto𝐴)
77 elex2 2742 . . . . . . . . . . . 12 ((𝑓‘∅) ∈ 𝐴 → ∃𝑥 𝑥𝐴)
7832, 77syl 14 . . . . . . . . . . 11 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ∃𝑥 𝑥𝐴)
79 ctm 7074 . . . . . . . . . . 11 (∃𝑥 𝑥𝐴 → (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑔 𝑔:ω–onto𝐴))
8078, 79syl 14 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑔 𝑔:ω–onto𝐴))
8176, 80mpbird 166 . . . . . . . . 9 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
82 simpl1 990 . . . . . . . . . 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 7075 . . . . . . . . 9 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
87 eleq1 2229 . . . . . . . . . . . 12 (𝑛 = ∅ → (𝑛𝑠 ↔ ∅ ∈ 𝑠))
8887dcbid 828 . . . . . . . . . . 11 (𝑛 = ∅ → (DECID 𝑛𝑠DECID ∅ ∈ 𝑠))
89 peano1 4571 . . . . . . . . . . . 12 ∅ ∈ ω
9089a1i 9 . . . . . . . . . . 11 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → ∅ ∈ ω)
9188, 36, 90rspcdva 2835 . . . . . . . . . 10 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → DECID ∅ ∈ 𝑠)
92 exmiddc 826 . . . . . . . . . 10 (DECID ∅ ∈ 𝑠 → (∅ ∈ 𝑠 ∨ ¬ ∅ ∈ 𝑠))
9391, 92syl 14 . . . . . . . . 9 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → (∅ ∈ 𝑠 ∨ ¬ ∅ ∈ 𝑠))
9481, 86, 93mpjaodan 788 . . . . . . . 8 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
95943expia 1195 . . . . . . 7 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → (𝑓:𝑠onto𝐴 → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)))
9695exlimdv 1807 . . . . . 6 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → (∃𝑓 𝑓:𝑠onto𝐴 → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)))
97963impia 1190 . . . . 5 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠 ∧ ∃𝑓 𝑓:𝑠onto𝐴) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
98973com23 1199 . . . 4 ((𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
9998exlimiv 1586 . . 3 (∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
100 foeq1 5406 . . . 4 (𝑔 = 𝑓 → (𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ 𝑓:ω–onto→(𝐴 ⊔ 1o)))
101100cbvexv 1906 . . 3 (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o))
10299, 101sylib 121 . 2 (∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o))
103 ctssdclemr 7077 . 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 698  DECID wdc 824  w3a 968   = wceq 1343  wex 1480  wcel 2136  wral 2444  wrex 2445  wss 3116  c0 3409  ifcif 3520  cmpt 4043  ωcom 4567  ran crn 4605   Fn wfn 5183  wf 5184  ontowfo 5186  cfv 5188  1oc1o 6377  cdju 7002
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 604  ax-in2 605  ax-io 699  ax-5 1435  ax-7 1436  ax-gen 1437  ax-ie1 1481  ax-ie2 1482  ax-8 1492  ax-10 1493  ax-11 1494  ax-i12 1495  ax-bndl 1497  ax-4 1498  ax-17 1514  ax-i9 1518  ax-ial 1522  ax-i5r 1523  ax-13 2138  ax-14 2139  ax-ext 2147  ax-coll 4097  ax-sep 4100  ax-nul 4108  ax-pow 4153  ax-pr 4187  ax-un 4411  ax-iinf 4565
This theorem depends on definitions:  df-bi 116  df-dc 825  df-3an 970  df-tru 1346  df-fal 1349  df-nf 1449  df-sb 1751  df-eu 2017  df-mo 2018  df-clab 2152  df-cleq 2158  df-clel 2161  df-nfc 2297  df-ne 2337  df-ral 2449  df-rex 2450  df-reu 2451  df-rab 2453  df-v 2728  df-sbc 2952  df-csb 3046  df-dif 3118  df-un 3120  df-in 3122  df-ss 3129  df-nul 3410  df-if 3521  df-pw 3561  df-sn 3582  df-pr 3583  df-op 3585  df-uni 3790  df-int 3825  df-iun 3868  df-br 3983  df-opab 4044  df-mpt 4045  df-tr 4081  df-id 4271  df-iord 4344  df-on 4346  df-suc 4349  df-iom 4568  df-xp 4610  df-rel 4611  df-cnv 4612  df-co 4613  df-dm 4614  df-rn 4615  df-res 4616  df-ima 4617  df-iota 5153  df-fun 5190  df-fn 5191  df-f 5192  df-f1 5193  df-fo 5194  df-f1o 5195  df-fv 5196  df-1st 6108  df-2nd 6109  df-1o 6384  df-dju 7003  df-inl 7012  df-inr 7013  df-case 7049
This theorem is referenced by:  ctiunct  12373  ssomct  12378
  Copyright terms: Public domain W3C validator