Metamath Proof Explorer


Definition df-sfl1

Description: Temporary construction for the splitting field of a polynomial. The inputs are a field r and a polynomial p that we want to split, along with a tuple j in the same format as the output. The output is a tuple <. S , F >. where S is the splitting field and F is an injective homomorphism from the original field r .

The function works by repeatedly finding the smallest monic irreducible factor, and extending the field by that factor using the polyFld construction. We keep track of a total order in each of the splitting fields so that we can pick an element definably without needing global choice. (Contributed by Mario Carneiro, 2-Dec-2014)

Ref Expression
Assertion df-sfl1 splitFld1=rV,jVpPoly1rrecsV,fVmPolys/mgMonic1psIrredm|grmpf1<sdeg1g/bifpf=0mb=sfglbb/hspolyFldh/t1sttf2ndtjcard1rdeg1p

Detailed syntax breakdown

Step Hyp Ref Expression
0 csf1 classsplitFld1
1 vr setvarr
2 cvv classV
3 vj setvarj
4 vp setvarp
5 cpl1 classPoly1
6 1 cv setvarr
7 6 5 cfv classPoly1r
8 vs setvars
9 vf setvarf
10 cmpl classmPoly
11 8 cv setvars
12 11 10 cfv classmPolys
13 vm setvarm
14 vg setvarg
15 cmn1 classMonic1p
16 11 15 cfv classMonic1ps
17 cir classIrred
18 13 cv setvarm
19 18 17 cfv classIrredm
20 16 19 cin classMonic1psIrredm
21 14 cv setvarg
22 cdsr classr
23 18 22 cfv classrm
24 4 cv setvarp
25 9 cv setvarf
26 24 25 ccom classpf
27 21 26 23 wbr wffgrmpf
28 c1 class1
29 clt class<
30 cdg1 classdeg1
31 11 21 30 co classsdeg1g
32 28 31 29 wbr wff1<sdeg1g
33 27 32 wa wffgrmpf1<sdeg1g
34 33 14 20 crab classgMonic1psIrredm|grmpf1<sdeg1g
35 vb setvarb
36 c0g class0𝑔
37 18 36 cfv class0m
38 26 37 wceq wffpf=0m
39 35 cv setvarb
40 c0 class
41 39 40 wceq wffb=
42 38 41 wo wffpf=0mb=
43 11 25 cop classsf
44 cglb classglb
45 39 44 cfv classglbb
46 vh setvarh
47 cpfl classpolyFld
48 46 cv setvarh
49 11 48 47 co classspolyFldh
50 vt setvart
51 c1st class1st
52 50 cv setvart
53 52 51 cfv class1stt
54 c2nd class2nd
55 52 54 cfv class2ndt
56 25 55 ccom classf2ndt
57 53 56 cop class1sttf2ndt
58 50 49 57 csb classspolyFldh/t1sttf2ndt
59 46 45 58 csb classglbb/hspolyFldh/t1sttf2ndt
60 42 43 59 cif classifpf=0mb=sfglbb/hspolyFldh/t1sttf2ndt
61 35 34 60 csb classgMonic1psIrredm|grmpf1<sdeg1g/bifpf=0mb=sfglbb/hspolyFldh/t1sttf2ndt
62 13 12 61 csb classmPolys/mgMonic1psIrredm|grmpf1<sdeg1g/bifpf=0mb=sfglbb/hspolyFldh/t1sttf2ndt
63 8 9 2 2 62 cmpo classsV,fVmPolys/mgMonic1psIrredm|grmpf1<sdeg1g/bifpf=0mb=sfglbb/hspolyFldh/t1sttf2ndt
64 3 cv setvarj
65 63 64 crdg classrecsV,fVmPolys/mgMonic1psIrredm|grmpf1<sdeg1g/bifpf=0mb=sfglbb/hspolyFldh/t1sttf2ndtj
66 ccrd classcard
67 cfz class
68 6 24 30 co classrdeg1p
69 28 68 67 co class1rdeg1p
70 69 66 cfv classcard1rdeg1p
71 70 65 cfv classrecsV,fVmPolys/mgMonic1psIrredm|grmpf1<sdeg1g/bifpf=0mb=sfglbb/hspolyFldh/t1sttf2ndtjcard1rdeg1p
72 4 7 71 cmpt classpPoly1rrecsV,fVmPolys/mgMonic1psIrredm|grmpf1<sdeg1g/bifpf=0mb=sfglbb/hspolyFldh/t1sttf2ndtjcard1rdeg1p
73 1 3 2 2 72 cmpo classrV,jVpPoly1rrecsV,fVmPolys/mgMonic1psIrredm|grmpf1<sdeg1g/bifpf=0mb=sfglbb/hspolyFldh/t1sttf2ndtjcard1rdeg1p
74 0 73 wceq wffsplitFld1=rV,jVpPoly1rrecsV,fVmPolys/mgMonic1psIrredm|grmpf1<sdeg1g/bifpf=0mb=sfglbb/hspolyFldh/t1sttf2ndtjcard1rdeg1p