HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
GIF version

Theorem xpnnen 4927
Description: The cross product of the set of natural numbers with itself is equinumerous to the set of natural numbers. The key idea is to use nn0opth2t 4726 to show that the mapping from natural numbers z and w to ((z + w)↑2) + w is one-to-one.
Assertion
Ref Expression
xpnnen (ℕ × ℕ) ≈ ℕ

Proof of Theorem xpnnen
StepHypRef Expression
1 nnex 4431 . . . 4 ℕ ∈ V
21, 1xpex 2488 . . 3 (ℕ × ℕ) ∈ V
3 elxp5 2641 . . . . 5 (x ∈ (ℕ × ℕ) ↔ (x = ⟨x, ran {x}⟩ ∧ (x ∈ ℕ ∧ ran {x} ∈ ℕ)))
4 nnaddclt 4436 . . . . . . 7 ((((x + ran {x})↑2) ∈ ℕ ∧ ran {x} ∈ ℕ) → (((x + ran {x})↑2) + ran {x}) ∈ ℕ)
5 nnaddclt 4436 . . . . . . . 8 ((x ∈ ℕ ∧ ran {x} ∈ ℕ) → (x + ran {x}) ∈ ℕ)
6 2nn 4487 . . . . . . . . 9 2 ∈ ℕ
7 nnexpclt 4691 . . . . . . . . 9 (((x + ran {x}) ∈ ℕ ∧ 2 ∈ ℕ) → ((x + ran {x})↑2) ∈ ℕ)
86, 7mpan2 519 . . . . . . . 8 ((x + ran {x}) ∈ ℕ → ((x + ran {x})↑2) ∈ ℕ)
95, 8syl 12 . . . . . . 7 ((x ∈ ℕ ∧ ran {x} ∈ ℕ) → ((x + ran {x})↑2) ∈ ℕ)
10 pm3.27 260 . . . . . . 7 ((x ∈ ℕ ∧ ran {x} ∈ ℕ) → ran {x} ∈ ℕ)
114, 9, 10sylanc 361 . . . . . 6 ((x ∈ ℕ ∧ ran {x} ∈ ℕ) → (((x + ran {x})↑2) + ran {x}) ∈ ℕ)
1211adantl 305 . . . . 5 ((x = ⟨x, ran {x}⟩ ∧ (x ∈ ℕ ∧ ran {x} ∈ ℕ)) → (((x + ran {x})↑2) + ran {x}) ∈ ℕ)
133, 12sylbi 174 . . . 4 (x ∈ (ℕ × ℕ) → (((x + ran {x})↑2) + ran {x}) ∈ ℕ)
14 inteq 1968 . . . . . . . . . . . . . . . . . 18 (x = ⟨z, w⟩ → x = z, w⟩)
1514inteqd 1970 . . . . . . . . . . . . . . . . 17 (x = ⟨z, w⟩ → x = z, w⟩)
16 visset 1350 . . . . . . . . . . . . . . . . . 18 zV
1716op1stb 1992 . . . . . . . . . . . . . . . . 17 z, w⟩ = z
1815, 17syl6eq 1140 . . . . . . . . . . . . . . . 16 (x = ⟨z, w⟩ → x = z)
19 sneq 1816 . . . . . . . . . . . . . . . . . . 19 (x = ⟨z, w⟩ → {x} = {⟨z, w⟩})
2019rneqd 2557 . . . . . . . . . . . . . . . . . 18 (x = ⟨z, w⟩ → ran {x} = ran {⟨z, w⟩})
2120unieqd 1929 . . . . . . . . . . . . . . . . 17 (x = ⟨z, w⟩ → ran {x} = ran {⟨z, w⟩})
22 visset 1350 . . . . . . . . . . . . . . . . . 18 wV
2316, 22op2nda 2639 . . . . . . . . . . . . . . . . 17 ran {⟨z, w⟩} = w
2421, 23syl6eq 1140 . . . . . . . . . . . . . . . 16 (x = ⟨z, w⟩ → ran {x} = w)
2518, 24opreq12d 3014 . . . . . . . . . . . . . . 15 (x = ⟨z, w⟩ → (x + ran {x}) = (z + w))
2625opreq1d 3012 . . . . . . . . . . . . . 14 (x = ⟨z, w⟩ → ((x + ran {x})↑2) = ((z + w)↑2))
2726, 24opreq12d 3014 . . . . . . . . . . . . 13 (x = ⟨z, w⟩ → (((x + ran {x})↑2) + ran {x}) = (((z + w)↑2) + w))
28 inteq 1968 . . . . . . . . . . . . . . . . . 18 (y = ⟨v, u⟩ → y = v, u⟩)
2928inteqd 1970 . . . . . . . . . . . . . . . . 17 (y = ⟨v, u⟩ → y = v, u⟩)
30 visset 1350 . . . . . . . . . . . . . . . . . 18 vV
3130op1stb 1992 . . . . . . . . . . . . . . . . 17 v, u⟩ = v
3229, 31syl6eq 1140 . . . . . . . . . . . . . . . 16 (y = ⟨v, u⟩ → y = v)
33 sneq 1816 . . . . . . . . . . . . . . . . . . 19 (y = ⟨v, u⟩ → {y} = {⟨v, u⟩})
3433rneqd 2557 . . . . . . . . . . . . . . . . . 18 (y = ⟨v, u⟩ → ran {y} = ran {⟨v, u⟩})
3534unieqd 1929 . . . . . . . . . . . . . . . . 17 (y = ⟨v, u⟩ → ran {y} = ran {⟨v, u⟩})
36 visset 1350 . . . . . . . . . . . . . . . . . 18 uV
3730, 36op2nda 2639 . . . . . . . . . . . . . . . . 17 ran {⟨v, u⟩} = u
3835, 37syl6eq 1140 . . . . . . . . . . . . . . . 16 (y = ⟨v, u⟩ → ran {y} = u)
3932, 38opreq12d 3014 . . . . . . . . . . . . . . 15 (y = ⟨v, u⟩ → (y + ran {y}) = (v + u))
4039opreq1d 3012 . . . . . . . . . . . . . 14 (y = ⟨v, u⟩ → ((y + ran {y})↑2) = ((v + u)↑2))
4140, 38opreq12d 3014 . . . . . . . . . . . . 13 (y = ⟨v, u⟩ → (((y + ran {y})↑2) + ran {y}) = (((v + u)↑2) + u))
4227, 41cleqan12d 1116 . . . . . . . . . . . 12 ((x = ⟨z, w⟩ ∧ y = ⟨v, u⟩) → ((((x + ran {x})↑2) + ran {x}) = (((y + ran {y})↑2) + ran {y}) ↔ (((z + w)↑2) + w) = (((v + u)↑2) + u)))
43 nn0opth2t 4726 . . . . . . . . . . . . 13 (((z ∈ ℕ0w ∈ ℕ0) ∧ (v ∈ ℕ0u ∈ ℕ0)) → ((((z + w)↑2) + w) = (((v + u)↑2) + u) ↔ (z = vw = u)))
44 nnnn0t 4541 . . . . . . . . . . . . . 14 (z ∈ ℕ → z ∈ ℕ0)
45 nnnn0t 4541 . . . . . . . . . . . . . 14 (w ∈ ℕ → w ∈ ℕ0)
4644, 45anim12i 268 . . . . . . . . . . . . 13 ((z ∈ ℕ ∧ w ∈ ℕ) → (z ∈ ℕ0w ∈ ℕ0))
47 nnnn0t 4541 . . . . . . . . . . . . . 14 (v ∈ ℕ → v ∈ ℕ0)
48 nnnn0t 4541 . . . . . . . . . . . . . 14 (u ∈ ℕ → u ∈ ℕ0)
4947, 48anim12i 268 . . . . . . . . . . . . 13 ((v ∈ ℕ ∧ u ∈ ℕ) → (v ∈ ℕ0u ∈ ℕ0))
5043, 46, 49syl2an 349 . . . . . . . . . . . 12 (((z ∈ ℕ ∧ w ∈ ℕ) ∧ (v ∈ ℕ ∧ u ∈ ℕ)) → ((((z + w)↑2) + w) = (((v + u)↑2) + u) ↔ (z = vw = u)))
5142, 50sylan9bbr 419 . . . . . . . . . . 11 ((((z ∈ ℕ ∧ w ∈ ℕ) ∧ (v ∈ ℕ ∧ u ∈ ℕ)) ∧ (x = ⟨z, w⟩ ∧ y = ⟨v, u⟩)) → ((((x + ran {x})↑2) + ran {x}) = (((y + ran {y})↑2) + ran {y}) ↔ (z = vw = u)))
52 cleq12 1113 . . . . . . . . . . . . 13 ((x = ⟨z, w⟩ ∧ y = ⟨v, u⟩) → (x = y ↔ ⟨z, w⟩ = ⟨v, u⟩))
5316, 22, 36opth 1898 . . . . . . . . . . . . 13 (⟨z, w⟩ = ⟨v, u⟩ ↔ (z = vw = u))
5452, 53syl6bb 414 . . . . . . . . . . . 12 ((x = ⟨z, w⟩ ∧ y = ⟨v, u⟩) → (x = y ↔ (z = vw = u)))
5554adantl 305 . . . . . . . . . . 11 ((((z ∈ ℕ ∧ w ∈ ℕ) ∧ (v ∈ ℕ ∧ u ∈ ℕ)) ∧ (x = ⟨z, w⟩ ∧ y = ⟨v, u⟩)) → (x = y ↔ (z = vw = u)))
5651, 55bitr4d 409 . . . . . . . . . 10 ((((z ∈ ℕ ∧ w ∈ ℕ) ∧ (v ∈ ℕ ∧ u ∈ ℕ)) ∧ (x = ⟨z, w⟩ ∧ y = ⟨v, u⟩)) → ((((x + ran {x})↑2) + ran {x}) = (((y + ran {y})↑2) + ran {y}) ↔ x = y))
5756exp43 301 . . . . . . . . 9 ((z ∈ ℕ ∧ w ∈ ℕ) → ((v ∈ ℕ ∧ u ∈ ℕ) → (x = ⟨z, w⟩ → (y = ⟨v, u⟩ → ((((x + ran {x})↑2) + ran {x}) = (((y + ran {y})↑2) + ran {y}) ↔ x = y)))))
5857com23 32 . . . . . . . 8 ((z ∈ ℕ ∧ w ∈ ℕ) → (x = ⟨z, w⟩ → ((v ∈ ℕ ∧ u ∈ ℕ) → (y = ⟨v, u⟩ → ((((x + ran {x})↑2) + ran {x}) = (((y + ran {y})↑2) + ran {y}) ↔ x = y)))))
5958r19.23aivv 1287 . . . . . . 7 (∃z ∈ ℕ ∃w ∈ ℕ x = ⟨z, w⟩ → ((v ∈ ℕ ∧ u ∈ ℕ) → (y = ⟨v, u⟩ → ((((x + ran {x})↑2) + ran {x}) = (((y + ran {y})↑2) + ran {y}) ↔ x = y))))
6059r19.23advv 1288 . . . . . 6 (∃z ∈ ℕ ∃w ∈ ℕ x = ⟨z, w⟩ → (∃v ∈ ℕ ∃u ∈ ℕ y = ⟨v, u⟩ → ((((x + ran {x})↑2) + ran {x}) = (((y + ran {y})↑2) + ran {y}) ↔ x = y)))
6160imp 277 . . . . 5 ((∃z ∈ ℕ ∃w ∈ ℕ x = ⟨z, w⟩ ∧ ∃v ∈ ℕ ∃u ∈ ℕ y = ⟨v, u⟩) → ((((x + ran {x})↑2) + ran {x}) = (((y + ran {y})↑2) + ran {y}) ↔ x = y))
62 elxp2 2443 . . . . 5 (x ∈ (ℕ × ℕ) ↔ ∃z ∈ ℕ ∃w ∈ ℕ x = ⟨z, w⟩)
63 elxp2 2443 . . . . 5 (y ∈ (ℕ × ℕ) ↔ ∃v ∈ ℕ ∃u ∈ ℕ y = ⟨v, u⟩)
6461, 62, 63syl2anb 350 . . . 4 ((x ∈ (ℕ × ℕ) ∧ y ∈ (ℕ × ℕ)) → ((((x + ran {x})↑2) + ran {x}) = (((y + ran {y})↑2) + ran {y}) ↔ x = y))
6513, 64dom2 3308 . . 3 ((ℕ × ℕ) ∈ V → (ℕ × ℕ) ≼ ℕ)
662, 65ax-mp 6 . 2 (ℕ × ℕ) ≼ ℕ
67 1nn 4432 . . . . . 6 1 ∈ ℕ
6867elisseti 1355 . . . . 5 1 ∈ V
691, 68xpsnen 3339 . . . 4 (ℕ × {1}) ≈ ℕ
701, 69ensymi 3318 . . 3 ℕ ≈ (ℕ × {1})
71 ssid 1519 . . . . 5 ℕ ⊆ ℕ
72 snssi 1851 . . . . . 6 (1 ∈ ℕ → {1} ⊆ ℕ)
7367, 72ax-mp 6 . . . . 5 {1} ⊆ ℕ
74 ssxp 2487 . . . . 5 ((ℕ ⊆ ℕ ∧ {1} ⊆ ℕ) → (ℕ × {1}) ⊆ (ℕ × ℕ))
7571, 73, 74mp2an 520 . . . 4 (ℕ × {1}) ⊆ (ℕ × ℕ)
76 ssdom2g 3312 . . . 4 ((ℕ × ℕ) ∈ V → ((ℕ × {1}) ⊆ (ℕ × ℕ) → (ℕ × {1}) ≼ (ℕ × ℕ)))
772, 75, 76mp2 43 . . 3 (ℕ × {1}) ≼ (ℕ × ℕ)
78 endomtr 3325 . . 3 ((ℕ ≈ (ℕ × {1}) ∧ (ℕ × {1}) ≼ (ℕ × ℕ)) → ℕ ≼ (ℕ × ℕ))
7970, 77, 78mp2an 520 . 2 ℕ ≼ (ℕ × ℕ)
80 sbth 3359 . 2 (((ℕ × ℕ) ≼ ℕ ∧ ℕ ≼ (ℕ × ℕ)) → (ℕ × ℕ) ≈ ℕ)
8166, 79, 80mp2an 520 1 (ℕ × ℕ) ≈ ℕ
Colors of variables: wff set class
Syntax hints:   → wi 2   ↔ wb 127   ∧ wa 196   = weq 797   = wceq 1091   ∈ wcel 1092  ∃wrex 1202  Vcvv 1348   ⊆ wss 1487  {csn 1808  ⟨cop 1810  cuni 1919  cint 1965   class class class wbr 2054   × cxp 2408  ran crn 2411  (class class class)co 3001   ≈ cen 3271   ≼ cdom 3272  1c1 4029   + caddc 4031  ℕcn 4093  ℕ0cn0 4094  2c2 4454  ↑cexp 4675
This theorem is referenced by:  xpomen 4928  qnnen 4931
This theorem was proved from axioms:  ax-1 3  ax-2 4  ax-3 5  ax-mp 6  ax-4 673  ax-5 674  ax-6 675  ax-7 676  ax-gen 677  ax-8 798  ax-9 799  ax-10 800  ax-11 801  ax-12 802  ax-13 804  ax-14 805  ax-16 922  ax-17 925  ax-ext 1074  ax-rep 1075  ax-un 1076  ax-pow 1077  ax-reg 1078  ax-inf 1079
This theorem depends on definitions:  df-bi 128  df-or 197  df-an 198  df-3or 582  df-3an 583  df-ex 679  df-sb 853  df-eu 1009  df-mo 1010  df-clab 1093  df-cleq 1097  df-clel 1099  df-ne 1192  df-ral 1205  df-rex 1206  df-reu 1207  df-rab 1208  df-v 1349  df-sbc 1441  df-dif 1489  df-un 1490  df-in 1491  df-ss 1492  df-pss 1494  df-nul 1708  df-if 1777  df-pw 1799  df-sn 1811  df-pr 1812  df-tp 1814  df-op 1815  df-uni 1920  df-int 1966  df-iun 1996  df-tr 2042  df-br 2063  df-opab 2098  df-eprel 2122  df-id 2125  df-po 2128  df-so 2138  df-fr 2169  df-we 2186  df-ord 2202  df-on 2203  df-lim 2204  df-suc 2205  df-om 2373  df-xp 2424  df-rel 2425  df-cnv 2426  df-co 2427  df-dm 2428  df-rn 2429  df-res 2430  df-ima 2431  df-fun 2432  df-fn 2433  df-f 2434  df-f1 2435  df-fo 2436  df-f1o 2437  df-fv 2438  df-rdg 2970  df-opr 3003  df-oprab 3004  df-1st 3087  df-2nd 3088  df-1o 3104  df-oadd 3106  df-omul 3107  df-er 3200  df-ec 3202  df-qs 3205  df-en 3274  df-dom 3275  df-ni 3794  df-pli 3795  df-mi 3796  df-lti 3797  df-plpq 3829  df-mpq 3830  df-enq 3831  df-nq 3832  df-plq 3833  df-mq 3834  df-rq 3835  df-ltq 3836  df-1q 3837  df-np 3880  df-1p 3881  df-plp 3882  df-mp 3883  df-ltp 3884  df-plpr 3958  df-mpr 3959  df-enr 3960  df-nr 3961  df-plr 3962  df-mr 3963  df-ltr 3964  df-0r 3965  df-1r 3966  df-m1r 3967  df-c 4034  df-0 4035  df-1 4036  df-r 4038  df-plus 4039  df-mul 4040  df-lt 4041  df-sub 4133  df-neg 4135  df-div 4216  df-le 4277  df-n 4423  df-2 4462  df-n0 4535  df-z 4564  df-seq 4661  df-exp 4676
metamath.org