aboutsummaryrefslogtreecommitdiff
path: root/docs/htmldoc/mathcomp.solvable.extremal.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/htmldoc/mathcomp.solvable.extremal.html')
-rw-r--r--docs/htmldoc/mathcomp.solvable.extremal.html695
1 files changed, 0 insertions, 695 deletions
diff --git a/docs/htmldoc/mathcomp.solvable.extremal.html b/docs/htmldoc/mathcomp.solvable.extremal.html
deleted file mode 100644
index a4ce716..0000000
--- a/docs/htmldoc/mathcomp.solvable.extremal.html
+++ /dev/null
@@ -1,695 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<link href="coqdoc.css" rel="stylesheet" type="text/css" />
-<title>mathcomp.solvable.extremal</title>
-</head>
-
-<body>
-
-<div id="page">
-
-<div id="header">
-</div>
-
-<div id="main">
-
-<h1 class="libtitle">Library mathcomp.solvable.extremal</h1>
-
-<div class="code">
-<span class="comment">(*&nbsp;(c)&nbsp;Copyright&nbsp;2006-2016&nbsp;Microsoft&nbsp;Corporation&nbsp;and&nbsp;Inria.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>
-&nbsp;Distributed&nbsp;under&nbsp;the&nbsp;terms&nbsp;of&nbsp;CeCILL-B.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*)</span><br/>
-
-<br/>
-</div>
-
-<div class="doc">
- This file contains the definition and properties of extremal p-groups;
- it covers and is mostly based on the beginning of Aschbacher, section 23,
- as well as several exercises of this section.
- We define canonical representatives for the group classes that cover the
- extremal p-groups (non-abelian p-groups with a cyclic maximal subgroup):
- 'Mod_m == the modular group of order m, for m = p ^ n, p prime and n &gt;= 3.
- 'D_m == the dihedral group of order m, for m = 2n &gt;= 4.
- 'Q_m == the generalized quaternion group of order m, for m = 2 ^ n &gt;= 8.
- 'SD_m == the semi-dihedral group of order m, for m = 2 ^ n &gt;= 16.
- In each case the notation is defined in the %type, %g and %G scopes, where
- it denotes a finGroupType, a full gset and the full group for that type.
- However each notation is only meaningful under the given conditions, in
- 'D_m is only an extremal group for m = 2 ^ n &gt;= 8, and 'D_8 = 'Mod_8 (they
- are, in fact, beta-convertible).
- We also define
- extremal_generators G p n (x, y) &lt;-&gt; G has order p ^ n, x in G has order
- p ^ n.-1, and y is in G \ &lt; [x]&gt;: thus &lt; [x]&gt; has index p in G,
- so if p is prime, &lt; [x]&gt; is maximal in G, G is generated by x
- and y, and G is extremal or abelian.
- extremal_class G == the class of extremal groups G belongs to: one of
- ModularGroup, Dihedral, Quaternion, SemiDihedral or NotExtremal.
- extremal2 G &lt;=&gt; extremal_class G is one of Dihedral, Quaternion, or
- SemiDihedral; this allows 'D_4 and 'D_8, but excludes 'Mod(2^n)
- for n &gt; 3.
- modular_group_generators p n (x, y) &lt;-&gt; y has order p and acts on x via
- x ^ y = x ^+ (p ^ n.-2).+1. This is the complement to
- extremal_generators G p n (x, y) for modular groups.
- We provide cardinality, presentation, generator and structure theorems for
- each class of extremal group. The extremal_generators predicate is used to
- supply structure theorems with all the required data about G; this is
- completed by an isomorphism assumption (e.g., G \isog 'D(2 ^ n)), and
- sometimes other properties (e.g., # [y] == 2 in the semidihedral case). The
- generators assumption can be deduced generically from the isomorphism
- assumption, or it can be proved manually for a specific choice of x and y.
- The extremal_class function is used to formulate synthetic theorems that
- cover several classes of extremal groups (e.g., Aschbacher ex. 8.3).
-</div>
-<div class="code">
-
-<br/>
-<span class="id" title="keyword">Set Implicit Arguments</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Local Open</span> <span class="id" title="keyword">Scope</span> <span class="id" title="var">ring_scope</span>.<br/>
-<span class="id" title="keyword">Import</span> <span class="id" title="var">GroupScope</span> <span class="id" title="var">GRing.Theory</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Reserved Notation</span> &quot;''Mod_' m" (<span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 8, <span class="id" title="var">m</span> <span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 2, <span class="id" title="var">format</span> "''Mod_' m").<br/>
-<span class="id" title="keyword">Reserved Notation</span> &quot;''D_' m" (<span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 8, <span class="id" title="var">m</span> <span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 2, <span class="id" title="var">format</span> "''D_' m").<br/>
-<span class="id" title="keyword">Reserved Notation</span> &quot;''SD_' m" (<span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 8, <span class="id" title="var">m</span> <span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 2, <span class="id" title="var">format</span> "''SD_' m").<br/>
-<span class="id" title="keyword">Reserved Notation</span> &quot;''Q_' m" (<span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 8, <span class="id" title="var">m</span> <span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 2, <span class="id" title="var">format</span> "''Q_' m").<br/>
-
-<br/>
-<span class="id" title="keyword">Module</span> <a name="Extremal"><span class="id" title="module">Extremal</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Section</span> <a name="Extremal.Construction"><span class="id" title="section">Construction</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Variables</span> <a name="Extremal.Construction.q"><span class="id" title="variable">q</span></a> <a name="Extremal.Construction.p"><span class="id" title="variable">p</span></a> <a name="Extremal.Construction.e"><span class="id" title="variable">e</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#nat"><span class="id" title="inductive">nat</span></a>.<br/>
-</div>
-
-<div class="doc">
- Construct the semi-direct product of 'Z_q by 'Z_p with 1%R ^ 1%R = e%R,
- if possible, i.e., if p, q &gt; 1 and there is s \in Aut 'Z_p such that
- # [s] %| p and s 1%R = 1%R ^+ e.
-</div>
-<div class="code">
-
-<br/>
-<span class="id" title="keyword">Let</span> <a name="Extremal.Construction.a"><span class="id" title="variable">a</span></a> : <a class="idref" href="mathcomp.algebra.zmodp.html#fdcfc8589237bc0c67b9484f75e68729"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.zmodp.html#fdcfc8589237bc0c67b9484f75e68729"><span class="id" title="notation">Z_p</span></a> := <a class="idref" href="mathcomp.algebra.zmodp.html#Zp1"><span class="id" title="definition">Zp1</span></a>.<br/>
-<span class="id" title="keyword">Let</span> <a name="Extremal.Construction.b"><span class="id" title="variable">b</span></a> : <a class="idref" href="mathcomp.algebra.zmodp.html#fdcfc8589237bc0c67b9484f75e68729"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.zmodp.html#fdcfc8589237bc0c67b9484f75e68729"><span class="id" title="notation">Z_q</span></a> := <a class="idref" href="mathcomp.algebra.zmodp.html#Zp1"><span class="id" title="definition">Zp1</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Definition</span> <a name="Extremal.aut_of"><span class="id" title="definition">aut_of</span></a> :=<br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#odflt"><span class="id" title="abbreviation">odflt</span></a> 1 <a class="idref" href="mathcomp.ssreflect.fintype.html#267681cdbe65ec2e385ab01d5a0e14a6"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#267681cdbe65ec2e385ab01d5a0e14a6"><span class="id" title="notation">pick</span></a> <span class="id" title="var">s</span> <a class="idref" href="mathcomp.ssreflect.fintype.html#267681cdbe65ec2e385ab01d5a0e14a6"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.fingroup.automorphism.html#Aut"><span class="id" title="definition">Aut</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.B"><span class="id" title="abbreviation">B</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#267681cdbe65ec2e385ab01d5a0e14a6"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1 <a class="idref" href="mathcomp.ssreflect.fintype.html#267681cdbe65ec2e385ab01d5a0e14a6"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="mathcomp.ssreflect.div.html#bde82eab2fe4a0799bc2419e587505d4"><span class="id" title="notation">%|</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.p"><span class="id" title="variable">p</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">&amp;&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.b"><span class="id" title="variable">b</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.b"><span class="id" title="variable">b</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.e"><span class="id" title="variable">e</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#267681cdbe65ec2e385ab01d5a0e14a6"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="Extremal.aut_dvdn"><span class="id" title="lemma">aut_dvdn</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#Extremal.aut_of"><span class="id" title="definition">aut_of</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="mathcomp.ssreflect.div.html#bde82eab2fe4a0799bc2419e587505d4"><span class="id" title="notation">%|</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.a"><span class="id" title="variable">a</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Definition</span> <a name="Extremal.act_morphism"><span class="id" title="definition">act_morphism</span></a> := <a class="idref" href="mathcomp.solvable.cyclic.html#eltm_morphism"><span class="id" title="definition">eltm_morphism</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.aut_dvdn"><span class="id" title="lemma">aut_dvdn</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Definition</span> <a name="Extremal.base_act"><span class="id" title="definition">base_act</span></a> := (<a class="idref" href="mathcomp.fingroup.action.html#f2aef07acd74cdfcf6ee224ab519cd4b"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.action.html#f2aef07acd74cdfcf6ee224ab519cd4b"><span class="id" title="notation">Aut</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.B"><span class="id" title="abbreviation">B</span></a><a class="idref" href="mathcomp.fingroup.action.html#f2aef07acd74cdfcf6ee224ab519cd4b"><span class="id" title="notation">]</span></a> <a class="idref" href="mathcomp.fingroup.action.html#491da8710c1c30436279d34f447955d4"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.action.html#491da8710c1c30436279d34f447955d4"><span class="id" title="notation">o</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.act_morphism"><span class="id" title="definition">act_morphism</span></a>)%<span class="id" title="var">gact</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="Extremal.act_dom"><span class="id" title="lemma">act_dom</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.a"><span class="id" title="variable">a</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">subset</span></a> <a class="idref" href="mathcomp.fingroup.action.html#act_dom"><span class="id" title="definition">act_dom</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.base_act"><span class="id" title="definition">base_act</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Definition</span> <a name="Extremal.gact"><span class="id" title="definition">gact</span></a> := (<a class="idref" href="mathcomp.solvable.extremal.html#Extremal.base_act"><span class="id" title="definition">base_act</span></a> <a class="idref" href="mathcomp.fingroup.action.html#d7db4b400ec3a447b82b23baa20981c9"><span class="id" title="notation">\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.act_dom"><span class="id" title="lemma">act_dom</span></a>)%<span class="id" title="var">gact</span>.<br/>
-<span class="id" title="keyword">Fact</span> <a name="Extremal.gtype_key"><span class="id" title="lemma">gtype_key</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#unit"><span class="id" title="inductive">unit</span></a>. <br/>
-<span class="id" title="keyword">Definition</span> <a name="Extremal.gtype"><span class="id" title="definition">gtype</span></a> := <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#locked_with"><span class="id" title="definition">locked_with</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.gtype_key"><span class="id" title="lemma">gtype_key</span></a> (<a class="idref" href="mathcomp.fingroup.gproduct.html#sdprod_groupType"><span class="id" title="definition">sdprod_groupType</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.gact"><span class="id" title="definition">gact</span></a>).<br/>
-
-<br/>
-<span class="id" title="keyword">Hypotheses</span> (<a name="Extremal.Construction.p_gt1"><span class="id" title="variable">p_gt1</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1) (<a name="Extremal.Construction.q_gt1"><span class="id" title="variable">q_gt1</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.q"><span class="id" title="variable">q</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1).<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="Extremal.card"><span class="id" title="lemma">card</span></a> : <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">set</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.gtype"><span class="id" title="definition">gtype</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> (<a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#ea2ff3d561159081cea6fb2e8113cc54"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.q"><span class="id" title="variable">q</span></a>)%<span class="id" title="var">N</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="Extremal.Grp"><span class="id" title="lemma">Grp</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">(</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">∃</span></a> <span class="id" title="var">s</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">,</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.fingroup.automorphism.html#Aut"><span class="id" title="definition">Aut</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.B"><span class="id" title="abbreviation">B</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="mathcomp.ssreflect.div.html#bde82eab2fe4a0799bc2419e587505d4"><span class="id" title="notation">%|</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.p"><span class="id" title="variable">p</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.b"><span class="id" title="variable">b</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.b"><span class="id" title="variable">b</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.e"><span class="id" title="variable">e</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">set</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.gtype"><span class="id" title="definition">gtype</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">]</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">Grp</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">:</span></a> <span class="id" title="var">y</span> <a class="idref" href="mathcomp.fingroup.presentation.html#dabeb9211165bee23a272123a1fbb765"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.q"><span class="id" title="variable">q</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b52ad9f454dbbbe5277b0e0896d02a68"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#49dac265a72037ecb7c7f91d122c63b2"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction.e"><span class="id" title="variable">e</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">)</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal.Construction"><span class="id" title="section">Construction</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.solvable.extremal.html#Extremal"><span class="id" title="module">Extremal</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Section</span> <a name="SpecializeExtremals"><span class="id" title="section">SpecializeExtremals</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Import</span> <span class="id" title="var">Extremal</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Variable</span> <a name="SpecializeExtremals.m"><span class="id" title="variable">m</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#nat"><span class="id" title="inductive">nat</span></a>.<br/>
-<span class="id" title="keyword">Let</span> <a name="SpecializeExtremals.p"><span class="id" title="variable">p</span></a> := <a class="idref" href="mathcomp.ssreflect.prime.html#pdiv"><span class="id" title="definition">pdiv</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.m"><span class="id" title="variable">m</span></a>.<br/>
-<span class="id" title="keyword">Let</span> <a name="SpecializeExtremals.q"><span class="id" title="variable">q</span></a> := <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.ssreflect.div.html#2242f6721707980eca939ec29164eab3"><span class="id" title="notation">%/</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.p"><span class="id" title="variable">p</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Definition</span> <a name="modular_gtype"><span class="id" title="definition">modular_gtype</span></a> := <a class="idref" href="mathcomp.solvable.extremal.html#gtype"><span class="id" title="definition">gtype</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.q"><span class="id" title="variable">q</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.q"><span class="id" title="variable">q</span></a> <a class="idref" href="mathcomp.ssreflect.div.html#2242f6721707980eca939ec29164eab3"><span class="id" title="notation">%/</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">).+1</span></a>.<br/>
-<span class="id" title="keyword">Definition</span> <a name="dihedral_gtype"><span class="id" title="definition">dihedral_gtype</span></a> := <a class="idref" href="mathcomp.solvable.extremal.html#gtype"><span class="id" title="definition">gtype</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.q"><span class="id" title="variable">q</span></a> 2 <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.q"><span class="id" title="variable">q</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a>.<br/>
-<span class="id" title="keyword">Definition</span> <a name="semidihedral_gtype"><span class="id" title="definition">semidihedral_gtype</span></a> := <a class="idref" href="mathcomp.solvable.extremal.html#gtype"><span class="id" title="definition">gtype</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.q"><span class="id" title="variable">q</span></a> 2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.q"><span class="id" title="variable">q</span></a> <a class="idref" href="mathcomp.ssreflect.div.html#2242f6721707980eca939ec29164eab3"><span class="id" title="notation">%/</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">).-1</span></a>.<br/>
-<span class="id" title="keyword">Definition</span> <a name="quaternion_kernel"><span class="id" title="definition">quaternion_kernel</span></a> :=<br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.fingroup.fingroup.html#7fae3285ae0b14be2ed14c5a340c6d3d"><span class="id" title="notation">&lt;&lt;</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#9e3f1d0cf47c39e3927b1f03a0797327"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#9e3f1d0cf47c39e3927b1f03a0797327"><span class="id" title="notation">set</span></a> <span class="id" title="var">u</span> <a class="idref" href="mathcomp.ssreflect.finset.html#9e3f1d0cf47c39e3927b1f03a0797327"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> 2 <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 1<a class="idref" href="mathcomp.ssreflect.finset.html#9e3f1d0cf47c39e3927b1f03a0797327"><span class="id" title="notation">]</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#1e993786ab46c6f2c0d488e43f629b71"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#1e993786ab46c6f2c0d488e43f629b71"><span class="id" title="notation">set</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> 2 <a class="idref" href="mathcomp.ssreflect.finset.html#1e993786ab46c6f2c0d488e43f629b71"><span class="id" title="notation">|</span></a> <span class="id" title="var">u</span> <a class="idref" href="mathcomp.ssreflect.finset.html#1e993786ab46c6f2c0d488e43f629b71"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">set</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gtype"><span class="id" title="definition">gtype</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.q"><span class="id" title="variable">q</span></a> 4 <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals.q"><span class="id" title="variable">q</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#1e993786ab46c6f2c0d488e43f629b71"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#7fae3285ae0b14be2ed14c5a340c6d3d"><span class="id" title="notation">&gt;&gt;</span></a>.<br/>
-<span class="id" title="keyword">Definition</span> <a name="quaternion_gtype"><span class="id" title="definition">quaternion_gtype</span></a> :=<br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#locked_with"><span class="id" title="definition">locked_with</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gtype_key"><span class="id" title="lemma">gtype_key</span></a> (<a class="idref" href="mathcomp.fingroup.quotient.html#coset_groupType"><span class="id" title="definition">coset_groupType</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#quaternion_kernel"><span class="id" title="definition">quaternion_kernel</span></a>).<br/>
-
-<br/>
-<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.solvable.extremal.html#SpecializeExtremals"><span class="id" title="section">SpecializeExtremals</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Notation</span> <a name="c81691d4612f9ec5025db13226a73cf4"><span class="id" title="notation">&quot;</span></a>''Mod_' m" := (<a class="idref" href="mathcomp.solvable.extremal.html#modular_gtype"><span class="id" title="definition">modular_gtype</span></a> <span class="id" title="var">m</span>) : <span class="id" title="var">type_scope</span>.<br/>
-<span class="id" title="keyword">Notation</span> <a name="c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">&quot;</span></a>''Mod_' m" := <a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">set</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#gsort"><span class="id" title="abbreviation">gsort</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#c81691d4612f9ec5025db13226a73cf4"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c81691d4612f9ec5025db13226a73cf4"><span class="id" title="notation">Mod_m</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">]</span></a> : <span class="id" title="var">group_scope</span>.<br/>
-<span class="id" title="keyword">Notation</span> <a name="617af41c7aa83ebd199635cc118b49b3"><span class="id" title="notation">&quot;</span></a>''Mod_' m" := <a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">set</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#gsort"><span class="id" title="abbreviation">gsort</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#c81691d4612f9ec5025db13226a73cf4"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c81691d4612f9ec5025db13226a73cf4"><span class="id" title="notation">Mod_m</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">]</span></a>%<span class="id" title="var">G</span> : <span class="id" title="var">Group_scope</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Notation</span> <a name="320aacfa08987b01c02f71e79ec0772d"><span class="id" title="notation">&quot;</span></a>''D_' m" := (<a class="idref" href="mathcomp.solvable.extremal.html#dihedral_gtype"><span class="id" title="definition">dihedral_gtype</span></a> <span class="id" title="var">m</span>) : <span class="id" title="var">type_scope</span>.<br/>
-<span class="id" title="keyword">Notation</span> <a name="eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">&quot;</span></a>''D_' m" := <a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">set</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#gsort"><span class="id" title="abbreviation">gsort</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#320aacfa08987b01c02f71e79ec0772d"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#320aacfa08987b01c02f71e79ec0772d"><span class="id" title="notation">D_m</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">]</span></a> : <span class="id" title="var">group_scope</span>.<br/>
-<span class="id" title="keyword">Notation</span> <a name="a40de2c4a33b4b3e5e810912a76d8f42"><span class="id" title="notation">&quot;</span></a>''D_' m" := <a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">set</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#gsort"><span class="id" title="abbreviation">gsort</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#320aacfa08987b01c02f71e79ec0772d"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#320aacfa08987b01c02f71e79ec0772d"><span class="id" title="notation">D_m</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">]</span></a>%<span class="id" title="var">G</span> : <span class="id" title="var">Group_scope</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Notation</span> <a name="a5f16cd500b30e4657bb39a2b34ec640"><span class="id" title="notation">&quot;</span></a>''SD_' m" := (<a class="idref" href="mathcomp.solvable.extremal.html#semidihedral_gtype"><span class="id" title="definition">semidihedral_gtype</span></a> <span class="id" title="var">m</span>) : <span class="id" title="var">type_scope</span>.<br/>
-<span class="id" title="keyword">Notation</span> <a name="bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">&quot;</span></a>''SD_' m" := <a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">set</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#gsort"><span class="id" title="abbreviation">gsort</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#a5f16cd500b30e4657bb39a2b34ec640"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#a5f16cd500b30e4657bb39a2b34ec640"><span class="id" title="notation">SD_m</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">]</span></a> : <span class="id" title="var">group_scope</span>.<br/>
-<span class="id" title="keyword">Notation</span> <a name="8cf3958d568e86b04891e5debdaa9088"><span class="id" title="notation">&quot;</span></a>''SD_' m" := <a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">set</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#gsort"><span class="id" title="abbreviation">gsort</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#a5f16cd500b30e4657bb39a2b34ec640"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#a5f16cd500b30e4657bb39a2b34ec640"><span class="id" title="notation">SD_m</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">]</span></a>%<span class="id" title="var">G</span> : <span class="id" title="var">Group_scope</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Notation</span> <a name="d6002668429f2fb1d72cec79cc2c96a4"><span class="id" title="notation">&quot;</span></a>''Q_' m" := (<a class="idref" href="mathcomp.solvable.extremal.html#quaternion_gtype"><span class="id" title="definition">quaternion_gtype</span></a> <span class="id" title="var">m</span>) : <span class="id" title="var">type_scope</span>.<br/>
-<span class="id" title="keyword">Notation</span> <a name="85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">&quot;</span></a>''Q_' m" := <a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">set</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#gsort"><span class="id" title="abbreviation">gsort</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#d6002668429f2fb1d72cec79cc2c96a4"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#d6002668429f2fb1d72cec79cc2c96a4"><span class="id" title="notation">Q_m</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">]</span></a> : <span class="id" title="var">group_scope</span>.<br/>
-<span class="id" title="keyword">Notation</span> <a name="de4614b692797c6dc4c82a4b56748090"><span class="id" title="notation">&quot;</span></a>''Q_' m" := <a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">set</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#gsort"><span class="id" title="abbreviation">gsort</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#d6002668429f2fb1d72cec79cc2c96a4"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#d6002668429f2fb1d72cec79cc2c96a4"><span class="id" title="notation">Q_m</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#e98634a3dc0445a0bdea71fc5975bb33"><span class="id" title="notation">]</span></a>%<span class="id" title="var">G</span> : <span class="id" title="var">Group_scope</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Section</span> <a name="ExtremalTheory"><span class="id" title="section">ExtremalTheory</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Types</span> (<span class="id" title="var">gT</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#FinGroup.Exports.finGroupType"><span class="id" title="abbreviation">finGroupType</span></a>) (<span class="id" title="var">p</span> <span class="id" title="var">q</span> <span class="id" title="var">m</span> <span class="id" title="var">n</span> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#nat"><span class="id" title="inductive">nat</span></a>).<br/>
-
-<br/>
-</div>
-
-<div class="doc">
- This is Aschbacher (23.3), with the isomorphism made explicit, and a
- slightly reworked case analysis on the prime and exponent; in particular
- the inverting involution is available for all non-trivial p-cycles.
-</div>
-<div class="code">
-<span class="id" title="keyword">Lemma</span> <a name="cyclic_pgroup_Aut_structure"><span class="id" title="lemma">cyclic_pgroup_Aut_structure</span></a> <span class="id" title="var">gT</span> <span class="id" title="var">p</span> (<span class="id" title="var">G</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#be2f022a539ec6d4d51932b5ea998e57"><span class="id" title="notation">:!=:</span></a> 1 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<span class="id" title="keyword">let</span> <span class="id" title="var">q</span> := <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <span class="id" title="tactic">in</span> <span class="id" title="keyword">let</span> <span class="id" title="var">n</span> := <a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.ssreflect.prime.html#logn"><span class="id" title="definition">logn</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#q"><span class="id" title="variable">q</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">).-1</span></a> <span class="id" title="tactic">in</span><br/>
-&nbsp;&nbsp;<span class="id" title="keyword">let</span> <span class="id" title="var">A</span> := <a class="idref" href="mathcomp.fingroup.automorphism.html#Aut"><span class="id" title="definition">Aut</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <span class="id" title="tactic">in</span> <span class="id" title="keyword">let</span> <span class="id" title="var">P</span> := <a class="idref" href="mathcomp.solvable.pgroup.html#64e6c9ddce70097e2cb88e9baa3b5a39"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#64e6c9ddce70097e2cb88e9baa3b5a39"><span class="id" title="notation">O_p</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#64e6c9ddce70097e2cb88e9baa3b5a39"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#64e6c9ddce70097e2cb88e9baa3b5a39"><span class="id" title="notation">)</span></a> <span class="id" title="tactic">in</span> <span class="id" title="keyword">let</span> <span class="id" title="var">F</span> := <a class="idref" href="mathcomp.solvable.pgroup.html#64e6c9ddce70097e2cb88e9baa3b5a39"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#64e6c9ddce70097e2cb88e9baa3b5a39"><span class="id" title="notation">O_p</span></a><a class="idref" href="mathcomp.ssreflect.prime.html#ca29ecf9a3780bf15fe608e2d2c00594"><span class="id" title="notation">^'</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#64e6c9ddce70097e2cb88e9baa3b5a39"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#64e6c9ddce70097e2cb88e9baa3b5a39"><span class="id" title="notation">)</span></a> <span class="id" title="tactic">in</span><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">∃</span></a> <span class="id" title="var">m</span> : <a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">}</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.algebra.zmodp.html#fdcfc8589237bc0c67b9484f75e68729"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.zmodp.html#fdcfc8589237bc0c67b9484f75e68729"><span class="id" title="notation">Z_q</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">,</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">a</span> <span class="id" title="var">x</span>, <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> 1 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 1%<span class="id" title="var">R</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">&amp;,</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#40d800f6f36c47cb5f4f2f42555867a8"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#40d800f6f36c47cb5f4f2f42555867a8"><span class="id" title="notation">morph</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#40d800f6f36c47cb5f4f2f42555867a8"><span class="id" title="notation">:</span></a> <span class="id" title="var">a</span> <span class="id" title="var">b</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#40d800f6f36c47cb5f4f2f42555867a8"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#b"><span class="id" title="variable">b</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#40d800f6f36c47cb5f4f2f42555867a8"><span class="id" title="notation">&gt;-&gt;</span></a> (<a class="idref" href="mathcomp.solvable.extremal.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#2d0cfb150261028f4ebd2ba355623dcc"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#b"><span class="id" title="variable">b</span></a>)%<span class="id" title="var">R</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#40d800f6f36c47cb5f4f2f42555867a8"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">&amp;,</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#injective"><span class="id" title="definition">injective</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">}</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#image"><span class="id" title="abbreviation">image</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#1e6a438ff685c38fcd9034a94f271777"><span class="id" title="notation">=</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#1e6a438ff685c38fcd9034a94f271777"><span class="id" title="notation">i</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.unit"><span class="id" title="definition">GRing.unit</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="id" title="keyword">∀</span> <span class="id" title="var">k</span>, <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">,</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">morph</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">:</span></a> <span class="id" title="var">a</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">&gt;-&gt;</span></a> (<a class="idref" href="mathcomp.solvable.extremal.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#663140372ac3b275aae871b74b140513"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a>)%<span class="id" title="var">R</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">}</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">,</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">morph</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">:</span></a> <span class="id" title="var">a</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#a"><span class="id" title="variable">a</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">&gt;-&gt;</span></a> (<a class="idref" href="mathcomp.solvable.extremal.html#a"><span class="id" title="variable">a</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#4e5a4c91ec0aa12de06dfe1cc07ea126"><span class="id" title="notation">^-1</span></a>)%<span class="id" title="var">R</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#abelian"><span class="id" title="definition">abelian</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#F"><span class="id" title="variable">F</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.fingroup.action.html#b33bbd7f4609361a5f6c220c33141a0c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.action.html#b33bbd7f4609361a5f6c220c33141a0c"><span class="id" title="notation">faithful</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.fingroup.action.html#b33bbd7f4609361a5f6c220c33141a0c"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.action.html#b33bbd7f4609361a5f6c220c33141a0c"><span class="id" title="notation">on</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_1</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.action.html#b33bbd7f4609361a5f6c220c33141a0c"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.fingroup.action.html#c6d4b1f79e75b84124452166fdbe2f47"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.action.html#c6d4b1f79e75b84124452166fdbe2f47"><span class="id" title="notation">Aut</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.fingroup.action.html#c6d4b1f79e75b84124452166fdbe2f47"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.fingroup.action.html#b33bbd7f4609361a5f6c220c33141a0c"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a><br/>
- <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 0%<span class="id" title="var">N</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#F"><span class="id" title="variable">F</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">∃</span></a> <span class="id" title="var">t</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">,</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#8d0566c961139ec21811f52ef0c317db"><span class="id" title="notation">-</span></a> 1%<span class="id" title="var">R</span><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#P"><span class="id" title="variable">P</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">∃</span></a> <span class="id" title="var">s</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">,</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> (<a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a>)%<span class="id" title="var">N</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">.+1</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6411ed08724033ae48d2865f0380d533"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6411ed08724033ae48d2865f0380d533"><span class="id" title="notation">R</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">∃</span></a> <span class="id" title="var">s0</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">,</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#s0"><span class="id" title="variable">s0</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#s0"><span class="id" title="variable">s0</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#s0"><span class="id" title="variable">s0</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">).+1</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6411ed08724033ae48d2865f0380d533"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6411ed08724033ae48d2865f0380d533"><span class="id" title="notation">R</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_1</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#P"><span class="id" title="variable">P</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#s0"><span class="id" title="variable">s0</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><br/>
- <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 1%<span class="id" title="var">N</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><br/>
-&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">∃</span></a> <span class="id" title="var">s</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> (2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a>)%<span class="id" title="var">N</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 5<a class="idref" href="mathcomp.algebra.ssralg.html#6411ed08724033ae48d2865f0380d533"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6411ed08724033ae48d2865f0380d533"><span class="id" title="notation">R</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="mathcomp.fingroup.gproduct.html#191b5570f070a51bd5c860222c206828"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.gproduct.html#191b5570f070a51bd5c860222c206828"><span class="id" title="notation">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">∃</span></a> <span class="id" title="var">s0</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">,</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#s0"><span class="id" title="variable">s0</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#s0"><span class="id" title="variable">s0</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#s0"><span class="id" title="variable">s0</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">).+1</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6411ed08724033ae48d2865f0380d533"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6411ed08724033ae48d2865f0380d533"><span class="id" title="notation">R</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> (<a class="idref" href="mathcomp.solvable.extremal.html#s0"><span class="id" title="variable">s0</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">).-1</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6411ed08724033ae48d2865f0380d533"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6411ed08724033ae48d2865f0380d533"><span class="id" title="notation">R</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_1</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#s0"><span class="id" title="variable">s0</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">]]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Definition</span> <a name="extremal_generators"><span class="id" title="definition">extremal_generators</span></a> <span class="id" title="var">gT</span> (<span class="id" title="var">A</span> : <a class="idref" href="mathcomp.ssreflect.finset.html#d8708f36d374a98f4d683c7593d1ea6a"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d8708f36d374a98f4d683c7593d1ea6a"><span class="id" title="notation">set</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d8708f36d374a98f4d683c7593d1ea6a"><span class="id" title="notation">}</span></a>) <span class="id" title="var">p</span> <span class="id" title="var">n</span> <span class="id" title="var">xy</span> :=<br/>
-&nbsp;&nbsp;<span class="id" title="keyword">let</span>: <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <span class="id" title="var">y</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> := <a class="idref" href="mathcomp.solvable.extremal.html#xy"><span class="id" title="variable">xy</span></a> <span class="id" title="tactic">in</span><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> (<a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a>)%<span class="id" title="var">N</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <span class="id" title="var">x</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><span class="id" title="var">x</span><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> (<a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a>)%<span class="id" title="var">N</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <span class="id" title="var">y</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><span class="id" title="var">x</span><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="extremal_generators_facts"><span class="id" title="lemma">extremal_generators_facts</span></a> <span class="id" title="var">gT</span> (<span class="id" title="var">G</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) <span class="id" title="var">p</span> <span class="id" title="var">n</span> <span class="id" title="var">x</span> <span class="id" title="var">y</span> :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.ssreflect.prime.html#prime"><span class="id" title="definition">prime</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_generators"><span class="id" title="definition">extremal_generators</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.gseries.html#maximal"><span class="id" title="definition">maximal</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#7e8095b432e7aa5c3c22bb87584658b7"><span class="id" title="notation">&lt;|</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">subset</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#1ff9e060a8cc6098d64e42214fa57c96"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#1ff9e060a8cc6098d64e42214fa57c96"><span class="id" title="notation">N</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#1ff9e060a8cc6098d64e42214fa57c96"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#1ff9e060a8cc6098d64e42214fa57c96"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Section</span> <a name="ExtremalTheory.ModularGroup"><span class="id" title="section">ModularGroup</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Variables</span> <a name="ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a name="ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#nat"><span class="id" title="inductive">nat</span></a>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.m"><span class="id" title="variable">m</span></a> := (<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a>)%<span class="id" title="var">N</span>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.q"><span class="id" title="variable">q</span></a> := (<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a>)%<span class="id" title="var">N</span>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.r"><span class="id" title="variable">r</span></a> := (<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#b9f3db5365f11e72cad3907646ac5a3a"><span class="id" title="notation">.-2</span></a>)%<span class="id" title="var">N</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Hypotheses</span> (<a name="ExtremalTheory.ModularGroup.p_pr"><span class="id" title="variable">p_pr</span></a> : <a class="idref" href="mathcomp.ssreflect.prime.html#prime"><span class="id" title="definition">prime</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a>) (<a name="ExtremalTheory.ModularGroup.n_gt2"><span class="id" title="variable">n_gt2</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 2).<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.p_gt1"><span class="id" title="variable">p_gt1</span></a> := <a class="idref" href="mathcomp.ssreflect.prime.html#prime_gt1"><span class="id" title="lemma">prime_gt1</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p_pr"><span class="id" title="variable">p_pr</span></a>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.p_gt0"><span class="id" title="variable">p_gt0</span></a> := <a class="idref" href="mathcomp.ssreflect.ssrnat.html#ltnW"><span class="id" title="lemma">ltnW</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p_gt1"><span class="id" title="variable">p_gt1</span></a>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.def_n"><span class="id" title="variable">def_n</span></a> := <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#esym"><span class="id" title="definition">esym</span></a> (<a class="idref" href="mathcomp.ssreflect.ssrnat.html#subnKC"><span class="id" title="lemma">subnKC</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n_gt2"><span class="id" title="variable">n_gt2</span></a>).<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.def_p"><span class="id" title="variable">def_p</span></a> : <a class="idref" href="mathcomp.ssreflect.prime.html#pdiv"><span class="id" title="definition">pdiv</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.m"><span class="id" title="variable">m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a>. <br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.def_q"><span class="id" title="variable">def_q</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.ssreflect.div.html#2242f6721707980eca939ec29164eab3"><span class="id" title="notation">%/</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.q"><span class="id" title="variable">q</span></a>. <br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.def_r"><span class="id" title="variable">def_r</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.q"><span class="id" title="variable">q</span></a> <a class="idref" href="mathcomp.ssreflect.div.html#2242f6721707980eca939ec29164eab3"><span class="id" title="notation">%/</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.r"><span class="id" title="variable">r</span></a>. <br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.ltqm"><span class="id" title="variable">ltqm</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.q"><span class="id" title="variable">q</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#00fe0eaf5e6949f0a31725357afa4bba"><span class="id" title="notation">&lt;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.m"><span class="id" title="variable">m</span></a>. <br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.ltrq"><span class="id" title="variable">ltrq</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.r"><span class="id" title="variable">r</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#00fe0eaf5e6949f0a31725357afa4bba"><span class="id" title="notation">&lt;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.q"><span class="id" title="variable">q</span></a>. <br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.r_gt0"><span class="id" title="variable">r_gt0</span></a> : 0 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#00fe0eaf5e6949f0a31725357afa4bba"><span class="id" title="notation">&lt;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.r"><span class="id" title="variable">r</span></a>. <br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ModularGroup.q_gt1"><span class="id" title="variable">q_gt1</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.q"><span class="id" title="variable">q</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1. <br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="card_modular_group"><span class="id" title="lemma">card_modular_group</span></a> : <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">Mod_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> (<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a>)%<span class="id" title="var">N</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="Grp_modular_group"><span class="id" title="lemma">Grp_modular_group</span></a> :<br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">Mod_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">Grp</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">:</span></a> <span class="id" title="var">y</span> <a class="idref" href="mathcomp.fingroup.presentation.html#dabeb9211165bee23a272123a1fbb765"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.q"><span class="id" title="variable">q</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b52ad9f454dbbbe5277b0e0896d02a68"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#49dac265a72037ecb7c7f91d122c63b2"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">.+1</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">)</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Definition</span> <a name="modular_group_generators"><span class="id" title="definition">modular_group_generators</span></a> <span class="id" title="var">gT</span> (<span class="id" title="var">xy</span> : <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#11c698c8685bb8ab1cf725545c085ac4"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a>) :=<br/>
-&nbsp;&nbsp;<span class="id" title="keyword">let</span>: <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <span class="id" title="var">y</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> := <a class="idref" href="mathcomp.solvable.extremal.html#xy"><span class="id" title="variable">xy</span></a> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><span class="id" title="var">y</span><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">^</span></a> <span class="id" title="var">y</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">.+1</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="generators_modular_group"><span class="id" title="lemma">generators_modular_group</span></a> <span class="id" title="var">gT</span> (<span class="id" title="var">G</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">Mod_m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">exists2</span></a> <span class="id" title="var">xy</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_generators"><span class="id" title="definition">extremal_generators</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#xy"><span class="id" title="variable">xy</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#modular_group_generators"><span class="id" title="definition">modular_group_generators</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#xy"><span class="id" title="variable">xy</span></a>.<br/>
-
-<br/>
-</div>
-
-<div class="doc">
- This is an adaptation of Aschbacher, exercise 8.2:
-<ul class="doclist">
-<li> We allow an alternative to the # [x] = p ^ n.-1 condition that meshes
- better with the modular_Grp lemma above.
-
-</li>
-<li> We state explicitly some "obvious" properties of G, namely that G is
- the non-abelian semi-direct product &lt; [x]&gt; &gt;&lt;| &lt; [y]&gt; and that y ^+ j
- acts on &lt; [x]&gt; via z |-&gt; z ^+ (j * p ^ n.-2).+1
-
-</li>
-<li> We also give the values of the 'Mho^k(G).
-
-</li>
-<li> We corrected a pair of typos.
-</li>
-</ul>
-
-</div>
-<div class="code">
-<span class="id" title="keyword">Lemma</span> <a name="modular_group_structure"><span class="id" title="lemma">modular_group_structure</span></a> <span class="id" title="var">gT</span> (<span class="id" title="var">G</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) <span class="id" title="var">x</span> <span class="id" title="var">y</span> :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#extremal_generators"><span class="id" title="definition">extremal_generators</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">Mod_m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#modular_group_generators"><span class="id" title="definition">modular_group_generators</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<span class="id" title="keyword">let</span> <span class="id" title="var">X</span> := <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <span class="id" title="tactic">in</span><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.fingroup.gproduct.html#4c7b411f14f1faa861c7c0ade82faf76"><span class="id" title="notation">&gt;&lt;|</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b3ebd0deddd84fd60e149cb5ef719351"><span class="id" title="notation">~~</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#abelian"><span class="id" title="definition">abelian</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">,</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">z</span> <span class="id" title="var">j</span>, <a class="idref" href="mathcomp.solvable.extremal.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#j"><span class="id" title="variable">j</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#ea2ff3d561159081cea6fb2e8113cc54"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">).+1</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">Phi</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.r"><span class="id" title="variable">r</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.nilpotent.html#nil_class"><span class="id" title="definition">nil_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="id" title="keyword">∀</span> <span class="id" title="var">k</span>, <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 0 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">Mho</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a>2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> 3<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_1</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="id" title="keyword">∀</span> <span class="id" title="var">k</span>, 0 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#cf4676be165a6295cd8b63fc45b45d8a"><span class="id" title="notation">&lt;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#cf4676be165a6295cd8b63fc45b45d8a"><span class="id" title="notation">&lt;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7825ccc99f23b0d30c9d40c317ba7af0"><span class="id" title="notation">-</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">.+1</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="mathcomp.fingroup.gproduct.html#191b5570f070a51bd5c860222c206828"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.gproduct.html#191b5570f070a51bd5c860222c206828"><span class="id" title="notation">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_k</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_k</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> (<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">.+1</span></a>)%<span class="id" title="var">N</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ModularGroup"><span class="id" title="section">ModularGroup</span></a>.<br/>
-
-<br/>
-</div>
-
-<div class="doc">
- Basic properties of dihedral groups; these will be refined for dihedral
- 2-groups in the section on extremal 2-groups.
-</div>
-<div class="code">
-<span class="id" title="keyword">Section</span> <a name="ExtremalTheory.DihedralGroup"><span class="id" title="section">DihedralGroup</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Variable</span> <a name="ExtremalTheory.DihedralGroup.q"><span class="id" title="variable">q</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#nat"><span class="id" title="inductive">nat</span></a>.<br/>
-<span class="id" title="keyword">Hypothesis</span> <a name="ExtremalTheory.DihedralGroup.q_gt1"><span class="id" title="variable">q_gt1</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.q"><span class="id" title="variable">q</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.DihedralGroup.m"><span class="id" title="variable">m</span></a> := <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.q"><span class="id" title="variable">q</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bff172cdafaf4b86cefb300b16285e42"><span class="id" title="notation">.*2</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.DihedralGroup.def2"><span class="id" title="variable">def2</span></a> : <a class="idref" href="mathcomp.ssreflect.prime.html#pdiv"><span class="id" title="definition">pdiv</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.m"><span class="id" title="variable">m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2.<br/>
-
-<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.DihedralGroup.def_q"><span class="id" title="variable">def_q</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.ssreflect.div.html#2242f6721707980eca939ec29164eab3"><span class="id" title="notation">%/</span></a> <a class="idref" href="mathcomp.ssreflect.prime.html#pdiv"><span class="id" title="definition">pdiv</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.m"><span class="id" title="variable">m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.q"><span class="id" title="variable">q</span></a>. <br/>
-
-<br/>
-<span class="id" title="keyword">Section</span> <a name="ExtremalTheory.DihedralGroup.Dihedral_extension"><span class="id" title="section">Dihedral_extension</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Variable</span> <a name="ExtremalTheory.DihedralGroup.Dihedral_extension.p"><span class="id" title="variable">p</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#nat"><span class="id" title="inductive">nat</span></a>.<br/>
-<span class="id" title="keyword">Hypotheses</span> (<a name="ExtremalTheory.DihedralGroup.Dihedral_extension.p_gt1"><span class="id" title="variable">p_gt1</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.Dihedral_extension.p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1) (<a name="ExtremalTheory.DihedralGroup.Dihedral_extension.even_p"><span class="id" title="variable">even_p</span></a> : 2 <a class="idref" href="mathcomp.ssreflect.div.html#bde82eab2fe4a0799bc2419e587505d4"><span class="id" title="notation">%|</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.Dihedral_extension.p"><span class="id" title="variable">p</span></a>).<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="card_ext_dihedral"><span class="id" title="lemma">card_ext_dihedral</span></a> : <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ED"><span class="id" title="abbreviation">ED</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> (<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.Dihedral_extension.p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#1ecb2ec20b22101a31d2177b576c9a81"><span class="id" title="notation">./2</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#ea2ff3d561159081cea6fb2e8113cc54"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.m"><span class="id" title="variable">m</span></a>)%<span class="id" title="var">N</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="Grp_ext_dihedral"><span class="id" title="lemma">Grp_ext_dihedral</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ED"><span class="id" title="abbreviation">ED</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">Grp</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">:</span></a> <span class="id" title="var">y</span> <a class="idref" href="mathcomp.fingroup.presentation.html#dabeb9211165bee23a272123a1fbb765"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.q"><span class="id" title="variable">q</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.Dihedral_extension.p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b52ad9f454dbbbe5277b0e0896d02a68"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#49dac265a72037ecb7c7f91d122c63b2"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#ad1588003f4b5e4ce0779af0b97dfde8"><span class="id" title="notation">^-1</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">)</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.Dihedral_extension"><span class="id" title="section">Dihedral_extension</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="card_dihedral"><span class="id" title="lemma">card_dihedral</span></a> : <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_m</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.m"><span class="id" title="variable">m</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="Grp_dihedral"><span class="id" title="lemma">Grp_dihedral</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_m</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">Grp</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">:</span></a> <span class="id" title="var">y</span> <a class="idref" href="mathcomp.fingroup.presentation.html#dabeb9211165bee23a272123a1fbb765"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.q"><span class="id" title="variable">q</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> 2<a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b52ad9f454dbbbe5277b0e0896d02a68"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#49dac265a72037ecb7c7f91d122c63b2"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#ad1588003f4b5e4ce0779af0b97dfde8"><span class="id" title="notation">^-1</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">)</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="Grp'_dihedral"><span class="id" title="lemma">Grp'_dihedral</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_m</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">Grp</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">:</span></a> <span class="id" title="var">y</span> <a class="idref" href="mathcomp.fingroup.presentation.html#dabeb9211165bee23a272123a1fbb765"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> 2<a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> 2<a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#7ff3ac9f611fe85cb06e80e4192d07f5"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup.q"><span class="id" title="variable">q</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">)</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.DihedralGroup"><span class="id" title="section">DihedralGroup</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="involutions_gen_dihedral"><span class="id" title="lemma">involutions_gen_dihedral</span></a> <span class="id" title="var">gT</span> (<span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a>) :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<span class="id" title="keyword">let</span> <span class="id" title="var">G</span> := <a class="idref" href="mathcomp.fingroup.fingroup.html#7fae3285ae0b14be2ed14c5a340c6d3d"><span class="id" title="notation">&lt;&lt;</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#f714e54c16ed806ac79437fa972e90ff"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#f714e54c16ed806ac79437fa972e90ff"><span class="id" title="notation">set</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#f714e54c16ed806ac79437fa972e90ff"><span class="id" title="notation">;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#f714e54c16ed806ac79437fa972e90ff"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#7fae3285ae0b14be2ed14c5a340c6d3d"><span class="id" title="notation">&gt;&gt;</span></a> <span class="id" title="tactic">in</span><br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="Grp_2dihedral"><span class="id" title="lemma">Grp_2dihedral</span></a> <span class="id" title="var">n</span> : <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">Grp</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">:</span></a> <span class="id" title="var">y</span> <a class="idref" href="mathcomp.fingroup.presentation.html#dabeb9211165bee23a272123a1fbb765"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> 2<a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b52ad9f454dbbbe5277b0e0896d02a68"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#49dac265a72037ecb7c7f91d122c63b2"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#ad1588003f4b5e4ce0779af0b97dfde8"><span class="id" title="notation">^-1</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">)</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="card_2dihedral"><span class="id" title="lemma">card_2dihedral</span></a> <span class="id" title="var">n</span> : <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> (2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a>)%<span class="id" title="var">N</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="card_semidihedral"><span class="id" title="lemma">card_semidihedral</span></a> <span class="id" title="var">n</span> : <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 3 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">SD_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> (2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a>)%<span class="id" title="var">N</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="Grp_semidihedral"><span class="id" title="lemma">Grp_semidihedral</span></a> <span class="id" title="var">n</span> : <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 3 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">SD_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">isog</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">Grp</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">:</span></a> <span class="id" title="var">y</span> <a class="idref" href="mathcomp.fingroup.presentation.html#dabeb9211165bee23a272123a1fbb765"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> 2<a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b52ad9f454dbbbe5277b0e0896d02a68"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#49dac265a72037ecb7c7f91d122c63b2"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#b9f3db5365f11e72cad3907646ac5a3a"><span class="id" title="notation">.-2</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">).-1</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">)</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Section</span> <a name="ExtremalTheory.Quaternion"><span class="id" title="section">Quaternion</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Variable</span> <a name="ExtremalTheory.Quaternion.n"><span class="id" title="variable">n</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#nat"><span class="id" title="inductive">nat</span></a>.<br/>
-<span class="id" title="keyword">Hypothesis</span> <a name="ExtremalTheory.Quaternion.n_gt2"><span class="id" title="variable">n_gt2</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.Quaternion.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 2.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.Quaternion.m"><span class="id" title="variable">m</span></a> := (2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.Quaternion.n"><span class="id" title="variable">n</span></a>)%<span class="id" title="var">N</span>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.Quaternion.q"><span class="id" title="variable">q</span></a> := (2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.Quaternion.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a>)%<span class="id" title="var">N</span>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.Quaternion.r"><span class="id" title="variable">r</span></a> := (2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.Quaternion.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#b9f3db5365f11e72cad3907646ac5a3a"><span class="id" title="notation">.-2</span></a>)%<span class="id" title="var">N</span>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.Quaternion.GrpQ"><span class="id" title="variable">GrpQ</span></a> := <a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_m</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">Grp</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">:</span></a> <span class="id" title="var">y</span> <a class="idref" href="mathcomp.fingroup.presentation.html#dabeb9211165bee23a272123a1fbb765"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.Quaternion.q"><span class="id" title="variable">q</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> 2 <a class="idref" href="mathcomp.fingroup.presentation.html#49dac265a72037ecb7c7f91d122c63b2"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#0280afab3b6487b32e979a01bfa577e6"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.Quaternion.r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#b52ad9f454dbbbe5277b0e0896d02a68"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.presentation.html#49dac265a72037ecb7c7f91d122c63b2"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#ad1588003f4b5e4ce0779af0b97dfde8"><span class="id" title="notation">^-1</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#2ae8188eecf4af229df8a7611e947bc2"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.presentation.html#b9a7ff3fba421494dc2f1155a1739bdd"><span class="id" title="notation">)</span></a>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.Quaternion.defQ"><span class="id" title="variable">defQ</span></a> : <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_m</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.Quaternion.m"><span class="id" title="variable">m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.Quaternion.GrpQ"><span class="id" title="variable">GrpQ</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="card_quaternion"><span class="id" title="lemma">card_quaternion</span></a> : <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_m</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.Quaternion.m"><span class="id" title="variable">m</span></a>. <br/>
-<span class="id" title="keyword">Lemma</span> <a name="Grp_quaternion"><span class="id" title="lemma">Grp_quaternion</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.Quaternion.GrpQ"><span class="id" title="variable">GrpQ</span></a>. <br/>
-
-<br/>
-<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.Quaternion"><span class="id" title="section">Quaternion</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="eq_Mod8_D8"><span class="id" title="lemma">eq_Mod8_D8</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">Mod_8</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_8</span></a>. <br/>
-
-<br/>
-<span class="id" title="keyword">Section</span> <a name="ExtremalTheory.ExtremalStructure"><span class="id" title="section">ExtremalStructure</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Variables</span> (<a name="ExtremalTheory.ExtremalStructure.gT"><span class="id" title="variable">gT</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#FinGroup.Exports.finGroupType"><span class="id" title="abbreviation">finGroupType</span></a>) (<a name="ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) (<a name="ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#nat"><span class="id" title="inductive">nat</span></a>).<br/>
-<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Type</span> <span class="id" title="var">H</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ExtremalStructure.m"><span class="id" title="variable">m</span></a> := (2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a>)%<span class="id" title="var">N</span>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ExtremalStructure.q"><span class="id" title="variable">q</span></a> := (2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a>)%<span class="id" title="var">N</span>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ExtremalStructure.q_gt0"><span class="id" title="variable">q_gt0</span></a>: <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.q"><span class="id" title="variable">q</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 0. <br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a> := (2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#b9f3db5365f11e72cad3907646ac5a3a"><span class="id" title="notation">.-2</span></a>)%<span class="id" title="var">N</span>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ExtremalStructure.r_gt0"><span class="id" title="variable">r_gt0</span></a>: <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 0. <br/>
-
-<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ExtremalStructure.def2qr"><span class="id" title="variable">def2qr</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> 2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#ea2ff3d561159081cea6fb2e8113cc54"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.q"><span class="id" title="variable">q</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.m"><span class="id" title="variable">m</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> 2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#ea2ff3d561159081cea6fb2e8113cc54"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.q"><span class="id" title="variable">q</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.q"><span class="id" title="variable">q</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#00fe0eaf5e6949f0a31725357afa4bba"><span class="id" title="notation">&lt;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.m"><span class="id" title="variable">m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#00fe0eaf5e6949f0a31725357afa4bba"><span class="id" title="notation">&lt;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.q"><span class="id" title="variable">q</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a>%<span class="id" title="var">N</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="generators_2dihedral"><span class="id" title="lemma">generators_2dihedral</span></a> :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">exists2</span></a> <span class="id" title="var">xy</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_generators"><span class="id" title="definition">extremal_generators</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> 2 <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#xy"><span class="id" title="variable">xy</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">let</span>: <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <span class="id" title="var">y</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> := <a class="idref" href="mathcomp.solvable.extremal.html#xy"><span class="id" title="variable">xy</span></a> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><span class="id" title="var">y</span><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">^</span></a> <span class="id" title="var">y</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <span class="id" title="var">x</span><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="generators_semidihedral"><span class="id" title="lemma">generators_semidihedral</span></a> :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 3 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">SD_m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">exists2</span></a> <span class="id" title="var">xy</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_generators"><span class="id" title="definition">extremal_generators</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> 2 <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#xy"><span class="id" title="variable">xy</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">let</span>: <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <span class="id" title="var">y</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> := <a class="idref" href="mathcomp.solvable.extremal.html#xy"><span class="id" title="variable">xy</span></a> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><span class="id" title="var">y</span><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">^</span></a> <span class="id" title="var">y</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="generators_quaternion"><span class="id" title="lemma">generators_quaternion</span></a> :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">exists2</span></a> <span class="id" title="var">xy</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_generators"><span class="id" title="definition">extremal_generators</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> 2 <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#xy"><span class="id" title="variable">xy</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">let</span>: <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <span class="id" title="var">y</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> := <a class="idref" href="mathcomp.solvable.extremal.html#xy"><span class="id" title="variable">xy</span></a> <span class="id" title="tactic">in</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><span class="id" title="var">y</span><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 4<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <span class="id" title="var">y</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <span class="id" title="var">x</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">^</span></a> <span class="id" title="var">y</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <span class="id" title="var">x</span><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Variables</span> <a name="ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a name="ExtremalTheory.ExtremalStructure.y"><span class="id" title="variable">y</span></a> : <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.gT"><span class="id" title="variable">gT</span></a>.<br/>
-<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Type</span> <span class="id" title="var">M</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a> := <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ExtremalStructure.Y"><span class="id" title="variable">Y</span></a> := <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ExtremalStructure.yG"><span class="id" title="variable">yG</span></a> := <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#38a288b01c62a2a6a720c34fc1fffe2c"><span class="id" title="notation">^:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ExtremalStructure.xyG"><span class="id" title="variable">xyG</span></a> := <a class="idref" href="mathcomp.fingroup.fingroup.html#38a288b01c62a2a6a720c34fc1fffe2c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#38a288b01c62a2a6a720c34fc1fffe2c"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#38a288b01c62a2a6a720c34fc1fffe2c"><span class="id" title="notation">^:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ExtremalStructure.My"><span class="id" title="variable">My</span></a> := <a class="idref" href="mathcomp.fingroup.fingroup.html#7fae3285ae0b14be2ed14c5a340c6d3d"><span class="id" title="notation">&lt;&lt;</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.yG"><span class="id" title="variable">yG</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#7fae3285ae0b14be2ed14c5a340c6d3d"><span class="id" title="notation">&gt;&gt;</span></a>.<br/>
-<span class="id" title="keyword">Let</span> <a name="ExtremalTheory.ExtremalStructure.Mxy"><span class="id" title="variable">Mxy</span></a> := <a class="idref" href="mathcomp.fingroup.fingroup.html#7fae3285ae0b14be2ed14c5a340c6d3d"><span class="id" title="notation">&lt;&lt;</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.xyG"><span class="id" title="variable">xyG</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#7fae3285ae0b14be2ed14c5a340c6d3d"><span class="id" title="notation">&gt;&gt;</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Theorem</span> <a name="dihedral2_structure"><span class="id" title="lemma">dihedral2_structure</span></a> :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_generators"><span class="id" title="definition">extremal_generators</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> 2 <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.fingroup.gproduct.html#4c7b411f14f1faa861c7c0ade82faf76"><span class="id" title="notation">&gt;&lt;|</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.Y"><span class="id" title="variable">Y</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">,</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">t</span>, <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">}</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">,</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">z</span> <span class="id" title="var">t</span>, <a class="idref" href="mathcomp.solvable.extremal.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#z"><span class="id" title="variable">z</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> 2<a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">Phi</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.nilpotent.html#nil_class"><span class="id" title="definition">nil_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_1</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">(</span></a><span class="id" title="keyword">∀</span> <span class="id" title="var">k</span>, <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 0 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">Mho</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.yG"><span class="id" title="variable">yG</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#3bfdad100117c55128c8f4e205b0209b"><span class="id" title="notation">:|:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.xyG"><span class="id" title="variable">xyG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">disjoint</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.yG"><span class="id" title="variable">yG</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.xyG"><span class="id" title="variable">xyG</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">]</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">M</span>, <a class="idref" href="mathcomp.solvable.gseries.html#maximal"><span class="id" title="definition">maximal</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#pred3"><span class="id" title="definition">pred3</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.My"><span class="id" title="variable">My</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.Mxy"><span class="id" title="variable">Mxy</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#M"><span class="id" title="variable">M</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">(</span></a>2<a class="idref" href="mathcomp.solvable.abelian.html#9926250b7ba3fd427de487631b06d875"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.solvable.abelian.html#9926250b7ba3fd427de487631b06d875"><span class="id" title="notation">abelem</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#17ff6c89d595412214a9dd9e39474c36"><span class="id" title="notation">:</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#17ff6c89d595412214a9dd9e39474c36"><span class="id" title="notation">Prop</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.My"><span class="id" title="variable">My</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_q</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.Mxy"><span class="id" title="variable">Mxy</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_q</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">U</span>, <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">subset</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">]]</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Theorem</span> <a name="quaternion_structure"><span class="id" title="lemma">quaternion_structure</span></a> :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_generators"><span class="id" title="definition">extremal_generators</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> 2 <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.fingroup.gproduct.html#pprod"><span class="id" title="abbreviation">pprod</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.Y"><span class="id" title="variable">Y</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">,</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">t</span>, <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 4<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">}</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">,</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">z</span> <span class="id" title="var">t</span>, <a class="idref" href="mathcomp.solvable.extremal.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#z"><span class="id" title="variable">z</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> 2<a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">Phi</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.nilpotent.html#nil_class"><span class="id" title="definition">nil_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="id" title="keyword">∀</span> <span class="id" title="var">u</span>, <a class="idref" href="mathcomp.solvable.extremal.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#u"><span class="id" title="variable">u</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_1</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_2</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">k</span>, <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 0 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">Mho</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">],</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#53e4c1e546d9b20e029d981f761726c2"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.yG"><span class="id" title="variable">yG</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#3bfdad100117c55128c8f4e205b0209b"><span class="id" title="notation">:|:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.xyG"><span class="id" title="variable">xyG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">disjoint</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.yG"><span class="id" title="variable">yG</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.xyG"><span class="id" title="variable">xyG</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">]</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#53e4c1e546d9b20e029d981f761726c2"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">M</span>, <a class="idref" href="mathcomp.solvable.gseries.html#maximal"><span class="id" title="definition">maximal</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#pred3"><span class="id" title="definition">pred3</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.My"><span class="id" title="variable">My</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.Mxy"><span class="id" title="variable">Mxy</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#M"><span class="id" title="variable">M</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#53e4c1e546d9b20e029d981f761726c2"><span class="id" title="notation">]</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 3 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.My"><span class="id" title="variable">My</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_q</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.Mxy"><span class="id" title="variable">Mxy</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_q</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">U</span>, <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">subset</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Theorem</span> <a name="semidihedral_structure"><span class="id" title="lemma">semidihedral_structure</span></a> :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 3 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_generators"><span class="id" title="definition">extremal_generators</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> 2 <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">SD_m</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.fingroup.gproduct.html#4c7b411f14f1faa861c7c0ade82faf76"><span class="id" title="notation">&gt;&lt;|</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.Y"><span class="id" title="variable">Y</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 4<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">,</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">z</span> <span class="id" title="var">t</span>, <a class="idref" href="mathcomp.solvable.extremal.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> 2<a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">Phi</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.nilpotent.html#nil_class"><span class="id" title="definition">nil_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_1</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.My"><span class="id" title="variable">My</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_2</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">k</span>, <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 0 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">Mho</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#53e4c1e546d9b20e029d981f761726c2"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.yG"><span class="id" title="variable">yG</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#3bfdad100117c55128c8f4e205b0209b"><span class="id" title="notation">:|:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.xyG"><span class="id" title="variable">xyG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">disjoint</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.yG"><span class="id" title="variable">yG</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.xyG"><span class="id" title="variable">xyG</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">]</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#53e4c1e546d9b20e029d981f761726c2"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">H</span>, <a class="idref" href="mathcomp.solvable.gseries.html#maximal"><span class="id" title="definition">maximal</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#pred3"><span class="id" title="definition">pred3</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.My"><span class="id" title="variable">My</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.Mxy"><span class="id" title="variable">Mxy</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#H"><span class="id" title="variable">H</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#53e4c1e546d9b20e029d981f761726c2"><span class="id" title="notation">]</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.My"><span class="id" title="variable">My</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_q</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.Mxy"><span class="id" title="variable">Mxy</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_q</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">U</span>, <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">subset</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure.X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalStructure"><span class="id" title="section">ExtremalStructure</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Section</span> <a name="ExtremalTheory.ExtremalClass"><span class="id" title="section">ExtremalClass</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Variables</span> (<a name="ExtremalTheory.ExtremalClass.gT"><span class="id" title="variable">gT</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#FinGroup.Exports.finGroupType"><span class="id" title="abbreviation">finGroupType</span></a>) (<a name="ExtremalTheory.ExtremalClass.G"><span class="id" title="variable">G</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>).<br/>
-
-<br/>
-<span class="id" title="keyword">Inductive</span> <a name="extremal_group_type"><span class="id" title="inductive">extremal_group_type</span></a> :=<br/>
-&nbsp;&nbsp;<a name="ModularGroup"><span class="id" title="constructor">ModularGroup</span></a> | <a name="Dihedral"><span class="id" title="constructor">Dihedral</span></a> | <a name="SemiDihedral"><span class="id" title="constructor">SemiDihedral</span></a> | <a name="Quaternion"><span class="id" title="constructor">Quaternion</span></a> | <a name="NotExtremal"><span class="id" title="constructor">NotExtremal</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Definition</span> <a name="index_extremal_group_type"><span class="id" title="definition">index_extremal_group_type</span></a> <span class="id" title="var">c</span> :=<br/>
-&nbsp;&nbsp;<span class="id" title="keyword">match</span> <a class="idref" href="mathcomp.solvable.extremal.html#c"><span class="id" title="variable">c</span></a> <span class="id" title="keyword">with</span><br/>
-&nbsp;&nbsp;| <a class="idref" href="mathcomp.solvable.extremal.html#ModularGroup"><span class="id" title="constructor">ModularGroup</span></a> ⇒ 0<br/>
-&nbsp;&nbsp;| <a class="idref" href="mathcomp.solvable.extremal.html#Dihedral"><span class="id" title="constructor">Dihedral</span></a> ⇒ 1<br/>
-&nbsp;&nbsp;| <a class="idref" href="mathcomp.solvable.extremal.html#SemiDihedral"><span class="id" title="constructor">SemiDihedral</span></a> ⇒ 2<br/>
-&nbsp;&nbsp;| <a class="idref" href="mathcomp.solvable.extremal.html#Quaternion"><span class="id" title="constructor">Quaternion</span></a> ⇒ 3<br/>
-&nbsp;&nbsp;| <a class="idref" href="mathcomp.solvable.extremal.html#NotExtremal"><span class="id" title="constructor">NotExtremal</span></a> ⇒ 4<br/>
-&nbsp;&nbsp;<span class="id" title="keyword">end</span>%<span class="id" title="var">N</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Definition</span> <a name="enum_extremal_groups"><span class="id" title="definition">enum_extremal_groups</span></a> :=<br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.ssreflect.seq.html#9e9281397dab83046645f1b62dbb2487"><span class="id" title="notation">[::</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ModularGroup"><span class="id" title="constructor">ModularGroup</span></a><a class="idref" href="mathcomp.ssreflect.seq.html#9e9281397dab83046645f1b62dbb2487"><span class="id" title="notation">;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Dihedral"><span class="id" title="constructor">Dihedral</span></a><a class="idref" href="mathcomp.ssreflect.seq.html#9e9281397dab83046645f1b62dbb2487"><span class="id" title="notation">;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SemiDihedral"><span class="id" title="constructor">SemiDihedral</span></a><a class="idref" href="mathcomp.ssreflect.seq.html#9e9281397dab83046645f1b62dbb2487"><span class="id" title="notation">;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Quaternion"><span class="id" title="constructor">Quaternion</span></a><a class="idref" href="mathcomp.ssreflect.seq.html#9e9281397dab83046645f1b62dbb2487"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="cancel_index_extremal_groups"><span class="id" title="lemma">cancel_index_extremal_groups</span></a> :<br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#cancel"><span class="id" title="definition">cancel</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#index_extremal_group_type"><span class="id" title="definition">index_extremal_group_type</span></a> (<a class="idref" href="mathcomp.ssreflect.seq.html#nth"><span class="id" title="definition">nth</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#NotExtremal"><span class="id" title="constructor">NotExtremal</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#enum_extremal_groups"><span class="id" title="definition">enum_extremal_groups</span></a>).<br/>
-
-<br/>
-<span class="id" title="keyword">Import</span> <span class="id" title="var">choice</span>.<br/>
-
-<br/>
-<span class="id" title="keyword">Definition</span> <a name="extremal_group_eqMixin"><span class="id" title="definition">extremal_group_eqMixin</span></a> := <a class="idref" href="mathcomp.ssreflect.eqtype.html#CanEqMixin"><span class="id" title="definition">CanEqMixin</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extgK"><span class="id" title="abbreviation">extgK</span></a>.<br/>
-<span class="id" title="keyword">Canonical</span> <span class="id" title="var">extremal_group_eqType</span> := <a class="idref" href="mathcomp.ssreflect.eqtype.html#Equality.Exports.EqType"><span class="id" title="abbreviation">EqType</span></a> <span class="id" title="var">_</span> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_group_eqMixin"><span class="id" title="definition">extremal_group_eqMixin</span></a>.<br/>
-<span class="id" title="keyword">Definition</span> <a name="extremal_group_choiceMixin"><span class="id" title="definition">extremal_group_choiceMixin</span></a> := <a class="idref" href="mathcomp.ssreflect.choice.html#CanChoiceMixin"><span class="id" title="definition">CanChoiceMixin</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extgK"><span class="id" title="abbreviation">extgK</span></a>.<br/>
-<span class="id" title="keyword">Canonical</span> <span class="id" title="var">extremal_group_choiceType</span> := <a class="idref" href="mathcomp.ssreflect.choice.html#Choice.Exports.ChoiceType"><span class="id" title="abbreviation">ChoiceType</span></a> <span class="id" title="var">_</span> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_group_choiceMixin"><span class="id" title="definition">extremal_group_choiceMixin</span></a>.<br/>
-<span class="id" title="keyword">Definition</span> <a name="extremal_group_countMixin"><span class="id" title="definition">extremal_group_countMixin</span></a> := <a class="idref" href="mathcomp.ssreflect.choice.html#CanCountMixin"><span class="id" title="definition">CanCountMixin</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extgK"><span class="id" title="abbreviation">extgK</span></a>.<br/>
-<span class="id" title="keyword">Canonical</span> <span class="id" title="var">extremal_group_countType</span> := <a class="idref" href="mathcomp.ssreflect.choice.html#Countable.Exports.CountType"><span class="id" title="abbreviation">CountType</span></a> <span class="id" title="var">_</span> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_group_countMixin"><span class="id" title="definition">extremal_group_countMixin</span></a>.<br/>
-<span class="id" title="keyword">Lemma</span> <a name="bound_extremal_groups"><span class="id" title="lemma">bound_extremal_groups</span></a> (<span class="id" title="var">c</span> : <a class="idref" href="mathcomp.solvable.extremal.html#extremal_group_type"><span class="id" title="inductive">extremal_group_type</span></a>) : <a class="idref" href="mathcomp.ssreflect.choice.html#pickle"><span class="id" title="definition">pickle</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#c"><span class="id" title="variable">c</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#00fe0eaf5e6949f0a31725357afa4bba"><span class="id" title="notation">&lt;</span></a> 6.<br/>
- <span class="id" title="keyword">Definition</span> <a name="extremal_group_finMixin"><span class="id" title="definition">extremal_group_finMixin</span></a> := <a class="idref" href="mathcomp.ssreflect.fintype.html#Finite.CountMixin"><span class="id" title="definition">Finite.CountMixin</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#bound_extremal_groups"><span class="id" title="lemma">bound_extremal_groups</span></a>.<br/>
-<span class="id" title="keyword">Canonical</span> <span class="id" title="var">extremal_group_finType</span> :=<br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.ssreflect.fintype.html#Finite.Exports.FinType"><span class="id" title="abbreviation">FinType</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_group_type"><span class="id" title="inductive">extremal_group_type</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_group_finMixin"><span class="id" title="definition">extremal_group_finMixin</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Definition</span> <a name="extremal_class"><span class="id" title="definition">extremal_class</span></a> (<span class="id" title="var">A</span> : <a class="idref" href="mathcomp.ssreflect.finset.html#d8708f36d374a98f4d683c7593d1ea6a"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d8708f36d374a98f4d683c7593d1ea6a"><span class="id" title="notation">set</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalClass.gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d8708f36d374a98f4d683c7593d1ea6a"><span class="id" title="notation">}</span></a>) :=<br/>
-&nbsp;&nbsp;<span class="id" title="keyword">let</span> <span class="id" title="var">m</span> := <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <span class="id" title="tactic">in</span> <span class="id" title="keyword">let</span> <span class="id" title="var">p</span> := <a class="idref" href="mathcomp.ssreflect.prime.html#pdiv"><span class="id" title="definition">pdiv</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> <span class="id" title="tactic">in</span> <span class="id" title="keyword">let</span> <span class="id" title="var">n</span> := <a class="idref" href="mathcomp.ssreflect.prime.html#logn"><span class="id" title="definition">logn</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#m"><span class="id" title="variable">m</span></a> <span class="id" title="tactic">in</span><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">&amp;&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Dihedral"><span class="id" title="constructor">Dihedral</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">&amp;&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Quaternion"><span class="id" title="constructor">Quaternion</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 3<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">&amp;&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">SD_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SemiDihedral"><span class="id" title="constructor">SemiDihedral</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">&amp;&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">Mod_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ModularGroup"><span class="id" title="constructor">ModularGroup</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#NotExtremal"><span class="id" title="constructor">NotExtremal</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Definition</span> <a name="extremal2"><span class="id" title="definition">extremal2</span></a> <span class="id" title="var">A</span> := <a class="idref" href="mathcomp.solvable.extremal.html#extremal_class"><span class="id" title="definition">extremal_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.ssreflect.seq.html#behead"><span class="id" title="definition">behead</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#enum_extremal_groups"><span class="id" title="definition">enum_extremal_groups</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="dihedral_classP"><span class="id" title="lemma">dihedral_classP</span></a> :<br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#extremal_class"><span class="id" title="definition">extremal_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalClass.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Dihedral"><span class="id" title="constructor">Dihedral</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">↔</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">(</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">exists2</span></a> <span class="id" title="var">n</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 1 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalClass.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">)</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="quaternion_classP"><span class="id" title="lemma">quaternion_classP</span></a> :<br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#extremal_class"><span class="id" title="definition">extremal_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalClass.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Quaternion"><span class="id" title="constructor">Quaternion</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">↔</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">(</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">exists2</span></a> <span class="id" title="var">n</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalClass.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">)</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="semidihedral_classP"><span class="id" title="lemma">semidihedral_classP</span></a> :<br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#extremal_class"><span class="id" title="definition">extremal_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalClass.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SemiDihedral"><span class="id" title="constructor">SemiDihedral</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">↔</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">(</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">exists2</span></a> <span class="id" title="var">n</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 3 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalClass.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">SD_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#bce92d5e1219d9ea86459da901d6dd46"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">)</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="odd_not_extremal2"><span class="id" title="lemma">odd_not_extremal2</span></a> : <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalClass.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b3ebd0deddd84fd60e149cb5ef719351"><span class="id" title="notation">~~</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal2"><span class="id" title="definition">extremal2</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalClass.G"><span class="id" title="variable">G</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Lemma</span> <a name="modular_group_classP"><span class="id" title="lemma">modular_group_classP</span></a> :<br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#extremal_class"><span class="id" title="definition">extremal_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalClass.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ModularGroup"><span class="id" title="constructor">ModularGroup</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">↔</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">(</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">exists2</span></a> <span class="id" title="var">p</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.ssreflect.prime.html#prime"><span class="id" title="definition">prime</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">&amp;</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">exists2</span></a> <span class="id" title="var">n</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#73030c22bc0b1fa771c65aa5414c65f9"><span class="id" title="notation">≥</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#0dacc1786c5ba797d47dd85006231633"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 2<a class="idref" href="mathcomp.ssreflect.ssrnat.html#0dacc1786c5ba797d47dd85006231633"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#0dacc1786c5ba797d47dd85006231633"><span class="id" title="notation">+</span></a> 3 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalClass.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">Mod_</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.solvable.extremal.html#c2d446c30f0f14edd1423d2a23612932"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">)</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory.ExtremalClass"><span class="id" title="section">ExtremalClass</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">Theorem</span> <a name="extremal2_structure"><span class="id" title="lemma">extremal2_structure</span></a> (<span class="id" title="var">gT</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#FinGroup.Exports.finGroupType"><span class="id" title="abbreviation">finGroupType</span></a>) (<span class="id" title="var">G</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) <span class="id" title="var">n</span> <span class="id" title="var">x</span> <span class="id" title="var">y</span> :<br/>
-&nbsp;&nbsp;<span class="id" title="keyword">let</span> <span class="id" title="var">cG</span> := <a class="idref" href="mathcomp.solvable.extremal.html#extremal_class"><span class="id" title="definition">extremal_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <span class="id" title="tactic">in</span><br/>
-&nbsp;&nbsp;<span class="id" title="keyword">let</span> <span class="id" title="var">m</span> := (2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a>)%<span class="id" title="var">N</span> <span class="id" title="tactic">in</span> <span class="id" title="keyword">let</span> <span class="id" title="var">q</span> := (2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a>)%<span class="id" title="var">N</span> <span class="id" title="tactic">in</span> <span class="id" title="keyword">let</span> <span class="id" title="var">r</span> := (2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#b9f3db5365f11e72cad3907646ac5a3a"><span class="id" title="notation">.-2</span></a>)%<span class="id" title="var">N</span> <span class="id" title="tactic">in</span><br/>
-&nbsp;&nbsp;<span class="id" title="keyword">let</span> <span class="id" title="var">X</span> := <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <span class="id" title="tactic">in</span> <span class="id" title="keyword">let</span> <span class="id" title="var">yG</span> := <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#38a288b01c62a2a6a720c34fc1fffe2c"><span class="id" title="notation">^:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <span class="id" title="tactic">in</span> <span class="id" title="keyword">let</span> <span class="id" title="var">xyG</span> := <a class="idref" href="mathcomp.fingroup.fingroup.html#38a288b01c62a2a6a720c34fc1fffe2c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#38a288b01c62a2a6a720c34fc1fffe2c"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#38a288b01c62a2a6a720c34fc1fffe2c"><span class="id" title="notation">^:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <span class="id" title="tactic">in</span><br/>
-&nbsp;&nbsp;<span class="id" title="keyword">let</span> <span class="id" title="var">My</span> := <a class="idref" href="mathcomp.fingroup.fingroup.html#7fae3285ae0b14be2ed14c5a340c6d3d"><span class="id" title="notation">&lt;&lt;</span></a><a class="idref" href="mathcomp.solvable.extremal.html#yG"><span class="id" title="variable">yG</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#7fae3285ae0b14be2ed14c5a340c6d3d"><span class="id" title="notation">&gt;&gt;</span></a> <span class="id" title="tactic">in</span> <span class="id" title="keyword">let</span> <span class="id" title="var">Mxy</span> := <a class="idref" href="mathcomp.fingroup.fingroup.html#7fae3285ae0b14be2ed14c5a340c6d3d"><span class="id" title="notation">&lt;&lt;</span></a><a class="idref" href="mathcomp.solvable.extremal.html#xyG"><span class="id" title="variable">xyG</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#7fae3285ae0b14be2ed14c5a340c6d3d"><span class="id" title="notation">&gt;&gt;</span></a> <span class="id" title="tactic">in</span><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#extremal_generators"><span class="id" title="definition">extremal_generators</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> 2 <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#extremal2"><span class="id" title="definition">extremal2</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#a133e82bab56729f895f9b2b31e837cd"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SemiDihedral"><span class="id" title="constructor">SemiDihedral</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#a133e82bab56729f895f9b2b31e837cd"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#a133e82bab56729f895f9b2b31e837cd"><span class="id" title="notation">==&gt;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#a133e82bab56729f895f9b2b31e837cd"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#a133e82bab56729f895f9b2b31e837cd"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Quaternion"><span class="id" title="constructor">Quaternion</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.fingroup.gproduct.html#pprod"><span class="id" title="abbreviation">pprod</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.fingroup.gproduct.html#4c7b411f14f1faa861c7c0ade82faf76"><span class="id" title="notation">&gt;&lt;|</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SemiDihedral"><span class="id" title="constructor">SemiDihedral</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 4 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">,</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">z</span>, <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#z"><span class="id" title="variable">z</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Dihedral"><span class="id" title="constructor">Dihedral</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a> 4<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Quaternion"><span class="id" title="constructor">Quaternion</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#True"><span class="id" title="inductive">True</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">,</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">z</span>, <a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">#[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#z"><span class="id" title="variable">z</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#09508509373ff3217fbbadb14d25dc5c"><span class="id" title="notation">]</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#r"><span class="id" title="variable">r</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">}</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">,</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">t</span> <span class="id" title="var">z</span>,<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SemiDihedral"><span class="id" title="constructor">SemiDihedral</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5f76d9959f82823e4253cd67e7dc0e96"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> 2<a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">Phi</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.maximal.html#28e1060c98ad15195c81f60c91d64b08"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">^`(</span></a>1<a class="idref" href="mathcomp.solvable.commutator.html#5684e4e024467813e860f228f2381620"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#r"><span class="id" title="variable">r</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.nilpotent.html#nil_class"><span class="id" title="definition">nil_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f953bf7095e0da1cb644443fd0e17d6d"><span class="id" title="notation">.-1</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">[/\</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a> 2<a class="idref" href="mathcomp.solvable.abelian.html#9926250b7ba3fd427de487631b06d875"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.solvable.abelian.html#9926250b7ba3fd427de487631b06d875"><span class="id" title="notation">abelem</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_1</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Quaternion"><span class="id" title="constructor">Quaternion</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#r"><span class="id" title="variable">r</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#SemiDihedral"><span class="id" title="constructor">SemiDihedral</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#My"><span class="id" title="variable">My</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_2</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">k</span>, <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">&gt;</span></a> 0 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">Mho</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">&lt;[</span></a><a class="idref" href="mathcomp.solvable.extremal.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">(</span></a>2 <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]&gt;</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">]</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#yG"><span class="id" title="variable">yG</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#3bfdad100117c55128c8f4e205b0209b"><span class="id" title="notation">:|:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#xyG"><span class="id" title="variable">xyG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#160b1f5d5c3e3c6d274924649d717d8d"><span class="id" title="notation">:\:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">disjoint</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#yG"><span class="id" title="variable">yG</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#xyG"><span class="id" title="variable">xyG</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#1c170b7d9dd618ec64d5610e390a3afe"><span class="id" title="notation">]</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">H</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>, <a class="idref" href="mathcomp.solvable.gseries.html#maximal"><span class="id" title="definition">maximal</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#gval"><span class="id" title="projection">gval</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#pred3"><span class="id" title="definition">pred3</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#My"><span class="id" title="variable">My</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Mxy"><span class="id" title="variable">Mxy</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><br/>
-&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#0dacc1786c5ba797d47dd85006231633"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Quaternion"><span class="id" title="constructor">Quaternion</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#0dacc1786c5ba797d47dd85006231633"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#0dacc1786c5ba797d47dd85006231633"><span class="id" title="notation">+</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#True"><span class="id" title="inductive">True</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">U</span>, <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">subset</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Quaternion"><span class="id" title="constructor">Quaternion</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#My"><span class="id" title="variable">My</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_q</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#My"><span class="id" title="variable">My</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_q</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#extremal_class"><span class="id" title="definition">extremal_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#My"><span class="id" title="variable">My</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Quaternion"><span class="id" title="constructor">Quaternion</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Dihedral"><span class="id" title="constructor">Dihedral</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Dihedral"><span class="id" title="constructor">Dihedral</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Mxy"><span class="id" title="variable">Mxy</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#eda4b377edf33c7306089a3c2ef64a9a"><span class="id" title="notation">D_q</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Mxy"><span class="id" title="variable">Mxy</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_q</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_class"><span class="id" title="definition">extremal_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Mxy"><span class="id" title="variable">Mxy</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">if</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Dihedral"><span class="id" title="constructor">Dihedral</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">then</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#cG"><span class="id" title="variable">cG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#00a1a5b58aac8f1e3f1abff064a39f9d"><span class="id" title="notation">else</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Quaternion"><span class="id" title="constructor">Quaternion</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">]]</span></a>.<br/>
-
-<br/>
-</div>
-
-<div class="doc">
- This is Aschbacher (23.4).
-</div>
-<div class="code">
-<span class="id" title="keyword">Lemma</span> <a name="maximal_cycle_extremal"><span class="id" title="lemma">maximal_cycle_extremal</span></a> <span class="id" title="var">gT</span> <span class="id" title="var">p</span> (<span class="id" title="var">G</span> <span class="id" title="var">X</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b3ebd0deddd84fd60e149cb5ef719351"><span class="id" title="notation">~~</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#abelian"><span class="id" title="definition">abelian</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#4102da6205bd8605932488256a8bd517"><span class="id" title="notation">subset</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#extremal_class"><span class="id" title="definition">extremal_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ModularGroup"><span class="id" title="constructor">ModularGroup</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span class="id" title="notation">||</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">&amp;&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal2"><span class="id" title="definition">extremal2</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a>.<br/>
-
-<br/>
-</div>
-
-<div class="doc">
- This is Aschbacher (23.5)
-</div>
-<div class="code">
-<span class="id" title="keyword">Lemma</span> <a name="cyclic_SCN"><span class="id" title="lemma">cyclic_SCN</span></a> <span class="id" title="var">gT</span> <span class="id" title="var">p</span> (<span class="id" title="var">G</span> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.maximal.html#d89bb215e1dc40c58e36a9bc7fe6a2ce"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.maximal.html#d89bb215e1dc40c58e36a9bc7fe6a2ce"><span class="id" title="notation">SCN</span></a><a class="idref" href="mathcomp.solvable.maximal.html#d89bb215e1dc40c58e36a9bc7fe6a2ce"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.maximal.html#d89bb215e1dc40c58e36a9bc7fe6a2ce"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b3ebd0deddd84fd60e149cb5ef719351"><span class="id" title="notation">~~</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#abelian"><span class="id" title="definition">abelian</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal2"><span class="id" title="definition">extremal2</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a><br/>
-<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span class="id" title="notation">∨</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">∃</span></a> <span class="id" title="var">M</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#f0bbce9238fab3dd03626439080979a9"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#04a5555c0db8685a27679a7e6af3f8c3"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#04a5555c0db8685a27679a7e6af3f8c3"><span class="id" title="notation">C_G</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#04a5555c0db8685a27679a7e6af3f8c3"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">Mho</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">^</span></a>1<a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.solvable.abelian.html#2fc9e45ba06c586f77f5571683771ca7"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#04a5555c0db8685a27679a7e6af3f8c3"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal_class"><span class="id" title="definition">extremal_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#ModularGroup"><span class="id" title="constructor">ModularGroup</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.abelian.html#1cf3cacd2d21cc22470336fc54e98ad6"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#1cf3cacd2d21cc22470336fc54e98ad6"><span class="id" title="notation">Ohm_1</span></a><a class="idref" href="mathcomp.solvable.abelian.html#1cf3cacd2d21cc22470336fc54e98ad6"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#M"><span class="id" title="variable">M</span></a><a class="idref" href="mathcomp.solvable.abelian.html#1cf3cacd2d21cc22470336fc54e98ad6"><span class="id" title="notation">)</span></a>%<span class="id" title="var">G</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b09457274bcb94927e289b8a9e9cd3f7"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#7d0895628380660804762fc0f207680e"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#7d0895628380660804762fc0f207680e"><span class="id" title="notation">E_p</span></a><a class="idref" href="mathcomp.solvable.abelian.html#7d0895628380660804762fc0f207680e"><span class="id" title="notation">^</span></a>2<a class="idref" href="mathcomp.solvable.abelian.html#7d0895628380660804762fc0f207680e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#7d0895628380660804762fc0f207680e"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_1</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#M"><span class="id" title="variable">M</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.automorphism.html#d9dc63f0c53bc5e6f232c50d48c40709"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.automorphism.html#d9dc63f0c53bc5e6f232c50d48c40709"><span class="id" title="notation">char</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#b76985613d3b3ca583bb3217c76109bb"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-</div>
-
-<div class="doc">
- This is Aschbacher, exercise (8.4)
-</div>
-<div class="code">
-<span class="id" title="keyword">Lemma</span> <a name="normal_rank1_structure"><span class="id" title="lemma">normal_rank1_structure</span></a> <span class="id" title="var">gT</span> <span class="id" title="var">p</span> (<span class="id" title="var">G</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">(</span></a><span class="id" title="keyword">∀</span> <span class="id" title="var">X</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>, <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#7e8095b432e7aa5c3c22bb87584658b7"><span class="id" title="notation">&lt;|</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#abelian"><span class="id" title="definition">abelian</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span class="id" title="notation">∨</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5a7d806905be2a0d04047156433535f1"><span class="id" title="notation">[&amp;&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5a7d806905be2a0d04047156433535f1"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal2"><span class="id" title="definition">extremal2</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5a7d806905be2a0d04047156433535f1"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#73030c22bc0b1fa771c65aa5414c65f9"><span class="id" title="notation">≥</span></a> 16<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span class="id" title="notation">||</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#13d63916ddaa339df3fcf04363ae7cde"><span class="id" title="notation">isog</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.extremal.html#85cb21871fd18e66dbfa2ee4bffbe55c"><span class="id" title="notation">Q_8</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#5a7d806905be2a0d04047156433535f1"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-</div>
-
-<div class="doc">
- Replacement for Section 4 proof.
-</div>
-<div class="code">
-<span class="id" title="keyword">Lemma</span> <a name="odd_pgroup_rank1_cyclic"><span class="id" title="lemma">odd_pgroup_rank1_cyclic</span></a> <span class="id" title="var">gT</span> <span class="id" title="var">p</span> (<span class="id" title="var">G</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) :<br/>
-&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.abelian.html#6b61dcfb093dfe93d87341f88d96ca9f"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#6b61dcfb093dfe93d87341f88d96ca9f"><span class="id" title="notation">r_p</span></a><a class="idref" href="mathcomp.solvable.abelian.html#6b61dcfb093dfe93d87341f88d96ca9f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#6b61dcfb093dfe93d87341f88d96ca9f"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span class="id" title="notation">≤</span></a> 1<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">)</span></a>.<br/>
-
-<br/>
-</div>
-
-<div class="doc">
- This is the second part of Aschbacher, exercise (8.4).
-</div>
-<div class="code">
-<span class="id" title="keyword">Lemma</span> <a name="prime_Ohm1P"><span class="id" title="lemma">prime_Ohm1P</span></a> <span class="id" title="var">gT</span> <span class="id" title="var">p</span> (<span class="id" title="var">G</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#be2f022a539ec6d4d51932b5ea998e57"><span class="id" title="notation">:!=:</span></a> 1 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#reflect"><span class="id" title="abbreviation">reflect</span></a> (<a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">Ohm_1</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.solvable.abelian.html#c56ec4cf607c781766b0d2cf7a260ba8"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a>)<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(<a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span class="id" title="notation">||</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">&amp;&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#extremal_class"><span class="id" title="definition">extremal_class</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#Quaternion"><span class="id" title="constructor">Quaternion</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#9ddeac0ab66152bd1d64bedb507a795e"><span class="id" title="notation">)</span></a>).<br/>
-
-<br/>
-</div>
-
-<div class="doc">
- This is Aschbacher (23.9)
-</div>
-<div class="code">
-<span class="id" title="keyword">Theorem</span> <a name="symplectic_type_group_structure"><span class="id" title="lemma">symplectic_type_group_structure</span></a> <span class="id" title="var">gT</span> <span class="id" title="var">p</span> (<span class="id" title="var">G</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) :<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.solvable.pgroup.html#15605b2ce8a0bd336aafa96c5cc1afdc"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">(</span></a><span class="id" title="keyword">∀</span> <span class="id" title="var">X</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>, <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a> <a class="idref" href="mathcomp.fingroup.automorphism.html#d9dc63f0c53bc5e6f232c50d48c40709"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.automorphism.html#d9dc63f0c53bc5e6f232c50d48c40709"><span class="id" title="notation">char</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#abelian"><span class="id" title="definition">abelian</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#X"><span class="id" title="variable">X</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#59ba2b47d2814e66f8210a649ae6e6bc"><span class="id" title="notation">exists2</span></a> <span class="id" title="var">E</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#59ba2b47d2814e66f8210a649ae6e6bc"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#59ba2b47d2814e66f8210a649ae6e6bc"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#E"><span class="id" title="variable">E</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#f0bbce9238fab3dd03626439080979a9"><span class="id" title="notation">:=:</span></a> 1 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span class="id" title="notation">∨</span></a> <a class="idref" href="mathcomp.solvable.maximal.html#extraspecial"><span class="id" title="definition">extraspecial</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#E"><span class="id" title="variable">E</span></a><br/>
-&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#59ba2b47d2814e66f8210a649ae6e6bc"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">∃</span></a> <span class="id" title="var">R</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#gT"><span class="id" title="variable">gT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">,</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#R"><span class="id" title="variable">R</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span class="id" title="notation">∨</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 2<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#extremal2"><span class="id" title="definition">extremal2</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#R"><span class="id" title="variable">R</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.solvable.extremal.html#R"><span class="id" title="variable">R</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#73030c22bc0b1fa771c65aa5414c65f9"><span class="id" title="notation">≥</span></a> 16<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">],</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="mathcomp.solvable.extremal.html#E"><span class="id" title="variable">E</span></a> <a class="idref" href="mathcomp.fingroup.gproduct.html#1c2e0971edf6e9b6c6dd4a5951d04f36"><span class="id" title="notation">\*</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#R"><span class="id" title="variable">R</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#G"><span class="id" title="variable">G</span></a><br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">&amp;</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#E"><span class="id" title="variable">E</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#b9596739b058766532fc6517a36fef9f"><span class="id" title="notation">:&amp;:</span></a> <a class="idref" href="mathcomp.solvable.extremal.html#R"><span class="id" title="variable">R</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.solvable.extremal.html#E"><span class="id" title="variable">E</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">]</span></a>.<br/>
-
-<br/>
-<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.solvable.extremal.html#ExtremalTheory"><span class="id" title="section">ExtremalTheory</span></a>.<br/>
-</div>
-</div>
-
-<div id="footer">
-<hr/><a href="index.html">Index</a><hr/>This page has been generated by <a href="http://coq.inria.fr/">coqdoc</a>
-</div>
-
-</div>
-
-</body>
-</html> \ No newline at end of file