Metamath Proof Explorer


Theorem hgt750lemg

Description: Lemma for the statement 7.50 of Helfgott p. 69. Applying a permutation T to the three factors of a product does not change the result. (Contributed by Thierry Arnoux, 1-Jan-2022)

Ref Expression
Hypotheses hgt750lemg.f ⊢ F = c ∈ R ⟼ c ∘ T
hgt750lemg.t ⊢ φ → T : 0 ..^ 3 ⟶ 1-1 onto 0 ..^ 3
hgt750lemg.n ⊢ φ → N : 0 ..^ 3 ⟶ ℕ
hgt750lemg.l ⊢ φ → L : ℕ ⟶ ℝ
hgt750lemg.1 ⊢ φ → N ∈ R
Assertion hgt750lemg ⊢ φ → L ⁡ F ⁡ N ⁡ 0 ⁢ L ⁡ F ⁡ N ⁡ 1 ⁢ L ⁡ F ⁡ N ⁡ 2 = L ⁡ N ⁡ 0 ⁢ L ⁡ N ⁡ 1 ⁢ L ⁡ N ⁡ 2

Proof

Step Hyp Ref Expression
1 hgt750lemg.f ⊢ F = c ∈ R ⟼ c ∘ T
2 hgt750lemg.t ⊢ φ → T : 0 ..^ 3 ⟶ 1-1 onto 0 ..^ 3
3 hgt750lemg.n ⊢ φ → N : 0 ..^ 3 ⟶ ℕ
4 hgt750lemg.l ⊢ φ → L : ℕ ⟶ ℝ
5 hgt750lemg.1 ⊢ φ → N ∈ R
6 2fveq3 ⊢ a = T ⁡ b → L ⁡ N ⁡ a = L ⁡ N ⁡ T ⁡ b
7 tpfi ⊢ 0 1 2 ∈ Fin
8 7 a1i ⊢ φ → 0 1 2 ∈ Fin
9 fzo0to3tp ⊢ 0 ..^ 3 = 0 1 2
10 f1oeq23 ⊢ 0 ..^ 3 = 0 1 2 ∧ 0 ..^ 3 = 0 1 2 → T : 0 ..^ 3 ⟶ 1-1 onto 0 ..^ 3 ↔ T : 0 1 2 ⟶ 1-1 onto 0 1 2
11 9 9 10 mp2an ⊢ T : 0 ..^ 3 ⟶ 1-1 onto 0 ..^ 3 ↔ T : 0 1 2 ⟶ 1-1 onto 0 1 2
12 2 11 sylib ⊢ φ → T : 0 1 2 ⟶ 1-1 onto 0 1 2
13 eqidd ⊢ φ ∧ b ∈ 0 1 2 → T ⁡ b = T ⁡ b
14 4 adantr ⊢ φ ∧ a ∈ 0 1 2 → L : ℕ ⟶ ℝ
15 3 adantr ⊢ φ ∧ a ∈ 0 1 2 → N : 0 ..^ 3 ⟶ ℕ
16 simpr ⊢ φ ∧ a ∈ 0 1 2 → a ∈ 0 1 2
17 16 9 eleqtrrdi ⊢ φ ∧ a ∈ 0 1 2 → a ∈ 0 ..^ 3
18 15 17 ffvelcdmd ⊢ φ ∧ a ∈ 0 1 2 → N ⁡ a ∈ ℕ
19 14 18 ffvelcdmd ⊢ φ ∧ a ∈ 0 1 2 → L ⁡ N ⁡ a ∈ ℝ
20 19 recnd ⊢ φ ∧ a ∈ 0 1 2 → L ⁡ N ⁡ a ∈ ℂ
21 6 8 12 13 20 fprodf1o ⊢ φ → ∏ a ∈ 0 1 2 L ⁡ N ⁡ a = ∏ b ∈ 0 1 2 L ⁡ N ⁡ T ⁡ b
22 1 a1i ⊢ φ → F = c ∈ R ⟼ c ∘ T
23 simpr ⊢ φ ∧ c = N → c = N
24 23 coeq1d ⊢ φ ∧ c = N → c ∘ T = N ∘ T
25 f1of ⊢ T : 0 ..^ 3 ⟶ 1-1 onto 0 ..^ 3 → T : 0 ..^ 3 ⟶ 0 ..^ 3
26 2 25 syl ⊢ φ → T : 0 ..^ 3 ⟶ 0 ..^ 3
27 ovexd ⊢ φ → 0 ..^ 3 ∈ V
28 26 27 fexd ⊢ φ → T ∈ V
29 coexg ⊢ N ∈ R ∧ T ∈ V → N ∘ T ∈ V
30 5 28 29 syl2anc ⊢ φ → N ∘ T ∈ V
31 22 24 5 30 fvmptd ⊢ φ → F ⁡ N = N ∘ T
32 31 adantr ⊢ φ ∧ b ∈ 0 1 2 → F ⁡ N = N ∘ T
33 32 fveq1d ⊢ φ ∧ b ∈ 0 1 2 → F ⁡ N ⁡ b = N ∘ T ⁡ b
34 f1ofun ⊢ T : 0 ..^ 3 ⟶ 1-1 onto 0 ..^ 3 → Fun ⁡ T
35 2 34 syl ⊢ φ → Fun ⁡ T
36 35 adantr ⊢ φ ∧ b ∈ 0 1 2 → Fun ⁡ T
37 f1odm ⊢ T : 0 1 2 ⟶ 1-1 onto 0 1 2 → dom ⁡ T = 0 1 2
38 12 37 syl ⊢ φ → dom ⁡ T = 0 1 2
39 38 eleq2d ⊢ φ → b ∈ dom ⁡ T ↔ b ∈ 0 1 2
40 39 biimpar ⊢ φ ∧ b ∈ 0 1 2 → b ∈ dom ⁡ T
41 fvco ⊢ Fun ⁡ T ∧ b ∈ dom ⁡ T → N ∘ T ⁡ b = N ⁡ T ⁡ b
42 36 40 41 syl2anc ⊢ φ ∧ b ∈ 0 1 2 → N ∘ T ⁡ b = N ⁡ T ⁡ b
43 33 42 eqtr2d ⊢ φ ∧ b ∈ 0 1 2 → N ⁡ T ⁡ b = F ⁡ N ⁡ b
44 43 fveq2d ⊢ φ ∧ b ∈ 0 1 2 → L ⁡ N ⁡ T ⁡ b = L ⁡ F ⁡ N ⁡ b
45 44 prodeq2dv ⊢ φ → ∏ b ∈ 0 1 2 L ⁡ N ⁡ T ⁡ b = ∏ b ∈ 0 1 2 L ⁡ F ⁡ N ⁡ b
46 21 45 eqtr2d ⊢ φ → ∏ b ∈ 0 1 2 L ⁡ F ⁡ N ⁡ b = ∏ a ∈ 0 1 2 L ⁡ N ⁡ a
47 2fveq3 ⊢ b = 0 → L ⁡ F ⁡ N ⁡ b = L ⁡ F ⁡ N ⁡ 0
48 2fveq3 ⊢ b = 1 → L ⁡ F ⁡ N ⁡ b = L ⁡ F ⁡ N ⁡ 1
49 c0ex ⊢ 0 ∈ V
50 49 a1i ⊢ φ → 0 ∈ V
51 1ex ⊢ 1 ∈ V
52 51 a1i ⊢ φ → 1 ∈ V
53 31 fveq1d ⊢ φ → F ⁡ N ⁡ 0 = N ∘ T ⁡ 0
54 49 tpid1 ⊢ 0 ∈ 0 1 2
55 54 38 eleqtrrid ⊢ φ → 0 ∈ dom ⁡ T
56 fvco ⊢ Fun ⁡ T ∧ 0 ∈ dom ⁡ T → N ∘ T ⁡ 0 = N ⁡ T ⁡ 0
57 35 55 56 syl2anc ⊢ φ → N ∘ T ⁡ 0 = N ⁡ T ⁡ 0
58 53 57 eqtrd ⊢ φ → F ⁡ N ⁡ 0 = N ⁡ T ⁡ 0
59 54 9 eleqtrri ⊢ 0 ∈ 0 ..^ 3
60 59 a1i ⊢ φ → 0 ∈ 0 ..^ 3
61 26 60 ffvelcdmd ⊢ φ → T ⁡ 0 ∈ 0 ..^ 3
62 3 61 ffvelcdmd ⊢ φ → N ⁡ T ⁡ 0 ∈ ℕ
63 58 62 eqeltrd ⊢ φ → F ⁡ N ⁡ 0 ∈ ℕ
64 4 63 ffvelcdmd ⊢ φ → L ⁡ F ⁡ N ⁡ 0 ∈ ℝ
65 64 recnd ⊢ φ → L ⁡ F ⁡ N ⁡ 0 ∈ ℂ
66 31 fveq1d ⊢ φ → F ⁡ N ⁡ 1 = N ∘ T ⁡ 1
67 1eltp012 ⊢ 1 ∈ 0 1 2
68 67 38 eleqtrrid ⊢ φ → 1 ∈ dom ⁡ T
69 fvco ⊢ Fun ⁡ T ∧ 1 ∈ dom ⁡ T → N ∘ T ⁡ 1 = N ⁡ T ⁡ 1
70 35 68 69 syl2anc ⊢ φ → N ∘ T ⁡ 1 = N ⁡ T ⁡ 1
71 66 70 eqtrd ⊢ φ → F ⁡ N ⁡ 1 = N ⁡ T ⁡ 1
72 67 9 eleqtrri ⊢ 1 ∈ 0 ..^ 3
73 72 a1i ⊢ φ → 1 ∈ 0 ..^ 3
74 26 73 ffvelcdmd ⊢ φ → T ⁡ 1 ∈ 0 ..^ 3
75 3 74 ffvelcdmd ⊢ φ → N ⁡ T ⁡ 1 ∈ ℕ
76 71 75 eqeltrd ⊢ φ → F ⁡ N ⁡ 1 ∈ ℕ
77 4 76 ffvelcdmd ⊢ φ → L ⁡ F ⁡ N ⁡ 1 ∈ ℝ
78 77 recnd ⊢ φ → L ⁡ F ⁡ N ⁡ 1 ∈ ℂ
79 0ne1 ⊢ 0 ≠ 1
80 79 a1i ⊢ φ → 0 ≠ 1
81 2fveq3 ⊢ b = 2 → L ⁡ F ⁡ N ⁡ b = L ⁡ F ⁡ N ⁡ 2
82 2ex ⊢ 2 ∈ V
83 82 a1i ⊢ φ → 2 ∈ V
84 31 fveq1d ⊢ φ → F ⁡ N ⁡ 2 = N ∘ T ⁡ 2
85 82 tpid3 ⊢ 2 ∈ 0 1 2
86 85 38 eleqtrrid ⊢ φ → 2 ∈ dom ⁡ T
87 fvco ⊢ Fun ⁡ T ∧ 2 ∈ dom ⁡ T → N ∘ T ⁡ 2 = N ⁡ T ⁡ 2
88 35 86 87 syl2anc ⊢ φ → N ∘ T ⁡ 2 = N ⁡ T ⁡ 2
89 84 88 eqtrd ⊢ φ → F ⁡ N ⁡ 2 = N ⁡ T ⁡ 2
90 85 9 eleqtrri ⊢ 2 ∈ 0 ..^ 3
91 90 a1i ⊢ φ → 2 ∈ 0 ..^ 3
92 26 91 ffvelcdmd ⊢ φ → T ⁡ 2 ∈ 0 ..^ 3
93 3 92 ffvelcdmd ⊢ φ → N ⁡ T ⁡ 2 ∈ ℕ
94 89 93 eqeltrd ⊢ φ → F ⁡ N ⁡ 2 ∈ ℕ
95 4 94 ffvelcdmd ⊢ φ → L ⁡ F ⁡ N ⁡ 2 ∈ ℝ
96 95 recnd ⊢ φ → L ⁡ F ⁡ N ⁡ 2 ∈ ℂ
97 0ne2 ⊢ 0 ≠ 2
98 97 a1i ⊢ φ → 0 ≠ 2
99 1ne2 ⊢ 1 ≠ 2
100 99 a1i ⊢ φ → 1 ≠ 2
101 47 48 50 52 65 78 80 81 83 96 98 100 prodtp ⊢ φ → ∏ b ∈ 0 1 2 L ⁡ F ⁡ N ⁡ b = L ⁡ F ⁡ N ⁡ 0 ⁢ L ⁡ F ⁡ N ⁡ 1 ⁢ L ⁡ F ⁡ N ⁡ 2
102 2fveq3 ⊢ a = 0 → L ⁡ N ⁡ a = L ⁡ N ⁡ 0
103 2fveq3 ⊢ a = 1 → L ⁡ N ⁡ a = L ⁡ N ⁡ 1
104 3 60 ffvelcdmd ⊢ φ → N ⁡ 0 ∈ ℕ
105 4 104 ffvelcdmd ⊢ φ → L ⁡ N ⁡ 0 ∈ ℝ
106 105 recnd ⊢ φ → L ⁡ N ⁡ 0 ∈ ℂ
107 3 73 ffvelcdmd ⊢ φ → N ⁡ 1 ∈ ℕ
108 4 107 ffvelcdmd ⊢ φ → L ⁡ N ⁡ 1 ∈ ℝ
109 108 recnd ⊢ φ → L ⁡ N ⁡ 1 ∈ ℂ
110 2fveq3 ⊢ a = 2 → L ⁡ N ⁡ a = L ⁡ N ⁡ 2
111 3 91 ffvelcdmd ⊢ φ → N ⁡ 2 ∈ ℕ
112 4 111 ffvelcdmd ⊢ φ → L ⁡ N ⁡ 2 ∈ ℝ
113 112 recnd ⊢ φ → L ⁡ N ⁡ 2 ∈ ℂ
114 102 103 50 52 106 109 80 110 83 113 98 100 prodtp ⊢ φ → ∏ a ∈ 0 1 2 L ⁡ N ⁡ a = L ⁡ N ⁡ 0 ⁢ L ⁡ N ⁡ 1 ⁢ L ⁡ N ⁡ 2
115 46 101 114 3eqtr3d ⊢ φ → L ⁡ F ⁡ N ⁡ 0 ⁢ L ⁡ F ⁡ N ⁡ 1 ⁢ L ⁡ F ⁡ N ⁡ 2 = L ⁡ N ⁡ 0 ⁢ L ⁡ N ⁡ 1 ⁢ L ⁡ N ⁡ 2
116 65 78 96 mulassd ⊢ φ → L ⁡ F ⁡ N ⁡ 0 ⁢ L ⁡ F ⁡ N ⁡ 1 ⁢ L ⁡ F ⁡ N ⁡ 2 = L ⁡ F ⁡ N ⁡ 0 ⁢ L ⁡ F ⁡ N ⁡ 1 ⁢ L ⁡ F ⁡ N ⁡ 2
117 106 109 113 mulassd ⊢ φ → L ⁡ N ⁡ 0 ⁢ L ⁡ N ⁡ 1 ⁢ L ⁡ N ⁡ 2 = L ⁡ N ⁡ 0 ⁢ L ⁡ N ⁡ 1 ⁢ L ⁡ N ⁡ 2
118 115 116 117 3eqtr3d ⊢ φ → L ⁡ F ⁡ N ⁡ 0 ⁢ L ⁡ F ⁡ N ⁡ 1 ⁢ L ⁡ F ⁡ N ⁡ 2 = L ⁡ N ⁡ 0 ⁢ L ⁡ N ⁡ 1 ⁢ L ⁡ N ⁡ 2