Users' Mathboxes Mathbox for Mario Carneiro < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  df-sfl1 Structured version   Visualization version   GIF version

Definition df-sfl1 36495
Description: Temporary construction for the splitting field of a polynomial. The inputs are a field 𝑟 and a polynomial 𝑝 that we want to split, along with a tuple 𝑗 in the same format as the output. The output is a tuple ⟨𝑆, 𝐹⟩ where 𝑆 is the splitting field and 𝐹 is an injective homomorphism from the original field 𝑟.

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.)

Assertion
Ref Expression
df-sfl1 splitFld1 = (𝑟 ∈ V, 𝑗 ∈ V ↦ (𝑝 ∈ (Poly1‘𝑟) ↦ (rec((𝑠 ∈ V, 𝑓 ∈ V ↦ ⦋(Poly1‘𝑠) / 𝑚⦌⦋{𝑔 ∈ ((Monic1p‘𝑠) ∩ (Irred‘𝑚)) ∣ (𝑔(∥r‘𝑚)(𝑝 ∘ 𝑓) ∧ 1 < (𝑠deg1𝑔))} / 𝑏⦌if(((𝑝 ∘ 𝑓) = (0g‘𝑚) ∨ 𝑏 = ∅), ⟨𝑠, 𝑓⟩, ⦋(glb‘𝑏) / ℎ⦌⦋(𝑠 polyFld ℎ) / 𝑡⦌⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩)), 𝑗)‘(card‘(1...(𝑟deg1𝑝))))))
Distinct variable group:   𝑓,𝑏,𝑔,ℎ,𝑗,𝑚,𝑝,𝑟,𝑠,𝑡

Detailed syntax breakdown of Definition df-sfl1
StepHypRef Expression
1 csf1 36482 . 2 class splitFld1
2 vr . . 3 setvar 𝑟
3 vj . . 3 setvar 𝑗
4 cvv 3450 . . 3 class V
5 vp . . . 4 setvar 𝑝
62cv 1568 . . . . 5 class 𝑟
7 cpl1 22500 . . . . 5 class Poly1
86, 7cfv 6538 . . . 4 class (Poly1‘𝑟)
9 c1 11204 . . . . . . 7 class 1
105cv 1568 . . . . . . . 8 class 𝑝
11 cdg1 26377 . . . . . . . 8 class deg1
126, 10, 11co 7420 . . . . . . 7 class (𝑟deg1𝑝)
13 cfz 13642 . . . . . . 7 class ...
149, 12, 13co 7420 . . . . . 6 class (1...(𝑟deg1𝑝))
15 ccrd 10019 . . . . . 6 class card
1614, 15cfv 6538 . . . . 5 class (card‘(1...(𝑟deg1𝑝)))
17 vs . . . . . . 7 setvar 𝑠
18 vf . . . . . . 7 setvar 𝑓
19 vm . . . . . . . 8 setvar 𝑚
2017cv 1568 . . . . . . . . 9 class 𝑠
2120, 7cfv 6538 . . . . . . . 8 class (Poly1‘𝑠)
22 vb . . . . . . . . 9 setvar 𝑏
23 vg . . . . . . . . . . . . 13 setvar 𝑔
2423cv 1568 . . . . . . . . . . . 12 class 𝑔
2518cv 1568 . . . . . . . . . . . . 13 class 𝑓
2610, 25ccom 5654 . . . . . . . . . . . 12 class (𝑝 ∘ 𝑓)
2719cv 1568 . . . . . . . . . . . . 13 class 𝑚
28 cdsr 20589 . . . . . . . . . . . . 13 class ∥r
2927, 28cfv 6538 . . . . . . . . . . . 12 class (∥r‘𝑚)
3024, 26, 29wbr 5102 . . . . . . . . . . 11 wff 𝑔(∥r‘𝑚)(𝑝 ∘ 𝑓)
3120, 24, 11co 7420 . . . . . . . . . . . 12 class (𝑠deg1𝑔)
32 clt 11346 . . . . . . . . . . . 12 class <
339, 31, 32wbr 5102 . . . . . . . . . . 11 wff 1 < (𝑠deg1𝑔)
3430, 33wa 401 . . . . . . . . . 10 wff (𝑔(∥r‘𝑚)(𝑝 ∘ 𝑓) ∧ 1 < (𝑠deg1𝑔))
35 cmn1 26449 . . . . . . . . . . . 12 class Monic1p
3620, 35cfv 6538 . . . . . . . . . . 11 class (Monic1p‘𝑠)
37 cir 20591 . . . . . . . . . . . 12 class Irred
3827, 37cfv 6538 . . . . . . . . . . 11 class (Irred‘𝑚)
3936, 38cin 4089 . . . . . . . . . 10 class ((Monic1p‘𝑠) ∩ (Irred‘𝑚))
4034, 23, 39crab 3412 . . . . . . . . 9 class {𝑔 ∈ ((Monic1p‘𝑠) ∩ (Irred‘𝑚)) ∣ (𝑔(∥r‘𝑚)(𝑝 ∘ 𝑓) ∧ 1 < (𝑠deg1𝑔))}
41 c0g 17615 . . . . . . . . . . . . 13 class 0g
4227, 41cfv 6538 . . . . . . . . . . . 12 class (0g‘𝑚)
4326, 42wceq 1569 . . . . . . . . . . 11 wff (𝑝 ∘ 𝑓) = (0g‘𝑚)
4422cv 1568 . . . . . . . . . . . 12 class 𝑏
45 c0 4278 . . . . . . . . . . . 12 class ∅
4644, 45wceq 1569 . . . . . . . . . . 11 wff 𝑏 = ∅
4743, 46wo 861 . . . . . . . . . 10 wff ((𝑝 ∘ 𝑓) = (0g‘𝑚) ∨ 𝑏 = ∅)
4820, 25cop 4834 . . . . . . . . . 10 class ⟨𝑠, 𝑓⟩
49 vh . . . . . . . . . . 11 setvar ℎ
50 cglb 18489 . . . . . . . . . . . 12 class glb
5144, 50cfv 6538 . . . . . . . . . . 11 class (glb‘𝑏)
52 vt . . . . . . . . . . . 12 setvar 𝑡
5349cv 1568 . . . . . . . . . . . . 13 class ℎ
54 cpfl 36481 . . . . . . . . . . . . 13 class polyFld
5520, 53, 54co 7420 . . . . . . . . . . . 12 class (𝑠 polyFld ℎ)
5652cv 1568 . . . . . . . . . . . . . 14 class 𝑡
57 c1st 7999 . . . . . . . . . . . . . 14 class 1st
5856, 57cfv 6538 . . . . . . . . . . . . 13 class (1st ‘𝑡)
59 c2nd 8000 . . . . . . . . . . . . . . 15 class 2nd
6056, 59cfv 6538 . . . . . . . . . . . . . 14 class (2nd ‘𝑡)
6125, 60ccom 5654 . . . . . . . . . . . . 13 class (𝑓 ∘ (2nd ‘𝑡))
6258, 61cop 4834 . . . . . . . . . . . 12 class ⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩
6352, 55, 62csb 3846 . . . . . . . . . . 11 class ⦋(𝑠 polyFld ℎ) / 𝑡⦌⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩
6449, 51, 63csb 3846 . . . . . . . . . 10 class ⦋(glb‘𝑏) / ℎ⦌⦋(𝑠 polyFld ℎ) / 𝑡⦌⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩
6547, 48, 64cif 4481 . . . . . . . . 9 class if(((𝑝 ∘ 𝑓) = (0g‘𝑚) ∨ 𝑏 = ∅), ⟨𝑠, 𝑓⟩, ⦋(glb‘𝑏) / ℎ⦌⦋(𝑠 polyFld ℎ) / 𝑡⦌⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩)
6622, 40, 65csb 3846 . . . . . . . 8 class ⦋{𝑔 ∈ ((Monic1p‘𝑠) ∩ (Irred‘𝑚)) ∣ (𝑔(∥r‘𝑚)(𝑝 ∘ 𝑓) ∧ 1 < (𝑠deg1𝑔))} / 𝑏⦌if(((𝑝 ∘ 𝑓) = (0g‘𝑚) ∨ 𝑏 = ∅), ⟨𝑠, 𝑓⟩, ⦋(glb‘𝑏) / ℎ⦌⦋(𝑠 polyFld ℎ) / 𝑡⦌⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩)
6719, 21, 66csb 3846 . . . . . . 7 class ⦋(Poly1‘𝑠) / 𝑚⦌⦋{𝑔 ∈ ((Monic1p‘𝑠) ∩ (Irred‘𝑚)) ∣ (𝑔(∥r‘𝑚)(𝑝 ∘ 𝑓) ∧ 1 < (𝑠deg1𝑔))} / 𝑏⦌if(((𝑝 ∘ 𝑓) = (0g‘𝑚) ∨ 𝑏 = ∅), ⟨𝑠, 𝑓⟩, ⦋(glb‘𝑏) / ℎ⦌⦋(𝑠 polyFld ℎ) / 𝑡⦌⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩)
6817, 18, 4, 4, 67cmpo 7422 . . . . . 6 class (𝑠 ∈ V, 𝑓 ∈ V ↦ ⦋(Poly1‘𝑠) / 𝑚⦌⦋{𝑔 ∈ ((Monic1p‘𝑠) ∩ (Irred‘𝑚)) ∣ (𝑔(∥r‘𝑚)(𝑝 ∘ 𝑓) ∧ 1 < (𝑠deg1𝑔))} / 𝑏⦌if(((𝑝 ∘ 𝑓) = (0g‘𝑚) ∨ 𝑏 = ∅), ⟨𝑠, 𝑓⟩, ⦋(glb‘𝑏) / ℎ⦌⦋(𝑠 polyFld ℎ) / 𝑡⦌⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩))
693cv 1568 . . . . . 6 class 𝑗
7068, 69crdg 8420 . . . . 5 class rec((𝑠 ∈ V, 𝑓 ∈ V ↦ ⦋(Poly1‘𝑠) / 𝑚⦌⦋{𝑔 ∈ ((Monic1p‘𝑠) ∩ (Irred‘𝑚)) ∣ (𝑔(∥r‘𝑚)(𝑝 ∘ 𝑓) ∧ 1 < (𝑠deg1𝑔))} / 𝑏⦌if(((𝑝 ∘ 𝑓) = (0g‘𝑚) ∨ 𝑏 = ∅), ⟨𝑠, 𝑓⟩, ⦋(glb‘𝑏) / ℎ⦌⦋(𝑠 polyFld ℎ) / 𝑡⦌⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩)), 𝑗)
7116, 70cfv 6538 . . . 4 class (rec((𝑠 ∈ V, 𝑓 ∈ V ↦ ⦋(Poly1‘𝑠) / 𝑚⦌⦋{𝑔 ∈ ((Monic1p‘𝑠) ∩ (Irred‘𝑚)) ∣ (𝑔(∥r‘𝑚)(𝑝 ∘ 𝑓) ∧ 1 < (𝑠deg1𝑔))} / 𝑏⦌if(((𝑝 ∘ 𝑓) = (0g‘𝑚) ∨ 𝑏 = ∅), ⟨𝑠, 𝑓⟩, ⦋(glb‘𝑏) / ℎ⦌⦋(𝑠 polyFld ℎ) / 𝑡⦌⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩)), 𝑗)‘(card‘(1...(𝑟deg1𝑝))))
725, 8, 71cmpt 5185 . . 3 class (𝑝 ∈ (Poly1‘𝑟) ↦ (rec((𝑠 ∈ V, 𝑓 ∈ V ↦ ⦋(Poly1‘𝑠) / 𝑚⦌⦋{𝑔 ∈ ((Monic1p‘𝑠) ∩ (Irred‘𝑚)) ∣ (𝑔(∥r‘𝑚)(𝑝 ∘ 𝑓) ∧ 1 < (𝑠deg1𝑔))} / 𝑏⦌if(((𝑝 ∘ 𝑓) = (0g‘𝑚) ∨ 𝑏 = ∅), ⟨𝑠, 𝑓⟩, ⦋(glb‘𝑏) / ℎ⦌⦋(𝑠 polyFld ℎ) / 𝑡⦌⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩)), 𝑗)‘(card‘(1...(𝑟deg1𝑝)))))
732, 3, 4, 4, 72cmpo 7422 . 2 class (𝑟 ∈ V, 𝑗 ∈ V ↦ (𝑝 ∈ (Poly1‘𝑟) ↦ (rec((𝑠 ∈ V, 𝑓 ∈ V ↦ ⦋(Poly1‘𝑠) / 𝑚⦌⦋{𝑔 ∈ ((Monic1p‘𝑠) ∩ (Irred‘𝑚)) ∣ (𝑔(∥r‘𝑚)(𝑝 ∘ 𝑓) ∧ 1 < (𝑠deg1𝑔))} / 𝑏⦌if(((𝑝 ∘ 𝑓) = (0g‘𝑚) ∨ 𝑏 = ∅), ⟨𝑠, 𝑓⟩, ⦋(glb‘𝑏) / ℎ⦌⦋(𝑠 polyFld ℎ) / 𝑡⦌⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩)), 𝑗)‘(card‘(1...(𝑟deg1𝑝))))))
741, 73wceq 1569 1 wff splitFld1 = (𝑟 ∈ V, 𝑗 ∈ V ↦ (𝑝 ∈ (Poly1‘𝑟) ↦ (rec((𝑠 ∈ V, 𝑓 ∈ V ↦ ⦋(Poly1‘𝑠) / 𝑚⦌⦋{𝑔 ∈ ((Monic1p‘𝑠) ∩ (Irred‘𝑚)) ∣ (𝑔(∥r‘𝑚)(𝑝 ∘ 𝑓) ∧ 1 < (𝑠deg1𝑔))} / 𝑏⦌if(((𝑝 ∘ 𝑓) = (0g‘𝑚) ∨ 𝑏 = ∅), ⟨𝑠, 𝑓⟩, ⦋(glb‘𝑏) / ℎ⦌⦋(𝑠 polyFld ℎ) / 𝑡⦌⟨(1st ‘𝑡), (𝑓 ∘ (2nd ‘𝑡))⟩)), 𝑗)‘(card‘(1...(𝑟deg1𝑝))))))
Colors of variables:    wff setvar class
This definition is used by: (None)
  Copyright terms: Public domain W3C validator