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

Theorem enumct 7406
Description: A finitely enumerable set is countable. Lemma 8.1.14 of [AczelRathjen], p. 73 (except that our definition of countable does not require the set to be inhabited). "Finitely enumerable" is defined as 𝑛 ∈ ω∃𝑓𝑓:𝑛onto𝐴 per Definition 8.1.4 of [AczelRathjen], p. 71 and "countable" is defined as 𝑔𝑔:ω–onto→(𝐴 ⊔ 1o) per Definition on page 14:3 of [BauerSwan], p. 3. (Contributed by Jim Kingdon, 13-Mar-2023.)
Assertion
Ref Expression
enumct (∃𝑛 ∈ ω ∃𝑓 𝑓:𝑛onto𝐴 → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
Distinct variable group:   𝐴,𝑓,𝑔,𝑛

Proof of Theorem enumct
Dummy variables 𝑥 𝑘 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 simpll 527 . . . . . . . . 9 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ 𝑛 = ∅) → 𝑓:𝑛onto𝐴)
2 foeq2 5587 . . . . . . . . . 10 (𝑛 = ∅ → (𝑓:𝑛onto𝐴𝑓:∅–onto𝐴))
32adantl 277 . . . . . . . . 9 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ 𝑛 = ∅) → (𝑓:𝑛onto𝐴𝑓:∅–onto𝐴))
41, 3mpbid 147 . . . . . . . 8 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ 𝑛 = ∅) → 𝑓:∅–onto𝐴)
5 fo00 5652 . . . . . . . 8 (𝑓:∅–onto𝐴 ↔ (𝑓 = ∅ ∧ 𝐴 = ∅))
64, 5sylib 122 . . . . . . 7 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ 𝑛 = ∅) → (𝑓 = ∅ ∧ 𝐴 = ∅))
7 0ct 7398 . . . . . . . 8 𝑔 𝑔:ω–onto→(∅ ⊔ 1o)
8 djueq1 7331 . . . . . . . . . 10 (𝐴 = ∅ → (𝐴 ⊔ 1o) = (∅ ⊔ 1o))
9 foeq3 5588 . . . . . . . . . 10 ((𝐴 ⊔ 1o) = (∅ ⊔ 1o) → (𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ 𝑔:ω–onto→(∅ ⊔ 1o)))
108, 9syl 14 . . . . . . . . 9 (𝐴 = ∅ → (𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ 𝑔:ω–onto→(∅ ⊔ 1o)))
1110exbidv 1874 . . . . . . . 8 (𝐴 = ∅ → (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑔 𝑔:ω–onto→(∅ ⊔ 1o)))
127, 11mpbiri 168 . . . . . . 7 (𝐴 = ∅ → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
136, 12simpl2im 386 . . . . . 6 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ 𝑛 = ∅) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
14 omex 4715 . . . . . . . . 9 ω ∈ V
1514mptex 5912 . . . . . . . 8 (𝑘 ∈ ω ↦ if(𝑘𝑛, (𝑓𝑘), (𝑓‘∅))) ∈ V
16 simpll 527 . . . . . . . . 9 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ ∅ ∈ 𝑛) → 𝑓:𝑛onto𝐴)
17 simplr 529 . . . . . . . . 9 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ ∅ ∈ 𝑛) → 𝑛 ∈ ω)
18 simpr 110 . . . . . . . . 9 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ ∅ ∈ 𝑛) → ∅ ∈ 𝑛)
19 eqid 2232 . . . . . . . . 9 (𝑘 ∈ ω ↦ if(𝑘𝑛, (𝑓𝑘), (𝑓‘∅))) = (𝑘 ∈ ω ↦ if(𝑘𝑛, (𝑓𝑘), (𝑓‘∅)))
2016, 17, 18, 19enumctlemm 7405 . . . . . . . 8 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ ∅ ∈ 𝑛) → (𝑘 ∈ ω ↦ if(𝑘𝑛, (𝑓𝑘), (𝑓‘∅))):ω–onto𝐴)
21 foeq1 5586 . . . . . . . . 9 (𝑔 = (𝑘 ∈ ω ↦ if(𝑘𝑛, (𝑓𝑘), (𝑓‘∅))) → (𝑔:ω–onto𝐴 ↔ (𝑘 ∈ ω ↦ if(𝑘𝑛, (𝑓𝑘), (𝑓‘∅))):ω–onto𝐴))
2221spcegv 2905 . . . . . . . 8 ((𝑘 ∈ ω ↦ if(𝑘𝑛, (𝑓𝑘), (𝑓‘∅))) ∈ V → ((𝑘 ∈ ω ↦ if(𝑘𝑛, (𝑓𝑘), (𝑓‘∅))):ω–onto𝐴 → ∃𝑔 𝑔:ω–onto𝐴))
2315, 20, 22mpsyl 65 . . . . . . 7 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ ∅ ∈ 𝑛) → ∃𝑔 𝑔:ω–onto𝐴)
24 fof 5590 . . . . . . . . . . 11 (𝑓:𝑛onto𝐴𝑓:𝑛𝐴)
2524ad2antrr 488 . . . . . . . . . 10 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ ∅ ∈ 𝑛) → 𝑓:𝑛𝐴)
2625, 18ffvelcdmd 5813 . . . . . . . . 9 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ ∅ ∈ 𝑛) → (𝑓‘∅) ∈ 𝐴)
27 eleq1 2295 . . . . . . . . . 10 (𝑥 = (𝑓‘∅) → (𝑥𝐴 ↔ (𝑓‘∅) ∈ 𝐴))
2827spcegv 2905 . . . . . . . . 9 ((𝑓‘∅) ∈ 𝐴 → ((𝑓‘∅) ∈ 𝐴 → ∃𝑥 𝑥𝐴))
2926, 26, 28sylc 62 . . . . . . . 8 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ ∅ ∈ 𝑛) → ∃𝑥 𝑥𝐴)
30 ctm 7400 . . . . . . . 8 (∃𝑥 𝑥𝐴 → (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑔 𝑔:ω–onto𝐴))
3129, 30syl 14 . . . . . . 7 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ ∅ ∈ 𝑛) → (∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑔 𝑔:ω–onto𝐴))
3223, 31mpbird 167 . . . . . 6 (((𝑓:𝑛onto𝐴𝑛 ∈ ω) ∧ ∅ ∈ 𝑛) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
33 0elnn 4741 . . . . . . 7 (𝑛 ∈ ω → (𝑛 = ∅ ∨ ∅ ∈ 𝑛))
3433adantl 277 . . . . . 6 ((𝑓:𝑛onto𝐴𝑛 ∈ ω) → (𝑛 = ∅ ∨ ∅ ∈ 𝑛))
3513, 32, 34mpjaodan 806 . . . . 5 ((𝑓:𝑛onto𝐴𝑛 ∈ ω) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
3635ex 115 . . . 4 (𝑓:𝑛onto𝐴 → (𝑛 ∈ ω → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)))
3736exlimiv 1647 . . 3 (∃𝑓 𝑓:𝑛onto𝐴 → (𝑛 ∈ ω → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)))
3837impcom 125 . 2 ((𝑛 ∈ ω ∧ ∃𝑓 𝑓:𝑛onto𝐴) → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
3938rexlimiva 2655 1 (∃𝑛 ∈ ω ∃𝑓 𝑓:𝑛onto𝐴 → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 104  wb 105  wo 716   = wceq 1398  wex 1541  wcel 2203  wrex 2521  Vcvv 2813  c0 3508  ifcif 3620  cmpt 4171  ωcom 4712  wf 5348  ontowfo 5350  cfv 5352  1oc1o 6640  cdju 7328
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 619  ax-in2 620  ax-io 717  ax-5 1496  ax-7 1497  ax-gen 1498  ax-ie1 1542  ax-ie2 1543  ax-8 1553  ax-10 1554  ax-11 1555  ax-i12 1556  ax-bndl 1558  ax-4 1559  ax-17 1575  ax-i9 1579  ax-ial 1583  ax-i5r 1584  ax-13 2205  ax-14 2206  ax-ext 2214  ax-coll 4225  ax-sep 4228  ax-nul 4236  ax-pow 4287  ax-pr 4322  ax-un 4554  ax-setind 4659  ax-iinf 4710
This theorem depends on definitions:  df-bi 117  df-dc 843  df-3or 1006  df-3an 1007  df-tru 1401  df-fal 1404  df-nf 1510  df-sb 1812  df-eu 2083  df-mo 2084  df-clab 2219  df-cleq 2225  df-clel 2228  df-nfc 2373  df-ne 2413  df-ral 2525  df-rex 2526  df-reu 2527  df-rab 2529  df-v 2815  df-sbc 3043  df-csb 3139  df-dif 3213  df-un 3215  df-in 3217  df-ss 3224  df-nul 3509  df-if 3621  df-pw 3671  df-sn 3695  df-pr 3696  df-op 3698  df-uni 3915  df-int 3950  df-iun 3993  df-br 4110  df-opab 4172  df-mpt 4173  df-tr 4209  df-id 4414  df-iord 4487  df-on 4489  df-suc 4492  df-iom 4713  df-xp 4755  df-rel 4756  df-cnv 4757  df-co 4758  df-dm 4759  df-rn 4760  df-res 4761  df-ima 4762  df-iota 5312  df-fun 5354  df-fn 5355  df-f 5356  df-f1 5357  df-fo 5358  df-f1o 5359  df-fv 5360  df-1st 6334  df-2nd 6335  df-1o 6647  df-dju 7329  df-inl 7338  df-inr 7339  df-case 7375
This theorem is referenced by:  finct  7407
  Copyright terms: Public domain W3C validator