Metamath Proof Explorer


Theorem fprodn0

Description: A finite product of nonzero terms is nonzero. (Contributed by Scott Fenton, 15-Jan-2018)

Ref Expression
Hypotheses fprodn0.1 ⊢ φ → A ∈ Fin
fprodn0.2 ⊢ φ ∧ k ∈ A → B ∈ ℂ
fprodn0.3 ⊢ φ ∧ k ∈ A → B ≠ 0
Assertion fprodn0 ⊢ φ → ∏ k ∈ A B ≠ 0

Proof

Step Hyp Ref Expression
1 fprodn0.1 ⊢ φ → A ∈ Fin
2 fprodn0.2 ⊢ φ ∧ k ∈ A → B ∈ ℂ
3 fprodn0.3 ⊢ φ ∧ k ∈ A → B ≠ 0
4 prodeq1 ⊢ A = ∅ → ∏ k ∈ A B = ∏ k ∈ ∅ B
5 prod0 ⊢ ∏ k ∈ ∅ B = 1
6 4 5 eqtrdi ⊢ A = ∅ → ∏ k ∈ A B = 1
7 ax-1ne0 ⊢ 1 ≠ 0
8 7 a1i ⊢ A = ∅ → 1 ≠ 0
9 6 8 eqnetrd ⊢ A = ∅ → ∏ k ∈ A B ≠ 0
10 9 a1i ⊢ φ → A = ∅ → ∏ k ∈ A B ≠ 0
11 prodfc ⊢ ∏ m ∈ A k ∈ A ⟼ B ⁡ m = ∏ k ∈ A B
12 fveq2 ⊢ m = f ⁡ n → k ∈ A ⟼ B ⁡ m = k ∈ A ⟼ B ⁡ f ⁡ n
13 simprl ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A → A ∈ ℕ
14 simprr ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A → f : 1 … A ⟶ 1-1 onto A
15 2 fmpttd ⊢ φ → k ∈ A ⟼ B : A ⟶ ℂ
16 15 adantr ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A → k ∈ A ⟼ B : A ⟶ ℂ
17 16 ffvelcdmda ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A ∧ m ∈ A → k ∈ A ⟼ B ⁡ m ∈ ℂ
18 f1of ⊢ f : 1 … A ⟶ 1-1 onto A → f : 1 … A ⟶ A
19 14 18 syl ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A → f : 1 … A ⟶ A
20 fvco3 ⊢ f : 1 … A ⟶ A ∧ n ∈ 1 … A → k ∈ A ⟼ B ∘ f ⁡ n = k ∈ A ⟼ B ⁡ f ⁡ n
21 19 20 sylan ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A ∧ n ∈ 1 … A → k ∈ A ⟼ B ∘ f ⁡ n = k ∈ A ⟼ B ⁡ f ⁡ n
22 12 13 14 17 21 fprod ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A → ∏ m ∈ A k ∈ A ⟼ B ⁡ m = seq 1 × k ∈ A ⟼ B ∘ f ⁡ A
23 11 22 eqtr3id ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A → ∏ k ∈ A B = seq 1 × k ∈ A ⟼ B ∘ f ⁡ A
24 nnuz ⊢ ℕ = ℤ ≥ 1
25 13 24 eleqtrdi ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A → A ∈ ℤ ≥ 1
26 fco ⊢ k ∈ A ⟼ B : A ⟶ ℂ ∧ f : 1 … A ⟶ A → k ∈ A ⟼ B ∘ f : 1 … A ⟶ ℂ
27 16 19 26 syl2anc ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A → k ∈ A ⟼ B ∘ f : 1 … A ⟶ ℂ
28 27 ffvelcdmda ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A ∧ m ∈ 1 … A → k ∈ A ⟼ B ∘ f ⁡ m ∈ ℂ
29 fvco3 ⊢ f : 1 … A ⟶ A ∧ m ∈ 1 … A → k ∈ A ⟼ B ∘ f ⁡ m = k ∈ A ⟼ B ⁡ f ⁡ m
30 19 29 sylan ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A ∧ m ∈ 1 … A → k ∈ A ⟼ B ∘ f ⁡ m = k ∈ A ⟼ B ⁡ f ⁡ m
31 18 ffvelcdmda ⊢ f : 1 … A ⟶ 1-1 onto A ∧ m ∈ 1 … A → f ⁡ m ∈ A
32 31 adantll ⊢ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A ∧ m ∈ 1 … A → f ⁡ m ∈ A
33 simpr ⊢ φ ∧ f ⁡ m ∈ A → f ⁡ m ∈ A
34 nfcv ⊢ Ⅎ _ k f ⁡ m
35 nfv ⊢ Ⅎ k φ
36 nfcsb1v ⊢ Ⅎ _ k ⦋ f ⁡ m / k⦌ B
37 36 nfel1 ⊢ Ⅎ k ⦋ f ⁡ m / k⦌ B ∈ ℂ
38 35 37 nfim ⊢ Ⅎ k φ → ⦋ f ⁡ m / k⦌ B ∈ ℂ
39 csbeq1a ⊢ k = f ⁡ m → B = ⦋ f ⁡ m / k⦌ B
40 39 eleq1d ⊢ k = f ⁡ m → B ∈ ℂ ↔ ⦋ f ⁡ m / k⦌ B ∈ ℂ
41 40 imbi2d ⊢ k = f ⁡ m → φ → B ∈ ℂ ↔ φ → ⦋ f ⁡ m / k⦌ B ∈ ℂ
42 2 expcom ⊢ k ∈ A → φ → B ∈ ℂ
43 34 38 41 42 vtoclgaf ⊢ f ⁡ m ∈ A → φ → ⦋ f ⁡ m / k⦌ B ∈ ℂ
44 43 impcom ⊢ φ ∧ f ⁡ m ∈ A → ⦋ f ⁡ m / k⦌ B ∈ ℂ
45 eqid ⊢ k ∈ A ⟼ B = k ∈ A ⟼ B
46 45 fvmpts ⊢ f ⁡ m ∈ A ∧ ⦋ f ⁡ m / k⦌ B ∈ ℂ → k ∈ A ⟼ B ⁡ f ⁡ m = ⦋ f ⁡ m / k⦌ B
47 33 44 46 syl2anc ⊢ φ ∧ f ⁡ m ∈ A → k ∈ A ⟼ B ⁡ f ⁡ m = ⦋ f ⁡ m / k⦌ B
48 nfcv ⊢ Ⅎ _ k 0
49 36 48 nfne ⊢ Ⅎ k ⦋ f ⁡ m / k⦌ B ≠ 0
50 35 49 nfim ⊢ Ⅎ k φ → ⦋ f ⁡ m / k⦌ B ≠ 0
51 39 neeq1d ⊢ k = f ⁡ m → B ≠ 0 ↔ ⦋ f ⁡ m / k⦌ B ≠ 0
52 51 imbi2d ⊢ k = f ⁡ m → φ → B ≠ 0 ↔ φ → ⦋ f ⁡ m / k⦌ B ≠ 0
53 3 expcom ⊢ k ∈ A → φ → B ≠ 0
54 34 50 52 53 vtoclgaf ⊢ f ⁡ m ∈ A → φ → ⦋ f ⁡ m / k⦌ B ≠ 0
55 54 impcom ⊢ φ ∧ f ⁡ m ∈ A → ⦋ f ⁡ m / k⦌ B ≠ 0
56 47 55 eqnetrd ⊢ φ ∧ f ⁡ m ∈ A → k ∈ A ⟼ B ⁡ f ⁡ m ≠ 0
57 32 56 sylan2 ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A ∧ m ∈ 1 … A → k ∈ A ⟼ B ⁡ f ⁡ m ≠ 0
58 57 anassrs ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A ∧ m ∈ 1 … A → k ∈ A ⟼ B ⁡ f ⁡ m ≠ 0
59 30 58 eqnetrd ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A ∧ m ∈ 1 … A → k ∈ A ⟼ B ∘ f ⁡ m ≠ 0
60 25 28 59 prodfn0 ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A → seq 1 × k ∈ A ⟼ B ∘ f ⁡ A ≠ 0
61 23 60 eqnetrd ⊢ φ ∧ A ∈ ℕ ∧ f : 1 … A ⟶ 1-1 onto A → ∏ k ∈ A B ≠ 0
62 61 expr ⊢ φ ∧ A ∈ ℕ → f : 1 … A ⟶ 1-1 onto A → ∏ k ∈ A B ≠ 0
63 62 exlimdv ⊢ φ ∧ A ∈ ℕ → ∃ f f : 1 … A ⟶ 1-1 onto A → ∏ k ∈ A B ≠ 0
64 63 expimpd ⊢ φ → A ∈ ℕ ∧ ∃ f f : 1 … A ⟶ 1-1 onto A → ∏ k ∈ A B ≠ 0
65 fz1f1o ⊢ A ∈ Fin → A = ∅ ∨ A ∈ ℕ ∧ ∃ f f : 1 … A ⟶ 1-1 onto A
66 1 65 syl ⊢ φ → A = ∅ ∨ A ∈ ℕ ∧ ∃ f f : 1 … A ⟶ 1-1 onto A
67 10 64 66 mpjaod ⊢ φ → ∏ k ∈ A B ≠ 0