Metamath Proof Explorer


Theorem hashxpe

Description: The size of the Cartesian product of two finite sets is the product of their sizes. This is a version of hashxp valid for infinite sets, which uses extended real numbers. (Contributed by Thierry Arnoux, 27-May-2023)

Ref Expression
Assertion hashxpe ⊢ A ∈ V ∧ B ∈ W → A × B = A ⋅ 𝑒 B

Proof

Step Hyp Ref Expression
1 simpr ⊢ A ∈ V ∧ B ∈ W ∧ A ∈ Fin ∧ B ∈ Fin → A ∈ Fin ∧ B ∈ Fin
2 hashxp ⊢ A ∈ Fin ∧ B ∈ Fin → A × B = A ⁢ B
3 1 2 syl ⊢ A ∈ V ∧ B ∈ W ∧ A ∈ Fin ∧ B ∈ Fin → A × B = A ⁢ B
4 nn0ssre ⊢ ℕ 0 ⊆ ℝ
5 hashcl ⊢ A ∈ Fin → A ∈ ℕ 0
6 4 5 sselid ⊢ A ∈ Fin → A ∈ ℝ
7 hashcl ⊢ B ∈ Fin → B ∈ ℕ 0
8 4 7 sselid ⊢ B ∈ Fin → B ∈ ℝ
9 6 8 anim12i ⊢ A ∈ Fin ∧ B ∈ Fin → A ∈ ℝ ∧ B ∈ ℝ
10 1 9 syl ⊢ A ∈ V ∧ B ∈ W ∧ A ∈ Fin ∧ B ∈ Fin → A ∈ ℝ ∧ B ∈ ℝ
11 rexmul ⊢ A ∈ ℝ ∧ B ∈ ℝ → A ⋅ 𝑒 B = A ⁢ B
12 10 11 syl ⊢ A ∈ V ∧ B ∈ W ∧ A ∈ Fin ∧ B ∈ Fin → A ⋅ 𝑒 B = A ⁢ B
13 3 12 eqtr4d ⊢ A ∈ V ∧ B ∈ W ∧ A ∈ Fin ∧ B ∈ Fin → A × B = A ⋅ 𝑒 B
14 simpr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B = ∅ → B = ∅
15 14 xpeq2d ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B = ∅ → A × B = A × ∅
16 xp0 ⊢ A × ∅ = ∅
17 15 16 eqtrdi ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B = ∅ → A × B = ∅
18 17 fveq2d ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B = ∅ → A × B = ∅
19 hash0 ⊢ ∅ = 0
20 18 19 eqtrdi ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B = ∅ → A × B = 0
21 simpl ⊢ A ∈ V ∧ B ∈ W → A ∈ V
22 hashinf ⊢ A ∈ V ∧ ¬ A ∈ Fin → A = +∞
23 21 22 sylan ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin → A = +∞
24 23 adantr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B = ∅ → A = +∞
25 14 fveq2d ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B = ∅ → B = ∅
26 25 19 eqtrdi ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B = ∅ → B = 0
27 24 26 oveq12d ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B = ∅ → A ⋅ 𝑒 B = +∞ ⋅ 𝑒 0
28 pnfxr ⊢ +∞ ∈ ℝ *
29 xmul01 ⊢ +∞ ∈ ℝ * → +∞ ⋅ 𝑒 0 = 0
30 28 29 ax-mp ⊢ +∞ ⋅ 𝑒 0 = 0
31 27 30 eqtrdi ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B = ∅ → A ⋅ 𝑒 B = 0
32 20 31 eqtr4d ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B = ∅ → A × B = A ⋅ 𝑒 B
33 simpr ⊢ A ∈ V ∧ B ∈ W → B ∈ W
34 33 ad2antrr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → B ∈ W
35 hashxrcl ⊢ B ∈ W → B ∈ ℝ *
36 34 35 syl ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → B ∈ ℝ *
37 hashgt0 ⊢ B ∈ W ∧ B ≠ ∅ → 0 < B
38 34 37 sylancom ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → 0 < B
39 xmulpnf2 ⊢ B ∈ ℝ * ∧ 0 < B → +∞ ⋅ 𝑒 B = +∞
40 36 38 39 syl2anc ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → +∞ ⋅ 𝑒 B = +∞
41 23 adantr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → A = +∞
42 41 oveq1d ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → A ⋅ 𝑒 B = +∞ ⋅ 𝑒 B
43 21 ad2antrr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → A ∈ V
44 43 34 xpexd ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → A × B ∈ V
45 simplr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → ¬ A ∈ Fin
46 0fi ⊢ ∅ ∈ Fin
47 eleq1 ⊢ A = ∅ → A ∈ Fin ↔ ∅ ∈ Fin
48 46 47 mpbiri ⊢ A = ∅ → A ∈ Fin
49 48 necon3bi ⊢ ¬ A ∈ Fin → A ≠ ∅
50 45 49 syl ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → A ≠ ∅
51 simpr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → B ≠ ∅
52 ioran ⊢ ¬ A = ∅ ∨ B = ∅ ↔ ¬ A = ∅ ∧ ¬ B = ∅
53 xpeq0 ⊢ A × B = ∅ ↔ A = ∅ ∨ B = ∅
54 53 necon3abii ⊢ A × B ≠ ∅ ↔ ¬ A = ∅ ∨ B = ∅
55 df-ne ⊢ A ≠ ∅ ↔ ¬ A = ∅
56 df-ne ⊢ B ≠ ∅ ↔ ¬ B = ∅
57 55 56 anbi12i ⊢ A ≠ ∅ ∧ B ≠ ∅ ↔ ¬ A = ∅ ∧ ¬ B = ∅
58 52 54 57 3bitr4i ⊢ A × B ≠ ∅ ↔ A ≠ ∅ ∧ B ≠ ∅
59 58 biimpri ⊢ A ≠ ∅ ∧ B ≠ ∅ → A × B ≠ ∅
60 50 51 59 syl2anc ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → A × B ≠ ∅
61 45 intnanrd ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → ¬ A ∈ Fin ∧ B ∈ Fin
62 pm4.61 ⊢ ¬ A × B ≠ ∅ → A ∈ Fin ∧ B ∈ Fin ↔ A × B ≠ ∅ ∧ ¬ A ∈ Fin ∧ B ∈ Fin
63 xpfir ⊢ A × B ∈ Fin ∧ A × B ≠ ∅ → A ∈ Fin ∧ B ∈ Fin
64 63 ex ⊢ A × B ∈ Fin → A × B ≠ ∅ → A ∈ Fin ∧ B ∈ Fin
65 64 con3i ⊢ ¬ A × B ≠ ∅ → A ∈ Fin ∧ B ∈ Fin → ¬ A × B ∈ Fin
66 62 65 sylbir ⊢ A × B ≠ ∅ ∧ ¬ A ∈ Fin ∧ B ∈ Fin → ¬ A × B ∈ Fin
67 60 61 66 syl2anc ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → ¬ A × B ∈ Fin
68 hashinf ⊢ A × B ∈ V ∧ ¬ A × B ∈ Fin → A × B = +∞
69 44 67 68 syl2anc ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → A × B = +∞
70 40 42 69 3eqtr4rd ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ≠ ∅ → A × B = A ⋅ 𝑒 B
71 exmidne ⊢ B = ∅ ∨ B ≠ ∅
72 71 a1i ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin → B = ∅ ∨ B ≠ ∅
73 32 70 72 mpjaodan ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin → A × B = A ⋅ 𝑒 B
74 73 adantlr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ∈ Fin ∧ ¬ A ∈ Fin → A × B = A ⋅ 𝑒 B
75 simpr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A = ∅ → A = ∅
76 75 xpeq1d ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A = ∅ → A × B = ∅ × B
77 0xp ⊢ ∅ × B = ∅
78 76 77 eqtrdi ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A = ∅ → A × B = ∅
79 78 fveq2d ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A = ∅ → A × B = ∅
80 79 19 eqtrdi ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A = ∅ → A × B = 0
81 75 fveq2d ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A = ∅ → A = ∅
82 81 19 eqtrdi ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A = ∅ → A = 0
83 hashinf ⊢ B ∈ W ∧ ¬ B ∈ Fin → B = +∞
84 33 83 sylan ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin → B = +∞
85 84 adantr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A = ∅ → B = +∞
86 82 85 oveq12d ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A = ∅ → A ⋅ 𝑒 B = 0 ⋅ 𝑒 +∞
87 xmul02 ⊢ +∞ ∈ ℝ * → 0 ⋅ 𝑒 +∞ = 0
88 28 87 ax-mp ⊢ 0 ⋅ 𝑒 +∞ = 0
89 86 88 eqtrdi ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A = ∅ → A ⋅ 𝑒 B = 0
90 80 89 eqtr4d ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A = ∅ → A × B = A ⋅ 𝑒 B
91 hashxrcl ⊢ A ∈ V → A ∈ ℝ *
92 91 ad3antrrr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → A ∈ ℝ *
93 hashgt0 ⊢ A ∈ V ∧ A ≠ ∅ → 0 < A
94 93 ad4ant14 ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → 0 < A
95 xmulpnf1 ⊢ A ∈ ℝ * ∧ 0 < A → A ⋅ 𝑒 +∞ = +∞
96 92 94 95 syl2anc ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → A ⋅ 𝑒 +∞ = +∞
97 84 adantr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → B = +∞
98 97 oveq2d ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → A ⋅ 𝑒 B = A ⋅ 𝑒 +∞
99 21 ad2antrr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → A ∈ V
100 33 ad2antrr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → B ∈ W
101 99 100 xpexd ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → A × B ∈ V
102 simpr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → A ≠ ∅
103 simplr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → ¬ B ∈ Fin
104 eleq1 ⊢ B = ∅ → B ∈ Fin ↔ ∅ ∈ Fin
105 46 104 mpbiri ⊢ B = ∅ → B ∈ Fin
106 105 necon3bi ⊢ ¬ B ∈ Fin → B ≠ ∅
107 103 106 syl ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → B ≠ ∅
108 102 107 59 syl2anc ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → A × B ≠ ∅
109 103 intnand ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → ¬ A ∈ Fin ∧ B ∈ Fin
110 108 109 66 syl2anc ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → ¬ A × B ∈ Fin
111 101 110 68 syl2anc ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → A × B = +∞
112 96 98 111 3eqtr4rd ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin ∧ A ≠ ∅ → A × B = A ⋅ 𝑒 B
113 exmidne ⊢ A = ∅ ∨ A ≠ ∅
114 113 a1i ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin → A = ∅ ∨ A ≠ ∅
115 90 112 114 mpjaodan ⊢ A ∈ V ∧ B ∈ W ∧ ¬ B ∈ Fin → A × B = A ⋅ 𝑒 B
116 115 adantlr ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ∈ Fin ∧ ¬ B ∈ Fin → A × B = A ⋅ 𝑒 B
117 ianor ⊢ ¬ A ∈ Fin ∧ B ∈ Fin ↔ ¬ A ∈ Fin ∨ ¬ B ∈ Fin
118 117 bilani ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ∈ Fin → ¬ A ∈ Fin ∨ ¬ B ∈ Fin
119 74 116 118 mpjaodan ⊢ A ∈ V ∧ B ∈ W ∧ ¬ A ∈ Fin ∧ B ∈ Fin → A × B = A ⋅ 𝑒 B
120 exmidd ⊢ A ∈ V ∧ B ∈ W → A ∈ Fin ∧ B ∈ Fin ∨ ¬ A ∈ Fin ∧ B ∈ Fin
121 13 119 120 mpjaodan ⊢ A ∈ V ∧ B ∈ W → A × B = A ⋅ 𝑒 B