This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Two equinumerous natural numbers are equal. Proposition 10.20 of TakeutiZaring p. 90 and its converse. Also compare Corollary 6E of Enderton p. 136. (Contributed by NM, 28-May-1998) Avoid ax-pow . (Revised by BTernaryTau, 11-Nov-2024)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | nneneq | ⊢ ( ( 𝐴 ∈ ω ∧ 𝐵 ∈ ω ) → ( 𝐴 ≈ 𝐵 ↔ 𝐴 = 𝐵 ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | breq1 | ⊢ ( 𝑥 = ∅ → ( 𝑥 ≈ 𝑧 ↔ ∅ ≈ 𝑧 ) ) | |
| 2 | eqeq1 | ⊢ ( 𝑥 = ∅ → ( 𝑥 = 𝑧 ↔ ∅ = 𝑧 ) ) | |
| 3 | 1 2 | imbi12d | ⊢ ( 𝑥 = ∅ → ( ( 𝑥 ≈ 𝑧 → 𝑥 = 𝑧 ) ↔ ( ∅ ≈ 𝑧 → ∅ = 𝑧 ) ) ) |
| 4 | 3 | ralbidv | ⊢ ( 𝑥 = ∅ → ( ∀ 𝑧 ∈ ω ( 𝑥 ≈ 𝑧 → 𝑥 = 𝑧 ) ↔ ∀ 𝑧 ∈ ω ( ∅ ≈ 𝑧 → ∅ = 𝑧 ) ) ) |
| 5 | breq1 | ⊢ ( 𝑥 = 𝑦 → ( 𝑥 ≈ 𝑧 ↔ 𝑦 ≈ 𝑧 ) ) | |
| 6 | eqeq1 | ⊢ ( 𝑥 = 𝑦 → ( 𝑥 = 𝑧 ↔ 𝑦 = 𝑧 ) ) | |
| 7 | 5 6 | imbi12d | ⊢ ( 𝑥 = 𝑦 → ( ( 𝑥 ≈ 𝑧 → 𝑥 = 𝑧 ) ↔ ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) ) ) |
| 8 | 7 | ralbidv | ⊢ ( 𝑥 = 𝑦 → ( ∀ 𝑧 ∈ ω ( 𝑥 ≈ 𝑧 → 𝑥 = 𝑧 ) ↔ ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) ) ) |
| 9 | breq1 | ⊢ ( 𝑥 = suc 𝑦 → ( 𝑥 ≈ 𝑧 ↔ suc 𝑦 ≈ 𝑧 ) ) | |
| 10 | eqeq1 | ⊢ ( 𝑥 = suc 𝑦 → ( 𝑥 = 𝑧 ↔ suc 𝑦 = 𝑧 ) ) | |
| 11 | 9 10 | imbi12d | ⊢ ( 𝑥 = suc 𝑦 → ( ( 𝑥 ≈ 𝑧 → 𝑥 = 𝑧 ) ↔ ( suc 𝑦 ≈ 𝑧 → suc 𝑦 = 𝑧 ) ) ) |
| 12 | 11 | ralbidv | ⊢ ( 𝑥 = suc 𝑦 → ( ∀ 𝑧 ∈ ω ( 𝑥 ≈ 𝑧 → 𝑥 = 𝑧 ) ↔ ∀ 𝑧 ∈ ω ( suc 𝑦 ≈ 𝑧 → suc 𝑦 = 𝑧 ) ) ) |
| 13 | breq1 | ⊢ ( 𝑥 = 𝐴 → ( 𝑥 ≈ 𝑧 ↔ 𝐴 ≈ 𝑧 ) ) | |
| 14 | eqeq1 | ⊢ ( 𝑥 = 𝐴 → ( 𝑥 = 𝑧 ↔ 𝐴 = 𝑧 ) ) | |
| 15 | 13 14 | imbi12d | ⊢ ( 𝑥 = 𝐴 → ( ( 𝑥 ≈ 𝑧 → 𝑥 = 𝑧 ) ↔ ( 𝐴 ≈ 𝑧 → 𝐴 = 𝑧 ) ) ) |
| 16 | 15 | ralbidv | ⊢ ( 𝑥 = 𝐴 → ( ∀ 𝑧 ∈ ω ( 𝑥 ≈ 𝑧 → 𝑥 = 𝑧 ) ↔ ∀ 𝑧 ∈ ω ( 𝐴 ≈ 𝑧 → 𝐴 = 𝑧 ) ) ) |
| 17 | 0fi | ⊢ ∅ ∈ Fin | |
| 18 | ensymfib | ⊢ ( ∅ ∈ Fin → ( ∅ ≈ 𝑧 ↔ 𝑧 ≈ ∅ ) ) | |
| 19 | 17 18 | ax-mp | ⊢ ( ∅ ≈ 𝑧 ↔ 𝑧 ≈ ∅ ) |
| 20 | en0 | ⊢ ( 𝑧 ≈ ∅ ↔ 𝑧 = ∅ ) | |
| 21 | eqcom | ⊢ ( 𝑧 = ∅ ↔ ∅ = 𝑧 ) | |
| 22 | 20 21 | bitri | ⊢ ( 𝑧 ≈ ∅ ↔ ∅ = 𝑧 ) |
| 23 | 19 22 | sylbb | ⊢ ( ∅ ≈ 𝑧 → ∅ = 𝑧 ) |
| 24 | 23 | rgenw | ⊢ ∀ 𝑧 ∈ ω ( ∅ ≈ 𝑧 → ∅ = 𝑧 ) |
| 25 | nn0suc | ⊢ ( 𝑤 ∈ ω → ( 𝑤 = ∅ ∨ ∃ 𝑧 ∈ ω 𝑤 = suc 𝑧 ) ) | |
| 26 | en0 | ⊢ ( suc 𝑦 ≈ ∅ ↔ suc 𝑦 = ∅ ) | |
| 27 | breq2 | ⊢ ( 𝑤 = ∅ → ( suc 𝑦 ≈ 𝑤 ↔ suc 𝑦 ≈ ∅ ) ) | |
| 28 | eqeq2 | ⊢ ( 𝑤 = ∅ → ( suc 𝑦 = 𝑤 ↔ suc 𝑦 = ∅ ) ) | |
| 29 | 27 28 | bibi12d | ⊢ ( 𝑤 = ∅ → ( ( suc 𝑦 ≈ 𝑤 ↔ suc 𝑦 = 𝑤 ) ↔ ( suc 𝑦 ≈ ∅ ↔ suc 𝑦 = ∅ ) ) ) |
| 30 | 26 29 | mpbiri | ⊢ ( 𝑤 = ∅ → ( suc 𝑦 ≈ 𝑤 ↔ suc 𝑦 = 𝑤 ) ) |
| 31 | 30 | biimpd | ⊢ ( 𝑤 = ∅ → ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) ) |
| 32 | 31 | a1i | ⊢ ( ( 𝑦 ∈ ω ∧ ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) ) → ( 𝑤 = ∅ → ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) ) ) |
| 33 | nfv | ⊢ Ⅎ 𝑧 𝑦 ∈ ω | |
| 34 | nfra1 | ⊢ Ⅎ 𝑧 ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) | |
| 35 | 33 34 | nfan | ⊢ Ⅎ 𝑧 ( 𝑦 ∈ ω ∧ ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) ) |
| 36 | nfv | ⊢ Ⅎ 𝑧 ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) | |
| 37 | vex | ⊢ 𝑦 ∈ V | |
| 38 | 37 | phplem2 | ⊢ ( ( 𝑦 ∈ ω ∧ 𝑧 ∈ ω ) → ( suc 𝑦 ≈ suc 𝑧 → 𝑦 ≈ 𝑧 ) ) |
| 39 | 38 | imim1d | ⊢ ( ( 𝑦 ∈ ω ∧ 𝑧 ∈ ω ) → ( ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) → ( suc 𝑦 ≈ suc 𝑧 → 𝑦 = 𝑧 ) ) ) |
| 40 | 39 | ex | ⊢ ( 𝑦 ∈ ω → ( 𝑧 ∈ ω → ( ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) → ( suc 𝑦 ≈ suc 𝑧 → 𝑦 = 𝑧 ) ) ) ) |
| 41 | 40 | a2d | ⊢ ( 𝑦 ∈ ω → ( ( 𝑧 ∈ ω → ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) ) → ( 𝑧 ∈ ω → ( suc 𝑦 ≈ suc 𝑧 → 𝑦 = 𝑧 ) ) ) ) |
| 42 | rsp | ⊢ ( ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) → ( 𝑧 ∈ ω → ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) ) ) | |
| 43 | 41 42 | impel | ⊢ ( ( 𝑦 ∈ ω ∧ ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) ) → ( 𝑧 ∈ ω → ( suc 𝑦 ≈ suc 𝑧 → 𝑦 = 𝑧 ) ) ) |
| 44 | suceq | ⊢ ( 𝑦 = 𝑧 → suc 𝑦 = suc 𝑧 ) | |
| 45 | 43 44 | syl8 | ⊢ ( ( 𝑦 ∈ ω ∧ ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) ) → ( 𝑧 ∈ ω → ( suc 𝑦 ≈ suc 𝑧 → suc 𝑦 = suc 𝑧 ) ) ) |
| 46 | breq2 | ⊢ ( 𝑤 = suc 𝑧 → ( suc 𝑦 ≈ 𝑤 ↔ suc 𝑦 ≈ suc 𝑧 ) ) | |
| 47 | eqeq2 | ⊢ ( 𝑤 = suc 𝑧 → ( suc 𝑦 = 𝑤 ↔ suc 𝑦 = suc 𝑧 ) ) | |
| 48 | 46 47 | imbi12d | ⊢ ( 𝑤 = suc 𝑧 → ( ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) ↔ ( suc 𝑦 ≈ suc 𝑧 → suc 𝑦 = suc 𝑧 ) ) ) |
| 49 | 48 | biimprcd | ⊢ ( ( suc 𝑦 ≈ suc 𝑧 → suc 𝑦 = suc 𝑧 ) → ( 𝑤 = suc 𝑧 → ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) ) ) |
| 50 | 45 49 | syl6 | ⊢ ( ( 𝑦 ∈ ω ∧ ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) ) → ( 𝑧 ∈ ω → ( 𝑤 = suc 𝑧 → ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) ) ) ) |
| 51 | 35 36 50 | rexlimd | ⊢ ( ( 𝑦 ∈ ω ∧ ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) ) → ( ∃ 𝑧 ∈ ω 𝑤 = suc 𝑧 → ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) ) ) |
| 52 | 32 51 | jaod | ⊢ ( ( 𝑦 ∈ ω ∧ ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) ) → ( ( 𝑤 = ∅ ∨ ∃ 𝑧 ∈ ω 𝑤 = suc 𝑧 ) → ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) ) ) |
| 53 | 52 | ex | ⊢ ( 𝑦 ∈ ω → ( ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) → ( ( 𝑤 = ∅ ∨ ∃ 𝑧 ∈ ω 𝑤 = suc 𝑧 ) → ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) ) ) ) |
| 54 | 25 53 | syl7 | ⊢ ( 𝑦 ∈ ω → ( ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) → ( 𝑤 ∈ ω → ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) ) ) ) |
| 55 | 54 | ralrimdv | ⊢ ( 𝑦 ∈ ω → ( ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) → ∀ 𝑤 ∈ ω ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) ) ) |
| 56 | breq2 | ⊢ ( 𝑤 = 𝑧 → ( suc 𝑦 ≈ 𝑤 ↔ suc 𝑦 ≈ 𝑧 ) ) | |
| 57 | eqeq2 | ⊢ ( 𝑤 = 𝑧 → ( suc 𝑦 = 𝑤 ↔ suc 𝑦 = 𝑧 ) ) | |
| 58 | 56 57 | imbi12d | ⊢ ( 𝑤 = 𝑧 → ( ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) ↔ ( suc 𝑦 ≈ 𝑧 → suc 𝑦 = 𝑧 ) ) ) |
| 59 | 58 | cbvralvw | ⊢ ( ∀ 𝑤 ∈ ω ( suc 𝑦 ≈ 𝑤 → suc 𝑦 = 𝑤 ) ↔ ∀ 𝑧 ∈ ω ( suc 𝑦 ≈ 𝑧 → suc 𝑦 = 𝑧 ) ) |
| 60 | 55 59 | imbitrdi | ⊢ ( 𝑦 ∈ ω → ( ∀ 𝑧 ∈ ω ( 𝑦 ≈ 𝑧 → 𝑦 = 𝑧 ) → ∀ 𝑧 ∈ ω ( suc 𝑦 ≈ 𝑧 → suc 𝑦 = 𝑧 ) ) ) |
| 61 | 4 8 12 16 24 60 | finds | ⊢ ( 𝐴 ∈ ω → ∀ 𝑧 ∈ ω ( 𝐴 ≈ 𝑧 → 𝐴 = 𝑧 ) ) |
| 62 | breq2 | ⊢ ( 𝑧 = 𝐵 → ( 𝐴 ≈ 𝑧 ↔ 𝐴 ≈ 𝐵 ) ) | |
| 63 | eqeq2 | ⊢ ( 𝑧 = 𝐵 → ( 𝐴 = 𝑧 ↔ 𝐴 = 𝐵 ) ) | |
| 64 | 62 63 | imbi12d | ⊢ ( 𝑧 = 𝐵 → ( ( 𝐴 ≈ 𝑧 → 𝐴 = 𝑧 ) ↔ ( 𝐴 ≈ 𝐵 → 𝐴 = 𝐵 ) ) ) |
| 65 | 64 | rspcv | ⊢ ( 𝐵 ∈ ω → ( ∀ 𝑧 ∈ ω ( 𝐴 ≈ 𝑧 → 𝐴 = 𝑧 ) → ( 𝐴 ≈ 𝐵 → 𝐴 = 𝐵 ) ) ) |
| 66 | 61 65 | mpan9 | ⊢ ( ( 𝐴 ∈ ω ∧ 𝐵 ∈ ω ) → ( 𝐴 ≈ 𝐵 → 𝐴 = 𝐵 ) ) |
| 67 | enrefnn | ⊢ ( 𝐴 ∈ ω → 𝐴 ≈ 𝐴 ) | |
| 68 | breq2 | ⊢ ( 𝐴 = 𝐵 → ( 𝐴 ≈ 𝐴 ↔ 𝐴 ≈ 𝐵 ) ) | |
| 69 | 67 68 | syl5ibcom | ⊢ ( 𝐴 ∈ ω → ( 𝐴 = 𝐵 → 𝐴 ≈ 𝐵 ) ) |
| 70 | 69 | adantr | ⊢ ( ( 𝐴 ∈ ω ∧ 𝐵 ∈ ω ) → ( 𝐴 = 𝐵 → 𝐴 ≈ 𝐵 ) ) |
| 71 | 66 70 | impbid | ⊢ ( ( 𝐴 ∈ ω ∧ 𝐵 ∈ ω ) → ( 𝐴 ≈ 𝐵 ↔ 𝐴 = 𝐵 ) ) |