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

Theorem ctssdc 7174
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 7211. (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 1001 . . . . . . . . . . . . . . . . . 18 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → 𝑓:𝑠onto𝐴)
2 fof 5477 . . . . . . . . . . . . . . . . . 18 (𝑓:𝑠onto𝐴𝑓:𝑠𝐴)
31, 2syl 14 . . . . . . . . . . . . . . . . 17 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → 𝑓:𝑠𝐴)
43ad3antrrr 492 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ 𝑚𝑠) → 𝑓:𝑠𝐴)
5 simpr 110 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ 𝑚𝑠) → 𝑚𝑠)
64, 5ffvelcdmd 5695 . . . . . . . . . . . . . . 15 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ 𝑚𝑠) → (𝑓𝑚) ∈ 𝐴)
73ad3antrrr 492 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ ¬ 𝑚𝑠) → 𝑓:𝑠𝐴)
8 simpllr 534 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ ¬ 𝑚𝑠) → ∅ ∈ 𝑠)
97, 8ffvelcdmd 5695 . . . . . . . . . . . . . . 15 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) ∧ ¬ 𝑚𝑠) → (𝑓‘∅) ∈ 𝐴)
10 elequ1 2168 . . . . . . . . . . . . . . . . 17 (𝑛 = 𝑚 → (𝑛𝑠𝑚𝑠))
1110dcbid 839 . . . . . . . . . . . . . . . 16 (𝑛 = 𝑚 → (DECID 𝑛𝑠DECID 𝑚𝑠))
12 simpll2 1039 . . . . . . . . . . . . . . . 16 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
13 simpr 110 . . . . . . . . . . . . . . . 16 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → 𝑚 ∈ ω)
1411, 12, 13rspcdva 2870 . . . . . . . . . . . . . . 15 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → DECID 𝑚𝑠)
156, 9, 14ifcldadc 3587 . . . . . . . . . . . . . 14 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑚 ∈ ω) → if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)) ∈ 𝐴)
1615fmpttd 5714 . . . . . . . . . . . . 13 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω⟶𝐴)
1716ffnd 5405 . . . . . . . . . . . 12 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) Fn ω)
18 fvelrnb 5605 . . . . . . . . . . . . . . 15 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) Fn ω → (𝑦 ∈ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ↔ ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
1917, 18syl 14 . . . . . . . . . . . . . 14 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦 ∈ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ↔ ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
201ad2antrr 488 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → 𝑓:𝑠onto𝐴)
21 foelrn 5796 . . . . . . . . . . . . . . . . . 18 ((𝑓:𝑠onto𝐴𝑦𝐴) → ∃𝑧𝑠 𝑦 = (𝑓𝑧))
2220, 21sylancom 420 . . . . . . . . . . . . . . . . 17 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → ∃𝑧𝑠 𝑦 = (𝑓𝑧))
23 simpll1 1038 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → 𝑠 ⊆ ω)
24 eqid 2193 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) = (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))
25 elequ1 2168 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑚 = 𝑧 → (𝑚𝑠𝑧𝑠))
26 fveq2 5555 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑚 = 𝑧 → (𝑓𝑚) = (𝑓𝑧))
2725, 26ifbieq1d 3580 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑚 = 𝑧 → if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)) = if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)))
2823sselda 3180 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → 𝑧 ∈ ω)
293ad4antr 494 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑧𝑠) → 𝑓:𝑠𝐴)
30 simpr 110 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑧𝑠) → 𝑧𝑠)
3129, 30ffvelcdmd 5695 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑧𝑠) → (𝑓𝑧) ∈ 𝐴)
323ffvelcdmda 5694 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑓‘∅) ∈ 𝐴)
3332ad3antrrr 492 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ ¬ 𝑧𝑠) → (𝑓‘∅) ∈ 𝐴)
34 elequ1 2168 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑛 = 𝑧 → (𝑛𝑠𝑧𝑠))
3534dcbid 839 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑛 = 𝑧 → (DECID 𝑛𝑠DECID 𝑧𝑠))
36 simp2 1000 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
3736ad3antrrr 492 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
3835, 37, 28rspcdva 2870 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → DECID 𝑧𝑠)
3931, 33, 38ifcldadc 3587 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)) ∈ 𝐴)
4024, 27, 28, 39fvmptd3 5652 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)))
41 simpr 110 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → 𝑧𝑠)
4241iftrued 3565 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)) = (𝑓𝑧))
4340, 42eqtrd 2226 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = (𝑓𝑧))
4443adantr 276 . . . . . . . . . . . . . . . . . . . . 21 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑦 = (𝑓𝑧)) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = (𝑓𝑧))
45 simpr 110 . . . . . . . . . . . . . . . . . . . . 21 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑦 = (𝑓𝑧)) → 𝑦 = (𝑓𝑧))
4644, 45eqtr4d 2229 . . . . . . . . . . . . . . . . . . . 20 ((((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) ∧ 𝑦 = (𝑓𝑧)) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦)
4746ex 115 . . . . . . . . . . . . . . . . . . 19 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) ∧ 𝑧𝑠) → (𝑦 = (𝑓𝑧) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
4847reximdva 2596 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → (∃𝑧𝑠 𝑦 = (𝑓𝑧) → ∃𝑧𝑠 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
49 ssrexv 3245 . . . . . . . . . . . . . . . . . 18 (𝑠 ⊆ ω → (∃𝑧𝑠 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦 → ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
5023, 48, 49sylsyld 58 . . . . . . . . . . . . . . . . 17 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → (∃𝑧𝑠 𝑦 = (𝑓𝑧) → ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
5122, 50mpd 13 . . . . . . . . . . . . . . . 16 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑦𝐴) → ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦)
5251ex 115 . . . . . . . . . . . . . . 15 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦𝐴 → ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
53 simpr 110 . . . . . . . . . . . . . . . . 17 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦)
54 simpr 110 . . . . . . . . . . . . . . . . . . . 20 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → 𝑧 ∈ ω)
553ad3antrrr 492 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ 𝑧𝑠) → 𝑓:𝑠𝐴)
56 simpr 110 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ 𝑧𝑠) → 𝑧𝑠)
5755, 56ffvelcdmd 5695 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ 𝑧𝑠) → (𝑓𝑧) ∈ 𝐴)
5832ad2antrr 488 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ¬ 𝑧𝑠) → (𝑓‘∅) ∈ 𝐴)
59 simpll2 1039 . . . . . . . . . . . . . . . . . . . . . 22 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
6035, 59, 54rspcdva 2870 . . . . . . . . . . . . . . . . . . . . 21 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → DECID 𝑧𝑠)
6157, 58, 60ifcldadc 3587 . . . . . . . . . . . . . . . . . . . 20 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)) ∈ 𝐴)
6224, 27, 54, 61fvmptd3 5652 . . . . . . . . . . . . . . . . . . 19 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = if(𝑧𝑠, (𝑓𝑧), (𝑓‘∅)))
6362, 61eqeltrd 2270 . . . . . . . . . . . . . . . . . 18 ((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) ∈ 𝐴)
6463adantr 276 . . . . . . . . . . . . . . . . 17 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦) → ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) ∈ 𝐴)
6553, 64eqeltrrd 2271 . . . . . . . . . . . . . . . 16 (((((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) ∧ 𝑧 ∈ ω) ∧ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦) → 𝑦𝐴)
6665rexlimdva2 2614 . . . . . . . . . . . . . . 15 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦𝑦𝐴))
6752, 66impbid 129 . . . . . . . . . . . . . 14 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦𝐴 ↔ ∃𝑧 ∈ ω ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅)))‘𝑧) = 𝑦))
6819, 67bitr4d 191 . . . . . . . . . . . . 13 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑦 ∈ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ↔ 𝑦𝐴))
6968eqrdv 2191 . . . . . . . . . . . 12 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) = 𝐴)
70 df-fo 5261 . . . . . . . . . . . 12 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴 ↔ ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) Fn ω ∧ ran (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) = 𝐴))
7117, 69, 70sylanbrc 417 . . . . . . . . . . 11 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴)
72 omex 4626 . . . . . . . . . . . . 13 ω ∈ V
7372mptex 5785 . . . . . . . . . . . 12 (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) ∈ V
74 foeq1 5473 . . . . . . . . . . . 12 (𝑔 = (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))) → (𝑔:ω–onto𝐴 ↔ (𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴))
7573, 74spcev 2856 . . . . . . . . . . 11 ((𝑚 ∈ ω ↦ if(𝑚𝑠, (𝑓𝑚), (𝑓‘∅))):ω–onto𝐴 → ∃𝑔 𝑔:ω–onto𝐴)
7671, 75syl 14 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ∃𝑔 𝑔:ω–onto𝐴)
77 elex2 2776 . . . . . . . . . . . 12 ((𝑓‘∅) ∈ 𝐴 → ∃𝑥 𝑥𝐴)
7832, 77syl 14 . . . . . . . . . . 11 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ∃𝑥 𝑥𝐴)
79 ctm 7170 . . . . . . . . . . 11 (∃𝑥 𝑥𝐴 → (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑔 𝑔:ω–onto𝐴))
8078, 79syl 14 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑔 𝑔:ω–onto𝐴))
8176, 80mpbird 167 . . . . . . . . 9 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ∅ ∈ 𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
82 simpl1 1002 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → 𝑠 ⊆ ω)
8336adantr 276 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → ∀𝑛 ∈ ω DECID 𝑛𝑠)
841adantr 276 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → 𝑓:𝑠onto𝐴)
85 simpr 110 . . . . . . . . . 10 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → ¬ ∅ ∈ 𝑠)
8682, 83, 84, 85ctssdclemn0 7171 . . . . . . . . 9 (((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) ∧ ¬ ∅ ∈ 𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
87 eleq1 2256 . . . . . . . . . . . 12 (𝑛 = ∅ → (𝑛𝑠 ↔ ∅ ∈ 𝑠))
8887dcbid 839 . . . . . . . . . . 11 (𝑛 = ∅ → (DECID 𝑛𝑠DECID ∅ ∈ 𝑠))
89 peano1 4627 . . . . . . . . . . . 12 ∅ ∈ ω
9089a1i 9 . . . . . . . . . . 11 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → ∅ ∈ ω)
9188, 36, 90rspcdva 2870 . . . . . . . . . 10 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → DECID ∅ ∈ 𝑠)
92 exmiddc 837 . . . . . . . . . 10 (DECID ∅ ∈ 𝑠 → (∅ ∈ 𝑠 ∨ ¬ ∅ ∈ 𝑠))
9391, 92syl 14 . . . . . . . . 9 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → (∅ ∈ 𝑠 ∨ ¬ ∅ ∈ 𝑠))
9481, 86, 93mpjaodan 799 . . . . . . . 8 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠𝑓:𝑠onto𝐴) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
95943expia 1207 . . . . . . 7 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → (𝑓:𝑠onto𝐴 → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)))
9695exlimdv 1830 . . . . . 6 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → (∃𝑓 𝑓:𝑠onto𝐴 → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)))
97963impia 1202 . . . . 5 ((𝑠 ⊆ ω ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠 ∧ ∃𝑓 𝑓:𝑠onto𝐴) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
98973com23 1211 . . . 4 ((𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
9998exlimiv 1609 . . 3 (∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
100 foeq1 5473 . . . 4 (𝑔 = 𝑓 → (𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ 𝑓:ω–onto→(𝐴 ⊔ 1o)))
101100cbvexv 1930 . . 3 (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o))
10299, 101sylib 122 . 2 (∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) → ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o))
103 ctssdclemr 7173 . 2 (∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o) → ∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠))
104102, 103impbii 126 1 (∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠onto𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛𝑠) ↔ ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wa 104  wb 105  wo 709  DECID wdc 835  w3a 980   = wceq 1364  wex 1503  wcel 2164  wral 2472  wrex 2473  wss 3154  c0 3447  ifcif 3558  cmpt 4091  ωcom 4623  ran crn 4661   Fn wfn 5250  wf 5251  ontowfo 5253  cfv 5255  1oc1o 6464  cdju 7098
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 615  ax-in2 616  ax-io 710  ax-5 1458  ax-7 1459  ax-gen 1460  ax-ie1 1504  ax-ie2 1505  ax-8 1515  ax-10 1516  ax-11 1517  ax-i12 1518  ax-bndl 1520  ax-4 1521  ax-17 1537  ax-i9 1541  ax-ial 1545  ax-i5r 1546  ax-13 2166  ax-14 2167  ax-ext 2175  ax-coll 4145  ax-sep 4148  ax-nul 4156  ax-pow 4204  ax-pr 4239  ax-un 4465  ax-iinf 4621
This theorem depends on definitions:  df-bi 117  df-dc 836  df-3an 982  df-tru 1367  df-fal 1370  df-nf 1472  df-sb 1774  df-eu 2045  df-mo 2046  df-clab 2180  df-cleq 2186  df-clel 2189  df-nfc 2325  df-ne 2365  df-ral 2477  df-rex 2478  df-reu 2479  df-rab 2481  df-v 2762  df-sbc 2987  df-csb 3082  df-dif 3156  df-un 3158  df-in 3160  df-ss 3167  df-nul 3448  df-if 3559  df-pw 3604  df-sn 3625  df-pr 3626  df-op 3628  df-uni 3837  df-int 3872  df-iun 3915  df-br 4031  df-opab 4092  df-mpt 4093  df-tr 4129  df-id 4325  df-iord 4398  df-on 4400  df-suc 4403  df-iom 4624  df-xp 4666  df-rel 4667  df-cnv 4668  df-co 4669  df-dm 4670  df-rn 4671  df-res 4672  df-ima 4673  df-iota 5216  df-fun 5257  df-fn 5258  df-f 5259  df-f1 5260  df-fo 5261  df-f1o 5262  df-fv 5263  df-1st 6195  df-2nd 6196  df-1o 6471  df-dju 7099  df-inl 7108  df-inr 7109  df-case 7145
This theorem is referenced by:  ctiunct  12600  ssomct  12605
  Copyright terms: Public domain W3C validator