Metamath Proof Explorer


Theorem eqcoe1ply1eq

Description: Two polynomials over the same ring are equal if they have identical coefficients. (Contributed by AV, 7-Oct-2019)

Ref Expression
Hypotheses eqcoe1ply1eq.p 𝑃 = ( Poly1𝑅 )
eqcoe1ply1eq.b 𝐵 = ( Base ‘ 𝑃 )
eqcoe1ply1eq.a 𝐴 = ( coe1𝐾 )
eqcoe1ply1eq.c 𝐶 = ( coe1𝐿 )
Assertion eqcoe1ply1eq ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) → ( ∀ 𝑘 ∈ ℕ0 ( 𝐴𝑘 ) = ( 𝐶𝑘 ) → 𝐾 = 𝐿 ) )

Proof

Step Hyp Ref Expression
1 eqcoe1ply1eq.p 𝑃 = ( Poly1𝑅 )
2 eqcoe1ply1eq.b 𝐵 = ( Base ‘ 𝑃 )
3 eqcoe1ply1eq.a 𝐴 = ( coe1𝐾 )
4 eqcoe1ply1eq.c 𝐶 = ( coe1𝐿 )
5 fveq2 ( 𝑘 = 𝑛 → ( 𝐴𝑘 ) = ( 𝐴𝑛 ) )
6 fveq2 ( 𝑘 = 𝑛 → ( 𝐶𝑘 ) = ( 𝐶𝑛 ) )
7 5 6 eqeq12d ( 𝑘 = 𝑛 → ( ( 𝐴𝑘 ) = ( 𝐶𝑘 ) ↔ ( 𝐴𝑛 ) = ( 𝐶𝑛 ) ) )
8 7 rspccv ( ∀ 𝑘 ∈ ℕ0 ( 𝐴𝑘 ) = ( 𝐶𝑘 ) → ( 𝑛 ∈ ℕ0 → ( 𝐴𝑛 ) = ( 𝐶𝑛 ) ) )
9 8 adantl ( ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) ∧ ∀ 𝑘 ∈ ℕ0 ( 𝐴𝑘 ) = ( 𝐶𝑘 ) ) → ( 𝑛 ∈ ℕ0 → ( 𝐴𝑛 ) = ( 𝐶𝑛 ) ) )
10 9 imp ( ( ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) ∧ ∀ 𝑘 ∈ ℕ0 ( 𝐴𝑘 ) = ( 𝐶𝑘 ) ) ∧ 𝑛 ∈ ℕ0 ) → ( 𝐴𝑛 ) = ( 𝐶𝑛 ) )
11 3 fveq1i ( 𝐴𝑛 ) = ( ( coe1𝐾 ) ‘ 𝑛 )
12 4 fveq1i ( 𝐶𝑛 ) = ( ( coe1𝐿 ) ‘ 𝑛 )
13 10 11 12 3eqtr3g ( ( ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) ∧ ∀ 𝑘 ∈ ℕ0 ( 𝐴𝑘 ) = ( 𝐶𝑘 ) ) ∧ 𝑛 ∈ ℕ0 ) → ( ( coe1𝐾 ) ‘ 𝑛 ) = ( ( coe1𝐿 ) ‘ 𝑛 ) )
14 13 oveq1d ( ( ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) ∧ ∀ 𝑘 ∈ ℕ0 ( 𝐴𝑘 ) = ( 𝐶𝑘 ) ) ∧ 𝑛 ∈ ℕ0 ) → ( ( ( coe1𝐾 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) = ( ( ( coe1𝐿 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) )
15 14 mpteq2dva ( ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) ∧ ∀ 𝑘 ∈ ℕ0 ( 𝐴𝑘 ) = ( 𝐶𝑘 ) ) → ( 𝑛 ∈ ℕ0 ↦ ( ( ( coe1𝐾 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) ) = ( 𝑛 ∈ ℕ0 ↦ ( ( ( coe1𝐿 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) ) )
16 15 oveq2d ( ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) ∧ ∀ 𝑘 ∈ ℕ0 ( 𝐴𝑘 ) = ( 𝐶𝑘 ) ) → ( 𝑃 Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( coe1𝐾 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) ) ) = ( 𝑃 Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( coe1𝐿 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) ) ) )
17 eqid ( var1𝑅 ) = ( var1𝑅 )
18 eqid ( ·𝑠𝑃 ) = ( ·𝑠𝑃 )
19 eqid ( mulGrp ‘ 𝑃 ) = ( mulGrp ‘ 𝑃 )
20 eqid ( .g ‘ ( mulGrp ‘ 𝑃 ) ) = ( .g ‘ ( mulGrp ‘ 𝑃 ) )
21 eqid ( coe1𝐾 ) = ( coe1𝐾 )
22 1 17 2 18 19 20 21 ply1coe ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵 ) → 𝐾 = ( 𝑃 Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( coe1𝐾 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) ) ) )
23 22 3adant3 ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) → 𝐾 = ( 𝑃 Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( coe1𝐾 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) ) ) )
24 eqid ( coe1𝐿 ) = ( coe1𝐿 )
25 1 17 2 18 19 20 24 ply1coe ( ( 𝑅 ∈ Ring ∧ 𝐿𝐵 ) → 𝐿 = ( 𝑃 Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( coe1𝐿 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) ) ) )
26 25 3adant2 ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) → 𝐿 = ( 𝑃 Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( coe1𝐿 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) ) ) )
27 23 26 eqeq12d ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) → ( 𝐾 = 𝐿 ↔ ( 𝑃 Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( coe1𝐾 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) ) ) = ( 𝑃 Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( coe1𝐿 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) ) ) ) )
28 27 adantr ( ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) ∧ ∀ 𝑘 ∈ ℕ0 ( 𝐴𝑘 ) = ( 𝐶𝑘 ) ) → ( 𝐾 = 𝐿 ↔ ( 𝑃 Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( coe1𝐾 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) ) ) = ( 𝑃 Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( coe1𝐿 ) ‘ 𝑛 ) ( ·𝑠𝑃 ) ( 𝑛 ( .g ‘ ( mulGrp ‘ 𝑃 ) ) ( var1𝑅 ) ) ) ) ) ) )
29 16 28 mpbird ( ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) ∧ ∀ 𝑘 ∈ ℕ0 ( 𝐴𝑘 ) = ( 𝐶𝑘 ) ) → 𝐾 = 𝐿 )
30 29 ex ( ( 𝑅 ∈ Ring ∧ 𝐾𝐵𝐿𝐵 ) → ( ∀ 𝑘 ∈ ℕ0 ( 𝐴𝑘 ) = ( 𝐶𝑘 ) → 𝐾 = 𝐿 ) )