Metamath Proof Explorer


Theorem minplym1p

Description: A minimal polynomial is monic. (Contributed by Thierry Arnoux, 2-Apr-2025)

Ref Expression
Hypotheses irngnminplynz.z 𝑍 = ( 0g ‘ ( Poly1𝐸 ) )
irngnminplynz.e ( 𝜑𝐸 ∈ Field )
irngnminplynz.f ( 𝜑𝐹 ∈ ( SubDRing ‘ 𝐸 ) )
irngnminplynz.m 𝑀 = ( 𝐸 minPoly 𝐹 )
irngnminplynz.a ( 𝜑𝐴 ∈ ( 𝐸 IntgRing 𝐹 ) )
minplym1p.1 𝑈 = ( Monic1p ‘ ( 𝐸s 𝐹 ) )
Assertion minplym1p ( 𝜑 → ( 𝑀𝐴 ) ∈ 𝑈 )

Proof

Step Hyp Ref Expression
1 irngnminplynz.z 𝑍 = ( 0g ‘ ( Poly1𝐸 ) )
2 irngnminplynz.e ( 𝜑𝐸 ∈ Field )
3 irngnminplynz.f ( 𝜑𝐹 ∈ ( SubDRing ‘ 𝐸 ) )
4 irngnminplynz.m 𝑀 = ( 𝐸 minPoly 𝐹 )
5 irngnminplynz.a ( 𝜑𝐴 ∈ ( 𝐸 IntgRing 𝐹 ) )
6 minplym1p.1 𝑈 = ( Monic1p ‘ ( 𝐸s 𝐹 ) )
7 eqid ( 𝐸 evalSub1 𝐹 ) = ( 𝐸 evalSub1 𝐹 )
8 eqid ( Poly1 ‘ ( 𝐸s 𝐹 ) ) = ( Poly1 ‘ ( 𝐸s 𝐹 ) )
9 eqid ( Base ‘ 𝐸 ) = ( Base ‘ 𝐸 )
10 eqid ( 𝐸s 𝐹 ) = ( 𝐸s 𝐹 )
11 eqid ( 0g𝐸 ) = ( 0g𝐸 )
12 2 fldcrngd ( 𝜑𝐸 ∈ CRing )
13 sdrgsubrg ( 𝐹 ∈ ( SubDRing ‘ 𝐸 ) → 𝐹 ∈ ( SubRing ‘ 𝐸 ) )
14 3 13 syl ( 𝜑𝐹 ∈ ( SubRing ‘ 𝐸 ) )
15 7 10 9 11 12 14 irngssv ( 𝜑 → ( 𝐸 IntgRing 𝐹 ) ⊆ ( Base ‘ 𝐸 ) )
16 15 5 sseldd ( 𝜑𝐴 ∈ ( Base ‘ 𝐸 ) )
17 eqid { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } = { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) }
18 eqid ( RSpan ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) = ( RSpan ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) )
19 eqid ( idlGen1p ‘ ( 𝐸s 𝐹 ) ) = ( idlGen1p ‘ ( 𝐸s 𝐹 ) )
20 7 8 9 2 3 16 11 17 18 19 4 minplyval ( 𝜑 → ( 𝑀𝐴 ) = ( ( idlGen1p ‘ ( 𝐸s 𝐹 ) ) ‘ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ) )
21 10 sdrgdrng ( 𝐹 ∈ ( SubDRing ‘ 𝐸 ) → ( 𝐸s 𝐹 ) ∈ DivRing )
22 3 21 syl ( 𝜑 → ( 𝐸s 𝐹 ) ∈ DivRing )
23 7 8 9 12 14 16 11 17 ply1annidl ( 𝜑 → { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ∈ ( LIdeal ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) )
24 20 sneqd ( 𝜑 → { ( 𝑀𝐴 ) } = { ( ( idlGen1p ‘ ( 𝐸s 𝐹 ) ) ‘ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ) } )
25 24 fveq2d ( 𝜑 → ( ( RSpan ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) ‘ { ( 𝑀𝐴 ) } ) = ( ( RSpan ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) ‘ { ( ( idlGen1p ‘ ( 𝐸s 𝐹 ) ) ‘ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ) } ) )
26 7 8 9 2 3 16 11 17 18 19 ply1annig1p ( 𝜑 → { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } = ( ( RSpan ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) ‘ { ( ( idlGen1p ‘ ( 𝐸s 𝐹 ) ) ‘ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ) } ) )
27 25 26 eqtr4d ( 𝜑 → ( ( RSpan ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) ‘ { ( 𝑀𝐴 ) } ) = { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } )
28 22 drngringd ( 𝜑 → ( 𝐸s 𝐹 ) ∈ Ring )
29 8 ply1ring ( ( 𝐸s 𝐹 ) ∈ Ring → ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ∈ Ring )
30 28 29 syl ( 𝜑 → ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ∈ Ring )
31 7 8 9 2 3 16 11 17 18 19 4 minplycl ( 𝜑 → ( 𝑀𝐴 ) ∈ ( Base ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) )
32 1 2 3 4 5 irngnminplynz ( 𝜑 → ( 𝑀𝐴 ) ≠ 𝑍 )
33 eqid ( Poly1𝐸 ) = ( Poly1𝐸 )
34 eqid ( Base ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) = ( Base ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) )
35 33 10 8 34 14 1 ressply10g ( 𝜑𝑍 = ( 0g ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) )
36 32 35 neeqtrd ( 𝜑 → ( 𝑀𝐴 ) ≠ ( 0g ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) )
37 eqid ( 0g ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) = ( 0g ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) )
38 34 37 18 pidlnz ( ( ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ∈ Ring ∧ ( 𝑀𝐴 ) ∈ ( Base ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) ∧ ( 𝑀𝐴 ) ≠ ( 0g ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) ) → ( ( RSpan ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) ‘ { ( 𝑀𝐴 ) } ) ≠ { ( 0g ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) } )
39 30 31 36 38 syl3anc ( 𝜑 → ( ( RSpan ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) ‘ { ( 𝑀𝐴 ) } ) ≠ { ( 0g ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) } )
40 27 39 eqnetrrd ( 𝜑 → { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ≠ { ( 0g ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) } )
41 eqid ( LIdeal ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) = ( LIdeal ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) )
42 eqid ( deg1 ‘ ( 𝐸s 𝐹 ) ) = ( deg1 ‘ ( 𝐸s 𝐹 ) )
43 8 19 37 41 42 6 ig1pval3 ( ( ( 𝐸s 𝐹 ) ∈ DivRing ∧ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ∈ ( LIdeal ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) ∧ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ≠ { ( 0g ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) } ) → ( ( ( idlGen1p ‘ ( 𝐸s 𝐹 ) ) ‘ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ) ∈ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ∧ ( ( idlGen1p ‘ ( 𝐸s 𝐹 ) ) ‘ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ) ∈ 𝑈 ∧ ( ( deg1 ‘ ( 𝐸s 𝐹 ) ) ‘ ( ( idlGen1p ‘ ( 𝐸s 𝐹 ) ) ‘ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ) ) = inf ( ( ( deg1 ‘ ( 𝐸s 𝐹 ) ) “ ( { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ∖ { ( 0g ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) } ) ) , ℝ , < ) ) )
44 22 23 40 43 syl3anc ( 𝜑 → ( ( ( idlGen1p ‘ ( 𝐸s 𝐹 ) ) ‘ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ) ∈ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ∧ ( ( idlGen1p ‘ ( 𝐸s 𝐹 ) ) ‘ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ) ∈ 𝑈 ∧ ( ( deg1 ‘ ( 𝐸s 𝐹 ) ) ‘ ( ( idlGen1p ‘ ( 𝐸s 𝐹 ) ) ‘ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ) ) = inf ( ( ( deg1 ‘ ( 𝐸s 𝐹 ) ) “ ( { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ∖ { ( 0g ‘ ( Poly1 ‘ ( 𝐸s 𝐹 ) ) ) } ) ) , ℝ , < ) ) )
45 44 simp2d ( 𝜑 → ( ( idlGen1p ‘ ( 𝐸s 𝐹 ) ) ‘ { 𝑞 ∈ dom ( 𝐸 evalSub1 𝐹 ) ∣ ( ( ( 𝐸 evalSub1 𝐹 ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g𝐸 ) } ) ∈ 𝑈 )
46 20 45 eqeltrd ( 𝜑 → ( 𝑀𝐴 ) ∈ 𝑈 )