Metamath Proof Explorer


Theorem fprodmodd

Description: If all factors of two finite products are equal modulo M , the products are equal modulo M . (Contributed by AV, 7-Jul-2021)

Ref Expression
Hypotheses fprodmodd.a ⊢ φ → A ∈ Fin
fprodmodd.b ⊢ φ ∧ k ∈ A → B ∈ ℤ
fprodmodd.c ⊢ φ ∧ k ∈ A → C ∈ ℤ
fprodmodd.m ⊢ φ → M ∈ ℕ
fprodmodd.p ⊢ φ ∧ k ∈ A → B mod M = C mod M
Assertion fprodmodd ⊢ φ → ∏ k ∈ A B mod M = ∏ k ∈ A C mod M

Proof

Step Hyp Ref Expression
1 fprodmodd.a ⊢ φ → A ∈ Fin
2 fprodmodd.b ⊢ φ ∧ k ∈ A → B ∈ ℤ
3 fprodmodd.c ⊢ φ ∧ k ∈ A → C ∈ ℤ
4 fprodmodd.m ⊢ φ → M ∈ ℕ
5 fprodmodd.p ⊢ φ ∧ k ∈ A → B mod M = C mod M
6 prodeq1 ⊢ x = ∅ → ∏ k ∈ x B = ∏ k ∈ ∅ B
7 6 oveq1d ⊢ x = ∅ → ∏ k ∈ x B mod M = ∏ k ∈ ∅ B mod M
8 prodeq1 ⊢ x = ∅ → ∏ k ∈ x C = ∏ k ∈ ∅ C
9 8 oveq1d ⊢ x = ∅ → ∏ k ∈ x C mod M = ∏ k ∈ ∅ C mod M
10 7 9 eqeq12d ⊢ x = ∅ → ∏ k ∈ x B mod M = ∏ k ∈ x C mod M ↔ ∏ k ∈ ∅ B mod M = ∏ k ∈ ∅ C mod M
11 prodeq1 ⊢ x = y → ∏ k ∈ x B = ∏ k ∈ y B
12 11 oveq1d ⊢ x = y → ∏ k ∈ x B mod M = ∏ k ∈ y B mod M
13 prodeq1 ⊢ x = y → ∏ k ∈ x C = ∏ k ∈ y C
14 13 oveq1d ⊢ x = y → ∏ k ∈ x C mod M = ∏ k ∈ y C mod M
15 12 14 eqeq12d ⊢ x = y → ∏ k ∈ x B mod M = ∏ k ∈ x C mod M ↔ ∏ k ∈ y B mod M = ∏ k ∈ y C mod M
16 prodeq1 ⊢ x = y ∪ i → ∏ k ∈ x B = ∏ k ∈ y ∪ i B
17 16 oveq1d ⊢ x = y ∪ i → ∏ k ∈ x B mod M = ∏ k ∈ y ∪ i B mod M
18 prodeq1 ⊢ x = y ∪ i → ∏ k ∈ x C = ∏ k ∈ y ∪ i C
19 18 oveq1d ⊢ x = y ∪ i → ∏ k ∈ x C mod M = ∏ k ∈ y ∪ i C mod M
20 17 19 eqeq12d ⊢ x = y ∪ i → ∏ k ∈ x B mod M = ∏ k ∈ x C mod M ↔ ∏ k ∈ y ∪ i B mod M = ∏ k ∈ y ∪ i C mod M
21 prodeq1 ⊢ x = A → ∏ k ∈ x B = ∏ k ∈ A B
22 21 oveq1d ⊢ x = A → ∏ k ∈ x B mod M = ∏ k ∈ A B mod M
23 prodeq1 ⊢ x = A → ∏ k ∈ x C = ∏ k ∈ A C
24 23 oveq1d ⊢ x = A → ∏ k ∈ x C mod M = ∏ k ∈ A C mod M
25 22 24 eqeq12d ⊢ x = A → ∏ k ∈ x B mod M = ∏ k ∈ x C mod M ↔ ∏ k ∈ A B mod M = ∏ k ∈ A C mod M
26 prod0 ⊢ ∏ k ∈ ∅ B = 1
27 26 a1i ⊢ φ → ∏ k ∈ ∅ B = 1
28 27 oveq1d ⊢ φ → ∏ k ∈ ∅ B mod M = 1 mod M
29 prod0 ⊢ ∏ k ∈ ∅ C = 1
30 29 eqcomi ⊢ 1 = ∏ k ∈ ∅ C
31 30 oveq1i ⊢ 1 mod M = ∏ k ∈ ∅ C mod M
32 28 31 eqtrdi ⊢ φ → ∏ k ∈ ∅ B mod M = ∏ k ∈ ∅ C mod M
33 nfv ⊢ Ⅎ k φ ∧ y ⊆ A ∧ i ∈ A ∖ y
34 nfcsb1v ⊢ Ⅎ _ k ⦋ i / k⦌ B
35 ssfi ⊢ A ∈ Fin ∧ y ⊆ A → y ∈ Fin
36 35 ex ⊢ A ∈ Fin → y ⊆ A → y ∈ Fin
37 36 1 syl11 ⊢ y ⊆ A → φ → y ∈ Fin
38 37 adantr ⊢ y ⊆ A ∧ i ∈ A ∖ y → φ → y ∈ Fin
39 38 impcom ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → y ∈ Fin
40 simpr ⊢ y ⊆ A ∧ i ∈ A ∖ y → i ∈ A ∖ y
41 40 adantl ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → i ∈ A ∖ y
42 eldifn ⊢ i ∈ A ∖ y → ¬ i ∈ y
43 42 adantl ⊢ y ⊆ A ∧ i ∈ A ∖ y → ¬ i ∈ y
44 43 adantl ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ¬ i ∈ y
45 simpll ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ k ∈ y → φ
46 ssel ⊢ y ⊆ A → k ∈ y → k ∈ A
47 46 adantr ⊢ y ⊆ A ∧ i ∈ A ∖ y → k ∈ y → k ∈ A
48 47 adantl ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → k ∈ y → k ∈ A
49 48 imp ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ k ∈ y → k ∈ A
50 45 49 2 syl2anc ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ k ∈ y → B ∈ ℤ
51 50 zcnd ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ k ∈ y → B ∈ ℂ
52 csbeq1a ⊢ k = i → B = ⦋ i / k⦌ B
53 eldifi ⊢ i ∈ A ∖ y → i ∈ A
54 53 adantl ⊢ y ⊆ A ∧ i ∈ A ∖ y → i ∈ A
55 2 ralrimiva ⊢ φ → ∀ k ∈ A B ∈ ℤ
56 rspcsbela ⊢ i ∈ A ∧ ∀ k ∈ A B ∈ ℤ → ⦋ i / k⦌ B ∈ ℤ
57 54 55 56 syl2anr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ⦋ i / k⦌ B ∈ ℤ
58 57 zcnd ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ⦋ i / k⦌ B ∈ ℂ
59 33 34 39 41 44 51 52 58 fprodsplitsn ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ∏ k ∈ y ∪ i B = ∏ k ∈ y B ⁢ ⦋ i / k⦌ B
60 59 oveq1d ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ∏ k ∈ y ∪ i B mod M = ∏ k ∈ y B ⁢ ⦋ i / k⦌ B mod M
61 60 adantr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ ∏ k ∈ y B mod M = ∏ k ∈ y C mod M → ∏ k ∈ y ∪ i B mod M = ∏ k ∈ y B ⁢ ⦋ i / k⦌ B mod M
62 39 50 fprodzcl ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ∏ k ∈ y B ∈ ℤ
63 62 adantr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ ∏ k ∈ y B mod M = ∏ k ∈ y C mod M → ∏ k ∈ y B ∈ ℤ
64 45 49 3 syl2anc ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ k ∈ y → C ∈ ℤ
65 39 64 fprodzcl ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ∏ k ∈ y C ∈ ℤ
66 65 adantr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ ∏ k ∈ y B mod M = ∏ k ∈ y C mod M → ∏ k ∈ y C ∈ ℤ
67 57 adantr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ ∏ k ∈ y B mod M = ∏ k ∈ y C mod M → ⦋ i / k⦌ B ∈ ℤ
68 3 ralrimiva ⊢ φ → ∀ k ∈ A C ∈ ℤ
69 rspcsbela ⊢ i ∈ A ∧ ∀ k ∈ A C ∈ ℤ → ⦋ i / k⦌ C ∈ ℤ
70 54 68 69 syl2anr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ⦋ i / k⦌ C ∈ ℤ
71 70 adantr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ ∏ k ∈ y B mod M = ∏ k ∈ y C mod M → ⦋ i / k⦌ C ∈ ℤ
72 4 nnrpd ⊢ φ → M ∈ ℝ +
73 72 adantr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → M ∈ ℝ +
74 73 adantr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ ∏ k ∈ y B mod M = ∏ k ∈ y C mod M → M ∈ ℝ +
75 simpr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ ∏ k ∈ y B mod M = ∏ k ∈ y C mod M → ∏ k ∈ y B mod M = ∏ k ∈ y C mod M
76 5 ralrimiva ⊢ φ → ∀ k ∈ A B mod M = C mod M
77 rspsbca ⊢ i ∈ A ∧ ∀ k ∈ A B mod M = C mod M → [˙i / k]˙ B mod M = C mod M
78 54 76 77 syl2anr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → [˙i / k]˙ B mod M = C mod M
79 vex ⊢ i ∈ V
80 sbceqg ⊢ i ∈ V → [˙i / k]˙ B mod M = C mod M ↔ ⦋ i / k⦌ B mod M = ⦋ i / k⦌ C mod M
81 79 80 mp1i ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → [˙i / k]˙ B mod M = C mod M ↔ ⦋ i / k⦌ B mod M = ⦋ i / k⦌ C mod M
82 78 81 mpbid ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ⦋ i / k⦌ B mod M = ⦋ i / k⦌ C mod M
83 csbov1g ⊢ i ∈ V → ⦋ i / k⦌ B mod M = ⦋ i / k⦌ B mod M
84 83 elv ⊢ ⦋ i / k⦌ B mod M = ⦋ i / k⦌ B mod M
85 csbov1g ⊢ i ∈ V → ⦋ i / k⦌ C mod M = ⦋ i / k⦌ C mod M
86 85 elv ⊢ ⦋ i / k⦌ C mod M = ⦋ i / k⦌ C mod M
87 82 84 86 3eqtr3g ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ⦋ i / k⦌ B mod M = ⦋ i / k⦌ C mod M
88 87 adantr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ ∏ k ∈ y B mod M = ∏ k ∈ y C mod M → ⦋ i / k⦌ B mod M = ⦋ i / k⦌ C mod M
89 63 66 67 71 74 75 88 modmul12d ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ ∏ k ∈ y B mod M = ∏ k ∈ y C mod M → ∏ k ∈ y B ⁢ ⦋ i / k⦌ B mod M = ∏ k ∈ y C ⁢ ⦋ i / k⦌ C mod M
90 nfcsb1v ⊢ Ⅎ _ k ⦋ i / k⦌ C
91 64 zcnd ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ k ∈ y → C ∈ ℂ
92 csbeq1a ⊢ k = i → C = ⦋ i / k⦌ C
93 70 zcnd ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ⦋ i / k⦌ C ∈ ℂ
94 33 90 39 41 44 91 92 93 fprodsplitsn ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ∏ k ∈ y ∪ i C = ∏ k ∈ y C ⁢ ⦋ i / k⦌ C
95 94 oveq1d ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ∏ k ∈ y ∪ i C mod M = ∏ k ∈ y C ⁢ ⦋ i / k⦌ C mod M
96 95 eqcomd ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ∏ k ∈ y C ⁢ ⦋ i / k⦌ C mod M = ∏ k ∈ y ∪ i C mod M
97 96 adantr ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ ∏ k ∈ y B mod M = ∏ k ∈ y C mod M → ∏ k ∈ y C ⁢ ⦋ i / k⦌ C mod M = ∏ k ∈ y ∪ i C mod M
98 61 89 97 3eqtrd ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y ∧ ∏ k ∈ y B mod M = ∏ k ∈ y C mod M → ∏ k ∈ y ∪ i B mod M = ∏ k ∈ y ∪ i C mod M
99 98 ex ⊢ φ ∧ y ⊆ A ∧ i ∈ A ∖ y → ∏ k ∈ y B mod M = ∏ k ∈ y C mod M → ∏ k ∈ y ∪ i B mod M = ∏ k ∈ y ∪ i C mod M
100 10 15 20 25 32 99 1 findcard2d ⊢ φ → ∏ k ∈ A B mod M = ∏ k ∈ A C mod M