MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  isinf Structured version   Visualization version   GIF version

Theorem isinf 8965
Description: Any set that is not finite is literally infinite, in the sense that it contains subsets of arbitrarily large finite cardinality. (It cannot be proven that the set has countably infinite subsets unless AC is invoked.) The proof does not require the Axiom of Infinity. (Contributed by Mario Carneiro, 15-Jan-2013.)
Assertion
Ref Expression
isinf 𝐴 ∈ Fin → ∀𝑛 ∈ ω ∃𝑥(𝑥𝐴𝑥𝑛))
Distinct variable group:   𝑥,𝐴,𝑛

Proof of Theorem isinf
Dummy variables 𝑓 𝑚 𝑦 𝑧 𝑔 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 breq2 5074 . . . . . 6 (𝑛 = ∅ → (𝑥𝑛𝑥 ≈ ∅))
21anbi2d 628 . . . . 5 (𝑛 = ∅ → ((𝑥𝐴𝑥𝑛) ↔ (𝑥𝐴𝑥 ≈ ∅)))
32exbidv 1925 . . . 4 (𝑛 = ∅ → (∃𝑥(𝑥𝐴𝑥𝑛) ↔ ∃𝑥(𝑥𝐴𝑥 ≈ ∅)))
4 breq2 5074 . . . . . 6 (𝑛 = 𝑚 → (𝑥𝑛𝑥𝑚))
54anbi2d 628 . . . . 5 (𝑛 = 𝑚 → ((𝑥𝐴𝑥𝑛) ↔ (𝑥𝐴𝑥𝑚)))
65exbidv 1925 . . . 4 (𝑛 = 𝑚 → (∃𝑥(𝑥𝐴𝑥𝑛) ↔ ∃𝑥(𝑥𝐴𝑥𝑚)))
7 sseq1 3942 . . . . . . 7 (𝑥 = 𝑦 → (𝑥𝐴𝑦𝐴))
87adantl 481 . . . . . 6 ((𝑛 = suc 𝑚𝑥 = 𝑦) → (𝑥𝐴𝑦𝐴))
9 breq1 5073 . . . . . . 7 (𝑥 = 𝑦 → (𝑥𝑛𝑦𝑛))
10 breq2 5074 . . . . . . 7 (𝑛 = suc 𝑚 → (𝑦𝑛𝑦 ≈ suc 𝑚))
119, 10sylan9bbr 510 . . . . . 6 ((𝑛 = suc 𝑚𝑥 = 𝑦) → (𝑥𝑛𝑦 ≈ suc 𝑚))
128, 11anbi12d 630 . . . . 5 ((𝑛 = suc 𝑚𝑥 = 𝑦) → ((𝑥𝐴𝑥𝑛) ↔ (𝑦𝐴𝑦 ≈ suc 𝑚)))
1312cbvexdvaw 2043 . . . 4 (𝑛 = suc 𝑚 → (∃𝑥(𝑥𝐴𝑥𝑛) ↔ ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚)))
14 0ss 4327 . . . . . 6 ∅ ⊆ 𝐴
15 0ex 5226 . . . . . . 7 ∅ ∈ V
1615enref 8728 . . . . . 6 ∅ ≈ ∅
17 sseq1 3942 . . . . . . . 8 (𝑥 = ∅ → (𝑥𝐴 ↔ ∅ ⊆ 𝐴))
18 breq1 5073 . . . . . . . 8 (𝑥 = ∅ → (𝑥 ≈ ∅ ↔ ∅ ≈ ∅))
1917, 18anbi12d 630 . . . . . . 7 (𝑥 = ∅ → ((𝑥𝐴𝑥 ≈ ∅) ↔ (∅ ⊆ 𝐴 ∧ ∅ ≈ ∅)))
2015, 19spcev 3535 . . . . . 6 ((∅ ⊆ 𝐴 ∧ ∅ ≈ ∅) → ∃𝑥(𝑥𝐴𝑥 ≈ ∅))
2114, 16, 20mp2an 688 . . . . 5 𝑥(𝑥𝐴𝑥 ≈ ∅)
2221a1i 11 . . . 4 𝐴 ∈ Fin → ∃𝑥(𝑥𝐴𝑥 ≈ ∅))
23 ssdif0 4294 . . . . . . . . . . . . 13 (𝐴𝑥 ↔ (𝐴𝑥) = ∅)
24 eqss 3932 . . . . . . . . . . . . . . 15 (𝑥 = 𝐴 ↔ (𝑥𝐴𝐴𝑥))
25 breq1 5073 . . . . . . . . . . . . . . . . . . 19 (𝑥 = 𝐴 → (𝑥𝑚𝐴𝑚))
2625biimpa 476 . . . . . . . . . . . . . . . . . 18 ((𝑥 = 𝐴𝑥𝑚) → 𝐴𝑚)
27 rspe 3232 . . . . . . . . . . . . . . . . . 18 ((𝑚 ∈ ω ∧ 𝐴𝑚) → ∃𝑚 ∈ ω 𝐴𝑚)
2826, 27sylan2 592 . . . . . . . . . . . . . . . . 17 ((𝑚 ∈ ω ∧ (𝑥 = 𝐴𝑥𝑚)) → ∃𝑚 ∈ ω 𝐴𝑚)
29 isfi 8719 . . . . . . . . . . . . . . . . 17 (𝐴 ∈ Fin ↔ ∃𝑚 ∈ ω 𝐴𝑚)
3028, 29sylibr 233 . . . . . . . . . . . . . . . 16 ((𝑚 ∈ ω ∧ (𝑥 = 𝐴𝑥𝑚)) → 𝐴 ∈ Fin)
3130expcom 413 . . . . . . . . . . . . . . 15 ((𝑥 = 𝐴𝑥𝑚) → (𝑚 ∈ ω → 𝐴 ∈ Fin))
3224, 31sylanbr 581 . . . . . . . . . . . . . 14 (((𝑥𝐴𝐴𝑥) ∧ 𝑥𝑚) → (𝑚 ∈ ω → 𝐴 ∈ Fin))
3332ex 412 . . . . . . . . . . . . 13 ((𝑥𝐴𝐴𝑥) → (𝑥𝑚 → (𝑚 ∈ ω → 𝐴 ∈ Fin)))
3423, 33sylan2br 594 . . . . . . . . . . . 12 ((𝑥𝐴 ∧ (𝐴𝑥) = ∅) → (𝑥𝑚 → (𝑚 ∈ ω → 𝐴 ∈ Fin)))
3534expcom 413 . . . . . . . . . . 11 ((𝐴𝑥) = ∅ → (𝑥𝐴 → (𝑥𝑚 → (𝑚 ∈ ω → 𝐴 ∈ Fin))))
36353impd 1346 . . . . . . . . . 10 ((𝐴𝑥) = ∅ → ((𝑥𝐴𝑥𝑚𝑚 ∈ ω) → 𝐴 ∈ Fin))
3736com12 32 . . . . . . . . 9 ((𝑥𝐴𝑥𝑚𝑚 ∈ ω) → ((𝐴𝑥) = ∅ → 𝐴 ∈ Fin))
3837con3d 152 . . . . . . . 8 ((𝑥𝐴𝑥𝑚𝑚 ∈ ω) → (¬ 𝐴 ∈ Fin → ¬ (𝐴𝑥) = ∅))
39 bren 8701 . . . . . . . . . 10 (𝑥𝑚 ↔ ∃𝑓 𝑓:𝑥1-1-onto𝑚)
40 neq0 4276 . . . . . . . . . . . . . 14 (¬ (𝐴𝑥) = ∅ ↔ ∃𝑧 𝑧 ∈ (𝐴𝑥))
41 eldifi 4057 . . . . . . . . . . . . . . . . . . . . 21 (𝑧 ∈ (𝐴𝑥) → 𝑧𝐴)
4241snssd 4739 . . . . . . . . . . . . . . . . . . . 20 (𝑧 ∈ (𝐴𝑥) → {𝑧} ⊆ 𝐴)
43 unss 4114 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥𝐴 ∧ {𝑧} ⊆ 𝐴) ↔ (𝑥 ∪ {𝑧}) ⊆ 𝐴)
4443biimpi 215 . . . . . . . . . . . . . . . . . . . 20 ((𝑥𝐴 ∧ {𝑧} ⊆ 𝐴) → (𝑥 ∪ {𝑧}) ⊆ 𝐴)
4542, 44sylan2 592 . . . . . . . . . . . . . . . . . . 19 ((𝑥𝐴𝑧 ∈ (𝐴𝑥)) → (𝑥 ∪ {𝑧}) ⊆ 𝐴)
4645ad2ant2r 743 . . . . . . . . . . . . . . . . . 18 (((𝑥𝐴𝑓:𝑥1-1-onto𝑚) ∧ (𝑧 ∈ (𝐴𝑥) ∧ 𝑚 ∈ ω)) → (𝑥 ∪ {𝑧}) ⊆ 𝐴)
47 vex 3426 . . . . . . . . . . . . . . . . . . . . . . 23 𝑧 ∈ V
48 vex 3426 . . . . . . . . . . . . . . . . . . . . . . 23 𝑚 ∈ V
4947, 48f1osn 6739 . . . . . . . . . . . . . . . . . . . . . 22 {⟨𝑧, 𝑚⟩}:{𝑧}–1-1-onto→{𝑚}
5049jctr 524 . . . . . . . . . . . . . . . . . . . . 21 (𝑓:𝑥1-1-onto𝑚 → (𝑓:𝑥1-1-onto𝑚 ∧ {⟨𝑧, 𝑚⟩}:{𝑧}–1-1-onto→{𝑚}))
51 eldifn 4058 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑧 ∈ (𝐴𝑥) → ¬ 𝑧𝑥)
52 disjsn 4644 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑥 ∩ {𝑧}) = ∅ ↔ ¬ 𝑧𝑥)
5351, 52sylibr 233 . . . . . . . . . . . . . . . . . . . . . 22 (𝑧 ∈ (𝐴𝑥) → (𝑥 ∩ {𝑧}) = ∅)
54 nnord 7695 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑚 ∈ ω → Ord 𝑚)
55 orddisj 6289 . . . . . . . . . . . . . . . . . . . . . . 23 (Ord 𝑚 → (𝑚 ∩ {𝑚}) = ∅)
5654, 55syl 17 . . . . . . . . . . . . . . . . . . . . . 22 (𝑚 ∈ ω → (𝑚 ∩ {𝑚}) = ∅)
5753, 56anim12i 612 . . . . . . . . . . . . . . . . . . . . 21 ((𝑧 ∈ (𝐴𝑥) ∧ 𝑚 ∈ ω) → ((𝑥 ∩ {𝑧}) = ∅ ∧ (𝑚 ∩ {𝑚}) = ∅))
58 f1oun 6719 . . . . . . . . . . . . . . . . . . . . 21 (((𝑓:𝑥1-1-onto𝑚 ∧ {⟨𝑧, 𝑚⟩}:{𝑧}–1-1-onto→{𝑚}) ∧ ((𝑥 ∩ {𝑧}) = ∅ ∧ (𝑚 ∩ {𝑚}) = ∅)) → (𝑓 ∪ {⟨𝑧, 𝑚⟩}):(𝑥 ∪ {𝑧})–1-1-onto→(𝑚 ∪ {𝑚}))
5950, 57, 58syl2an 595 . . . . . . . . . . . . . . . . . . . 20 ((𝑓:𝑥1-1-onto𝑚 ∧ (𝑧 ∈ (𝐴𝑥) ∧ 𝑚 ∈ ω)) → (𝑓 ∪ {⟨𝑧, 𝑚⟩}):(𝑥 ∪ {𝑧})–1-1-onto→(𝑚 ∪ {𝑚}))
60 df-suc 6257 . . . . . . . . . . . . . . . . . . . . . 22 suc 𝑚 = (𝑚 ∪ {𝑚})
61 f1oeq3 6690 . . . . . . . . . . . . . . . . . . . . . 22 (suc 𝑚 = (𝑚 ∪ {𝑚}) → ((𝑓 ∪ {⟨𝑧, 𝑚⟩}):(𝑥 ∪ {𝑧})–1-1-onto→suc 𝑚 ↔ (𝑓 ∪ {⟨𝑧, 𝑚⟩}):(𝑥 ∪ {𝑧})–1-1-onto→(𝑚 ∪ {𝑚})))
6260, 61ax-mp 5 . . . . . . . . . . . . . . . . . . . . 21 ((𝑓 ∪ {⟨𝑧, 𝑚⟩}):(𝑥 ∪ {𝑧})–1-1-onto→suc 𝑚 ↔ (𝑓 ∪ {⟨𝑧, 𝑚⟩}):(𝑥 ∪ {𝑧})–1-1-onto→(𝑚 ∪ {𝑚}))
63 vex 3426 . . . . . . . . . . . . . . . . . . . . . . . 24 𝑓 ∈ V
64 snex 5349 . . . . . . . . . . . . . . . . . . . . . . . 24 {⟨𝑧, 𝑚⟩} ∈ V
6563, 64unex 7574 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑓 ∪ {⟨𝑧, 𝑚⟩}) ∈ V
66 f1oeq1 6688 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑔 = (𝑓 ∪ {⟨𝑧, 𝑚⟩}) → (𝑔:(𝑥 ∪ {𝑧})–1-1-onto→suc 𝑚 ↔ (𝑓 ∪ {⟨𝑧, 𝑚⟩}):(𝑥 ∪ {𝑧})–1-1-onto→suc 𝑚))
6765, 66spcev 3535 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑓 ∪ {⟨𝑧, 𝑚⟩}):(𝑥 ∪ {𝑧})–1-1-onto→suc 𝑚 → ∃𝑔 𝑔:(𝑥 ∪ {𝑧})–1-1-onto→suc 𝑚)
68 bren 8701 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑥 ∪ {𝑧}) ≈ suc 𝑚 ↔ ∃𝑔 𝑔:(𝑥 ∪ {𝑧})–1-1-onto→suc 𝑚)
6967, 68sylibr 233 . . . . . . . . . . . . . . . . . . . . 21 ((𝑓 ∪ {⟨𝑧, 𝑚⟩}):(𝑥 ∪ {𝑧})–1-1-onto→suc 𝑚 → (𝑥 ∪ {𝑧}) ≈ suc 𝑚)
7062, 69sylbir 234 . . . . . . . . . . . . . . . . . . . 20 ((𝑓 ∪ {⟨𝑧, 𝑚⟩}):(𝑥 ∪ {𝑧})–1-1-onto→(𝑚 ∪ {𝑚}) → (𝑥 ∪ {𝑧}) ≈ suc 𝑚)
7159, 70syl 17 . . . . . . . . . . . . . . . . . . 19 ((𝑓:𝑥1-1-onto𝑚 ∧ (𝑧 ∈ (𝐴𝑥) ∧ 𝑚 ∈ ω)) → (𝑥 ∪ {𝑧}) ≈ suc 𝑚)
7271adantll 710 . . . . . . . . . . . . . . . . . 18 (((𝑥𝐴𝑓:𝑥1-1-onto𝑚) ∧ (𝑧 ∈ (𝐴𝑥) ∧ 𝑚 ∈ ω)) → (𝑥 ∪ {𝑧}) ≈ suc 𝑚)
73 vex 3426 . . . . . . . . . . . . . . . . . . . 20 𝑥 ∈ V
74 snex 5349 . . . . . . . . . . . . . . . . . . . 20 {𝑧} ∈ V
7573, 74unex 7574 . . . . . . . . . . . . . . . . . . 19 (𝑥 ∪ {𝑧}) ∈ V
76 sseq1 3942 . . . . . . . . . . . . . . . . . . . 20 (𝑦 = (𝑥 ∪ {𝑧}) → (𝑦𝐴 ↔ (𝑥 ∪ {𝑧}) ⊆ 𝐴))
77 breq1 5073 . . . . . . . . . . . . . . . . . . . 20 (𝑦 = (𝑥 ∪ {𝑧}) → (𝑦 ≈ suc 𝑚 ↔ (𝑥 ∪ {𝑧}) ≈ suc 𝑚))
7876, 77anbi12d 630 . . . . . . . . . . . . . . . . . . 19 (𝑦 = (𝑥 ∪ {𝑧}) → ((𝑦𝐴𝑦 ≈ suc 𝑚) ↔ ((𝑥 ∪ {𝑧}) ⊆ 𝐴 ∧ (𝑥 ∪ {𝑧}) ≈ suc 𝑚)))
7975, 78spcev 3535 . . . . . . . . . . . . . . . . . 18 (((𝑥 ∪ {𝑧}) ⊆ 𝐴 ∧ (𝑥 ∪ {𝑧}) ≈ suc 𝑚) → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚))
8046, 72, 79syl2anc 583 . . . . . . . . . . . . . . . . 17 (((𝑥𝐴𝑓:𝑥1-1-onto𝑚) ∧ (𝑧 ∈ (𝐴𝑥) ∧ 𝑚 ∈ ω)) → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚))
8180expcom 413 . . . . . . . . . . . . . . . 16 ((𝑧 ∈ (𝐴𝑥) ∧ 𝑚 ∈ ω) → ((𝑥𝐴𝑓:𝑥1-1-onto𝑚) → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚)))
8281ex 412 . . . . . . . . . . . . . . 15 (𝑧 ∈ (𝐴𝑥) → (𝑚 ∈ ω → ((𝑥𝐴𝑓:𝑥1-1-onto𝑚) → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚))))
8382exlimiv 1934 . . . . . . . . . . . . . 14 (∃𝑧 𝑧 ∈ (𝐴𝑥) → (𝑚 ∈ ω → ((𝑥𝐴𝑓:𝑥1-1-onto𝑚) → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚))))
8440, 83sylbi 216 . . . . . . . . . . . . 13 (¬ (𝐴𝑥) = ∅ → (𝑚 ∈ ω → ((𝑥𝐴𝑓:𝑥1-1-onto𝑚) → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚))))
8584com13 88 . . . . . . . . . . . 12 ((𝑥𝐴𝑓:𝑥1-1-onto𝑚) → (𝑚 ∈ ω → (¬ (𝐴𝑥) = ∅ → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚))))
8685expcom 413 . . . . . . . . . . 11 (𝑓:𝑥1-1-onto𝑚 → (𝑥𝐴 → (𝑚 ∈ ω → (¬ (𝐴𝑥) = ∅ → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚)))))
8786exlimiv 1934 . . . . . . . . . 10 (∃𝑓 𝑓:𝑥1-1-onto𝑚 → (𝑥𝐴 → (𝑚 ∈ ω → (¬ (𝐴𝑥) = ∅ → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚)))))
8839, 87sylbi 216 . . . . . . . . 9 (𝑥𝑚 → (𝑥𝐴 → (𝑚 ∈ ω → (¬ (𝐴𝑥) = ∅ → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚)))))
89883imp21 1112 . . . . . . . 8 ((𝑥𝐴𝑥𝑚𝑚 ∈ ω) → (¬ (𝐴𝑥) = ∅ → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚)))
9038, 89syld 47 . . . . . . 7 ((𝑥𝐴𝑥𝑚𝑚 ∈ ω) → (¬ 𝐴 ∈ Fin → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚)))
91903expia 1119 . . . . . 6 ((𝑥𝐴𝑥𝑚) → (𝑚 ∈ ω → (¬ 𝐴 ∈ Fin → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚))))
9291exlimiv 1934 . . . . 5 (∃𝑥(𝑥𝐴𝑥𝑚) → (𝑚 ∈ ω → (¬ 𝐴 ∈ Fin → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚))))
9392com3l 89 . . . 4 (𝑚 ∈ ω → (¬ 𝐴 ∈ Fin → (∃𝑥(𝑥𝐴𝑥𝑚) → ∃𝑦(𝑦𝐴𝑦 ≈ suc 𝑚))))
943, 6, 13, 22, 93finds2 7721 . . 3 (𝑛 ∈ ω → (¬ 𝐴 ∈ Fin → ∃𝑥(𝑥𝐴𝑥𝑛)))
9594com12 32 . 2 𝐴 ∈ Fin → (𝑛 ∈ ω → ∃𝑥(𝑥𝐴𝑥𝑛)))
9695ralrimiv 3106 1 𝐴 ∈ Fin → ∀𝑛 ∈ ω ∃𝑥(𝑥𝐴𝑥𝑛))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 205  wa 395  w3a 1085   = wceq 1539  wex 1783  wcel 2108  wral 3063  wrex 3064  cdif 3880  cun 3881  cin 3882  wss 3883  c0 4253  {csn 4558  cop 4564   class class class wbr 5070  Ord word 6250  suc csuc 6253  1-1-ontowf1o 6417  ωcom 7687  cen 8688  Fincfn 8691
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1799  ax-4 1813  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2110  ax-9 2118  ax-10 2139  ax-11 2156  ax-12 2173  ax-ext 2709  ax-sep 5218  ax-nul 5225  ax-pow 5283  ax-pr 5347  ax-un 7566
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 844  df-3or 1086  df-3an 1087  df-tru 1542  df-fal 1552  df-ex 1784  df-nf 1788  df-sb 2069  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2817  df-nfc 2888  df-ne 2943  df-ral 3068  df-rex 3069  df-rab 3072  df-v 3424  df-dif 3886  df-un 3888  df-in 3890  df-ss 3900  df-pss 3902  df-nul 4254  df-if 4457  df-pw 4532  df-sn 4559  df-pr 4561  df-tp 4563  df-op 4565  df-uni 4837  df-br 5071  df-opab 5133  df-tr 5188  df-id 5480  df-eprel 5486  df-po 5494  df-so 5495  df-fr 5535  df-we 5537  df-xp 5586  df-rel 5587  df-cnv 5588  df-co 5589  df-dm 5590  df-rn 5591  df-res 5592  df-ima 5593  df-ord 6254  df-on 6255  df-lim 6256  df-suc 6257  df-fun 6420  df-fn 6421  df-f 6422  df-f1 6423  df-fo 6424  df-f1o 6425  df-om 7688  df-en 8692  df-fin 8695
This theorem is referenced by:  fineqvlem  8966  isinffi  9681  domtriomlem  10129  ishashinf  14105  ctbssinf  35504
  Copyright terms: Public domain W3C validator