Metamath Proof Explorer


Theorem mccl

Description: A multinomial coefficient, in its standard domain, is a positive integer. (Contributed by Glauco Siliprandi, 5-Apr-2020)

Ref Expression
Hypotheses mccl.kb ⊢ Ⅎ _ k B
mccl.a ⊢ φ → A ∈ Fin
mccl.b ⊢ φ → B ∈ ℕ 0 A
Assertion mccl ⊢ φ → ∑ k ∈ A B ⁡ k ! ∏ k ∈ A B ⁡ k ! ∈ ℕ

Proof

Step Hyp Ref Expression
1 mccl.kb ⊢ Ⅎ _ k B
2 mccl.a ⊢ φ → A ∈ Fin
3 mccl.b ⊢ φ → B ∈ ℕ 0 A
4 sumeq1 ⊢ a = ∅ → ∑ k ∈ a b ⁡ k = ∑ k ∈ ∅ b ⁡ k
5 4 fveq2d ⊢ a = ∅ → ∑ k ∈ a b ⁡ k ! = ∑ k ∈ ∅ b ⁡ k !
6 prodeq1 ⊢ a = ∅ → ∏ k ∈ a b ⁡ k ! = ∏ k ∈ ∅ b ⁡ k !
7 5 6 oveq12d ⊢ a = ∅ → ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! = ∑ k ∈ ∅ b ⁡ k ! ∏ k ∈ ∅ b ⁡ k !
8 7 eleq1d ⊢ a = ∅ → ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! ∈ ℕ ↔ ∑ k ∈ ∅ b ⁡ k ! ∏ k ∈ ∅ b ⁡ k ! ∈ ℕ
9 8 ralbidv ⊢ a = ∅ → ∀ b ∈ ℕ 0 a ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! ∈ ℕ ↔ ∀ b ∈ ℕ 0 a ∑ k ∈ ∅ b ⁡ k ! ∏ k ∈ ∅ b ⁡ k ! ∈ ℕ
10 oveq2 ⊢ a = ∅ → ℕ 0 a = ℕ 0 ∅
11 10 raleqdv ⊢ a = ∅ → ∀ b ∈ ℕ 0 a ∑ k ∈ ∅ b ⁡ k ! ∏ k ∈ ∅ b ⁡ k ! ∈ ℕ ↔ ∀ b ∈ ℕ 0 ∅ ∑ k ∈ ∅ b ⁡ k ! ∏ k ∈ ∅ b ⁡ k ! ∈ ℕ
12 9 11 bitrd ⊢ a = ∅ → ∀ b ∈ ℕ 0 a ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! ∈ ℕ ↔ ∀ b ∈ ℕ 0 ∅ ∑ k ∈ ∅ b ⁡ k ! ∏ k ∈ ∅ b ⁡ k ! ∈ ℕ
13 sumeq1 ⊢ a = c → ∑ k ∈ a b ⁡ k = ∑ k ∈ c b ⁡ k
14 13 fveq2d ⊢ a = c → ∑ k ∈ a b ⁡ k ! = ∑ k ∈ c b ⁡ k !
15 prodeq1 ⊢ a = c → ∏ k ∈ a b ⁡ k ! = ∏ k ∈ c b ⁡ k !
16 14 15 oveq12d ⊢ a = c → ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! = ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k !
17 16 eleq1d ⊢ a = c → ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! ∈ ℕ ↔ ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ
18 17 ralbidv ⊢ a = c → ∀ b ∈ ℕ 0 a ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! ∈ ℕ ↔ ∀ b ∈ ℕ 0 a ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ
19 oveq2 ⊢ a = c → ℕ 0 a = ℕ 0 c
20 19 raleqdv ⊢ a = c → ∀ b ∈ ℕ 0 a ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ ↔ ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ
21 18 20 bitrd ⊢ a = c → ∀ b ∈ ℕ 0 a ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! ∈ ℕ ↔ ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ
22 sumeq1 ⊢ a = c ∪ d → ∑ k ∈ a b ⁡ k = ∑ k ∈ c ∪ d b ⁡ k
23 22 fveq2d ⊢ a = c ∪ d → ∑ k ∈ a b ⁡ k ! = ∑ k ∈ c ∪ d b ⁡ k !
24 prodeq1 ⊢ a = c ∪ d → ∏ k ∈ a b ⁡ k ! = ∏ k ∈ c ∪ d b ⁡ k !
25 23 24 oveq12d ⊢ a = c ∪ d → ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! = ∑ k ∈ c ∪ d b ⁡ k ! ∏ k ∈ c ∪ d b ⁡ k !
26 25 eleq1d ⊢ a = c ∪ d → ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! ∈ ℕ ↔ ∑ k ∈ c ∪ d b ⁡ k ! ∏ k ∈ c ∪ d b ⁡ k ! ∈ ℕ
27 26 ralbidv ⊢ a = c ∪ d → ∀ b ∈ ℕ 0 a ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! ∈ ℕ ↔ ∀ b ∈ ℕ 0 a ∑ k ∈ c ∪ d b ⁡ k ! ∏ k ∈ c ∪ d b ⁡ k ! ∈ ℕ
28 oveq2 ⊢ a = c ∪ d → ℕ 0 a = ℕ 0 c ∪ d
29 28 raleqdv ⊢ a = c ∪ d → ∀ b ∈ ℕ 0 a ∑ k ∈ c ∪ d b ⁡ k ! ∏ k ∈ c ∪ d b ⁡ k ! ∈ ℕ ↔ ∀ b ∈ ℕ 0 c ∪ d ∑ k ∈ c ∪ d b ⁡ k ! ∏ k ∈ c ∪ d b ⁡ k ! ∈ ℕ
30 27 29 bitrd ⊢ a = c ∪ d → ∀ b ∈ ℕ 0 a ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! ∈ ℕ ↔ ∀ b ∈ ℕ 0 c ∪ d ∑ k ∈ c ∪ d b ⁡ k ! ∏ k ∈ c ∪ d b ⁡ k ! ∈ ℕ
31 sumeq1 ⊢ a = A → ∑ k ∈ a b ⁡ k = ∑ k ∈ A b ⁡ k
32 31 fveq2d ⊢ a = A → ∑ k ∈ a b ⁡ k ! = ∑ k ∈ A b ⁡ k !
33 prodeq1 ⊢ a = A → ∏ k ∈ a b ⁡ k ! = ∏ k ∈ A b ⁡ k !
34 32 33 oveq12d ⊢ a = A → ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! = ∑ k ∈ A b ⁡ k ! ∏ k ∈ A b ⁡ k !
35 34 eleq1d ⊢ a = A → ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! ∈ ℕ ↔ ∑ k ∈ A b ⁡ k ! ∏ k ∈ A b ⁡ k ! ∈ ℕ
36 35 ralbidv ⊢ a = A → ∀ b ∈ ℕ 0 a ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! ∈ ℕ ↔ ∀ b ∈ ℕ 0 a ∑ k ∈ A b ⁡ k ! ∏ k ∈ A b ⁡ k ! ∈ ℕ
37 oveq2 ⊢ a = A → ℕ 0 a = ℕ 0 A
38 37 raleqdv ⊢ a = A → ∀ b ∈ ℕ 0 a ∑ k ∈ A b ⁡ k ! ∏ k ∈ A b ⁡ k ! ∈ ℕ ↔ ∀ b ∈ ℕ 0 A ∑ k ∈ A b ⁡ k ! ∏ k ∈ A b ⁡ k ! ∈ ℕ
39 36 38 bitrd ⊢ a = A → ∀ b ∈ ℕ 0 a ∑ k ∈ a b ⁡ k ! ∏ k ∈ a b ⁡ k ! ∈ ℕ ↔ ∀ b ∈ ℕ 0 A ∑ k ∈ A b ⁡ k ! ∏ k ∈ A b ⁡ k ! ∈ ℕ
40 sum0 ⊢ ∑ k ∈ ∅ b ⁡ k = 0
41 40 fveq2i ⊢ ∑ k ∈ ∅ b ⁡ k ! = 0 !
42 fac0 ⊢ 0 ! = 1
43 41 42 eqtri ⊢ ∑ k ∈ ∅ b ⁡ k ! = 1
44 prod0 ⊢ ∏ k ∈ ∅ b ⁡ k ! = 1
45 43 44 oveq12i ⊢ ∑ k ∈ ∅ b ⁡ k ! ∏ k ∈ ∅ b ⁡ k ! = 1 1
46 1div1e1 ⊢ 1 1 = 1
47 45 46 eqtri ⊢ ∑ k ∈ ∅ b ⁡ k ! ∏ k ∈ ∅ b ⁡ k ! = 1
48 1nn ⊢ 1 ∈ ℕ
49 47 48 eqeltri ⊢ ∑ k ∈ ∅ b ⁡ k ! ∏ k ∈ ∅ b ⁡ k ! ∈ ℕ
50 49 a1i ⊢ φ ∧ b ∈ ℕ 0 ∅ → ∑ k ∈ ∅ b ⁡ k ! ∏ k ∈ ∅ b ⁡ k ! ∈ ℕ
51 50 ralrimiva ⊢ φ → ∀ b ∈ ℕ 0 ∅ ∑ k ∈ ∅ b ⁡ k ! ∏ k ∈ ∅ b ⁡ k ! ∈ ℕ
52 nfv ⊢ Ⅎ b φ ∧ c ⊆ A ∧ d ∈ A ∖ c
53 nfra1 ⊢ Ⅎ b ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ
54 52 53 nfan ⊢ Ⅎ b φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ
55 simpll ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ ∧ b ∈ ℕ 0 c ∪ d → φ ∧ c ⊆ A ∧ d ∈ A ∖ c
56 fveq2 ⊢ k = j → b ⁡ k = b ⁡ j
57 56 cbvsumv ⊢ ∑ k ∈ c b ⁡ k = ∑ j ∈ c b ⁡ j
58 57 a1i ⊢ b = e → ∑ k ∈ c b ⁡ k = ∑ j ∈ c b ⁡ j
59 fveq1 ⊢ b = e → b ⁡ j = e ⁡ j
60 59 sumeq2sdv ⊢ b = e → ∑ j ∈ c b ⁡ j = ∑ j ∈ c e ⁡ j
61 58 60 eqtrd ⊢ b = e → ∑ k ∈ c b ⁡ k = ∑ j ∈ c e ⁡ j
62 61 fveq2d ⊢ b = e → ∑ k ∈ c b ⁡ k ! = ∑ j ∈ c e ⁡ j !
63 2fveq3 ⊢ k = j → b ⁡ k ! = b ⁡ j !
64 63 cbvprodv ⊢ ∏ k ∈ c b ⁡ k ! = ∏ j ∈ c b ⁡ j !
65 64 a1i ⊢ b = e → ∏ k ∈ c b ⁡ k ! = ∏ j ∈ c b ⁡ j !
66 59 fveq2d ⊢ b = e → b ⁡ j ! = e ⁡ j !
67 66 prodeq2ad ⊢ b = e → ∏ j ∈ c b ⁡ j ! = ∏ j ∈ c e ⁡ j !
68 65 67 eqtrd ⊢ b = e → ∏ k ∈ c b ⁡ k ! = ∏ j ∈ c e ⁡ j !
69 62 68 oveq12d ⊢ b = e → ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! = ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j !
70 69 eleq1d ⊢ b = e → ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ ↔ ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ
71 70 cbvralvw ⊢ ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ ↔ ∀ e ∈ ℕ 0 c ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ
72 71 biimpi ⊢ ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ → ∀ e ∈ ℕ 0 c ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ
73 72 ad2antlr ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ ∧ b ∈ ℕ 0 c ∪ d → ∀ e ∈ ℕ 0 c ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ
74 simpr ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ ∧ b ∈ ℕ 0 c ∪ d → b ∈ ℕ 0 c ∪ d
75 2 ad3antrrr ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ e ∈ ℕ 0 c ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ ∧ b ∈ ℕ 0 c ∪ d → A ∈ Fin
76 simprl ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c → c ⊆ A
77 76 ad2antrr ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ e ∈ ℕ 0 c ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ ∧ b ∈ ℕ 0 c ∪ d → c ⊆ A
78 simprr ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c → d ∈ A ∖ c
79 78 ad2antrr ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ e ∈ ℕ 0 c ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ ∧ b ∈ ℕ 0 c ∪ d → d ∈ A ∖ c
80 simpr ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ e ∈ ℕ 0 c ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ ∧ b ∈ ℕ 0 c ∪ d → b ∈ ℕ 0 c ∪ d
81 fveq2 ⊢ j = k → e ⁡ j = e ⁡ k
82 81 cbvsumv ⊢ ∑ j ∈ c e ⁡ j = ∑ k ∈ c e ⁡ k
83 82 fveq2i ⊢ ∑ j ∈ c e ⁡ j ! = ∑ k ∈ c e ⁡ k !
84 2fveq3 ⊢ j = k → e ⁡ j ! = e ⁡ k !
85 84 cbvprodv ⊢ ∏ j ∈ c e ⁡ j ! = ∏ k ∈ c e ⁡ k !
86 83 85 oveq12i ⊢ ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! = ∑ k ∈ c e ⁡ k ! ∏ k ∈ c e ⁡ k !
87 86 eleq1i ⊢ ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ ↔ ∑ k ∈ c e ⁡ k ! ∏ k ∈ c e ⁡ k ! ∈ ℕ
88 87 ralbii ⊢ ∀ e ∈ ℕ 0 c ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ ↔ ∀ e ∈ ℕ 0 c ∑ k ∈ c e ⁡ k ! ∏ k ∈ c e ⁡ k ! ∈ ℕ
89 88 biimpi ⊢ ∀ e ∈ ℕ 0 c ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ → ∀ e ∈ ℕ 0 c ∑ k ∈ c e ⁡ k ! ∏ k ∈ c e ⁡ k ! ∈ ℕ
90 89 ad2antlr ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ e ∈ ℕ 0 c ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ ∧ b ∈ ℕ 0 c ∪ d → ∀ e ∈ ℕ 0 c ∑ k ∈ c e ⁡ k ! ∏ k ∈ c e ⁡ k ! ∈ ℕ
91 75 77 79 80 90 mccllem ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ e ∈ ℕ 0 c ∑ j ∈ c e ⁡ j ! ∏ j ∈ c e ⁡ j ! ∈ ℕ ∧ b ∈ ℕ 0 c ∪ d → ∑ k ∈ c ∪ d b ⁡ k ! ∏ k ∈ c ∪ d b ⁡ k ! ∈ ℕ
92 55 73 74 91 syl21anc ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ ∧ b ∈ ℕ 0 c ∪ d → ∑ k ∈ c ∪ d b ⁡ k ! ∏ k ∈ c ∪ d b ⁡ k ! ∈ ℕ
93 92 ex ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ → b ∈ ℕ 0 c ∪ d → ∑ k ∈ c ∪ d b ⁡ k ! ∏ k ∈ c ∪ d b ⁡ k ! ∈ ℕ
94 54 93 ralrimi ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c ∧ ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ → ∀ b ∈ ℕ 0 c ∪ d ∑ k ∈ c ∪ d b ⁡ k ! ∏ k ∈ c ∪ d b ⁡ k ! ∈ ℕ
95 94 ex ⊢ φ ∧ c ⊆ A ∧ d ∈ A ∖ c → ∀ b ∈ ℕ 0 c ∑ k ∈ c b ⁡ k ! ∏ k ∈ c b ⁡ k ! ∈ ℕ → ∀ b ∈ ℕ 0 c ∪ d ∑ k ∈ c ∪ d b ⁡ k ! ∏ k ∈ c ∪ d b ⁡ k ! ∈ ℕ
96 12 21 30 39 51 95 2 findcard2d ⊢ φ → ∀ b ∈ ℕ 0 A ∑ k ∈ A b ⁡ k ! ∏ k ∈ A b ⁡ k ! ∈ ℕ
97 nfcv ⊢ Ⅎ _ k b
98 97 1 nfeq ⊢ Ⅎ k b = B
99 fveq1 ⊢ b = B → b ⁡ k = B ⁡ k
100 99 a1d ⊢ b = B → k ∈ A → b ⁡ k = B ⁡ k
101 98 100 ralrimi ⊢ b = B → ∀ k ∈ A b ⁡ k = B ⁡ k
102 101 sumeq2d ⊢ b = B → ∑ k ∈ A b ⁡ k = ∑ k ∈ A B ⁡ k
103 102 fveq2d ⊢ b = B → ∑ k ∈ A b ⁡ k ! = ∑ k ∈ A B ⁡ k !
104 99 fveq2d ⊢ b = B → b ⁡ k ! = B ⁡ k !
105 104 a1d ⊢ b = B → k ∈ A → b ⁡ k ! = B ⁡ k !
106 98 105 ralrimi ⊢ b = B → ∀ k ∈ A b ⁡ k ! = B ⁡ k !
107 106 prodeq2d ⊢ b = B → ∏ k ∈ A b ⁡ k ! = ∏ k ∈ A B ⁡ k !
108 103 107 oveq12d ⊢ b = B → ∑ k ∈ A b ⁡ k ! ∏ k ∈ A b ⁡ k ! = ∑ k ∈ A B ⁡ k ! ∏ k ∈ A B ⁡ k !
109 108 eleq1d ⊢ b = B → ∑ k ∈ A b ⁡ k ! ∏ k ∈ A b ⁡ k ! ∈ ℕ ↔ ∑ k ∈ A B ⁡ k ! ∏ k ∈ A B ⁡ k ! ∈ ℕ
110 109 rspccva ⊢ ∀ b ∈ ℕ 0 A ∑ k ∈ A b ⁡ k ! ∏ k ∈ A b ⁡ k ! ∈ ℕ ∧ B ∈ ℕ 0 A → ∑ k ∈ A B ⁡ k ! ∏ k ∈ A B ⁡ k ! ∈ ℕ
111 96 3 110 syl2anc ⊢ φ → ∑ k ∈ A B ⁡ k ! ∏ k ∈ A B ⁡ k ! ∈ ℕ