Metamath Proof Explorer


Theorem constrcon

Description: Contradiction of constuctibility: If a complex number A has minimal polynomial F over QQ of a degree that is not a power of 2 , then A is not constructible. (Contributed by Thierry Arnoux, 26-Oct-2025)

Ref Expression
Hypotheses constrcon.d 𝐷 = ( deg1 ‘ ( ℂflds ℚ ) )
constrcon.m 𝑀 = ( ℂfld minPoly ℚ )
constrcon.a ( 𝜑𝐴 ∈ ℂ )
constrcon.f ( 𝜑𝐹 = ( 𝑀𝐴 ) )
constrcon.1 ( 𝜑 → ( 𝐷𝐹 ) ∈ ℕ0 )
constrcon.2 ( ( 𝜑𝑛 ∈ ℕ0 ) → ( 𝐷𝐹 ) ≠ ( 2 ↑ 𝑛 ) )
Assertion constrcon ( 𝜑 → ¬ 𝐴 ∈ Constr )

Proof

Step Hyp Ref Expression
1 constrcon.d 𝐷 = ( deg1 ‘ ( ℂflds ℚ ) )
2 constrcon.m 𝑀 = ( ℂfld minPoly ℚ )
3 constrcon.a ( 𝜑𝐴 ∈ ℂ )
4 constrcon.f ( 𝜑𝐹 = ( 𝑀𝐴 ) )
5 constrcon.1 ( 𝜑 → ( 𝐷𝐹 ) ∈ ℕ0 )
6 constrcon.2 ( ( 𝜑𝑛 ∈ ℕ0 ) → ( 𝐷𝐹 ) ≠ ( 2 ↑ 𝑛 ) )
7 6 neneqd ( ( 𝜑𝑛 ∈ ℕ0 ) → ¬ ( 𝐷𝐹 ) = ( 2 ↑ 𝑛 ) )
8 eqid ( ℂflds ℚ ) = ( ℂflds ℚ )
9 eqid ( ℂflds ( ℂfld fldGen ( ℚ ∪ { 𝐴 } ) ) ) = ( ℂflds ( ℂfld fldGen ( ℚ ∪ { 𝐴 } ) ) )
10 eqid ( deg1 ‘ ℂfld ) = ( deg1 ‘ ℂfld )
11 cnfldfld fld ∈ Field
12 11 a1i ( 𝜑 → ℂfld ∈ Field )
13 cndrng fld ∈ DivRing
14 qsubdrg ( ℚ ∈ ( SubRing ‘ ℂfld ) ∧ ( ℂflds ℚ ) ∈ DivRing )
15 14 simpli ℚ ∈ ( SubRing ‘ ℂfld )
16 8 qdrng ( ℂflds ℚ ) ∈ DivRing
17 issdrg ( ℚ ∈ ( SubDRing ‘ ℂfld ) ↔ ( ℂfld ∈ DivRing ∧ ℚ ∈ ( SubRing ‘ ℂfld ) ∧ ( ℂflds ℚ ) ∈ DivRing ) )
18 13 15 16 17 mpbir3an ℚ ∈ ( SubDRing ‘ ℂfld )
19 18 a1i ( 𝜑 → ℚ ∈ ( SubDRing ‘ ℂfld ) )
20 cnfldbas ℂ = ( Base ‘ ℂfld )
21 eqidd ( 𝜑𝐷 = 𝐷 )
22 21 4 fveq12d ( 𝜑 → ( 𝐷𝐹 ) = ( 𝐷 ‘ ( 𝑀𝐴 ) ) )
23 22 5 eqeltrrd ( 𝜑 → ( 𝐷 ‘ ( 𝑀𝐴 ) ) ∈ ℕ0 )
24 20 2 1 12 19 3 23 minplyelirng ( 𝜑𝐴 ∈ ( ℂfld IntgRing ℚ ) )
25 8 9 10 2 12 19 24 algextdeg ( 𝜑 → ( ( ℂflds ( ℂfld fldGen ( ℚ ∪ { 𝐴 } ) ) ) [:] ( ℂflds ℚ ) ) = ( ( deg1 ‘ ℂfld ) ‘ ( 𝑀𝐴 ) ) )
26 eqid ( Poly1 ‘ ( ℂflds ℚ ) ) = ( Poly1 ‘ ( ℂflds ℚ ) )
27 eqid ( Base ‘ ( Poly1 ‘ ( ℂflds ℚ ) ) ) = ( Base ‘ ( Poly1 ‘ ( ℂflds ℚ ) ) )
28 eqid ( ℂfld evalSub1 ℚ ) = ( ℂfld evalSub1 ℚ )
29 eqid ( 0g ‘ ℂfld ) = ( 0g ‘ ℂfld )
30 eqid { 𝑞 ∈ dom ( ℂfld evalSub1 ℚ ) ∣ ( ( ( ℂfld evalSub1 ℚ ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g ‘ ℂfld ) } = { 𝑞 ∈ dom ( ℂfld evalSub1 ℚ ) ∣ ( ( ( ℂfld evalSub1 ℚ ) ‘ 𝑞 ) ‘ 𝐴 ) = ( 0g ‘ ℂfld ) }
31 eqid ( RSpan ‘ ( Poly1 ‘ ( ℂflds ℚ ) ) ) = ( RSpan ‘ ( Poly1 ‘ ( ℂflds ℚ ) ) )
32 eqid ( idlGen1p ‘ ( ℂflds ℚ ) ) = ( idlGen1p ‘ ( ℂflds ℚ ) )
33 28 26 20 12 19 3 29 30 31 32 2 minplycl ( 𝜑 → ( 𝑀𝐴 ) ∈ ( Base ‘ ( Poly1 ‘ ( ℂflds ℚ ) ) ) )
34 15 a1i ( 𝜑 → ℚ ∈ ( SubRing ‘ ℂfld ) )
35 8 10 26 27 33 34 ressdeg1 ( 𝜑 → ( ( deg1 ‘ ℂfld ) ‘ ( 𝑀𝐴 ) ) = ( ( deg1 ‘ ( ℂflds ℚ ) ) ‘ ( 𝑀𝐴 ) ) )
36 1 21 eqtr3id ( 𝜑 → ( deg1 ‘ ( ℂflds ℚ ) ) = 𝐷 )
37 4 eqcomd ( 𝜑 → ( 𝑀𝐴 ) = 𝐹 )
38 36 37 fveq12d ( 𝜑 → ( ( deg1 ‘ ( ℂflds ℚ ) ) ‘ ( 𝑀𝐴 ) ) = ( 𝐷𝐹 ) )
39 25 35 38 3eqtrd ( 𝜑 → ( ( ℂflds ( ℂfld fldGen ( ℚ ∪ { 𝐴 } ) ) ) [:] ( ℂflds ℚ ) ) = ( 𝐷𝐹 ) )
40 39 eqeq1d ( 𝜑 → ( ( ( ℂflds ( ℂfld fldGen ( ℚ ∪ { 𝐴 } ) ) ) [:] ( ℂflds ℚ ) ) = ( 2 ↑ 𝑛 ) ↔ ( 𝐷𝐹 ) = ( 2 ↑ 𝑛 ) ) )
41 40 adantr ( ( 𝜑𝑛 ∈ ℕ0 ) → ( ( ( ℂflds ( ℂfld fldGen ( ℚ ∪ { 𝐴 } ) ) ) [:] ( ℂflds ℚ ) ) = ( 2 ↑ 𝑛 ) ↔ ( 𝐷𝐹 ) = ( 2 ↑ 𝑛 ) ) )
42 7 41 mtbird ( ( 𝜑𝑛 ∈ ℕ0 ) → ¬ ( ( ℂflds ( ℂfld fldGen ( ℚ ∪ { 𝐴 } ) ) ) [:] ( ℂflds ℚ ) ) = ( 2 ↑ 𝑛 ) )
43 42 nrexdv ( 𝜑 → ¬ ∃ 𝑛 ∈ ℕ0 ( ( ℂflds ( ℂfld fldGen ( ℚ ∪ { 𝐴 } ) ) ) [:] ( ℂflds ℚ ) ) = ( 2 ↑ 𝑛 ) )
44 eqid ( ℂfld fldGen ( ℚ ∪ { 𝐴 } ) ) = ( ℂfld fldGen ( ℚ ∪ { 𝐴 } ) )
45 simpr ( ( 𝜑𝐴 ∈ Constr ) → 𝐴 ∈ Constr )
46 8 9 44 45 constrext2chn ( ( 𝜑𝐴 ∈ Constr ) → ∃ 𝑛 ∈ ℕ0 ( ( ℂflds ( ℂfld fldGen ( ℚ ∪ { 𝐴 } ) ) ) [:] ( ℂflds ℚ ) ) = ( 2 ↑ 𝑛 ) )
47 43 46 mtand ( 𝜑 → ¬ 𝐴 ∈ Constr )