Metamath Proof Explorer


Theorem wilthlem2

Description: Lemma for wilth : induction step. The "hand proof" version of this theorem works by writing out the list of all numbers from 1 to P - 1 in pairs such that a number is paired with its inverse. Every number has a unique inverse different from itself except 1 and P - 1 , and so each pair multiplies to 1 , and 1 and P - 1 == -u 1 multiply to -u 1 , so the full product is equal to -u 1 . Here we make this precise by doing the product pair by pair.

The induction hypothesis says that every subset S of 1 ... ( P - 1 ) that is closed under inverse (i.e. all pairs are matched up) and contains P - 1 multiplies to -u 1 mod P . Given such a set, we take out one element z =/= P - 1 . If there are no such elements, then S = { P - 1 } which forms the base case. Otherwise, S \ { z , z ^ -u 1 } is also closed under inverse and contains P - 1 , so the induction hypothesis says that this equals -u 1 ; and the remaining two elements are either equal to each other, in which case wilthlem1 gives that z = 1 or P - 1 , and we've already excluded the second case, so the product gives 1 ; or z =/= z ^ -u 1 and their product is 1 . In either case the accumulated product is unaffected. (Contributed by Mario Carneiro, 24-Jan-2015) (Proof shortened by AV, 27-Jul-2019)

Ref Expression
Hypotheses wilthlem.t ⊢ 𝑇 = ( mulGrp ‘ ℂfld )
wilthlem.a ⊢ 𝐴 = { 𝑥 ∈ 𝒫 ( 1 ... ( 𝑃 − 1 ) ) ∣ ( ( 𝑃 − 1 ) ∈ 𝑥 ∧ ∀ 𝑦 ∈ 𝑥 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑥 ) }
wilthlem2.p ⊢ ( 𝜑 → 𝑃 ∈ ℙ )
wilthlem2.s ⊢ ( 𝜑 → 𝑆 ∈ 𝐴 )
wilthlem2.r ⊢ ( 𝜑 → ∀ 𝑠 ∈ 𝐴 ( 𝑠 ⊊ 𝑆 → ( ( 𝑇 Σg ( I ↾ 𝑠 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) ) )
Assertion wilthlem2 ( 𝜑 → ( ( 𝑇 Σg ( I ↾ 𝑆 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) )

Proof

Step Hyp Ref Expression
1 wilthlem.t ⊢ 𝑇 = ( mulGrp ‘ ℂfld )
2 wilthlem.a ⊢ 𝐴 = { 𝑥 ∈ 𝒫 ( 1 ... ( 𝑃 − 1 ) ) ∣ ( ( 𝑃 − 1 ) ∈ 𝑥 ∧ ∀ 𝑦 ∈ 𝑥 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑥 ) }
3 wilthlem2.p ⊢ ( 𝜑 → 𝑃 ∈ ℙ )
4 wilthlem2.s ⊢ ( 𝜑 → 𝑆 ∈ 𝐴 )
5 wilthlem2.r ⊢ ( 𝜑 → ∀ 𝑠 ∈ 𝐴 ( 𝑠 ⊊ 𝑆 → ( ( 𝑇 Σg ( I ↾ 𝑠 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) ) )
6 simpr ⊢ ( ( 𝜑 ∧ 𝑆 ⊆ { ( 𝑃 − 1 ) } ) → 𝑆 ⊆ { ( 𝑃 − 1 ) } )
7 eleq2 ⊢ ( 𝑥 = 𝑆 → ( ( 𝑃 − 1 ) ∈ 𝑥 ↔ ( 𝑃 − 1 ) ∈ 𝑆 ) )
8 eleq2 ⊢ ( 𝑥 = 𝑆 → ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑥 ↔ ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 ) )
9 8 raleqbi1dv ⊢ ( 𝑥 = 𝑆 → ( ∀ 𝑦 ∈ 𝑥 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑥 ↔ ∀ 𝑦 ∈ 𝑆 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 ) )
10 7 9 anbi12d ⊢ ( 𝑥 = 𝑆 → ( ( ( 𝑃 − 1 ) ∈ 𝑥 ∧ ∀ 𝑦 ∈ 𝑥 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑥 ) ↔ ( ( 𝑃 − 1 ) ∈ 𝑆 ∧ ∀ 𝑦 ∈ 𝑆 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 ) ) )
11 10 2 elrab2 ⊢ ( 𝑆 ∈ 𝐴 ↔ ( 𝑆 ∈ 𝒫 ( 1 ... ( 𝑃 − 1 ) ) ∧ ( ( 𝑃 − 1 ) ∈ 𝑆 ∧ ∀ 𝑦 ∈ 𝑆 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 ) ) )
12 4 11 sylib ⊢ ( 𝜑 → ( 𝑆 ∈ 𝒫 ( 1 ... ( 𝑃 − 1 ) ) ∧ ( ( 𝑃 − 1 ) ∈ 𝑆 ∧ ∀ 𝑦 ∈ 𝑆 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 ) ) )
13 12 simprd ⊢ ( 𝜑 → ( ( 𝑃 − 1 ) ∈ 𝑆 ∧ ∀ 𝑦 ∈ 𝑆 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 ) )
14 13 simpld ⊢ ( 𝜑 → ( 𝑃 − 1 ) ∈ 𝑆 )
15 14 snssd ⊢ ( 𝜑 → { ( 𝑃 − 1 ) } ⊆ 𝑆 )
16 15 adantr ⊢ ( ( 𝜑 ∧ 𝑆 ⊆ { ( 𝑃 − 1 ) } ) → { ( 𝑃 − 1 ) } ⊆ 𝑆 )
17 6 16 eqssd ⊢ ( ( 𝜑 ∧ 𝑆 ⊆ { ( 𝑃 − 1 ) } ) → 𝑆 = { ( 𝑃 − 1 ) } )
18 17 reseq2d ⊢ ( ( 𝜑 ∧ 𝑆 ⊆ { ( 𝑃 − 1 ) } ) → ( I ↾ 𝑆 ) = ( I ↾ { ( 𝑃 − 1 ) } ) )
19 mptresid ⊢ ( I ↾ { ( 𝑃 − 1 ) } ) = ( 𝑧 ∈ { ( 𝑃 − 1 ) } ↦ 𝑧 )
20 18 19 eqtrdi ⊢ ( ( 𝜑 ∧ 𝑆 ⊆ { ( 𝑃 − 1 ) } ) → ( I ↾ 𝑆 ) = ( 𝑧 ∈ { ( 𝑃 − 1 ) } ↦ 𝑧 ) )
21 20 oveq2d ⊢ ( ( 𝜑 ∧ 𝑆 ⊆ { ( 𝑃 − 1 ) } ) → ( 𝑇 Σg ( I ↾ 𝑆 ) ) = ( 𝑇 Σg ( 𝑧 ∈ { ( 𝑃 − 1 ) } ↦ 𝑧 ) ) )
22 21 oveq1d ⊢ ( ( 𝜑 ∧ 𝑆 ⊆ { ( 𝑃 − 1 ) } ) → ( ( 𝑇 Σg ( I ↾ 𝑆 ) ) mod 𝑃 ) = ( ( 𝑇 Σg ( 𝑧 ∈ { ( 𝑃 − 1 ) } ↦ 𝑧 ) ) mod 𝑃 ) )
23 prmnn ⊢ ( 𝑃 ∈ ℙ → 𝑃 ∈ ℕ )
24 3 23 syl ⊢ ( 𝜑 → 𝑃 ∈ ℕ )
25 24 nncnd ⊢ ( 𝜑 → 𝑃 ∈ ℂ )
26 ax-1cn ⊢ 1 ∈ ℂ
27 negsub ⊢ ( ( 𝑃 ∈ ℂ ∧ 1 ∈ ℂ ) → ( 𝑃 + - 1 ) = ( 𝑃 − 1 ) )
28 25 26 27 sylancl ⊢ ( 𝜑 → ( 𝑃 + - 1 ) = ( 𝑃 − 1 ) )
29 neg1cn ⊢ - 1 ∈ ℂ
30 addcom ⊢ ( ( 𝑃 ∈ ℂ ∧ - 1 ∈ ℂ ) → ( 𝑃 + - 1 ) = ( - 1 + 𝑃 ) )
31 25 29 30 sylancl ⊢ ( 𝜑 → ( 𝑃 + - 1 ) = ( - 1 + 𝑃 ) )
32 28 31 eqtr3d ⊢ ( 𝜑 → ( 𝑃 − 1 ) = ( - 1 + 𝑃 ) )
33 cnring ⊢ ℂfld ∈ Ring
34 1 ringmgp ⊢ ( ℂfld ∈ Ring → 𝑇 ∈ Mnd )
35 33 34 mp1i ⊢ ( 𝜑 → 𝑇 ∈ Mnd )
36 nnm1nn0 ⊢ ( 𝑃 ∈ ℕ → ( 𝑃 − 1 ) ∈ ℕ0 )
37 24 36 syl ⊢ ( 𝜑 → ( 𝑃 − 1 ) ∈ ℕ0 )
38 37 nn0cnd ⊢ ( 𝜑 → ( 𝑃 − 1 ) ∈ ℂ )
39 cnfldbas ⊢ ℂ = ( Base ‘ ℂfld )
40 1 39 mgpbas ⊢ ℂ = ( Base ‘ 𝑇 )
41 id ⊢ ( 𝑧 = ( 𝑃 − 1 ) → 𝑧 = ( 𝑃 − 1 ) )
42 40 41 gsumsn ⊢ ( ( 𝑇 ∈ Mnd ∧ ( 𝑃 − 1 ) ∈ ℂ ∧ ( 𝑃 − 1 ) ∈ ℂ ) → ( 𝑇 Σg ( 𝑧 ∈ { ( 𝑃 − 1 ) } ↦ 𝑧 ) ) = ( 𝑃 − 1 ) )
43 35 38 38 42 syl3anc ⊢ ( 𝜑 → ( 𝑇 Σg ( 𝑧 ∈ { ( 𝑃 − 1 ) } ↦ 𝑧 ) ) = ( 𝑃 − 1 ) )
44 25 mullidd ⊢ ( 𝜑 → ( 1 · 𝑃 ) = 𝑃 )
45 44 oveq2d ⊢ ( 𝜑 → ( - 1 + ( 1 · 𝑃 ) ) = ( - 1 + 𝑃 ) )
46 32 43 45 3eqtr4d ⊢ ( 𝜑 → ( 𝑇 Σg ( 𝑧 ∈ { ( 𝑃 − 1 ) } ↦ 𝑧 ) ) = ( - 1 + ( 1 · 𝑃 ) ) )
47 46 oveq1d ⊢ ( 𝜑 → ( ( 𝑇 Σg ( 𝑧 ∈ { ( 𝑃 − 1 ) } ↦ 𝑧 ) ) mod 𝑃 ) = ( ( - 1 + ( 1 · 𝑃 ) ) mod 𝑃 ) )
48 neg1rr ⊢ - 1 ∈ ℝ
49 48 a1i ⊢ ( 𝜑 → - 1 ∈ ℝ )
50 24 nnrpd ⊢ ( 𝜑 → 𝑃 ∈ ℝ+ )
51 1zzd ⊢ ( 𝜑 → 1 ∈ ℤ )
52 modcyc ⊢ ( ( - 1 ∈ ℝ ∧ 𝑃 ∈ ℝ+ ∧ 1 ∈ ℤ ) → ( ( - 1 + ( 1 · 𝑃 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) )
53 49 50 51 52 syl3anc ⊢ ( 𝜑 → ( ( - 1 + ( 1 · 𝑃 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) )
54 47 53 eqtrd ⊢ ( 𝜑 → ( ( 𝑇 Σg ( 𝑧 ∈ { ( 𝑃 − 1 ) } ↦ 𝑧 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) )
55 54 adantr ⊢ ( ( 𝜑 ∧ 𝑆 ⊆ { ( 𝑃 − 1 ) } ) → ( ( 𝑇 Σg ( 𝑧 ∈ { ( 𝑃 − 1 ) } ↦ 𝑧 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) )
56 22 55 eqtrd ⊢ ( ( 𝜑 ∧ 𝑆 ⊆ { ( 𝑃 − 1 ) } ) → ( ( 𝑇 Σg ( I ↾ 𝑆 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) )
57 56 ex ⊢ ( 𝜑 → ( 𝑆 ⊆ { ( 𝑃 − 1 ) } → ( ( 𝑇 Σg ( I ↾ 𝑆 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) ) )
58 nss ⊢ ( ¬ 𝑆 ⊆ { ( 𝑃 − 1 ) } ↔ ∃ 𝑧 ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) )
59 cnfld1 ⊢ 1 = ( 1r ‘ ℂfld )
60 1 59 ringidval ⊢ 1 = ( 0g ‘ 𝑇 )
61 cnfldmul ⊢ · = ( .r ‘ ℂfld )
62 1 61 mgpplusg ⊢ · = ( +g ‘ 𝑇 )
63 cncrng ⊢ ℂfld ∈ CRing
64 1 crngmgp ⊢ ( ℂfld ∈ CRing → 𝑇 ∈ CMnd )
65 63 64 ax-mp ⊢ 𝑇 ∈ CMnd
66 65 a1i ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑇 ∈ CMnd )
67 4 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑆 ∈ 𝐴 )
68 f1oi ⊢ ( I ↾ 𝑆 ) : 𝑆 –1-1-onto→ 𝑆
69 f1of ⊢ ( ( I ↾ 𝑆 ) : 𝑆 –1-1-onto→ 𝑆 → ( I ↾ 𝑆 ) : 𝑆 ⟶ 𝑆 )
70 68 69 ax-mp ⊢ ( I ↾ 𝑆 ) : 𝑆 ⟶ 𝑆
71 12 simpld ⊢ ( 𝜑 → 𝑆 ∈ 𝒫 ( 1 ... ( 𝑃 − 1 ) ) )
72 71 elpwid ⊢ ( 𝜑 → 𝑆 ⊆ ( 1 ... ( 𝑃 − 1 ) ) )
73 fzssz ⊢ ( 1 ... ( 𝑃 − 1 ) ) ⊆ ℤ
74 72 73 sstrdi ⊢ ( 𝜑 → 𝑆 ⊆ ℤ )
75 zsscn ⊢ ℤ ⊆ ℂ
76 74 75 sstrdi ⊢ ( 𝜑 → 𝑆 ⊆ ℂ )
77 fss ⊢ ( ( ( I ↾ 𝑆 ) : 𝑆 ⟶ 𝑆 ∧ 𝑆 ⊆ ℂ ) → ( I ↾ 𝑆 ) : 𝑆 ⟶ ℂ )
78 70 76 77 sylancr ⊢ ( 𝜑 → ( I ↾ 𝑆 ) : 𝑆 ⟶ ℂ )
79 78 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( I ↾ 𝑆 ) : 𝑆 ⟶ ℂ )
80 fzfi ⊢ ( 1 ... ( 𝑃 − 1 ) ) ∈ Fin
81 ssfi ⊢ ( ( ( 1 ... ( 𝑃 − 1 ) ) ∈ Fin ∧ 𝑆 ⊆ ( 1 ... ( 𝑃 − 1 ) ) ) → 𝑆 ∈ Fin )
82 80 72 81 sylancr ⊢ ( 𝜑 → 𝑆 ∈ Fin )
83 1ex ⊢ 1 ∈ V
84 83 a1i ⊢ ( 𝜑 → 1 ∈ V )
85 78 82 84 fdmfifsupp ⊢ ( 𝜑 → ( I ↾ 𝑆 ) finSupp 1 )
86 85 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( I ↾ 𝑆 ) finSupp 1 )
87 disjdif ⊢ ( { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ∩ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) = ∅
88 87 a1i ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ∩ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) = ∅ )
89 undif2 ⊢ ( { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ∪ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) = ( { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ∪ 𝑆 )
90 simprl ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑧 ∈ 𝑆 )
91 oveq1 ⊢ ( 𝑦 = 𝑧 → ( 𝑦 ↑ ( 𝑃 − 2 ) ) = ( 𝑧 ↑ ( 𝑃 − 2 ) ) )
92 91 oveq1d ⊢ ( 𝑦 = 𝑧 → ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
93 92 eleq1d ⊢ ( 𝑦 = 𝑧 → ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 ↔ ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 ) )
94 13 simprd ⊢ ( 𝜑 → ∀ 𝑦 ∈ 𝑆 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 )
95 94 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ∀ 𝑦 ∈ 𝑆 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 )
96 93 95 90 rspcdva ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 )
97 90 96 prssd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ⊆ 𝑆 )
98 ssequn1 ⊢ ( { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ⊆ 𝑆 ↔ ( { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ∪ 𝑆 ) = 𝑆 )
99 97 98 sylib ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ∪ 𝑆 ) = 𝑆 )
100 89 99 eqtr2id ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑆 = ( { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ∪ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) )
101 40 60 62 66 67 79 86 88 100 gsumsplit ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑇 Σg ( I ↾ 𝑆 ) ) = ( ( 𝑇 Σg ( ( I ↾ 𝑆 ) ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) · ( 𝑇 Σg ( ( I ↾ 𝑆 ) ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ) )
102 97 resabs1d ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( I ↾ 𝑆 ) ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) = ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) )
103 102 oveq2d ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑇 Σg ( ( I ↾ 𝑆 ) ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) = ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) )
104 difss ⊢ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊆ 𝑆
105 resabs1 ⊢ ( ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊆ 𝑆 → ( ( I ↾ 𝑆 ) ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) = ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) )
106 104 105 ax-mp ⊢ ( ( I ↾ 𝑆 ) ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) = ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) )
107 106 oveq2i ⊢ ( 𝑇 Σg ( ( I ↾ 𝑆 ) ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) = ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) )
108 107 a1i ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑇 Σg ( ( I ↾ 𝑆 ) ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) = ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) )
109 103 108 oveq12d ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑇 Σg ( ( I ↾ 𝑆 ) ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) · ( 𝑇 Σg ( ( I ↾ 𝑆 ) ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ) = ( ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) · ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ) )
110 101 109 eqtrd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑇 Σg ( I ↾ 𝑆 ) ) = ( ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) · ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ) )
111 110 oveq1d ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑇 Σg ( I ↾ 𝑆 ) ) mod 𝑃 ) = ( ( ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) · ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ) mod 𝑃 ) )
112 prfi ⊢ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ∈ Fin
113 112 a1i ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ∈ Fin )
114 zsubrg ⊢ ℤ ∈ ( SubRing ‘ ℂfld )
115 1 subrgsubm ⊢ ( ℤ ∈ ( SubRing ‘ ℂfld ) → ℤ ∈ ( SubMnd ‘ 𝑇 ) )
116 114 115 mp1i ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ℤ ∈ ( SubMnd ‘ 𝑇 ) )
117 f1oi ⊢ ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) : { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } –1-1-onto→ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) }
118 f1of ⊢ ( ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) : { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } –1-1-onto→ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } → ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) : { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ⟶ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } )
119 117 118 ax-mp ⊢ ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) : { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ⟶ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) }
120 74 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑆 ⊆ ℤ )
121 97 120 sstrd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ⊆ ℤ )
122 fss ⊢ ( ( ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) : { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ⟶ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ∧ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ⊆ ℤ ) → ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) : { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ⟶ ℤ )
123 119 121 122 sylancr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) : { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ⟶ ℤ )
124 83 a1i ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 1 ∈ V )
125 123 113 124 fdmfifsupp ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) finSupp 1 )
126 60 66 113 116 123 125 gsumsubmcl ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ∈ ℤ )
127 126 zred ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ∈ ℝ )
128 1red ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 1 ∈ ℝ )
129 72 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑆 ⊆ ( 1 ... ( 𝑃 − 1 ) ) )
130 129 ssdifssd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊆ ( 1 ... ( 𝑃 − 1 ) ) )
131 ssfi ⊢ ( ( ( 1 ... ( 𝑃 − 1 ) ) ∈ Fin ∧ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊆ ( 1 ... ( 𝑃 − 1 ) ) ) → ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ∈ Fin )
132 80 130 131 sylancr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ∈ Fin )
133 f1oi ⊢ ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) : ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) –1-1-onto→ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } )
134 f1of ⊢ ( ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) : ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) –1-1-onto→ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) → ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) : ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⟶ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) )
135 133 134 ax-mp ⊢ ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) : ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⟶ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } )
136 120 ssdifssd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊆ ℤ )
137 fss ⊢ ( ( ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) : ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⟶ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ∧ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊆ ℤ ) → ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) : ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⟶ ℤ )
138 135 136 137 sylancr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) : ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⟶ ℤ )
139 138 132 124 fdmfifsupp ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) finSupp 1 )
140 60 66 132 116 138 139 gsumsubmcl ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ∈ ℤ )
141 50 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑃 ∈ ℝ+ )
142 35 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑇 ∈ Mnd )
143 76 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑆 ⊆ ℂ )
144 143 90 sseldd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑧 ∈ ℂ )
145 id ⊢ ( 𝑤 = 𝑧 → 𝑤 = 𝑧 )
146 40 145 gsumsn ⊢ ( ( 𝑇 ∈ Mnd ∧ 𝑧 ∈ ℂ ∧ 𝑧 ∈ ℂ ) → ( 𝑇 Σg ( 𝑤 ∈ { 𝑧 } ↦ 𝑤 ) ) = 𝑧 )
147 142 144 144 146 syl3anc ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑇 Σg ( 𝑤 ∈ { 𝑧 } ↦ 𝑤 ) ) = 𝑧 )
148 147 adantr ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 = 1 ) → ( 𝑇 Σg ( 𝑤 ∈ { 𝑧 } ↦ 𝑤 ) ) = 𝑧 )
149 mptresid ⊢ ( I ↾ { 𝑧 } ) = ( 𝑤 ∈ { 𝑧 } ↦ 𝑤 )
150 dfsn2 ⊢ { 𝑧 } = { 𝑧 , 𝑧 }
151 animorrl ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 = 1 ) → ( 𝑧 = 1 ∨ 𝑧 = ( 𝑃 − 1 ) ) )
152 3 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑃 ∈ ℙ )
153 129 90 sseldd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑧 ∈ ( 1 ... ( 𝑃 − 1 ) ) )
154 wilthlem1 ⊢ ( ( 𝑃 ∈ ℙ ∧ 𝑧 ∈ ( 1 ... ( 𝑃 − 1 ) ) ) → ( 𝑧 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↔ ( 𝑧 = 1 ∨ 𝑧 = ( 𝑃 − 1 ) ) ) )
155 152 153 154 syl2anc ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑧 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↔ ( 𝑧 = 1 ∨ 𝑧 = ( 𝑃 − 1 ) ) ) )
156 155 biimpar ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ ( 𝑧 = 1 ∨ 𝑧 = ( 𝑃 − 1 ) ) ) → 𝑧 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
157 151 156 syldan ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 = 1 ) → 𝑧 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
158 157 preq2d ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 = 1 ) → { 𝑧 , 𝑧 } = { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } )
159 150 158 eqtrid ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 = 1 ) → { 𝑧 } = { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } )
160 159 reseq2d ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 = 1 ) → ( I ↾ { 𝑧 } ) = ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) )
161 149 160 eqtr3id ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 = 1 ) → ( 𝑤 ∈ { 𝑧 } ↦ 𝑤 ) = ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) )
162 161 oveq2d ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 = 1 ) → ( 𝑇 Σg ( 𝑤 ∈ { 𝑧 } ↦ 𝑤 ) ) = ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) )
163 simpr ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 = 1 ) → 𝑧 = 1 )
164 148 162 163 3eqtr3d ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 = 1 ) → ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) = 1 )
165 164 oveq1d ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 = 1 ) → ( ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) mod 𝑃 ) = ( 1 mod 𝑃 ) )
166 df-pr ⊢ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } = ( { 𝑧 } ∪ { ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } )
167 166 reseq2i ⊢ ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) = ( I ↾ ( { 𝑧 } ∪ { ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) )
168 mptresid ⊢ ( I ↾ ( { 𝑧 } ∪ { ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) = ( 𝑤 ∈ ( { 𝑧 } ∪ { ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ↦ 𝑤 )
169 167 168 eqtri ⊢ ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) = ( 𝑤 ∈ ( { 𝑧 } ∪ { ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ↦ 𝑤 )
170 169 oveq2i ⊢ ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) = ( 𝑇 Σg ( 𝑤 ∈ ( { 𝑧 } ∪ { ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ↦ 𝑤 ) )
171 65 a1i ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) → 𝑇 ∈ CMnd )
172 snfi ⊢ { 𝑧 } ∈ Fin
173 172 a1i ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) → { 𝑧 } ∈ Fin )
174 elsni ⊢ ( 𝑤 ∈ { 𝑧 } → 𝑤 = 𝑧 )
175 174 adantl ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑤 ∈ { 𝑧 } ) → 𝑤 = 𝑧 )
176 144 adantr ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑤 ∈ { 𝑧 } ) → 𝑧 ∈ ℂ )
177 175 176 eqeltrd ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑤 ∈ { 𝑧 } ) → 𝑤 ∈ ℂ )
178 177 adantlr ⊢ ( ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) ∧ 𝑤 ∈ { 𝑧 } ) → 𝑤 ∈ ℂ )
179 143 96 sseldd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ℂ )
180 179 adantr ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) → ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ℂ )
181 simprr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } )
182 velsn ⊢ ( 𝑧 ∈ { ( 𝑃 − 1 ) } ↔ 𝑧 = ( 𝑃 − 1 ) )
183 181 182 sylnib ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ¬ 𝑧 = ( 𝑃 − 1 ) )
184 biorf ⊢ ( ¬ 𝑧 = ( 𝑃 − 1 ) → ( 𝑧 = 1 ↔ ( 𝑧 = ( 𝑃 − 1 ) ∨ 𝑧 = 1 ) ) )
185 183 184 syl ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑧 = 1 ↔ ( 𝑧 = ( 𝑃 − 1 ) ∨ 𝑧 = 1 ) ) )
186 ovex ⊢ ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ V
187 186 elsn ⊢ ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ { 𝑧 } ↔ ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = 𝑧 )
188 eqcom ⊢ ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = 𝑧 ↔ 𝑧 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
189 187 188 bitri ⊢ ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ { 𝑧 } ↔ 𝑧 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
190 orcom ⊢ ( ( 𝑧 = ( 𝑃 − 1 ) ∨ 𝑧 = 1 ) ↔ ( 𝑧 = 1 ∨ 𝑧 = ( 𝑃 − 1 ) ) )
191 155 189 190 3bitr4g ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ { 𝑧 } ↔ ( 𝑧 = ( 𝑃 − 1 ) ∨ 𝑧 = 1 ) ) )
192 185 191 bitr4d ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑧 = 1 ↔ ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ { 𝑧 } ) )
193 192 necon3abid ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑧 ≠ 1 ↔ ¬ ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ { 𝑧 } ) )
194 193 biimpa ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) → ¬ ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ { 𝑧 } )
195 id ⊢ ( 𝑤 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) → 𝑤 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
196 40 62 171 173 178 180 194 180 195 gsumunsn ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) → ( 𝑇 Σg ( 𝑤 ∈ ( { 𝑧 } ∪ { ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ↦ 𝑤 ) ) = ( ( 𝑇 Σg ( 𝑤 ∈ { 𝑧 } ↦ 𝑤 ) ) · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
197 170 196 eqtrid ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) → ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) = ( ( 𝑇 Σg ( 𝑤 ∈ { 𝑧 } ↦ 𝑤 ) ) · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
198 147 adantr ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) → ( 𝑇 Σg ( 𝑤 ∈ { 𝑧 } ↦ 𝑤 ) ) = 𝑧 )
199 198 oveq1d ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) → ( ( 𝑇 Σg ( 𝑤 ∈ { 𝑧 } ↦ 𝑤 ) ) · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) = ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
200 197 199 eqtrd ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) → ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) = ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
201 200 oveq1d ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) → ( ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) mod 𝑃 ) = ( ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) mod 𝑃 ) )
202 153 elfzelzd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑧 ∈ ℤ )
203 24 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑃 ∈ ℕ )
204 fzm1ndvds ⊢ ( ( 𝑃 ∈ ℕ ∧ 𝑧 ∈ ( 1 ... ( 𝑃 − 1 ) ) ) → ¬ 𝑃 ∥ 𝑧 )
205 203 153 204 syl2anc ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ¬ 𝑃 ∥ 𝑧 )
206 eqid ⊢ ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 )
207 206 prmdiv ⊢ ( ( 𝑃 ∈ ℙ ∧ 𝑧 ∈ ℤ ∧ ¬ 𝑃 ∥ 𝑧 ) → ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ( 1 ... ( 𝑃 − 1 ) ) ∧ 𝑃 ∥ ( ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) − 1 ) ) )
208 152 202 205 207 syl3anc ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ( 1 ... ( 𝑃 − 1 ) ) ∧ 𝑃 ∥ ( ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) − 1 ) ) )
209 208 simprd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑃 ∥ ( ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) − 1 ) )
210 elfznn ⊢ ( 𝑧 ∈ ( 1 ... ( 𝑃 − 1 ) ) → 𝑧 ∈ ℕ )
211 153 210 syl ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑧 ∈ ℕ )
212 129 96 sseldd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ( 1 ... ( 𝑃 − 1 ) ) )
213 elfznn ⊢ ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ( 1 ... ( 𝑃 − 1 ) ) → ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ℕ )
214 212 213 syl ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ℕ )
215 211 214 nnmulcld ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) ∈ ℕ )
216 215 nnzd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) ∈ ℤ )
217 1zzd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 1 ∈ ℤ )
218 moddvds ⊢ ( ( 𝑃 ∈ ℕ ∧ ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) ∈ ℤ ∧ 1 ∈ ℤ ) → ( ( ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) mod 𝑃 ) = ( 1 mod 𝑃 ) ↔ 𝑃 ∥ ( ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) − 1 ) ) )
219 203 216 217 218 syl3anc ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) mod 𝑃 ) = ( 1 mod 𝑃 ) ↔ 𝑃 ∥ ( ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) − 1 ) ) )
220 209 219 mpbird ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) mod 𝑃 ) = ( 1 mod 𝑃 ) )
221 220 adantr ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) → ( ( 𝑧 · ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) mod 𝑃 ) = ( 1 mod 𝑃 ) )
222 201 221 eqtrd ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑧 ≠ 1 ) → ( ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) mod 𝑃 ) = ( 1 mod 𝑃 ) )
223 165 222 pm2.61dane ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) mod 𝑃 ) = ( 1 mod 𝑃 ) )
224 modmul1 ⊢ ( ( ( ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ∈ ℝ ∧ 1 ∈ ℝ ) ∧ ( ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ∈ ℤ ∧ 𝑃 ∈ ℝ+ ) ∧ ( ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) mod 𝑃 ) = ( 1 mod 𝑃 ) ) → ( ( ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) · ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ) mod 𝑃 ) = ( ( 1 · ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ) mod 𝑃 ) )
225 127 128 140 141 223 224 syl221anc ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( ( 𝑇 Σg ( I ↾ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) · ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ) mod 𝑃 ) = ( ( 1 · ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ) mod 𝑃 ) )
226 140 zcnd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ∈ ℂ )
227 226 mullidd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 1 · ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ) = ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) )
228 227 oveq1d ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 1 · ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ) mod 𝑃 ) = ( ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) mod 𝑃 ) )
229 sseqin2 ⊢ ( { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ⊆ 𝑆 ↔ ( 𝑆 ∩ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) = { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } )
230 97 229 sylib ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑆 ∩ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) = { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } )
231 vex ⊢ 𝑧 ∈ V
232 231 prnz ⊢ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ≠ ∅
233 232 a1i ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ≠ ∅ )
234 230 233 eqnetrd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑆 ∩ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ≠ ∅ )
235 disj4 ⊢ ( ( 𝑆 ∩ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) = ∅ ↔ ¬ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊊ 𝑆 )
236 235 necon2abii ⊢ ( ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊊ 𝑆 ↔ ( 𝑆 ∩ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ≠ ∅ )
237 234 236 sylibr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊊ 𝑆 )
238 psseq1 ⊢ ( 𝑠 = ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) → ( 𝑠 ⊊ 𝑆 ↔ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊊ 𝑆 ) )
239 reseq2 ⊢ ( 𝑠 = ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) → ( I ↾ 𝑠 ) = ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) )
240 239 oveq2d ⊢ ( 𝑠 = ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) → ( 𝑇 Σg ( I ↾ 𝑠 ) ) = ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) )
241 240 oveq1d ⊢ ( 𝑠 = ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) → ( ( 𝑇 Σg ( I ↾ 𝑠 ) ) mod 𝑃 ) = ( ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) mod 𝑃 ) )
242 241 eqeq1d ⊢ ( 𝑠 = ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) → ( ( ( 𝑇 Σg ( I ↾ 𝑠 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) ↔ ( ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) ) )
243 238 242 imbi12d ⊢ ( 𝑠 = ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) → ( ( 𝑠 ⊊ 𝑆 → ( ( 𝑇 Σg ( I ↾ 𝑠 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) ) ↔ ( ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊊ 𝑆 → ( ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) ) ) )
244 5 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ∀ 𝑠 ∈ 𝐴 ( 𝑠 ⊊ 𝑆 → ( ( 𝑇 Σg ( I ↾ 𝑠 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) ) )
245 ovex ⊢ ( 1 ... ( 𝑃 − 1 ) ) ∈ V
246 245 elpw2 ⊢ ( ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ∈ 𝒫 ( 1 ... ( 𝑃 − 1 ) ) ↔ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊆ ( 1 ... ( 𝑃 − 1 ) ) )
247 130 246 sylibr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ∈ 𝒫 ( 1 ... ( 𝑃 − 1 ) ) )
248 14 adantr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑃 − 1 ) ∈ 𝑆 )
249 eqcom ⊢ ( 𝑧 = ( 𝑃 − 1 ) ↔ ( 𝑃 − 1 ) = 𝑧 )
250 182 249 bitri ⊢ ( 𝑧 ∈ { ( 𝑃 − 1 ) } ↔ ( 𝑃 − 1 ) = 𝑧 )
251 181 250 sylnib ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ¬ ( 𝑃 − 1 ) = 𝑧 )
252 oveq1 ⊢ ( ( 𝑃 − 1 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) → ( ( 𝑃 − 1 ) ↑ ( 𝑃 − 2 ) ) = ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) )
253 252 oveq1d ⊢ ( ( 𝑃 − 1 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) → ( ( ( 𝑃 − 1 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
254 203 36 syl ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑃 − 1 ) ∈ ℕ0 )
255 nn0uz ⊢ ℕ0 = ( ℤ≥ ‘ 0 )
256 254 255 eleqtrdi ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑃 − 1 ) ∈ ( ℤ≥ ‘ 0 ) )
257 eluzfz2 ⊢ ( ( 𝑃 − 1 ) ∈ ( ℤ≥ ‘ 0 ) → ( 𝑃 − 1 ) ∈ ( 0 ... ( 𝑃 − 1 ) ) )
258 256 257 syl ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑃 − 1 ) ∈ ( 0 ... ( 𝑃 − 1 ) ) )
259 prmz ⊢ ( 𝑃 ∈ ℙ → 𝑃 ∈ ℤ )
260 152 259 syl ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑃 ∈ ℤ )
261 120 248 sseldd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑃 − 1 ) ∈ ℤ )
262 1z ⊢ 1 ∈ ℤ
263 zsubcl ⊢ ( ( ( 𝑃 − 1 ) ∈ ℤ ∧ 1 ∈ ℤ ) → ( ( 𝑃 − 1 ) − 1 ) ∈ ℤ )
264 261 262 263 sylancl ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑃 − 1 ) − 1 ) ∈ ℤ )
265 dvdsmul1 ⊢ ( ( 𝑃 ∈ ℤ ∧ ( ( 𝑃 − 1 ) − 1 ) ∈ ℤ ) → 𝑃 ∥ ( 𝑃 · ( ( 𝑃 − 1 ) − 1 ) ) )
266 260 264 265 syl2anc ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑃 ∥ ( 𝑃 · ( ( 𝑃 − 1 ) − 1 ) ) )
267 203 nncnd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑃 ∈ ℂ )
268 264 zcnd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑃 − 1 ) − 1 ) ∈ ℂ )
269 267 268 mulcld ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑃 · ( ( 𝑃 − 1 ) − 1 ) ) ∈ ℂ )
270 1cnd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 1 ∈ ℂ )
271 254 nn0cnd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑃 − 1 ) ∈ ℂ )
272 267 270 271 subdird ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑃 − 1 ) · ( 𝑃 − 1 ) ) = ( ( 𝑃 · ( 𝑃 − 1 ) ) − ( 1 · ( 𝑃 − 1 ) ) ) )
273 267 271 mulcld ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑃 · ( 𝑃 − 1 ) ) ∈ ℂ )
274 273 267 270 subsubd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑃 · ( 𝑃 − 1 ) ) − ( 𝑃 − 1 ) ) = ( ( ( 𝑃 · ( 𝑃 − 1 ) ) − 𝑃 ) + 1 ) )
275 271 mullidd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 1 · ( 𝑃 − 1 ) ) = ( 𝑃 − 1 ) )
276 275 oveq2d ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑃 · ( 𝑃 − 1 ) ) − ( 1 · ( 𝑃 − 1 ) ) ) = ( ( 𝑃 · ( 𝑃 − 1 ) ) − ( 𝑃 − 1 ) ) )
277 267 271 muls1d ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑃 · ( ( 𝑃 − 1 ) − 1 ) ) = ( ( 𝑃 · ( 𝑃 − 1 ) ) − 𝑃 ) )
278 277 oveq1d ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑃 · ( ( 𝑃 − 1 ) − 1 ) ) + 1 ) = ( ( ( 𝑃 · ( 𝑃 − 1 ) ) − 𝑃 ) + 1 ) )
279 274 276 278 3eqtr4d ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑃 · ( 𝑃 − 1 ) ) − ( 1 · ( 𝑃 − 1 ) ) ) = ( ( 𝑃 · ( ( 𝑃 − 1 ) − 1 ) ) + 1 ) )
280 272 279 eqtrd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑃 − 1 ) · ( 𝑃 − 1 ) ) = ( ( 𝑃 · ( ( 𝑃 − 1 ) − 1 ) ) + 1 ) )
281 269 270 280 mvrraddd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( ( 𝑃 − 1 ) · ( 𝑃 − 1 ) ) − 1 ) = ( 𝑃 · ( ( 𝑃 − 1 ) − 1 ) ) )
282 266 281 breqtrrd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑃 ∥ ( ( ( 𝑃 − 1 ) · ( 𝑃 − 1 ) ) − 1 ) )
283 129 248 sseldd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑃 − 1 ) ∈ ( 1 ... ( 𝑃 − 1 ) ) )
284 fzm1ndvds ⊢ ( ( 𝑃 ∈ ℕ ∧ ( 𝑃 − 1 ) ∈ ( 1 ... ( 𝑃 − 1 ) ) ) → ¬ 𝑃 ∥ ( 𝑃 − 1 ) )
285 203 283 284 syl2anc ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ¬ 𝑃 ∥ ( 𝑃 − 1 ) )
286 eqid ⊢ ( ( ( 𝑃 − 1 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( ( 𝑃 − 1 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 )
287 286 prmdiveq ⊢ ( ( 𝑃 ∈ ℙ ∧ ( 𝑃 − 1 ) ∈ ℤ ∧ ¬ 𝑃 ∥ ( 𝑃 − 1 ) ) → ( ( ( 𝑃 − 1 ) ∈ ( 0 ... ( 𝑃 − 1 ) ) ∧ 𝑃 ∥ ( ( ( 𝑃 − 1 ) · ( 𝑃 − 1 ) ) − 1 ) ) ↔ ( 𝑃 − 1 ) = ( ( ( 𝑃 − 1 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
288 152 261 285 287 syl3anc ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( ( 𝑃 − 1 ) ∈ ( 0 ... ( 𝑃 − 1 ) ) ∧ 𝑃 ∥ ( ( ( 𝑃 − 1 ) · ( 𝑃 − 1 ) ) − 1 ) ) ↔ ( 𝑃 − 1 ) = ( ( ( 𝑃 − 1 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
289 258 282 288 mpbi2and ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑃 − 1 ) = ( ( ( 𝑃 − 1 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
290 206 prmdivdiv ⊢ ( ( 𝑃 ∈ ℙ ∧ 𝑧 ∈ ( 1 ... ( 𝑃 − 1 ) ) ) → 𝑧 = ( ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
291 152 153 290 syl2anc ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → 𝑧 = ( ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
292 289 291 eqeq12d ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑃 − 1 ) = 𝑧 ↔ ( ( ( 𝑃 − 1 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
293 253 292 imbitrrid ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑃 − 1 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) → ( 𝑃 − 1 ) = 𝑧 ) )
294 251 293 mtod ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ¬ ( 𝑃 − 1 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
295 ioran ⊢ ( ¬ ( ( 𝑃 − 1 ) = 𝑧 ∨ ( 𝑃 − 1 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) ↔ ( ¬ ( 𝑃 − 1 ) = 𝑧 ∧ ¬ ( 𝑃 − 1 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
296 251 294 295 sylanbrc ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ¬ ( ( 𝑃 − 1 ) = 𝑧 ∨ ( 𝑃 − 1 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
297 ovex ⊢ ( 𝑃 − 1 ) ∈ V
298 297 elpr ⊢ ( ( 𝑃 − 1 ) ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ↔ ( ( 𝑃 − 1 ) = 𝑧 ∨ ( 𝑃 − 1 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
299 296 298 sylnibr ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ¬ ( 𝑃 − 1 ) ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } )
300 248 299 eldifd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑃 − 1 ) ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) )
301 eldifi ⊢ ( 𝑦 ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) → 𝑦 ∈ 𝑆 )
302 95 r19.21bi ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ 𝑆 ) → ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 )
303 301 302 sylan2 ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) → ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑆 )
304 eldif ⊢ ( 𝑦 ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ↔ ( 𝑦 ∈ 𝑆 ∧ ¬ 𝑦 ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) )
305 152 adantr ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ 𝑆 ) → 𝑃 ∈ ℙ )
306 129 sselda ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ 𝑆 ) → 𝑦 ∈ ( 1 ... ( 𝑃 − 1 ) ) )
307 eqid ⊢ ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 )
308 307 prmdivdiv ⊢ ( ( 𝑃 ∈ ℙ ∧ 𝑦 ∈ ( 1 ... ( 𝑃 − 1 ) ) ) → 𝑦 = ( ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
309 305 306 308 syl2anc ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ 𝑆 ) → 𝑦 = ( ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
310 oveq1 ⊢ ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = 𝑧 → ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) = ( 𝑧 ↑ ( 𝑃 − 2 ) ) )
311 310 oveq1d ⊢ ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = 𝑧 → ( ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
312 311 eqeq2d ⊢ ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = 𝑧 → ( 𝑦 = ( ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↔ 𝑦 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
313 309 312 syl5ibcom ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ 𝑆 ) → ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = 𝑧 → 𝑦 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
314 oveq1 ⊢ ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) → ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) = ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) )
315 314 oveq1d ⊢ ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) → ( ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
316 291 adantr ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ 𝑆 ) → 𝑧 = ( ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) )
317 309 316 eqeq12d ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ 𝑆 ) → ( 𝑦 = 𝑧 ↔ ( ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
318 315 317 imbitrrid ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ 𝑆 ) → ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) → 𝑦 = 𝑧 ) )
319 313 318 orim12d ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ 𝑆 ) → ( ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = 𝑧 ∨ ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) → ( 𝑦 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∨ 𝑦 = 𝑧 ) ) )
320 ovex ⊢ ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ V
321 320 elpr ⊢ ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ↔ ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = 𝑧 ∨ ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
322 vex ⊢ 𝑦 ∈ V
323 322 elpr ⊢ ( 𝑦 ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ↔ ( 𝑦 = 𝑧 ∨ 𝑦 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) )
324 orcom ⊢ ( ( 𝑦 = 𝑧 ∨ 𝑦 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ) ↔ ( 𝑦 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∨ 𝑦 = 𝑧 ) )
325 323 324 bitri ⊢ ( 𝑦 ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ↔ ( 𝑦 = ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∨ 𝑦 = 𝑧 ) )
326 319 321 325 3imtr4g ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ 𝑆 ) → ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } → 𝑦 ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) )
327 326 con3d ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ 𝑆 ) → ( ¬ 𝑦 ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } → ¬ ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) )
328 327 impr ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ ( 𝑦 ∈ 𝑆 ∧ ¬ 𝑦 ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) → ¬ ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } )
329 304 328 sylan2b ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) → ¬ ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } )
330 303 329 eldifd ⊢ ( ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) ∧ 𝑦 ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) → ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) )
331 330 ralrimiva ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ∀ 𝑦 ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) )
332 300 331 jca ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑃 − 1 ) ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ∧ ∀ 𝑦 ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) )
333 eleq2 ⊢ ( 𝑥 = ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) → ( ( 𝑃 − 1 ) ∈ 𝑥 ↔ ( 𝑃 − 1 ) ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) )
334 eleq2 ⊢ ( 𝑥 = ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) → ( ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑥 ↔ ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) )
335 334 raleqbi1dv ⊢ ( 𝑥 = ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) → ( ∀ 𝑦 ∈ 𝑥 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑥 ↔ ∀ 𝑦 ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) )
336 333 335 anbi12d ⊢ ( 𝑥 = ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) → ( ( ( 𝑃 − 1 ) ∈ 𝑥 ∧ ∀ 𝑦 ∈ 𝑥 ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ 𝑥 ) ↔ ( ( 𝑃 − 1 ) ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ∧ ∀ 𝑦 ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) )
337 336 2 elrab2 ⊢ ( ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ∈ 𝐴 ↔ ( ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ∈ 𝒫 ( 1 ... ( 𝑃 − 1 ) ) ∧ ( ( 𝑃 − 1 ) ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ∧ ∀ 𝑦 ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ( ( 𝑦 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) ∈ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) )
338 247 332 337 sylanbrc ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ∈ 𝐴 )
339 243 244 338 rspcdva ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ⊊ 𝑆 → ( ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) ) )
340 237 339 mpd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) )
341 228 340 eqtrd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 1 · ( 𝑇 Σg ( I ↾ ( 𝑆 ∖ { 𝑧 , ( ( 𝑧 ↑ ( 𝑃 − 2 ) ) mod 𝑃 ) } ) ) ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) )
342 111 225 341 3eqtrd ⊢ ( ( 𝜑 ∧ ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) ) → ( ( 𝑇 Σg ( I ↾ 𝑆 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) )
343 342 ex ⊢ ( 𝜑 → ( ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) → ( ( 𝑇 Σg ( I ↾ 𝑆 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) ) )
344 343 exlimdv ⊢ ( 𝜑 → ( ∃ 𝑧 ( 𝑧 ∈ 𝑆 ∧ ¬ 𝑧 ∈ { ( 𝑃 − 1 ) } ) → ( ( 𝑇 Σg ( I ↾ 𝑆 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) ) )
345 58 344 biimtrid ⊢ ( 𝜑 → ( ¬ 𝑆 ⊆ { ( 𝑃 − 1 ) } → ( ( 𝑇 Σg ( I ↾ 𝑆 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) ) )
346 57 345 pm2.61d ⊢ ( 𝜑 → ( ( 𝑇 Σg ( I ↾ 𝑆 ) ) mod 𝑃 ) = ( - 1 mod 𝑃 ) )