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

Theorem ctm 6994
Description: Two equivalent definitions of countable for an inhabited set. Remark of [BauerSwan], p. 14:3. (Contributed by Jim Kingdon, 13-Mar-2023.)
Assertion
Ref Expression
ctm (∃𝑥 𝑥𝐴 → (∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑓 𝑓:ω–onto𝐴))
Distinct variable group:   𝐴,𝑓,𝑥

Proof of Theorem ctm
Dummy variables 𝑔 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 f1oi 5405 . . . . . . . . . . 11 ( I ↾ 𝐴):𝐴1-1-onto𝐴
2 f1of 5367 . . . . . . . . . . 11 (( I ↾ 𝐴):𝐴1-1-onto𝐴 → ( I ↾ 𝐴):𝐴𝐴)
31, 2mp1i 10 . . . . . . . . . 10 ((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) → ( I ↾ 𝐴):𝐴𝐴)
4 fconst6g 5321 . . . . . . . . . . 11 (𝑥𝐴 → (1o × {𝑥}):1o𝐴)
54adantr 274 . . . . . . . . . 10 ((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) → (1o × {𝑥}):1o𝐴)
63, 5casef 6973 . . . . . . . . 9 ((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) → case(( I ↾ 𝐴), (1o × {𝑥})):(𝐴 ⊔ 1o)⟶𝐴)
7 ffun 5275 . . . . . . . . 9 (case(( I ↾ 𝐴), (1o × {𝑥})):(𝐴 ⊔ 1o)⟶𝐴 → Fun case(( I ↾ 𝐴), (1o × {𝑥})))
86, 7syl 14 . . . . . . . 8 ((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) → Fun case(( I ↾ 𝐴), (1o × {𝑥})))
9 vex 2689 . . . . . . . . 9 𝑓 ∈ V
109a1i 9 . . . . . . . 8 ((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) → 𝑓 ∈ V)
11 cofunexg 6009 . . . . . . . 8 ((Fun case(( I ↾ 𝐴), (1o × {𝑥})) ∧ 𝑓 ∈ V) → (case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓) ∈ V)
128, 10, 11syl2anc 408 . . . . . . 7 ((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) → (case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓) ∈ V)
13 fof 5345 . . . . . . . . . 10 (𝑓:ω–onto→(𝐴 ⊔ 1o) → 𝑓:ω⟶(𝐴 ⊔ 1o))
1413adantl 275 . . . . . . . . 9 ((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) → 𝑓:ω⟶(𝐴 ⊔ 1o))
15 fco 5288 . . . . . . . . 9 ((case(( I ↾ 𝐴), (1o × {𝑥})):(𝐴 ⊔ 1o)⟶𝐴𝑓:ω⟶(𝐴 ⊔ 1o)) → (case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓):ω⟶𝐴)
166, 14, 15syl2anc 408 . . . . . . . 8 ((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) → (case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓):ω⟶𝐴)
17 simplr 519 . . . . . . . . . . 11 (((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) → 𝑓:ω–onto→(𝐴 ⊔ 1o))
18 djulcl 6936 . . . . . . . . . . . 12 (𝑦𝐴 → (inl‘𝑦) ∈ (𝐴 ⊔ 1o))
1918adantl 275 . . . . . . . . . . 11 (((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) → (inl‘𝑦) ∈ (𝐴 ⊔ 1o))
20 foelrn 5654 . . . . . . . . . . 11 ((𝑓:ω–onto→(𝐴 ⊔ 1o) ∧ (inl‘𝑦) ∈ (𝐴 ⊔ 1o)) → ∃𝑧 ∈ ω (inl‘𝑦) = (𝑓𝑧))
2117, 19, 20syl2anc 408 . . . . . . . . . 10 (((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) → ∃𝑧 ∈ ω (inl‘𝑦) = (𝑓𝑧))
22 fofn 5347 . . . . . . . . . . . . . . . 16 (𝑓:ω–onto→(𝐴 ⊔ 1o) → 𝑓 Fn ω)
2322ad4antlr 486 . . . . . . . . . . . . . . 15 (((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) ∧ (inl‘𝑦) = (𝑓𝑧)) → 𝑓 Fn ω)
24 simplr 519 . . . . . . . . . . . . . . 15 (((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) ∧ (inl‘𝑦) = (𝑓𝑧)) → 𝑧 ∈ ω)
25 fvco2 5490 . . . . . . . . . . . . . . 15 ((𝑓 Fn ω ∧ 𝑧 ∈ ω) → ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓)‘𝑧) = (case(( I ↾ 𝐴), (1o × {𝑥}))‘(𝑓𝑧)))
2623, 24, 25syl2anc 408 . . . . . . . . . . . . . 14 (((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) ∧ (inl‘𝑦) = (𝑓𝑧)) → ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓)‘𝑧) = (case(( I ↾ 𝐴), (1o × {𝑥}))‘(𝑓𝑧)))
27 simpr 109 . . . . . . . . . . . . . . 15 (((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) ∧ (inl‘𝑦) = (𝑓𝑧)) → (inl‘𝑦) = (𝑓𝑧))
2827fveq2d 5425 . . . . . . . . . . . . . 14 (((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) ∧ (inl‘𝑦) = (𝑓𝑧)) → (case(( I ↾ 𝐴), (1o × {𝑥}))‘(inl‘𝑦)) = (case(( I ↾ 𝐴), (1o × {𝑥}))‘(𝑓𝑧)))
29 fnresi 5240 . . . . . . . . . . . . . . . 16 ( I ↾ 𝐴) Fn 𝐴
3029a1i 9 . . . . . . . . . . . . . . 15 (((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) ∧ (inl‘𝑦) = (𝑓𝑧)) → ( I ↾ 𝐴) Fn 𝐴)
31 vex 2689 . . . . . . . . . . . . . . . . 17 𝑥 ∈ V
3231fconst6 5322 . . . . . . . . . . . . . . . 16 (1o × {𝑥}):1o⟶V
33 ffun 5275 . . . . . . . . . . . . . . . 16 ((1o × {𝑥}):1o⟶V → Fun (1o × {𝑥}))
3432, 33mp1i 10 . . . . . . . . . . . . . . 15 (((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) ∧ (inl‘𝑦) = (𝑓𝑧)) → Fun (1o × {𝑥}))
35 simpllr 523 . . . . . . . . . . . . . . 15 (((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) ∧ (inl‘𝑦) = (𝑓𝑧)) → 𝑦𝐴)
3630, 34, 35caseinl 6976 . . . . . . . . . . . . . 14 (((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) ∧ (inl‘𝑦) = (𝑓𝑧)) → (case(( I ↾ 𝐴), (1o × {𝑥}))‘(inl‘𝑦)) = (( I ↾ 𝐴)‘𝑦))
3726, 28, 363eqtr2d 2178 . . . . . . . . . . . . 13 (((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) ∧ (inl‘𝑦) = (𝑓𝑧)) → ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓)‘𝑧) = (( I ↾ 𝐴)‘𝑦))
38 fvresi 5613 . . . . . . . . . . . . . 14 (𝑦𝐴 → (( I ↾ 𝐴)‘𝑦) = 𝑦)
3935, 38syl 14 . . . . . . . . . . . . 13 (((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) ∧ (inl‘𝑦) = (𝑓𝑧)) → (( I ↾ 𝐴)‘𝑦) = 𝑦)
4037, 39eqtr2d 2173 . . . . . . . . . . . 12 (((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) ∧ (inl‘𝑦) = (𝑓𝑧)) → 𝑦 = ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓)‘𝑧))
4140ex 114 . . . . . . . . . . 11 ((((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) ∧ 𝑧 ∈ ω) → ((inl‘𝑦) = (𝑓𝑧) → 𝑦 = ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓)‘𝑧)))
4241reximdva 2534 . . . . . . . . . 10 (((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) → (∃𝑧 ∈ ω (inl‘𝑦) = (𝑓𝑧) → ∃𝑧 ∈ ω 𝑦 = ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓)‘𝑧)))
4321, 42mpd 13 . . . . . . . . 9 (((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) ∧ 𝑦𝐴) → ∃𝑧 ∈ ω 𝑦 = ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓)‘𝑧))
4443ralrimiva 2505 . . . . . . . 8 ((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) → ∀𝑦𝐴𝑧 ∈ ω 𝑦 = ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓)‘𝑧))
45 dffo3 5567 . . . . . . . 8 ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓):ω–onto𝐴 ↔ ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓):ω⟶𝐴 ∧ ∀𝑦𝐴𝑧 ∈ ω 𝑦 = ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓)‘𝑧)))
4616, 44, 45sylanbrc 413 . . . . . . 7 ((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) → (case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓):ω–onto𝐴)
47 foeq1 5341 . . . . . . . 8 (𝑔 = (case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓) → (𝑔:ω–onto𝐴 ↔ (case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓):ω–onto𝐴))
4847spcegv 2774 . . . . . . 7 ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓) ∈ V → ((case(( I ↾ 𝐴), (1o × {𝑥})) ∘ 𝑓):ω–onto𝐴 → ∃𝑔 𝑔:ω–onto𝐴))
4912, 46, 48sylc 62 . . . . . 6 ((𝑥𝐴𝑓:ω–onto→(𝐴 ⊔ 1o)) → ∃𝑔 𝑔:ω–onto𝐴)
5049ex 114 . . . . 5 (𝑥𝐴 → (𝑓:ω–onto→(𝐴 ⊔ 1o) → ∃𝑔 𝑔:ω–onto𝐴))
5150exlimiv 1577 . . . 4 (∃𝑥 𝑥𝐴 → (𝑓:ω–onto→(𝐴 ⊔ 1o) → ∃𝑔 𝑔:ω–onto𝐴))
5251exlimdv 1791 . . 3 (∃𝑥 𝑥𝐴 → (∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o) → ∃𝑔 𝑔:ω–onto𝐴))
53 foeq1 5341 . . . 4 (𝑓 = 𝑔 → (𝑓:ω–onto𝐴𝑔:ω–onto𝐴))
5453cbvexv 1890 . . 3 (∃𝑓 𝑓:ω–onto𝐴 ↔ ∃𝑔 𝑔:ω–onto𝐴)
5552, 54syl6ibr 161 . 2 (∃𝑥 𝑥𝐴 → (∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o) → ∃𝑓 𝑓:ω–onto𝐴))
56 ctmlemr 6993 . 2 (∃𝑥 𝑥𝐴 → (∃𝑓 𝑓:ω–onto𝐴 → ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o)))
5755, 56impbid 128 1 (∃𝑥 𝑥𝐴 → (∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑓 𝑓:ω–onto𝐴))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 103  wb 104   = wceq 1331  wex 1468  wcel 1480  wral 2416  wrex 2417  Vcvv 2686  {csn 3527   I cid 4210  ωcom 4504   × cxp 4537  cres 4541  ccom 4543  Fun wfun 5117   Fn wfn 5118  wf 5119  ontowfo 5121  1-1-ontowf1o 5122  cfv 5123  1oc1o 6306  cdju 6922  inlcinl 6930  casecdjucase 6968
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 603  ax-in2 604  ax-io 698  ax-5 1423  ax-7 1424  ax-gen 1425  ax-ie1 1469  ax-ie2 1470  ax-8 1482  ax-10 1483  ax-11 1484  ax-i12 1485  ax-bndl 1486  ax-4 1487  ax-13 1491  ax-14 1492  ax-17 1506  ax-i9 1510  ax-ial 1514  ax-i5r 1515  ax-ext 2121  ax-coll 4043  ax-sep 4046  ax-nul 4054  ax-pow 4098  ax-pr 4131  ax-un 4355  ax-iinf 4502
This theorem depends on definitions:  df-bi 116  df-dc 820  df-3an 964  df-tru 1334  df-fal 1337  df-nf 1437  df-sb 1736  df-eu 2002  df-mo 2003  df-clab 2126  df-cleq 2132  df-clel 2135  df-nfc 2270  df-ne 2309  df-ral 2421  df-rex 2422  df-reu 2423  df-rab 2425  df-v 2688  df-sbc 2910  df-csb 3004  df-dif 3073  df-un 3075  df-in 3077  df-ss 3084  df-nul 3364  df-if 3475  df-pw 3512  df-sn 3533  df-pr 3534  df-op 3536  df-uni 3737  df-int 3772  df-iun 3815  df-br 3930  df-opab 3990  df-mpt 3991  df-tr 4027  df-id 4215  df-iord 4288  df-on 4290  df-suc 4293  df-iom 4505  df-xp 4545  df-rel 4546  df-cnv 4547  df-co 4548  df-dm 4549  df-rn 4550  df-res 4551  df-ima 4552  df-iota 5088  df-fun 5125  df-fn 5126  df-f 5127  df-f1 5128  df-fo 5129  df-f1o 5130  df-fv 5131  df-1st 6038  df-2nd 6039  df-1o 6313  df-dju 6923  df-inl 6932  df-inr 6933  df-case 6969
This theorem is referenced by:  ctssdc  6998  enumct  7000  omct  7002
  Copyright terms: Public domain W3C validator