diff options
| author | Cyril Cohen | 2019-10-16 11:26:43 +0200 |
|---|---|---|
| committer | Cyril Cohen | 2019-10-16 11:26:43 +0200 |
| commit | 6b59540a2460633df4e3d8347cb4dfe2fb3a3afb (patch) | |
| tree | 1239c1d5553d51a7d73f2f8b465f6a23178ff8a0 /docs/htmldoc/mathcomp.character.mxrepresentation.html | |
| parent | dd82aaeae7e9478efc178ce8430986649555b032 (diff) | |
removing everything but index which redirects to the new page
Diffstat (limited to 'docs/htmldoc/mathcomp.character.mxrepresentation.html')
| -rw-r--r-- | docs/htmldoc/mathcomp.character.mxrepresentation.html | 3781 |
1 files changed, 0 insertions, 3781 deletions
diff --git a/docs/htmldoc/mathcomp.character.mxrepresentation.html b/docs/htmldoc/mathcomp.character.mxrepresentation.html deleted file mode 100644 index e0acbeb..0000000 --- a/docs/htmldoc/mathcomp.character.mxrepresentation.html +++ /dev/null @@ -1,3781 +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.character.mxrepresentation</title> -</head> - -<body> - -<div id="page"> - -<div id="header"> -</div> - -<div id="main"> - -<h1 class="libtitle">Library mathcomp.character.mxrepresentation</h1> - -<div class="code"> -<span class="comment">(* (c) Copyright 2006-2016 Microsoft Corporation and Inria. <br/> - Distributed under the terms of CeCILL-B. *)</span><br/> - -<br/> -</div> - -<div class="doc"> - This file provides linkage between classic Group Theory and commutative - algebra -- representation theory. Since general abstract linear algebra is - still being sorted out, we develop the required theory here on the - assumption that all vector spaces are matrix spaces, indeed that most are - row matrix spaces; our representation theory is specialized to the latter - case. We provide many definitions and results of representation theory: - enveloping algebras, reducible, irreducible and absolutely irreducible - representations, representation centralisers, submodules and kernels, - simple and semisimple modules, the Schur lemmas, Maschke's theorem, - components, socles, homomorphisms and isomorphisms, the Jacobson density - theorem, similar representations, the Jordan-Holder theorem, Clifford's - theorem and Wedderburn components, regular representations and the - Wedderburn structure theorem for semisimple group rings, and the - construction of a splitting field of an irreducible representation, and of - reduced, tensored, and factored representations. - mx_representation F G n == the Structure type for representations of G - with n x n matrices with coefficients in F. Note that - rG : mx_representation F G n coerces to a function from - the element type of G to 'M_n, and conversely all such - functions have a Canonical mx_representation. - mx_repr G r <-> r : gT -> 'M_n defines a (matrix) group representation - on G : {set gT} (Prop predicate). - enveloping_algebra_mx rG == a #|G| x (n ^ 2) matrix whose rows are the - mxvec encodings of the image of G under rG, and whose - row space therefore encodes the enveloping algebra of - the representation of G. - rker rG == the kernel of the representation of r on G, i.e., the - subgroup of elements of G mapped to the identity by rG. - mx_faithful rG == the representation rG of G is faithful (its kernel is - trivial). - rfix_mx rG H == an n x n matrix whose row space is the set of vectors - fixed (centralised) by the representation of H by rG. - rcent rG A == the subgroup of G whose representation via rG commutes - with the square matrix A. - rcenter rG == the subgroup of G whose representation via rG consists of - scalar matrices. - centgmx rG f <=> f commutes with every matrix in the representation of G - (i.e., f is a total rG-homomorphism). - rstab rG U == the subgroup of G whose representation via r fixes all - vectors in U, pointwise. - rstabs rG U == the subgroup of G whose representation via r fixes the row - space of U globally. - mxmodule rG U <=> the row-space of the matrix U is a module (globally - invariant) under the representation rG of G. - max_submod rG U V <-> U < V is not a proper is a proper subset of any - proper rG-submodule of V (if both U and V are modules, - then U is a maximal proper submodule of V). - mx_subseries rG Us <=> Us : seq 'M_n is a list of rG-modules - mx_composition_series rG Us <-> Us is an increasing composition series - for an rG-module (namely, last 0 Us). - mxsimple rG M <-> M is a simple rG-module (i.e., minimal and nontrivial) - This is a Prop predicate on square matrices. - mxnonsimple rG U <-> U is constructively not a submodule, that is, U - contains a proper nontrivial submodule. - mxnonsimple_sat rG U == U is not a simple as an rG-module. - This is a bool predicate, which requires a decField - structure on the scalar field. - mxsemisimple rG W <-> W is constructively a direct sum of simple modules. - mxsplits rG V U <-> V splits over U in rG, i.e., U has an rG-invariant - complement in V. - mx_completely_reducible rG V <-> V splits over all its submodules; note - that this is only classically equivalent to stating that - V is semisimple. - mx_irreducible rG <-> the representation rG is irreducible, i.e., the full - module 1%:M of rG is simple. - mx_absolutely_irreducible rG == the representation rG of G is absolutely - irreducible: its enveloping algebra is the full matrix - ring. This is only classically equivalent to the more - standard ``rG does not reduce in any field extension''. - group_splitting_field F G <-> F is a splitting field for the group G: - every irreducible representation of G is absolutely - irreducible. Any field can be embedded classically into a - splitting field. - group_closure_field F gT <-> F is a splitting field for every group - G : {group gT}, and indeed for any section of such a - group. This is a convenient constructive substitute for - algebraic closures, that can be constructed classically. - dom_hom_mx rG f == a square matrix encoding the set of vectors for which - multiplication by the n x n matrix f commutes with the - representation of G, i.e., the largest domain on which - f is an rG homomorphism. - mx_iso rG U V <-> U and V are (constructively) rG-isomorphic; this is - a Prop predicate. - mx_simple_iso rG U V == U and V are rG-isomorphic if one of them is - simple; this is a bool predicate. - cyclic_mx rG u == the cyclic rG-module generated by the row vector u - annihilator_mx rG u == the annihilator of the row vector u in the - enveloping algebra the representation rG. - row_hom_mx rG u == the image of u by the set of all rG-homomorphisms on - its cyclic module, or, equivalently, the null-space of the - annihilator of u. - component_mx rG M == when M is a simple rG-module, the component of M in - the representation rG, i.e. the module generated by all - the (simple) modules rG-isomorphic to M. - socleType rG == a Structure that represents the type of all components - of rG (more precisely, it coerces to such a type via - socle_sort). For sG : socleType, values of type sG (to be - exact, socle_sort sG) coerce to square matrices. For any - representation rG we can construct sG : socleType rG - classically; the socleType structure encapsulates this - use of classical logic. - DecSocleType rG == a socleType rG structure, for a representation over a - decidable field type. DecSocleType rG is opaque. - socle_base W == for W : (sG : socleType), a simple module whose - component is W; socle_simple W and socle_module W are - proofs that socle_base W is a simple module. - socle_mult W == the multiplicity of socle_base W in W : sG. - := \rank W %/ \rank (socle_base W) - Socle sG == the Socle of rG, given sG : socleType rG, i.e., the - (direct) sum of all the components of rG. - mx_rsim rG rG' <-> rG and rG' are similar representations of the same - group G. Note that rG and rG' must then have equal, but - not necessarily convertible, degree. - submod_repr modU == a representation of G on 'rV(\rank U) equivalent to - the restriction of rG to U (here modU : mxmodule rG U). - socle_repr W := submod_repr (socle_module W) - val/in_submod rG U == the projections resp. from/onto 'rV(\rank U), - that correspond to submod_repr r G U (these work both on - vectors and row spaces). - factmod_repr modV == a representation of G on 'rV(\rank (cokermx V)) that - is equivalent to the factor module 'rV_n / V induced by V - and rG (here modV : mxmodule rG V). - val/in_factmod rG U == the projections for factmod_repr r G U. - section_repr modU modV == the restriction to in_factmod V U of the factor - representation factmod_repr modV (for modU : mxmodule rG U - and modV : mxmodule rG V); section_repr modU modV is - irreducible iff max_submod rG U V. - subseries_repr modUs i == the representation for the section module - in_factmod (0 :: Us)`<i>i Us`<i>i, where - modUs : mx_subseries rG Us. - series_repr compUs i == the representation for the section module - in_factmod (0 :: Us)`<i>i Us`<i>i, where - compUs : mx_composition_series rG Us. The Jordan-Holder - theorem asserts the uniqueness of the set of such - representations, up to similarity and permutation. - regular_repr F G == the regular F-representation of the group G. - group_ring F G == a #|G| x #|G|^2 matrix that encodes the free group - ring of G -- that is, the enveloping algebra of the - regular F-representation of G. - gring_index x == the index corresponding to x \in G in the matrix - encoding of regular_repr and group_ring. - gring_row A == the row vector corresponding to A \in group_ring F G in - the regular FG-module. - gring_proj x A == the 1 x 1 matrix holding the coefficient of x \in G in - (A \in group_ring F G)%MS. - gring_mx rG u == the image of a row vector u of the regular FG-module, - in the enveloping algebra of another representation rG. - gring_op rG A == the image of a matrix of the free group ring of G, - in the enveloping algebra of rG. - gset_mx F G C == the group sum of C in the free group ring of G -- the - sum of the images of all the x \in C in group_ring F G. - classg_base F G == a #|classes G| x #|G|^2 matrix whose rows encode the - group sums of the conjugacy classes of G -- this is a - basis of 'Z(group_ring F G)%MS. - irrType F G == a type indexing irreducible representations of G over a - field F, provided its characteristic does not divide the - order of G; it also indexes Wedderburn subrings. - := socleType (regular_repr F G) - irr_repr i == the irreducible representation corresponding to the - index i : irrType sG - := socle_repr i as i coerces to a component matrix. - 'n_i, irr_degree i == the degree of irr_repr i; the notation is only - active after Open Scope group_ring_scope. - linear_irr sG == the set of sG-indices of linear irreducible - representations of G. - irr_comp sG rG == the sG-index of the unique irreducible representation - similar to rG, at least when rG is irreducible and the - characteristic is coprime. - irr_mode i z == the unique eigenvalue of irr_repr i z, at least when - irr_repr i z is scalar (e.g., when z \in 'Z(G)). - [1 sG]%irr == the index of the principal representation of G, in - sG : irrType F G. The i argument of irr_repr, irr_degree - and irr_mode is in the %irr scope. This notation may be - replaced locally by an interpretation of 1%irr as [1 sG] - for some specific irrType sG. - 'R_i, Wedderburn_subring i == the subring (indeed, the component) of the - free group ring of G corresponding to the component i : sG - of the regular FG-module, where sG : irrType F g. In - coprime characteristic the Wedderburn structure theorem - asserts that the free group ring is the direct sum of - these subrings; as with 'n_i above, the notation is only - active in group_ring_scope. - 'e_i, Wedderburn_id i == the projection of the identity matrix 1%:M on the - Wedderburn subring of i : sG (with sG a socleType). In - coprime characteristic this is the identity element of - the subring, and the basis of its center if the field F is - a splitting field. As 'R_i, 'e_i is in group_ring_scope. - subg_repr rG sHG == the restriction to H of the representation rG of G; - here sHG : H \subset G. - eqg_repr rG eqHG == the representation rG of G viewed a a representation - of H; here eqHG : G == H. - morphpre_repr f rG == the representation of f @*^-1 G obtained by - composing the group morphism f with rG. - morphim_repr rGf sGD == the representation of G induced by a - representation rGf of f @* G; here sGD : G \subset D where - D is the domain of the group morphism f. - rconj_repr rG uB == the conjugate representation x |-> B * rG x * B^-1; - here uB : B \in unitmx. - quo_repr sHK nHG == the representation of G / H induced by rG, given - sHK : H \subset rker rG, and nHG : G \subset 'N(H). - kquo_repr rG == the representation induced on G / rker rG by rG. - map_repr f rG == the representation f \o rG, whose module is the tensor - product of the module of rG with the extension field into - which f : {rmorphism F -> Fstar} embeds F. - 'Cl%act == the transitive action of G on the Wedderburn components of - H, with nsGH : H <| G, given by Clifford's theorem. More - precisely this is a total action of G on socle_sort sH, - where sH : socleType (subg_repr rG (normal_sub sGH)). - We build on the MatrixFormula toolkit to define decision procedures for - the reducibility property: - mxmodule_form rG U == a formula asserting that the interpretation of U is - a module of the representation rG. - mxnonsimple_form rG U == a formula asserting that the interpretation of U - contains a proper nontrivial rG-module. - mxnonsimple_sat rG U <=> mxnonsimple_form rG U is satisfied. - More involved constructions are encapsulated in two Coq submodules: - MatrixGenField == a module that encapsulates the lengthy details of the - construction of appropriate extension fields. We assume we - have an irreducible representation rG of a group G, and a - non-scalar matrix A that centralises rG(G), as this data - is readily extracted from the Jacobson density theorem. It - then follows from Schur's lemma that the ring generated by - A is a field on which the extension of the representation - rG of G is reducible. Note that this is equivalent to the - more traditional quotient of the polynomial ring by an - irreducible polynomial (the minimal polynomial of A), but - much better suited to our needs. - Here are the main definitions of MatrixGenField; they all have three - proofs as arguments: (implicit) rG : mx_repr n G, irrG : mx_irreducible rG - and cGA : centgmx rG A. These ensure the validity of the construction and - allow us to define Canonical instances; we assume degree_mxminpoly A > 1 - (which is equivalent to ~~ is_scalar_mx A) only to prove reducibility. - + gen_of irrG cGA == the carrier type of the field generated by A. It is - at least equipped with a fieldType structure; we also - propagate any decFieldType/finFieldType structures on the - original field. - + gen irrG cGA == the morphism injecting into gen_of irrG cGA. - + groot irrG cGA == the root of mxminpoly A in the gen_of irrG cGA field. - + pval x, rVval x, mxval x == the interpretation of x : gen_of irrG cGA - as a polynomial, a row vector, and a matrix, respectively. - Both irrG and cGA are implicit arguments here. - + gen_repr irrG cGA == an alternative to the field extension - representation, which consists in reconsidering the - original module as a module over the new gen_of field, - thereby DIVIDING the original dimension n by the degree of - the minimal polynomial of A. This can be simpler than the - extension method, is actually required by the proof that - odd groups are p-stable (B & G 6.1-2, and Appendix A), but - is only applicable if G is the LARGEST group represented - by rG (e.g., NOT for B & G 2.6). - + gen_dim A == the dimension of gen_repr irrG cGA (only depends on A). - + in_gen irrG cGA W == the ROWWISE image of a matrix W : 'M[F]</i>(m, n), - i.e., interpreting W as a sequence of m tow vectors, - under the bijection from rG to gen_repr irrG cGA. - The sequence length m is a maximal implicit argument - passed between the explicit argument cGA and W. - + val_gen W == the ROWWISE image of an 'M[gen_of irrG cGA](m, gen_dim A) - matrix W under the bijection from gen_repr irrG cGA to rG. - + rowval_gen W == the ROWSPACE image of W under the bijection from - gen_repr irrG cGA to rG, i.e., a 'M[F]_n matrix whose row - space is the image of the row space of W. - This is the A-ideal generated by val_gen W. - + gen_sat e f <=> f : GRing.formula (gen_of irrG cGA) is satisfied in - environment e : seq (gen_of irrG cGA), provided F has a - decFieldType structure. - + gen_env e, gen_term t, gen_form f == interpretations of environments, - terms, and RING formulas over gen_of irrG cGA as row - vector formulae, used to construct gen_sat. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Set Implicit Arguments</span>.<br/> - -<br/> -<span class="id" title="keyword">Import</span> <span class="id" title="var">GroupScope</span> <span class="id" title="var">GRing.Theory</span>.<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/> - -<br/> -<span class="id" title="keyword">Reserved Notation</span> "''n_' i" (<span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 8, <span class="id" title="var">i</span> <span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 2, <span class="id" title="var">format</span> "''n_' i").<br/> -<span class="id" title="keyword">Reserved Notation</span> "''R_' i" (<span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 8, <span class="id" title="var">i</span> <span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 2, <span class="id" title="var">format</span> "''R_' i").<br/> -<span class="id" title="keyword">Reserved Notation</span> "''e_' i" (<span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 8, <span class="id" title="var">i</span> <span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 2, <span class="id" title="var">format</span> "''e_' i").<br/> - -<br/> -<span class="id" title="keyword">Delimit</span> <span class="id" title="keyword">Scope</span> <span class="id" title="var">irrType_scope</span> <span class="id" title="keyword">with</span> <span class="id" title="var">irr</span>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr"><span class="id" title="section">RingRepr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="RingRepr.R"><span class="id" title="variable">R</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.ComUnitRing.Exports.comUnitRingType"><span class="id" title="abbreviation">comUnitRingType</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.OneRepresentation"><span class="id" title="section">OneRepresentation</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="RingRepr.OneRepresentation.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>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mx_repr"><span class="id" title="definition">mx_repr</span></a> (<span class="id" title="var">G</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.character.mxrepresentation.html#RingRepr.OneRepresentation.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">n</span> (<span class="id" title="var">r</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.gT"><span class="id" title="variable">gT</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.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.R"><span class="id" title="variable">R</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>) :=<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#r"><span class="id" title="variable">r</span></a> 1%<span class="id" title="var">g</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> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">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="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.character.mxrepresentation.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#b4f176550f5b849a7fbba2ee164934d3"><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">{</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.character.mxrepresentation.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.ssrfun.html#40d800f6f36c47cb5f4f2f42555867a8"><span class="id" title="notation">:</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</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.character.mxrepresentation.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.character.mxrepresentation.html#y"><span class="id" title="variable">y</span></a>)%<span class="id" title="var">g</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#y"><span class="id" title="variable">y</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.ssrbool.html#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Structure</span> <a name="mx_representation"><span class="id" title="record">mx_representation</span></a> <span class="id" title="var">G</span> <span class="id" title="var">n</span> :=<br/> - <a name="MxRepresentation"><span class="id" title="constructor">MxRepresentation</span></a> { <a name="repr_mx"><span class="id" title="projection">repr_mx</span></a> :> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.gT"><span class="id" title="variable">gT</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.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>; <span class="id" title="var">_</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_repr"><span class="id" title="definition">mx_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#repr_mx"><span class="id" title="method">repr_mx</span></a> }.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.OneRepresentation.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.character.mxrepresentation.html#RingRepr.OneRepresentation.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="RingRepr.OneRepresentation.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>) (<a name="RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="repr_mx1"><span class="id" title="lemma">repr_mx1</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</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<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="repr_mxM"><span class="id" title="lemma">repr_mxM</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.character.mxrepresentation.html#RingRepr.OneRepresentation.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#b4f176550f5b849a7fbba2ee164934d3"><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">{</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.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</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">x</span> <span class="id" title="var">y</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.character.mxrepresentation.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.character.mxrepresentation.html#y"><span class="id" title="variable">y</span></a>)%<span class="id" title="var">g</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#y"><span class="id" title="variable">y</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.ssrbool.html#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="repr_mxK"><span class="id" title="lemma">repr_mxK</span></a> <span class="id" title="var">m</span> <span class="id" title="var">x</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#RingRepr.OneRepresentation.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.ssrfun.html#cancel"><span class="id" title="definition">cancel</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">(</span></a>@<a class="idref" href="mathcomp.algebra.matrix.html#mulmx"><span class="id" title="definition">mulmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.R"><span class="id" title="variable">R</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">)^~</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssrfun.html#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">)</span></a>) (<a class="idref" href="mathcomp.algebra.matrix.html#mulmx"><span class="id" title="definition">mulmx</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">^~</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</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#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="repr_mxKV"><span class="id" title="lemma">repr_mxKV</span></a> <span class="id" title="var">m</span> <span class="id" title="var">x</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#RingRepr.OneRepresentation.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.ssrfun.html#cancel"><span class="id" title="definition">cancel</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">(</span></a>@<a class="idref" href="mathcomp.algebra.matrix.html#mulmx"><span class="id" title="definition">mulmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.R"><span class="id" title="variable">R</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">)^~</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</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#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">)</span></a>) (<a class="idref" href="mathcomp.algebra.matrix.html#mulmx"><span class="id" title="definition">mulmx</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">^~</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssrfun.html#d89396f990d6b54d736cfe259e498cf4"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="repr_mx_unit"><span class="id" title="lemma">repr_mx_unit</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#RingRepr.OneRepresentation.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.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#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.algebra.matrix.html#unitmx"><span class="id" title="definition">unitmx</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="repr_mxV"><span class="id" title="lemma">repr_mxV</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.character.mxrepresentation.html#RingRepr.OneRepresentation.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> <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.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</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">x</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a>%<span class="id" title="var">g</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.algebra.matrix.html#invmx"><span class="id" title="definition">invmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.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/> - -<br/> -</div> - -<div class="doc"> - This is only used in the group ring construction below, as we only have - developped the theory of matrix subalgebras for F-algebras. -</div> -<div class="code"> -<span class="id" title="keyword">Definition</span> <a name="enveloping_algebra_mx"><span class="id" title="definition">enveloping_algebra_mx</span></a> := <a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">matrix_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><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.character.mxrepresentation.html#RingRepr.OneRepresentation.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.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.ssreflect.fintype.html#enum_val"><span class="id" title="definition">enum_val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.OneRepresentation.Stabiliser"><span class="id" title="section">Stabiliser</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.OneRepresentation.Stabiliser.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>) (<a name="RingRepr.OneRepresentation.Stabiliser.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.R"><span class="id" title="variable">R</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="rstab"><span class="id" title="definition">rstab</span></a> := <a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">set</span></a> <span class="id" title="var">x</span> <a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.Stabiliser.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.Stabiliser.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_sub"><span class="id" title="lemma">rstab_sub</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</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.character.mxrepresentation.html#RingRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_group_set"><span class="id" title="lemma">rstab_group_set</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#group_set"><span class="id" title="definition">group_set</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">rstab_group</span> := <a class="idref" href="mathcomp.fingroup.fingroup.html#Group"><span class="id" title="constructor">Group</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab_group_set"><span class="id" title="lemma">rstab_group_set</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.Stabiliser"><span class="id" title="section">Stabiliser</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - Centralizer subgroup and central homomorphisms. -</div> -<div class="code"> -<span class="id" title="keyword">Section</span> <a name="RingRepr.OneRepresentation.CentHom"><span class="id" title="section">CentHom</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="RingRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.R"><span class="id" title="variable">R</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="rcent"><span class="id" title="definition">rcent</span></a> := <a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">set</span></a> <span class="id" title="var">x</span> <a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rcent_sub"><span class="id" title="lemma">rcent_sub</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</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.character.mxrepresentation.html#RingRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rcent_group_set"><span class="id" title="lemma">rcent_group_set</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#group_set"><span class="id" title="definition">group_set</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">rcent_group</span> := <a class="idref" href="mathcomp.fingroup.fingroup.html#Group"><span class="id" title="constructor">Group</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rcent_group_set"><span class="id" title="lemma">rcent_group_set</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="centgmx"><span class="id" title="definition">centgmx</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="centgmxP"><span class="id" title="lemma">centgmxP</span></a> : <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> (<span class="id" title="keyword">∀</span> <span class="id" title="var">x</span>, <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#RingRepr.OneRepresentation.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.character.mxrepresentation.html#RingRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.CentHom"><span class="id" title="section">CentHom</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - Representation kernel, and faithful representations. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="rker"><span class="id" title="definition">rker</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">rker_group</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#f6996ff347e6cf832aa130837b06a848"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#f6996ff347e6cf832aa130837b06a848"><span class="id" title="notation">group</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#f6996ff347e6cf832aa130837b06a848"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#f6996ff347e6cf832aa130837b06a848"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rkerP"><span class="id" title="lemma">rkerP</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#reflect"><span class="id" title="abbreviation">reflect</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#RingRepr.OneRepresentation.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="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_norm"><span class="id" title="lemma">rker_norm</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#1ff9e060a8cc6098d64e42214fa57c96"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_normal"><span class="id" title="lemma">rker_normal</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#7e8095b432e7aa5c3c22bb87584658b7"><span class="id" title="notation"><|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mx_faithful"><span class="id" title="definition">mx_faithful</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</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#b54f5e35cb228bba5934c852e0951c39"><span class="id" title="notation">[1]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_faithful_inj"><span class="id" title="lemma">mx_faithful_inj</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</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#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.character.mxrepresentation.html#RingRepr.OneRepresentation.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#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">&,</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.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</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>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_linear"><span class="id" title="lemma">rker_linear</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.n"><span class="id" title="variable">n</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> 1%<span class="id" title="var">N</span> <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.character.mxrepresentation.html#RingRepr.OneRepresentation.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>%<span class="id" title="var">g</span> <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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - Representation center. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="rcenter"><span class="id" title="definition">rcenter</span></a> := <a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">set</span></a> <span class="id" title="var">g</span> <a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#is_scalar_mx"><span class="id" title="definition">is_scalar_mx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#g"><span class="id" title="variable">g</span></a>)<a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Fact</span> <a name="rcenter_group_set"><span class="id" title="lemma">rcenter_group_set</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#group_set"><span class="id" title="definition">group_set</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rcenter"><span class="id" title="definition">rcenter</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">rcenter_group</span> := <a class="idref" href="mathcomp.fingroup.fingroup.html#Group"><span class="id" title="constructor">Group</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rcenter_group_set"><span class="id" title="lemma">rcenter_group_set</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rcenter_normal"><span class="id" title="lemma">rcenter_normal</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rcenter"><span class="id" title="definition">rcenter</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#7e8095b432e7aa5c3c22bb87584658b7"><span class="id" title="notation"><|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.OneRepresentation"><span class="id" title="section">OneRepresentation</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.Proper"><span class="id" title="section">Proper</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.Proper.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="RingRepr.Proper.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.character.mxrepresentation.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="RingRepr.Proper.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">Variable</span> <a name="RingRepr.Proper.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Proper.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="abbreviation">n</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="repr_mxMr"><span class="id" title="lemma">repr_mxMr</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.character.mxrepresentation.html#RingRepr.Proper.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#b4f176550f5b849a7fbba2ee164934d3"><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">{</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.character.mxrepresentation.html#RingRepr.Proper.rG"><span class="id" title="variable">rG</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">x</span> <span class="id" title="var">y</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.character.mxrepresentation.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.character.mxrepresentation.html#y"><span class="id" title="variable">y</span></a>)%<span class="id" title="var">g</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#2d0cfb150261028f4ebd2ba355623dcc"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#y"><span class="id" title="variable">y</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.ssrbool.html#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="repr_mxVr"><span class="id" title="lemma">repr_mxVr</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.character.mxrepresentation.html#RingRepr.Proper.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> <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.character.mxrepresentation.html#RingRepr.Proper.rG"><span class="id" title="variable">rG</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">x</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a>)%<span class="id" title="var">g</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#4e5a4c91ec0aa12de06dfe1cc07ea126"><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">}</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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="repr_mx_unitr"><span class="id" title="lemma">repr_mx_unitr</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#RingRepr.Proper.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.character.mxrepresentation.html#RingRepr.Proper.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#f6c65697fefaf4504de1d4d641cd4409"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#f6c65697fefaf4504de1d4d641cd4409"><span class="id" title="notation">is</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#f6c65697fefaf4504de1d4d641cd4409"><span class="id" title="notation">a</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.unit"><span class="id" title="definition">GRing.unit</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="repr_mxX"><span class="id" title="lemma">repr_mxX</span></a> <span class="id" title="var">m</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.character.mxrepresentation.html#RingRepr.Proper.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> <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.character.mxrepresentation.html#RingRepr.Proper.rG"><span class="id" title="variable">rG</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">x</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.character.mxrepresentation.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.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a>)%<span class="id" title="var">g</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#663140372ac3b275aae871b74b140513"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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><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/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Proper"><span class="id" title="section">Proper</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.ChangeGroup"><span class="id" title="section">ChangeGroup</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.ChangeGroup.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="RingRepr.ChangeGroup.G"><span class="id" title="variable">G</span></a> <a name="RingRepr.ChangeGroup.H"><span class="id" title="variable">H</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.character.mxrepresentation.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="RingRepr.ChangeGroup.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">Variables</span> (<a name="RingRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.ChangeGroup.SubGroup"><span class="id" title="section">SubGroup</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="RingRepr.ChangeGroup.SubGroup.sHG"><span class="id" title="variable">sHG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.H"><span class="id" title="variable">H</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.character.mxrepresentation.html#RingRepr.ChangeGroup.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="subg_mx_repr"><span class="id" title="lemma">subg_mx_repr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_repr"><span class="id" title="definition">mx_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="subg_repr"><span class="id" title="definition">subg_repr</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MxRepresentation"><span class="id" title="constructor">MxRepresentation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#subg_mx_repr"><span class="id" title="lemma">subg_mx_repr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rcent_subg"><span class="id" title="lemma">rcent_subg</span></a> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#RingRepr.ChangeGroup.H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#b9596739b058766532fc6517a36fef9f"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.ChangeGroup.SubGroup.Stabiliser"><span class="id" title="section">Stabiliser</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.ChangeGroup.SubGroup.Stabiliser.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>) (<a name="RingRepr.ChangeGroup.SubGroup.Stabiliser.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.R"><span class="id" title="variable">R</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_subg"><span class="id" title="lemma">rstab_subg</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.SubGroup.Stabiliser.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.character.mxrepresentation.html#RingRepr.ChangeGroup.H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#b9596739b058766532fc6517a36fef9f"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.SubGroup.Stabiliser.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.SubGroup.Stabiliser"><span class="id" title="section">Stabiliser</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_subg"><span class="id" title="lemma">rker_subg</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</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.character.mxrepresentation.html#RingRepr.ChangeGroup.H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#b9596739b058766532fc6517a36fef9f"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a>. <br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="subg_mx_faithful"><span class="id" title="lemma">subg_mx_faithful</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.rG"><span class="id" title="variable">rG</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.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.SubGroup"><span class="id" title="section">SubGroup</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.ChangeGroup.SameGroup"><span class="id" title="section">SameGroup</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="RingRepr.ChangeGroup.SameGroup.eqGH"><span class="id" title="variable">eqGH</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#b91223a7636398c530555b2312d1e79b"><span class="id" title="notation">:==:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.H"><span class="id" title="variable">H</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="eqg_repr_proof"><span class="id" title="lemma">eqg_repr_proof</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.H"><span class="id" title="variable">H</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.character.mxrepresentation.html#RingRepr.ChangeGroup.G"><span class="id" title="variable">G</span></a>. <br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="eqg_repr"><span class="id" title="definition">eqg_repr</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#subg_repr"><span class="id" title="definition">subg_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#eqg_repr_proof"><span class="id" title="lemma">eqg_repr_proof</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rcent_eqg"><span class="id" title="lemma">rcent_eqg</span></a> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.ChangeGroup.SameGroup.Stabiliser"><span class="id" title="section">Stabiliser</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.ChangeGroup.SameGroup.Stabiliser.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>) (<a name="RingRepr.ChangeGroup.SameGroup.Stabiliser.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.R"><span class="id" title="variable">R</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_eqg"><span class="id" title="lemma">rstab_eqg</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.SameGroup.Stabiliser.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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.SameGroup.Stabiliser.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.SameGroup.Stabiliser"><span class="id" title="section">Stabiliser</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_eqg"><span class="id" title="lemma">rker_eqg</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a>. <br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="eqg_mx_faithful"><span class="id" title="lemma">eqg_mx_faithful</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</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.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup.SameGroup"><span class="id" title="section">SameGroup</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.ChangeGroup"><span class="id" title="section">ChangeGroup</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.Morphpre"><span class="id" title="section">Morphpre</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.Morphpre.aT"><span class="id" title="variable">aT</span></a> <a name="RingRepr.Morphpre.rT"><span class="id" title="variable">rT</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#FinGroup.Exports.finGroupType"><span class="id" title="abbreviation">finGroupType</span></a>) (<a name="RingRepr.Morphpre.D"><span class="id" title="variable">D</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.character.mxrepresentation.html#aT"><span class="id" title="variable">aT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) (<a name="RingRepr.Morphpre.f"><span class="id" title="variable">f</span></a> : <a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">morphism</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#D"><span class="id" title="variable">D</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">>-></span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rT"><span class="id" title="variable">rT</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">}</span></a>).<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.Morphpre.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.character.mxrepresentation.html#RingRepr.Morphpre.rT"><span class="id" title="variable">rT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) (<a name="RingRepr.Morphpre.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>) (<a name="RingRepr.Morphpre.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="morphpre_mx_repr"><span class="id" title="lemma">morphpre_mx_repr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_repr"><span class="id" title="definition">mx_repr</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphpre.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">@*^-1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphpre.G"><span class="id" title="variable">G</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphpre.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">o</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphpre.f"><span class="id" title="variable">f</span></a>).<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">morphpre_repr</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MxRepresentation"><span class="id" title="constructor">MxRepresentation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#morphpre_mx_repr"><span class="id" title="lemma">morphpre_mx_repr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.Morphpre.Stabiliser"><span class="id" title="section">Stabiliser</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.Morphpre.Stabiliser.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>) (<a name="RingRepr.Morphpre.Stabiliser.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.R"><span class="id" title="variable">R</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphpre.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_morphpre"><span class="id" title="lemma">rstab_morphpre</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphpre.Stabiliser.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.character.mxrepresentation.html#RingRepr.Morphpre.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">@*^-1</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphpre.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphpre.Stabiliser.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphpre.Stabiliser"><span class="id" title="section">Stabiliser</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_morphpre"><span class="id" title="lemma">rker_morphpre</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</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.character.mxrepresentation.html#RingRepr.Morphpre.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">@*^-1</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphpre.rG"><span class="id" title="variable">rG</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphpre"><span class="id" title="section">Morphpre</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.Morphim"><span class="id" title="section">Morphim</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.Morphim.aT"><span class="id" title="variable">aT</span></a> <a name="RingRepr.Morphim.rT"><span class="id" title="variable">rT</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#FinGroup.Exports.finGroupType"><span class="id" title="abbreviation">finGroupType</span></a>) (<a name="RingRepr.Morphim.G"><span class="id" title="variable">G</span></a> <a name="RingRepr.Morphim.D"><span class="id" title="variable">D</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.character.mxrepresentation.html#aT"><span class="id" title="variable">aT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) (<a name="RingRepr.Morphim.f"><span class="id" title="variable">f</span></a> : <a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">morphism</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#D"><span class="id" title="variable">D</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">>-></span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rT"><span class="id" title="variable">rT</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">}</span></a>).<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.Morphim.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>) (<a name="RingRepr.Morphim.rGf"><span class="id" title="variable">rGf</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#70b0a61e30f130888503421fd44e1802"><span class="id" title="notation">@*</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.G"><span class="id" title="variable">G</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="morphim_mx"><span class="id" title="definition">morphim_mx</span></a> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#RingRepr.Morphim.D"><span class="id" title="variable">D</span></a> := <span class="id" title="keyword">fun</span> <span class="id" title="var">x</span> ⇒ <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.rGf"><span class="id" title="variable">rGf</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="RingRepr.Morphim.sGD"><span class="id" title="variable">sGD</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#RingRepr.Morphim.D"><span class="id" title="variable">D</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="morphim_mxE"><span class="id" title="lemma">morphim_mxE</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#morphim_mx"><span class="id" title="definition">morphim_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.sGD"><span class="id" title="variable">sGD</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.rGf"><span class="id" title="variable">rGf</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>). <br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="RingRepr.Morphim.sG_f'fG"><span class="id" title="variable">sG_f'fG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#RingRepr.Morphim.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">@*^-1</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#70b0a61e30f130888503421fd44e1802"><span class="id" title="notation">@*</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="morphim_mx_repr"><span class="id" title="lemma">morphim_mx_repr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_repr"><span class="id" title="definition">mx_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.G"><span class="id" title="variable">G</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#morphim_mx"><span class="id" title="definition">morphim_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.sGD"><span class="id" title="variable">sGD</span></a>).<br/> - <span class="id" title="keyword">Canonical</span> <span class="id" title="var">morphim_repr</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MxRepresentation"><span class="id" title="constructor">MxRepresentation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#morphim_mx_repr"><span class="id" title="lemma">morphim_mx_repr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.Morphim.Stabiliser"><span class="id" title="section">Stabiliser</span></a>.<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.Morphim.Stabiliser.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>) (<a name="RingRepr.Morphim.Stabiliser.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.R"><span class="id" title="variable">R</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_morphim"><span class="id" title="lemma">rstab_morphim</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="abbreviation">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.Stabiliser.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.character.mxrepresentation.html#RingRepr.Morphim.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#b9596739b058766532fc6517a36fef9f"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">@*^-1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.rGf"><span class="id" title="variable">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.Stabiliser.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.Stabiliser"><span class="id" title="section">Stabiliser</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_morphim"><span class="id" title="lemma">rker_morphim</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="abbreviation">rG</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.character.mxrepresentation.html#RingRepr.Morphim.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#b9596739b058766532fc6517a36fef9f"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">@*^-1</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim.rGf"><span class="id" title="variable">rGf</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Morphim"><span class="id" title="section">Morphim</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.Conjugate"><span class="id" title="section">Conjugate</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.Conjugate.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="RingRepr.Conjugate.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.character.mxrepresentation.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="RingRepr.Conjugate.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">Variables</span> (<a name="RingRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.n"><span class="id" title="variable">n</span></a>) (<a name="RingRepr.Conjugate.B"><span class="id" title="variable">B</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.R"><span class="id" title="variable">R</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="rconj_mx"><span class="id" title="definition">rconj_mx</span></a> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.B"><span class="id" title="variable">B</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.algebra.matrix.html#unitmx"><span class="id" title="definition">unitmx</span></a> := <span class="id" title="keyword">fun</span> <span class="id" title="var">x</span> ⇒ <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.B"><span class="id" title="variable">B</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#invmx"><span class="id" title="definition">invmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.B"><span class="id" title="variable">B</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="RingRepr.Conjugate.uB"><span class="id" title="variable">uB</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.B"><span class="id" title="variable">B</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.algebra.matrix.html#unitmx"><span class="id" title="definition">unitmx</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rconj_mx_repr"><span class="id" title="lemma">rconj_mx_repr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_repr"><span class="id" title="definition">mx_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.G"><span class="id" title="variable">G</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#rconj_mx"><span class="id" title="definition">rconj_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.uB"><span class="id" title="variable">uB</span></a>).<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">rconj_repr</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MxRepresentation"><span class="id" title="constructor">MxRepresentation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rconj_mx_repr"><span class="id" title="lemma">rconj_mx_repr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rconj_mxE"><span class="id" title="lemma">rconj_mxE</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rGB"><span class="id" title="abbreviation">rGB</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.B"><span class="id" title="variable">B</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#invmx"><span class="id" title="definition">invmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.B"><span class="id" title="variable">B</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rconj_mxJ"><span class="id" title="lemma">rconj_mxJ</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGB"><span class="id" title="abbreviation">rGB</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.B"><span class="id" title="variable">B</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rcent_conj"><span class="id" title="lemma">rcent_conj</span></a> <span class="id" title="var">A</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGB"><span class="id" title="abbreviation">rGB</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#invmx"><span class="id" title="definition">invmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.B"><span class="id" title="variable">B</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.B"><span class="id" title="variable">B</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_conj"><span class="id" title="lemma">rstab_conj</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGB"><span class="id" title="abbreviation">rGB</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.B"><span class="id" title="variable">B</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_conj"><span class="id" title="lemma">rker_conj</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGB"><span class="id" title="abbreviation">rGB</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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="conj_mx_faithful"><span class="id" title="lemma">conj_mx_faithful</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGB"><span class="id" title="abbreviation">rGB</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.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Conjugate"><span class="id" title="section">Conjugate</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.Quotient"><span class="id" title="section">Quotient</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.Quotient.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="RingRepr.Quotient.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.character.mxrepresentation.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="RingRepr.Quotient.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">Variable</span> <a name="RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.n"><span class="id" title="variable">n</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="quo_mx"><span class="id" title="definition">quo_mx</span></a> (<span class="id" title="var">H</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.character.mxrepresentation.html#RingRepr.Quotient.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="keyword">of</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> & <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#1ff9e060a8cc6098d64e42214fa57c96"><span class="id" title="notation">)</span></a> :=<br/> - <span class="id" title="keyword">fun</span> <span class="id" title="var">Hx</span> : <a class="idref" href="mathcomp.fingroup.quotient.html#coset_of"><span class="id" title="record">coset_of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a> ⇒ <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.fingroup.fingroup.html#repr"><span class="id" title="definition">repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Hx"><span class="id" title="variable">Hx</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.Quotient.SubQuotient"><span class="id" title="section">SubQuotient</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="RingRepr.Quotient.SubQuotient.H"><span class="id" title="variable">H</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.character.mxrepresentation.html#RingRepr.Quotient.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/> -<span class="id" title="keyword">Hypotheses</span> (<a name="RingRepr.Quotient.SubQuotient.krH"><span class="id" title="variable">krH</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.H"><span class="id" title="variable">H</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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a>) (<a name="RingRepr.Quotient.SubQuotient.nHG"><span class="id" title="variable">nHG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.H"><span class="id" title="variable">H</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#1ff9e060a8cc6098d64e42214fa57c96"><span class="id" title="notation">)</span></a>).<br/> -<span class="id" title="keyword">Let</span> <a name="RingRepr.Quotient.SubQuotient.nHGs"><span class="id" title="variable">nHGs</span></a> := <a class="idref" href="mathcomp.ssreflect.fintype.html#subsetP"><span class="id" title="lemma">subsetP</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.nHG"><span class="id" title="variable">nHG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="quo_mx_coset"><span class="id" title="lemma">quo_mx_coset</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#RingRepr.Quotient.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.character.mxrepresentation.html#quo_mx"><span class="id" title="definition">quo_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.krH"><span class="id" title="variable">krH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.nHG"><span class="id" title="variable">nHG</span></a> (<a class="idref" href="mathcomp.fingroup.quotient.html#coset"><span class="id" title="definition">coset</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="quo_mx_repr"><span class="id" title="lemma">quo_mx_repr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_repr"><span class="id" title="definition">mx_repr</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.quotient.html#3e65ad3edf5f7fb3ea6bc63a878112a8"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.H"><span class="id" title="variable">H</span></a>)%<span class="id" title="var">g</span> (<a class="idref" href="mathcomp.character.mxrepresentation.html#quo_mx"><span class="id" title="definition">quo_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.krH"><span class="id" title="variable">krH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.nHG"><span class="id" title="variable">nHG</span></a>).<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">quo_repr</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MxRepresentation"><span class="id" title="constructor">MxRepresentation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#quo_mx_repr"><span class="id" title="lemma">quo_mx_repr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="quo_repr_coset"><span class="id" title="lemma">quo_repr_coset</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#RingRepr.Quotient.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.character.mxrepresentation.html#rGH"><span class="id" title="abbreviation">rGH</span></a> (<a class="idref" href="mathcomp.fingroup.quotient.html#coset"><span class="id" title="definition">coset</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rcent_quo"><span class="id" title="lemma">rcent_quo</span></a> <span class="id" title="var">A</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGH"><span class="id" title="abbreviation">rGH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.fingroup.quotient.html#3e65ad3edf5f7fb3ea6bc63a878112a8"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.H"><span class="id" title="variable">H</span></a>)%<span class="id" title="var">g</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_quo"><span class="id" title="lemma">rstab_quo</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGH"><span class="id" title="abbreviation">rGH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.fingroup.quotient.html#3e65ad3edf5f7fb3ea6bc63a878112a8"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.H"><span class="id" title="variable">H</span></a>)%<span class="id" title="var">g</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_quo"><span class="id" title="lemma">rker_quo</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGH"><span class="id" title="abbreviation">rGH</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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.fingroup.quotient.html#3e65ad3edf5f7fb3ea6bc63a878112a8"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient.H"><span class="id" title="variable">H</span></a>)%<span class="id" title="var">g</span>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.SubQuotient"><span class="id" title="section">SubQuotient</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="kquo_mx"><span class="id" title="definition">kquo_mx</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#quo_mx"><span class="id" title="definition">quo_mx</span></a> (<a class="idref" href="mathcomp.ssreflect.fintype.html#subxx"><span class="id" title="lemma">subxx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a>)) (<a class="idref" href="mathcomp.character.mxrepresentation.html#rker_norm"><span class="id" title="lemma">rker_norm</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a>).<br/> -<span class="id" title="keyword">Lemma</span> <a name="kquo_mxE"><span class="id" title="lemma">kquo_mxE</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#kquo_mx"><span class="id" title="definition">kquo_mx</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.character.mxrepresentation.html#quo_mx"><span class="id" title="definition">quo_mx</span></a> (<a class="idref" href="mathcomp.ssreflect.fintype.html#subxx"><span class="id" title="lemma">subxx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a>)) (<a class="idref" href="mathcomp.character.mxrepresentation.html#rker_norm"><span class="id" title="lemma">rker_norm</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">kquo_repr</span> := @<a class="idref" href="mathcomp.character.mxrepresentation.html#MxRepresentation"><span class="id" title="constructor">MxRepresentation</span></a> <span class="id" title="var">_</span> <span class="id" title="var">_</span> <span class="id" title="var">_</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#kquo_mx"><span class="id" title="definition">kquo_mx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#quo_mx_repr"><span class="id" title="lemma">quo_mx_repr</span></a> <span class="id" title="var">_</span> <span class="id" title="var">_</span>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="kquo_repr_coset"><span class="id" title="lemma">kquo_repr_coset</span></a> <span class="id" title="var">x</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#RingRepr.Quotient.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.character.mxrepresentation.html#kquo_repr"><span class="id" title="definition">kquo_repr</span></a> (<a class="idref" href="mathcomp.fingroup.quotient.html#coset"><span class="id" title="definition">coset</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="kquo_mx_faithful"><span class="id" title="lemma">kquo_mx_faithful</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#kquo_repr"><span class="id" title="definition">kquo_repr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Quotient"><span class="id" title="section">Quotient</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.Regular"><span class="id" title="section">Regular</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.Regular.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="RingRepr.Regular.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.character.mxrepresentation.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">Definition</span> <a name="gring_index"><span class="id" title="definition">gring_index</span></a> (<span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.gT"><span class="id" title="variable">gT</span></a>) := <a class="idref" href="mathcomp.ssreflect.fintype.html#enum_rank_in"><span class="id" title="definition">enum_rank_in</span></a> (<a class="idref" href="mathcomp.fingroup.fingroup.html#group1"><span class="id" title="lemma">group1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.G"><span class="id" title="variable">G</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_valK"><span class="id" title="lemma">gring_valK</span></a> : <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.ssreflect.fintype.html#enum_val"><span class="id" title="definition">enum_val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_index"><span class="id" title="definition">gring_index</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_indexK"><span class="id" title="lemma">gring_indexK</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.character.mxrepresentation.html#RingRepr.Regular.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> <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.character.mxrepresentation.html#gring_index"><span class="id" title="definition">gring_index</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#enum_val"><span class="id" title="definition">enum_val</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/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="regular_mx"><span class="id" title="definition">regular_mx</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.R"><span class="id" title="variable">R</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_nG</span></a> :=<br/> - <a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">matrix_i</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#delta_mx"><span class="id" title="definition">delta_mx</span></a> 0 (<a class="idref" href="mathcomp.character.mxrepresentation.html#gring_index"><span class="id" title="definition">gring_index</span></a> (<a class="idref" href="mathcomp.ssreflect.fintype.html#enum_val"><span class="id" title="definition">enum_val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="regular_mx_repr"><span class="id" title="lemma">regular_mx_repr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_repr"><span class="id" title="definition">mx_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#regular_mx"><span class="id" title="definition">regular_mx</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">regular_repr</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MxRepresentation"><span class="id" title="constructor">MxRepresentation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#regular_mx_repr"><span class="id" title="lemma">regular_mx_repr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="group_ring"><span class="id" title="definition">group_ring</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#enveloping_algebra_mx"><span class="id" title="definition">enveloping_algebra_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="gring_row"><span class="id" title="definition">gring_row</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.R"><span class="id" title="variable">R</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_nG</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.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">rV_nG</span></a> := <a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gring_index"><span class="id" title="definition">gring_index</span></a> 1).<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gring_row_linear</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">linear</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_row"><span class="id" title="definition">gring_row</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_row_mul"><span class="id" title="lemma">gring_row_mul</span></a> <span class="id" title="var">A</span> <span class="id" title="var">B</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_row"><span class="id" title="definition">gring_row</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#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.character.mxrepresentation.html#gring_row"><span class="id" title="definition">gring_row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="gring_proj"><span class="id" title="definition">gring_proj</span></a> <span class="id" title="var">x</span> := <a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gring_index"><span class="id" title="definition">gring_index</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">o</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#trmx"><span class="id" title="definition">trmx</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">o</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_row"><span class="id" title="definition">gring_row</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gring_proj_linear</span> <span class="id" title="var">x</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">linear</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_proj"><span class="id" title="definition">gring_proj</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_projE"><span class="id" title="lemma">gring_projE</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.character.mxrepresentation.html#RingRepr.Regular.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#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">&,</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">x</span> <span class="id" title="var">y</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_proj"><span class="id" title="definition">gring_proj</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#6411ed08724033ae48d2865f0380d533"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#y"><span class="id" title="variable">y</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#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="regular_mx_faithful"><span class="id" title="lemma">regular_mx_faithful</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.Regular.GringMx"><span class="id" title="section">GringMx</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.Regular.GringMx.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>) (<a name="RingRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="gring_mx"><span class="id" title="definition">gring_mx</span></a> := <a class="idref" href="mathcomp.algebra.matrix.html#vec_mx"><span class="id" title="definition">vec_mx</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">o</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#mulmxr"><span class="id" title="abbreviation">mulmxr</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#enveloping_algebra_mx"><span class="id" title="definition">enveloping_algebra_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a>).<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gring_mx_linear</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">linear</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_mxJ"><span class="id" title="lemma">gring_mxJ</span></a> <span class="id" title="var">a</span> <span class="id" title="var">x</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#RingRepr.Regular.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.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.GringMx"><span class="id" title="section">GringMx</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_mxK"><span class="id" title="lemma">gring_mxK</span></a> : <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.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_row"><span class="id" title="definition">gring_row</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="RingRepr.Regular.GringOp"><span class="id" title="section">GringOp</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="RingRepr.Regular.GringOp.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>) (<a name="RingRepr.Regular.GringOp.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="gring_op"><span class="id" title="definition">gring_op</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.GringOp.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">o</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_row"><span class="id" title="definition">gring_row</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gring_op_linear</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">linear</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_opE"><span class="id" title="lemma">gring_opE</span></a> <span class="id" title="var">a</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.GringOp.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gring_row"><span class="id" title="definition">gring_row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_opG"><span class="id" title="lemma">gring_opG</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#RingRepr.Regular.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.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.GringOp.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_op1"><span class="id" title="lemma">gring_op1</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">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> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_opJ"><span class="id" title="lemma">gring_opJ</span></a> <span class="id" title="var">A</span> <span class="id" title="var">b</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#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.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.GringOp.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#b"><span class="id" title="variable">b</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_op_mx"><span class="id" title="lemma">gring_op_mx</span></a> <span class="id" title="var">b</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#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.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.GringOp.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#b"><span class="id" title="variable">b</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_mxA"><span class="id" title="lemma">gring_mxA</span></a> <span class="id" title="var">a</span> <span class="id" title="var">b</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.GringOp.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#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.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.GringOp.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.GringOp.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#b"><span class="id" title="variable">b</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular.GringOp"><span class="id" title="section">GringOp</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr.Regular"><span class="id" title="section">Regular</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#RingRepr"><span class="id" title="section">RingRepr</span></a>.<br/> - -<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="ChangeOfRing"><span class="id" title="section">ChangeOfRing</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="ChangeOfRing.aR"><span class="id" title="variable">aR</span></a> <a name="ChangeOfRing.rR"><span class="id" title="variable">rR</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.ComUnitRing.Exports.comUnitRingType"><span class="id" title="abbreviation">comUnitRingType</span></a>) (<a name="ChangeOfRing.f"><span class="id" title="variable">f</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#d531732ed602c7af62b88c7cfce824e5"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#d531732ed602c7af62b88c7cfce824e5"><span class="id" title="notation">rmorphism</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aR"><span class="id" title="variable">aR</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.character.mxrepresentation.html#rR"><span class="id" title="variable">rR</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#d531732ed602c7af62b88c7cfce824e5"><span class="id" title="notation">}</span></a>).<br/> -<span class="id" title="keyword">Variables</span> (<a name="ChangeOfRing.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="ChangeOfRing.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.character.mxrepresentation.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">Lemma</span> <a name="map_regular_mx"><span class="id" title="lemma">map_regular_mx</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#regular_mx"><span class="id" title="definition">regular_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.aR"><span class="id" title="variable">aR</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">)^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</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.character.mxrepresentation.html#regular_mx"><span class="id" title="definition">regular_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.rR"><span class="id" title="variable">rR</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_gring_row"><span class="id" title="lemma">map_gring_row</span></a> (<span class="id" title="var">A</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.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.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#gring_row"><span class="id" title="definition">gring_row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">)^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</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.character.mxrepresentation.html#gring_row"><span class="id" title="definition">gring_row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_gring_proj"><span class="id" title="lemma">map_gring_proj</span></a> <span class="id" title="var">x</span> (<span class="id" title="var">A</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.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.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#gring_proj"><span class="id" title="definition">gring_proj</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">)^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</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.character.mxrepresentation.html#gring_proj"><span class="id" title="definition">gring_proj</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="ChangeOfRing.OneRepresentation"><span class="id" title="section">OneRepresentation</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="ChangeOfRing.OneRepresentation.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>) (<a name="ChangeOfRing.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.aR"><span class="id" title="variable">aR</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="map_repr_mx"><span class="id" title="definition">map_repr_mx</span></a> (<span class="id" title="var">f0</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.aR"><span class="id" title="variable">aR</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.character.mxrepresentation.html#ChangeOfRing.rR"><span class="id" title="variable">rR</span></a>) <span class="id" title="var">rG0</span> (<span class="id" title="var">g</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.gT"><span class="id" title="variable">gT</span></a>) : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a> := <a class="idref" href="mathcomp.algebra.matrix.html#map_mx"><span class="id" title="definition">map_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f0"><span class="id" title="variable">f0</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#rG0"><span class="id" title="variable">rG0</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#g"><span class="id" title="variable">g</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_mx_repr"><span class="id" title="lemma">map_mx_repr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_repr"><span class="id" title="definition">mx_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.G"><span class="id" title="variable">G</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#map_repr_mx"><span class="id" title="definition">map_repr_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.OneRepresentation.rG"><span class="id" title="variable">rG</span></a>).<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">map_repr</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MxRepresentation"><span class="id" title="constructor">MxRepresentation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#map_mx_repr"><span class="id" title="lemma">map_mx_repr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_reprE"><span class="id" title="lemma">map_reprE</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">)^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</span></a>. <br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_reprJ"><span class="id" title="lemma">map_reprJ</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">A</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">)^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</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.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_enveloping_algebra_mx"><span class="id" title="lemma">map_enveloping_algebra_mx</span></a> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#enveloping_algebra_mx"><span class="id" title="definition">enveloping_algebra_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.OneRepresentation.rG"><span class="id" title="variable">rG</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">)^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</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.character.mxrepresentation.html#enveloping_algebra_mx"><span class="id" title="definition">enveloping_algebra_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_gring_mx"><span class="id" title="lemma">map_gring_mx</span></a> <span class="id" title="var">a</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">)^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</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.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_gring_op"><span class="id" title="lemma">map_gring_op</span></a> <span class="id" title="var">A</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">)^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</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.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.OneRepresentation"><span class="id" title="section">OneRepresentation</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_regular_repr"><span class="id" title="lemma">map_regular_repr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#map_repr"><span class="id" title="definition">map_repr</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#regular_repr"><span class="id" title="definition">regular_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.aR"><span class="id" title="variable">aR</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.G"><span class="id" title="variable">G</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#876aa133fb3472bffd492f74ff496035"><span class="id" title="notation">=1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#regular_repr"><span class="id" title="definition">regular_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.rR"><span class="id" title="variable">rR</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_group_ring"><span class="id" title="lemma">map_group_ring</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#group_ring"><span class="id" title="definition">group_ring</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.aR"><span class="id" title="variable">aR</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">)^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#62fc53b312b1b9229e2dbc4a50119819"><span class="id" title="notation">f</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.character.mxrepresentation.html#group_ring"><span class="id" title="definition">group_ring</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.rR"><span class="id" title="variable">rR</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - Stabilisers, etc, are only mapped properly for fields. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfRing"><span class="id" title="section">ChangeOfRing</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr"><span class="id" title="section">FieldRepr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="FieldRepr.F"><span class="id" title="variable">F</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.Exports.fieldType"><span class="id" title="abbreviation">fieldType</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.OneRepresentation"><span class="id" title="section">OneRepresentation</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="FieldRepr.OneRepresentation.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>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.OneRepresentation.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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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="FieldRepr.OneRepresentation.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>) (<a name="FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="repr_mx_free"><span class="id" title="lemma">repr_mx_free</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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.algebra.mxalgebra.html#row_free"><span class="id" title="definition">row_free</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.OneRepresentation.Stabilisers"><span class="id" title="section">Stabilisers</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.OneRepresentation.Stabilisers.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>) (<a name="FieldRepr.OneRepresentation.Stabilisers.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="rstabs"><span class="id" title="definition">rstabs</span></a> := <a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">set</span></a> <span class="id" title="var">x</span> <a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Stabilisers.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Stabilisers.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#91816551bcea1b6f359ecf76f3595e38"><span class="id" title="notation">]</span></a>%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabs_sub"><span class="id" title="lemma">rstabs_sub</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabs_group_set"><span class="id" title="lemma">rstabs_group_set</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#group_set"><span class="id" title="definition">group_set</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">rstabs_group</span> := <a class="idref" href="mathcomp.fingroup.fingroup.html#Group"><span class="id" title="constructor">Group</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs_group_set"><span class="id" title="lemma">rstabs_group_set</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_act"><span class="id" title="lemma">rstab_act</span></a> <span class="id" title="var">x</span> <span class="id" title="var">m1</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Stabilisers.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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Stabilisers.U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabs_act"><span class="id" title="lemma">rstabs_act</span></a> <span class="id" title="var">x</span> <span class="id" title="var">m1</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Stabilisers.U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Stabilisers.U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mxmodule"><span class="id" title="definition">mxmodule</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmoduleP"><span class="id" title="lemma">mxmoduleP</span></a> : <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="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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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">x</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Stabilisers.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Stabilisers.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#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">}</span></a>%<span class="id" title="var">MS</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Stabilisers"><span class="id" title="section">Stabilisers</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabS"><span class="id" title="lemma">rstabS</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="eqmx_rstab"><span class="id" title="lemma">eqmx_rstab</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="eqmx_rstabs"><span class="id" title="lemma">eqmx_rstabs</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="eqmx_module"><span class="id" title="lemma">eqmx_module</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule0"><span class="id" title="lemma">mxmodule0</span></a> <span class="id" title="var">m</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (0 <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#aed478b27f23b4f753c27c8ac393febc"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule1"><span class="id" title="lemma">mxmodule1</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule_trans"><span class="id" title="lemma">mxmodule_trans</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) <span class="id" title="var">x</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule_eigenvector"><span class="id" title="lemma">mxmodule_eigenvector</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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> 1%<span class="id" title="var">N</span> <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/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">{</span></a><span class="id" title="var">u</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">rV_n</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">&</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#c0bbd202248f4def7aaf0c316cf2c29e"><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.Init.Specif.html#c0bbd202248f4def7aaf0c316cf2c29e"><span class="id" title="notation">|</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a>)%<span class="id" title="var">MS</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#c0bbd202248f4def7aaf0c316cf2c29e"><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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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">x</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#3b05480e39db306e67fadbc79d394529"><span class="id" title="notation">*:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#c0bbd202248f4def7aaf0c316cf2c29e"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="addsmx_module"><span class="id" title="lemma">addsmx_module</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> <span class="id" title="var">U</span> <span class="id" title="var">V</span> :<br/> - @<a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="sumsmx_module"><span class="id" title="lemma">sumsmx_module</span></a> <span class="id" title="var">I</span> <span class="id" title="var">r</span> (<span class="id" title="var">P</span> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#pred"><span class="id" title="definition">pred</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#I"><span class="id" title="variable">I</span></a>) <span class="id" title="var">U</span> :<br/> - <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">i</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#994c9f44fcb3e626f86425e0ec6ef6f1"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#994c9f44fcb3e626f86425e0ec6ef6f1"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#994c9f44fcb3e626f86425e0ec6ef6f1"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#994c9f44fcb3e626f86425e0ec6ef6f1"><span class="id" title="notation"><-</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#r"><span class="id" title="variable">r</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#994c9f44fcb3e626f86425e0ec6ef6f1"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#994c9f44fcb3e626f86425e0ec6ef6f1"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="capmx_module"><span class="id" title="lemma">capmx_module</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> <span class="id" title="var">U</span> <span class="id" title="var">V</span> :<br/> - @<a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="bigcapmx_module"><span class="id" title="lemma">bigcapmx_module</span></a> <span class="id" title="var">I</span> <span class="id" title="var">r</span> (<span class="id" title="var">P</span> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#pred"><span class="id" title="definition">pred</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#I"><span class="id" title="variable">I</span></a>) <span class="id" title="var">U</span> :<br/> - <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">i</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#f50f3b23c8e3019caf5cf4a7815105e5"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#f50f3b23c8e3019caf5cf4a7815105e5"><span class="id" title="notation">bigcap_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#f50f3b23c8e3019caf5cf4a7815105e5"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f50f3b23c8e3019caf5cf4a7815105e5"><span class="id" title="notation"><-</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#r"><span class="id" title="variable">r</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f50f3b23c8e3019caf5cf4a7815105e5"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#f50f3b23c8e3019caf5cf4a7815105e5"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -</div> - -<div class="doc"> - Sub- and factor representations induced by a (sub)module. -</div> -<div class="code"> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.OneRepresentation.Submodule"><span class="id" title="section">Submodule</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="val_submod"><span class="id" title="definition">val_submod</span></a> <span class="id" title="var">m</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><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.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a> := <a class="idref" href="mathcomp.algebra.matrix.html#mulmxr"><span class="id" title="abbreviation">mulmxr</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#row_base"><span class="id" title="definition">row_base</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>).<br/> -<span class="id" title="keyword">Definition</span> <a name="in_submod"><span class="id" title="definition">in_submod</span></a> <span class="id" title="var">m</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><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.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a> :=<br/> - <a class="idref" href="mathcomp.algebra.matrix.html#mulmxr"><span class="id" title="abbreviation">mulmxr</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#invmx"><span class="id" title="definition">invmx</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#row_ebase"><span class="id" title="definition">row_ebase</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>) <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#pid_mx"><span class="id" title="definition">pid_mx</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>)).<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">val_submod_linear</span> <span class="id" title="var">m</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">linear</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">of</span></a> @<a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">in_submod_linear</span> <span class="id" title="var">m</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">linear</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">of</span></a> @<a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_submodE"><span class="id" title="lemma">val_submodE</span></a> <span class="id" title="var">m</span> <span class="id" title="var">W</span> : @<a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="in_submodE"><span class="id" title="lemma">in_submodE</span></a> <span class="id" title="var">m</span> <span class="id" title="var">W</span> : @<a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_submod1"><span class="id" title="lemma">val_submod1</span></a> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_submodP"><span class="id" title="lemma">val_submodP</span></a> <span class="id" title="var">m</span> <span class="id" title="var">W</span> : (@<a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_submodK"><span class="id" title="lemma">val_submodK</span></a> <span class="id" title="var">m</span> : <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.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a>) (@<a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_submod_inj"><span class="id" title="lemma">val_submod_inj</span></a> <span class="id" title="var">m</span> : <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.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_submodS"><span class="id" title="lemma">val_submodS</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</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> (<a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="in_submodK"><span class="id" title="lemma">in_submodK</span></a> <span class="id" title="var">m</span> <span class="id" title="var">W</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> (@<a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_submod_eq0"><span class="id" title="lemma">val_submod_eq0</span></a> <span class="id" title="var">m</span> <span class="id" title="var">W</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>@<a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 0<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.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 0<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/> -<span class="id" title="keyword">Lemma</span> <a name="in_submod_eq0"><span class="id" title="lemma">in_submod_eq0</span></a> <span class="id" title="var">m</span> <span class="id" title="var">W</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>@<a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 0<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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#7772cb4a238f5fc3b7cf2f735c00df9d"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#7772cb4a238f5fc3b7cf2f735c00df9d"><span class="id" title="notation">C</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxrank_in_submod"><span class="id" title="lemma">mxrank_in_submod</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span> <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.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><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.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="val_factmod"><span class="id" title="definition">val_factmod</span></a> <span class="id" title="var">m</span> : <span class="id" title="var">_</span> <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.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a> :=<br/> - <a class="idref" href="mathcomp.algebra.matrix.html#mulmxr"><span class="id" title="abbreviation">mulmxr</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#row_base"><span class="id" title="definition">row_base</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#cokermx"><span class="id" title="definition">cokermx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>) <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#row_ebase"><span class="id" title="definition">row_ebase</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>).<br/> -<span class="id" title="keyword">Definition</span> <a name="in_factmod"><span class="id" title="definition">in_factmod</span></a> <span class="id" title="var">m</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><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="var">_</span> := <a class="idref" href="mathcomp.algebra.matrix.html#mulmxr"><span class="id" title="abbreviation">mulmxr</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#col_base"><span class="id" title="definition">col_base</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#cokermx"><span class="id" title="definition">cokermx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>)).<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">val_factmod_linear</span> <span class="id" title="var">m</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">linear</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">of</span></a> @<a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">in_factmod_linear</span> <span class="id" title="var">m</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">linear</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">of</span></a> @<a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#6190fe21ffbd3dab252b4f744e9e9c11"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_factmodE"><span class="id" title="lemma">val_factmodE</span></a> <span class="id" title="var">m</span> <span class="id" title="var">W</span> : @<a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="in_factmodE"><span class="id" title="lemma">in_factmodE</span></a> <span class="id" title="var">m</span> <span class="id" title="var">W</span> : @<a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_factmodP"><span class="id" title="lemma">val_factmodP</span></a> <span class="id" title="var">m</span> <span class="id" title="var">W</span> : (@<a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#7772cb4a238f5fc3b7cf2f735c00df9d"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#7772cb4a238f5fc3b7cf2f735c00df9d"><span class="id" title="notation">C</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_factmodK"><span class="id" title="lemma">val_factmodK</span></a> <span class="id" title="var">m</span> : <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.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a>) (@<a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_factmod_inj"><span class="id" title="lemma">val_factmod_inj</span></a> <span class="id" title="var">m</span> : <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.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_factmodS"><span class="id" title="lemma">val_factmodS</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <span class="id" title="var">_</span><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <span class="id" title="var">_</span><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</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> (<a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_factmod_eq0"><span class="id" title="lemma">val_factmod_eq0</span></a> <span class="id" title="var">m</span> <span class="id" title="var">W</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>@<a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 0<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.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 0<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/> -<span class="id" title="keyword">Lemma</span> <a name="in_factmod_eq0"><span class="id" title="lemma">in_factmod_eq0</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><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.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 0<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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="in_factmodK"><span class="id" title="lemma">in_factmodK</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#7772cb4a238f5fc3b7cf2f735c00df9d"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#7772cb4a238f5fc3b7cf2f735c00df9d"><span class="id" title="notation">C</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="in_factmod_addsK"><span class="id" title="lemma">in_factmod_addsK</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="add_sub_fact_mod"><span class="id" title="lemma">add_sub_fact_mod</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>) <a class="idref" href="mathcomp.algebra.ssralg.html#c7f78cf1f6a5e4f664654f7d671ca752"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="proj_factmodS"><span class="id" title="lemma">proj_factmodS</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>) <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="in_factmodsK"><span class="id" title="lemma">in_factmodsK</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>) <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxrank_in_factmod"><span class="id" title="lemma">mxrank_in_factmod</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><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.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="submod_mx"><span class="id" title="definition">submod_mx</span></a> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a> :=<br/> - <span class="id" title="keyword">fun</span> <span class="id" title="var">x</span> ⇒ <a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="factmod_mx"><span class="id" title="definition">factmod_mx</span></a> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a> :=<br/> - <span class="id" title="keyword">fun</span> <span class="id" title="var">x</span> ⇒ <a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.OneRepresentation.Submodule.Umod"><span class="id" title="variable">Umod</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="in_submodJ"><span class="id" title="lemma">in_submodJ</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) <span class="id" title="var">x</span> :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#submod_mx"><span class="id" title="definition">submod_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.Umod"><span class="id" title="variable">Umod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_submodJ"><span class="id" title="lemma">val_submodJ</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) <span class="id" title="var">x</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#submod_mx"><span class="id" title="definition">submod_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.Umod"><span class="id" title="variable">Umod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="submod_mx_repr"><span class="id" title="lemma">submod_mx_repr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_repr"><span class="id" title="definition">mx_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#submod_mx"><span class="id" title="definition">submod_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.Umod"><span class="id" title="variable">Umod</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">submod_repr</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MxRepresentation"><span class="id" title="constructor">MxRepresentation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#submod_mx_repr"><span class="id" title="lemma">submod_mx_repr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="in_factmodJ"><span class="id" title="lemma">in_factmodJ</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) <span class="id" title="var">x</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#factmod_mx"><span class="id" title="definition">factmod_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.Umod"><span class="id" title="variable">Umod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_factmodJ"><span class="id" title="lemma">val_factmodJ</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#cokermx"><span class="id" title="definition">cokermx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) <span class="id" title="var">x</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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><br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#factmod_mx"><span class="id" title="definition">factmod_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.Umod"><span class="id" title="variable">Umod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a><br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="factmod_mx_repr"><span class="id" title="lemma">factmod_mx_repr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_repr"><span class="id" title="definition">mx_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#factmod_mx"><span class="id" title="definition">factmod_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule.Umod"><span class="id" title="variable">Umod</span></a>).<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">factmod_repr</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MxRepresentation"><span class="id" title="constructor">MxRepresentation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#factmod_mx_repr"><span class="id" title="lemma">factmod_mx_repr</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - For character theory. -</div> -<div class="code"> -<span class="id" title="keyword">Lemma</span> <a name="mxtrace_sub_fact_mod"><span class="id" title="lemma">mxtrace_sub_fact_mod</span></a> <span class="id" title="var">x</span> :<br/> - <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#submod_repr"><span class="id" title="definition">submod_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#c7f78cf1f6a5e4f664654f7d671ca752"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#factmod_repr"><span class="id" title="definition">factmod_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><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.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Submodule"><span class="id" title="section">Submodule</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - Properties of enveloping algebra as a subspace of 'rV(n ^ 2). -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="envelop_mx_id"><span class="id" title="lemma">envelop_mx_id</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="envelop_mx1"><span class="id" title="lemma">envelop_mx1</span></a> : (1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="envelop_mxP"><span class="id" title="lemma">envelop_mxP</span></a> <span class="id" title="var">A</span> :<br/> - <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="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">a</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="mathcomp.character.mxrepresentation.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.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#3b05480e39db306e67fadbc79d394529"><span class="id" title="notation">*:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="envelop_mxM"><span class="id" title="lemma">envelop_mxM</span></a> <span class="id" title="var">A</span> <span class="id" title="var">B</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_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.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_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.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule_envelop"><span class="id" title="lemma">mxmodule_envelop</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) <span class="id" title="var">A</span> :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -</div> - -<div class="doc"> - Module homomorphisms; any square matrix f defines a module homomorphism - over some domain, namely, dom_hom_mx f. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <span class="id" title="var">f</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a> :=<br/> - <a class="idref" href="mathcomp.algebra.mxalgebra.html#kermx"><span class="id" title="definition">kermx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#lin1_mx"><span class="id" title="definition">lin1_mx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">o</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#mulmx"><span class="id" title="definition">mulmx</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#cent_mx_fun"><span class="id" title="definition">cent_mx_fun</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">o</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#lin_mul_row"><span class="id" title="definition">lin_mul_row</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="hom_mxP"><span class="id" title="lemma">hom_mxP</span></a> <span class="id" title="var">m</span> <span class="id" title="var">f</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><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#reflect"><span class="id" title="abbreviation">reflect</span></a> (<span class="id" title="keyword">∀</span> <span class="id" title="var">x</span>, <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>)<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="hom_envelop_mxC"><span class="id" title="lemma">hom_envelop_mxC</span></a> <span class="id" title="var">m</span> <span class="id" title="var">f</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) <span class="id" title="var">A</span> :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</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.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="dom_hom_invmx"><span class="id" title="lemma">dom_hom_invmx</span></a> <span class="id" title="var">f</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.algebra.matrix.html#unitmx"><span class="id" title="definition">unitmx</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.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#invmx"><span class="id" title="definition">invmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>) <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="dom_hom_mx_module"><span class="id" title="lemma">dom_hom_mx_module</span></a> <span class="id" title="var">f</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="hom_mxmodule"><span class="id" title="lemma">hom_mxmodule</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) <span class="id" title="var">f</span> :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="kermx_hom_module"><span class="id" title="lemma">kermx_hom_module</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) <span class="id" title="var">f</span> :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#kermx"><span class="id" title="definition">kermx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="scalar_mx_hom"><span class="id" title="lemma">scalar_mx_hom</span></a> <span class="id" title="var">a</span> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="proj_mx_hom"><span class="id" title="lemma">proj_mx_hom</span></a> (<span class="id" title="var">U</span> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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> 0)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#proj_mx"><span class="id" title="definition">proj_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>))%<span class="id" title="var">MS</span>.<br/> - -<br/> -</div> - -<div class="doc"> - The subspace fixed by a subgroup H of G; it is a module if H <| G. - The definition below is extensionally equivalent to the straightforward - \bigcap(x in H) kermx (rG x - 1%:M) - but it avoids the dependency on the choice function; this allows it to - commute with ring morphisms. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="rfix_mx"><span class="id" title="definition">rfix_mx</span></a> (<span class="id" title="var">H</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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/> - <span class="id" title="keyword">let</span> <span class="id" title="var">commrH</span> := <a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">matrix_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><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.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a><a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.ssreflect.fintype.html#enum_val"><span class="id" title="definition">enum_val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.algebra.ssralg.html#51dc792c356ca1a71a3094b50d6bb2fb"><span class="id" title="notation">-</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>) <span class="id" title="tactic">in</span><br/> - <a class="idref" href="mathcomp.algebra.mxalgebra.html#kermx"><span class="id" title="definition">kermx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#lin1_mx"><span class="id" title="definition">lin1_mx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">o</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#mulmx"><span class="id" title="definition">mulmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#commrH"><span class="id" title="variable">commrH</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#8b4742e3f67816503ce4ab2f3b81c27e"><span class="id" title="notation">o</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#lin_mul_row"><span class="id" title="definition">lin_mul_row</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_mxP"><span class="id" title="lemma">rfix_mxP</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) (<span class="id" title="var">H</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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/> - <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> (<span class="id" title="keyword">∀</span> <span class="id" title="var">x</span>, <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_mx_id"><span class="id" title="lemma">rfix_mx_id</span></a> (<span class="id" title="var">H</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_mxS"><span class="id" title="lemma">rfix_mxS</span></a> (<span class="id" title="var">H</span> <span class="id" title="var">K</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#K"><span class="id" title="variable">K</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.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#K"><span class="id" title="variable">K</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_mx_conjsg"><span class="id" title="lemma">rfix_mx_conjsg</span></a> (<span class="id" title="var">H</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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">x</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#049e6d4210dc2b8af76facf30c9d4dd6"><span class="id" title="notation">:^</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>) <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="norm_sub_rstabs_rfix_mx"><span class="id" title="lemma">norm_sub_rstabs_rfix_mx</span></a> (<span class="id" title="var">H</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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#ee98cf35a816a182ecdf169a5f07c7f5"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#ee98cf35a816a182ecdf169a5f07c7f5"><span class="id" title="notation">N_G</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#ee98cf35a816a182ecdf169a5f07c7f5"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#ee98cf35a816a182ecdf169a5f07c7f5"><span class="id" title="notation">)</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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="normal_rfix_mx_module"><span class="id" title="lemma">normal_rfix_mx_module</span></a> <span class="id" title="var">H</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#7e8095b432e7aa5c3c22bb87584658b7"><span class="id" title="notation"><|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_mx_module"><span class="id" title="lemma">rfix_mx_module</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_mx_rstabC"><span class="id" title="lemma">rfix_mx_rstabC</span></a> (<span class="id" title="var">H</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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="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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -</div> - -<div class="doc"> - The cyclic module generated by a single vector. -</div> -<div class="code"> -<span class="id" title="keyword">Definition</span> <a name="cyclic_mx"><span class="id" title="definition">cyclic_mx</span></a> <span class="id" title="var">u</span> := <a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation"><<</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#lin_mul_row"><span class="id" title="definition">lin_mul_row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation">>></span></a>%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="cyclic_mxP"><span class="id" title="lemma">cyclic_mxP</span></a> <span class="id" title="var">u</span> <span class="id" title="var">v</span> :<br/> - <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="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">A</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.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</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">&</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#v"><span class="id" title="variable">v</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.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a>)%<span class="id" title="var">MS</span> (<a class="idref" href="mathcomp.character.mxrepresentation.html#v"><span class="id" title="variable">v</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#cyclic_mx"><span class="id" title="definition">cyclic_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="cyclic_mx_id"><span class="id" title="lemma">cyclic_mx_id</span></a> <span class="id" title="var">u</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#cyclic_mx"><span class="id" title="definition">cyclic_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="cyclic_mx_eq0"><span class="id" title="lemma">cyclic_mx_eq0</span></a> <span class="id" title="var">u</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><a class="idref" href="mathcomp.character.mxrepresentation.html#cyclic_mx"><span class="id" title="definition">cyclic_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 0<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.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> 0<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/> -<span class="id" title="keyword">Lemma</span> <a name="cyclic_mx_module"><span class="id" title="lemma">cyclic_mx_module</span></a> <span class="id" title="var">u</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#cyclic_mx"><span class="id" title="definition">cyclic_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="cyclic_mx_sub"><span class="id" title="lemma">cyclic_mx_sub</span></a> <span class="id" title="var">m</span> <span class="id" title="var">u</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#cyclic_mx"><span class="id" title="definition">cyclic_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="hom_cyclic_mx"><span class="id" title="lemma">hom_cyclic_mx</span></a> <span class="id" title="var">u</span> <span class="id" title="var">f</span> :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#cyclic_mx"><span class="id" title="definition">cyclic_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#cyclic_mx"><span class="id" title="definition">cyclic_mx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>))%<span class="id" title="var">MS</span>.<br/> - -<br/> -</div> - -<div class="doc"> - The annihilator of a single vector. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="annihilator_mx"><span class="id" title="definition">annihilator_mx</span></a> <span class="id" title="var">u</span> := (<a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#kermx"><span class="id" title="definition">kermx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#lin_mul_row"><span class="id" title="definition">lin_mul_row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a>))%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="annihilator_mxP"><span class="id" title="lemma">annihilator_mxP</span></a> <span class="id" title="var">u</span> <span class="id" title="var">A</span> :<br/> - <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.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_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="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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> 0)%<span class="id" title="var">MS</span> (<a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#annihilator_mx"><span class="id" title="definition">annihilator_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -</div> - -<div class="doc"> - The subspace of homomorphic images of a row vector. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="row_hom_mx"><span class="id" title="definition">row_hom_mx</span></a> <span class="id" title="var">u</span> :=<br/> - (<a class="idref" href="mathcomp.algebra.mxalgebra.html#bf4de16af4da3045156e8c028c958850"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#bf4de16af4da3045156e8c028c958850"><span class="id" title="notation">bigcap_j</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#kermx"><span class="id" title="definition">kermx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#vec_mx"><span class="id" title="definition">vec_mx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#annihilator_mx"><span class="id" title="definition">annihilator_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a>))))%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="row_hom_mxP"><span class="id" title="lemma">row_hom_mxP</span></a> <span class="id" title="var">u</span> <span class="id" title="var">v</span> :<br/> - <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="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">f</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.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</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">&</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</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.character.mxrepresentation.html#v"><span class="id" title="variable">v</span></a>)%<span class="id" title="var">MS</span> (<a class="idref" href="mathcomp.character.mxrepresentation.html#v"><span class="id" title="variable">v</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#row_hom_mx"><span class="id" title="definition">row_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -</div> - -<div class="doc"> - Sub-, isomorphic, simple, semisimple and completely reducible modules. - All these predicates are intuitionistic (since, e.g., testing simplicity - requires a splitting algorithm fo r the mas field). They are all - specialized to square matrices, to avoid spurrious height parameters. -<div class="paragraph"> </div> - - Module isomorphism is an intentional property in general, but it can be - decided when one of the two modules is known to be simple. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Variant</span> <a name="mx_iso"><span class="id" title="inductive">mx_iso</span></a> (<span class="id" title="var">U</span> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) : <span class="id" title="keyword">Prop</span> :=<br/> - <a name="MxIso"><span class="id" title="constructor">MxIso</span></a> <span class="id" title="var">f</span> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.character.mxrepresentation.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#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.algebra.matrix.html#unitmx"><span class="id" title="definition">unitmx</span></a> & (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> & (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="eqmx_iso"><span class="id" title="lemma">eqmx_iso</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_iso_refl"><span class="id" title="lemma">mx_iso_refl</span></a> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_iso_sym"><span class="id" title="lemma">mx_iso_sym</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_iso_trans"><span class="id" title="lemma">mx_iso_trans</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> <span class="id" title="var">W</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxrank_iso"><span class="id" title="lemma">mxrank_iso</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_iso_module"><span class="id" title="lemma">mx_iso_module</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - Simple modules (we reserve the term "irreducible" for representations). -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mxsimple"><span class="id" title="definition">mxsimple</span></a> (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</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">[/\</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> 0 <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/> - <span class="id" title="keyword">∀</span> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>, <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</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>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mxnonsimple"><span class="id" title="definition">mxnonsimple</span></a> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) :=<br/> - <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">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</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> <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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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> (<a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span><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.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> 0 <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.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#00fe0eaf5e6949f0a31725357afa4bba"><span class="id" title="notation"><</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#5a7d806905be2a0d04047156433535f1"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsimpleP"><span class="id" title="lemma">mxsimpleP</span></a> <span class="id" title="var">U</span> :<br/> - <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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> 0 <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#63a68285c81db8f9bc456233bb9ed181"><span class="id" title="notation">¬</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxnonsimple"><span class="id" title="definition">mxnonsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#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#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">↔</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsimple_module"><span class="id" title="lemma">mxsimple_module</span></a> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsimple_exists"><span class="id" title="lemma">mxsimple_exists</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#classically"><span class="id" title="definition">classically</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">V</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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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">&</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_iso_simple"><span class="id" title="lemma">mx_iso_simple</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsimple_cyclic"><span class="id" title="lemma">mxsimple_cyclic</span></a> <span class="id" title="var">u</span> <span class="id" title="var">U</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#cyclic_mx"><span class="id" title="definition">cyclic_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -</div> - -<div class="doc"> - The surjective part of Schur's lemma. -</div> -<div class="code"> -<span class="id" title="keyword">Lemma</span> <a name="mx_Schur_onto"><span class="id" title="lemma">mx_Schur_onto</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) <span class="id" title="var">V</span> <span class="id" title="var">f</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -</div> - -<div class="doc"> - The injective part of Schur's lemma. -</div> -<div class="code"> -<span class="id" title="keyword">Lemma</span> <a name="mx_Schur_inj"><span class="id" title="lemma">mx_Schur_inj</span></a> <span class="id" title="var">U</span> <span class="id" title="var">f</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#kermx"><span class="id" title="definition">kermx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</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> 0.<br/> - -<br/> -</div> - -<div class="doc"> - The injectve part of Schur's lemma, stated as isomorphism with the image. -</div> -<div class="code"> -<span class="id" title="keyword">Lemma</span> <a name="mx_Schur_inj_iso"><span class="id" title="lemma">mx_Schur_inj_iso</span></a> <span class="id" title="var">U</span> <span class="id" title="var">f</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>).<br/> - -<br/> -</div> - -<div class="doc"> - The isomorphism part of Schur's lemma. -</div> -<div class="code"> -<span class="id" title="keyword">Lemma</span> <a name="mx_Schur_iso"><span class="id" title="lemma">mx_Schur_iso</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> <span class="id" title="var">f</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - A boolean test for module isomorphism that is only valid for simple - modules; this is the only case that matters in practice. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="nz_row_mxsimple"><span class="id" title="lemma">nz_row_mxsimple</span></a> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.algebra.matrix.html#nz_row"><span class="id" title="definition">nz_row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> 0.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mxsimple_iso"><span class="id" title="definition">mxsimple_iso</span></a> (<span class="id" title="var">U</span> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) :=<br/> - <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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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> (<a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#row_hom_mx"><span class="id" title="definition">row_hom_mx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#nz_row"><span class="id" title="definition">nz_row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>))%<span class="id" title="var">MS</span> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> 0 <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.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#5a7d806905be2a0d04047156433535f1"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsimple_isoP"><span class="id" title="lemma">mxsimple_isoP</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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="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.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple_iso"><span class="id" title="definition">mxsimple_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsimple_iso_simple"><span class="id" title="lemma">mxsimple_iso_simple</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple_iso"><span class="id" title="definition">mxsimple_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - For us, "semisimple" means "sum of simple modules"; this is classically, - but not intuitionistically, equivalent to the "completely reducible" - alternate characterization. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Type</span> <span class="id" title="var">I</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#Finite.Exports.finType"><span class="id" title="abbreviation">finType</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variant</span> <a name="mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) :=<br/> - <a name="MxSemisimple"><span class="id" title="constructor">MxSemisimple</span></a> <span class="id" title="var">I</span> <span class="id" title="var">U</span> (<span class="id" title="var">W</span> := (<a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#I"><span class="id" title="variable">I</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>)%<span class="id" title="var">MS</span>) <span class="id" title="keyword">of</span><br/> - <span class="id" title="keyword">∀</span> <span class="id" title="var">i</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) & (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> & <a class="idref" href="mathcomp.algebra.mxalgebra.html#mxdirect"><span class="id" title="abbreviation">mxdirect</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - This is a slight generalization of Aschbacher 12.5 for finite sets. -</div> -<div class="code"> -<span class="id" title="keyword">Lemma</span> <a name="sum_mxsimple_direct_compl"><span class="id" title="lemma">sum_mxsimple_direct_compl</span></a> <span class="id" title="var">m</span> <span class="id" title="var">I</span> <span class="id" title="var">W</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">V</span> := (<a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#I"><span class="id" title="variable">I</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>)%<span class="id" title="var">MS</span> <span class="id" title="tactic">in</span><br/> - <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">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#I"><span class="id" title="variable">I</span></a>, <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">{</span></a><span class="id" title="var">J</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">:</span></a> <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.character.mxrepresentation.html#I"><span class="id" title="variable">I</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d8708f36d374a98f4d683c7593d1ea6a"><span class="id" title="notation">}</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">|</span></a> <span class="id" title="keyword">let</span> <span class="id" title="var">S</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#J"><span class="id" title="variable">J</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.algebra.mxalgebra.html#mxdirect"><span class="id" title="abbreviation">mxdirect</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">}</span></a>%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="sum_mxsimple_direct_sub"><span class="id" title="lemma">sum_mxsimple_direct_sub</span></a> <span class="id" title="var">I</span> <span class="id" title="var">W</span> (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) :<br/> - <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">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#I"><span class="id" title="variable">I</span></a>, <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">sum_i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">{</span></a><span class="id" title="var">J</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">:</span></a> <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.character.mxrepresentation.html#I"><span class="id" title="variable">I</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d8708f36d374a98f4d683c7593d1ea6a"><span class="id" title="notation">}</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">|</span></a> <span class="id" title="keyword">let</span> <span class="id" title="var">S</span> := <a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#J"><span class="id" title="variable">J</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.algebra.mxalgebra.html#mxdirect"><span class="id" title="abbreviation">mxdirect</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">}</span></a>%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsemisimple0"><span class="id" title="lemma">mxsemisimple0</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> 0.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="intro_mxsemisimple"><span class="id" title="lemma">intro_mxsemisimple</span></a> (<span class="id" title="var">I</span> : <span class="id" title="keyword">Type</span>) <span class="id" title="var">r</span> (<span class="id" title="var">P</span> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#pred"><span class="id" title="definition">pred</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#I"><span class="id" title="variable">I</span></a>) <span class="id" title="var">W</span> <span class="id" title="var">V</span> :<br/> - (<a class="idref" href="mathcomp.algebra.mxalgebra.html#994c9f44fcb3e626f86425e0ec6ef6f1"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#994c9f44fcb3e626f86425e0ec6ef6f1"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#994c9f44fcb3e626f86425e0ec6ef6f1"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#994c9f44fcb3e626f86425e0ec6ef6f1"><span class="id" title="notation"><-</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#r"><span class="id" title="variable">r</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#994c9f44fcb3e626f86425e0ec6ef6f1"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#994c9f44fcb3e626f86425e0ec6ef6f1"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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/> - <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">i</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsimple_semisimple"><span class="id" title="lemma">mxsimple_semisimple</span></a> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="addsmx_semisimple"><span class="id" title="lemma">addsmx_semisimple</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="sumsmx_semisimple"><span class="id" title="lemma">sumsmx_semisimple</span></a> (<span class="id" title="var">I</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#Finite.Exports.finType"><span class="id" title="abbreviation">finType</span></a>) (<span class="id" title="var">P</span> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#pred"><span class="id" title="definition">pred</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#I"><span class="id" title="variable">I</span></a>) <span class="id" title="var">V</span> :<br/> - <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">i</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="eqmx_semisimple"><span class="id" title="lemma">eqmx_semisimple</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="hom_mxsemisimple"><span class="id" title="lemma">hom_mxsemisimple</span></a> (<span class="id" title="var">V</span> <span class="id" title="var">f</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsemisimple_module"><span class="id" title="lemma">mxsemisimple_module</span></a> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - Completely reducible modules, and Maeschke's Theorem. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Variant</span> <a name="mxsplits"><span class="id" title="inductive">mxsplits</span></a> (<span class="id" title="var">V</span> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) :=<br/> - <a name="MxSplits"><span class="id" title="constructor">MxSplits</span></a> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> & (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> & <a class="idref" href="mathcomp.algebra.mxalgebra.html#mxdirect"><span class="id" title="abbreviation">mxdirect</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mx_completely_reducible"><span class="id" title="definition">mx_completely_reducible</span></a> <span class="id" title="var">V</span> :=<br/> - <span class="id" title="keyword">∀</span> <span class="id" title="var">U</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mxsplits"><span class="id" title="inductive">mxsplits</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_reducibleS"><span class="id" title="lemma">mx_reducibleS</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_completely_reducible"><span class="id" title="definition">mx_completely_reducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mx_completely_reducible"><span class="id" title="definition">mx_completely_reducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_Maschke"><span class="id" title="lemma">mx_Maschke</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">char</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">]</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#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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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.character.mxrepresentation.html#mx_completely_reducible"><span class="id" title="definition">mx_completely_reducible</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsemisimple_reducible"><span class="id" title="lemma">mxsemisimple_reducible</span></a> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mx_completely_reducible"><span class="id" title="definition">mx_completely_reducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_reducible_semisimple"><span class="id" title="lemma">mx_reducible_semisimple</span></a> <span class="id" title="var">V</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mx_completely_reducible"><span class="id" title="definition">mx_completely_reducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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#classically"><span class="id" title="definition">classically</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsemisimpleS"><span class="id" title="lemma">mxsemisimpleS</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="hom_mxsemisimple_iso"><span class="id" title="lemma">hom_mxsemisimple_iso</span></a> <span class="id" title="var">I</span> <span class="id" title="var">P</span> <span class="id" title="var">U</span> <span class="id" title="var">W</span> <span class="id" title="var">f</span> :<br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">V</span> := (<a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#I"><span class="id" title="variable">I</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>)%<span class="id" title="var">MS</span> <span class="id" title="tactic">in</span><br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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="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">i</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#c0bbd202248f4def7aaf0c316cf2c29e"><span class="id" title="notation">{</span></a><span class="id" title="var">i</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#c0bbd202248f4def7aaf0c316cf2c29e"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#c0bbd202248f4def7aaf0c316cf2c29e"><span class="id" title="notation">&</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.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.Specif.html#c0bbd202248f4def7aaf0c316cf2c29e"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - The component associated to a given irreducible module. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.OneRepresentation.Components"><span class="id" title="section">Components</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Fact</span> <a name="component_mx_key"><span class="id" title="lemma">component_mx_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="component_mx_expr"><span class="id" title="definition">component_mx_expr</span></a> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>) :=<br/> - (<a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">sum_i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#cyclic_mx"><span class="id" title="definition">cyclic_mx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#row_hom_mx"><span class="id" title="definition">row_hom_mx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#nz_row"><span class="id" title="definition">nz_row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>))))%<span class="id" title="var">MS</span>.<br/> -<span class="id" title="keyword">Definition</span> <a name="component_mx"><span class="id" title="definition">component_mx</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.character.mxrepresentation.html#component_mx_key"><span class="id" title="lemma">component_mx_key</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx_expr"><span class="id" title="definition">component_mx_expr</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">component_mx_unfoldable</span> := <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#84464b412faf5a30a7c5c6423d9b3956"><span class="id" title="notation">[</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#84464b412faf5a30a7c5c6423d9b3956"><span class="id" title="notation">unlockable</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#84464b412faf5a30a7c5c6423d9b3956"><span class="id" title="notation">fun</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#84464b412faf5a30a7c5c6423d9b3956"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="FieldRepr.OneRepresentation.Components.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>.<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.OneRepresentation.Components.simU"><span class="id" title="variable">simU</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.OneRepresentation.Components.u"><span class="id" title="variable">u</span></a> := <a class="idref" href="mathcomp.algebra.matrix.html#nz_row"><span class="id" title="definition">nz_row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.U"><span class="id" title="variable">U</span></a>.<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.OneRepresentation.Components.iso_u"><span class="id" title="variable">iso_u</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#row_hom_mx"><span class="id" title="definition">row_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.u"><span class="id" title="variable">u</span></a>.<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.OneRepresentation.Components.nz_u"><span class="id" title="variable">nz_u</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> 0 := <a class="idref" href="mathcomp.character.mxrepresentation.html#nz_row_mxsimple"><span class="id" title="lemma">nz_row_mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.simU"><span class="id" title="variable">simU</span></a>.<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.OneRepresentation.Components.Uu"><span class="id" title="variable">Uu</span></a> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span> := <a class="idref" href="mathcomp.algebra.mxalgebra.html#nz_row_sub"><span class="id" title="lemma">nz_row_sub</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.U"><span class="id" title="variable">U</span></a>.<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.OneRepresentation.Components.defU"><span class="id" title="variable">defU</span></a> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#cyclic_mx"><span class="id" title="definition">cyclic_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.u"><span class="id" title="variable">u</span></a>)%<span class="id" title="var">MS</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple_cyclic"><span class="id" title="lemma">mxsimple_cyclic</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.simU"><span class="id" title="variable">simU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.nz_u"><span class="id" title="variable">nz_u</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.Uu"><span class="id" title="variable">Uu</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="component_mx_module"><span class="id" title="lemma">component_mx_module</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="genmx_component"><span class="id" title="lemma">genmx_component</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation"><<</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation">>></span></a>%<span class="id" title="var">MS</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> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="component_mx_def"><span class="id" title="lemma">component_mx_def</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">{</span></a><span class="id" title="var">I</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#Finite.Exports.finType"><span class="id" title="abbreviation">finType</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">&</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">{</span></a><span class="id" title="var">W</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#I"><span class="id" title="variable">I</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.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">|</span></a><br/> - <span class="id" title="keyword">∀</span> <span class="id" title="var">i</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.U"><span class="id" title="variable">U</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">&</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</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.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">sum_i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">}</span></a>%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="component_mx_semisimple"><span class="id" title="lemma">component_mx_semisimple</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_iso_component"><span class="id" title="lemma">mx_iso_component</span></a> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="component_mx_id"><span class="id" title="lemma">component_mx_id</span></a> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="hom_component_mx_iso"><span class="id" title="lemma">hom_component_mx_iso</span></a> <span class="id" title="var">f</span> <span class="id" title="var">V</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="component_mx_iso"><span class="id" title="lemma">component_mx_iso</span></a> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="hom_component_mx"><span class="id" title="lemma">hom_component_mx</span></a> <span class="id" title="var">f</span> :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="abbreviation">compU</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Components"><span class="id" title="section">Components</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="component_mx_isoP"><span class="id" title="lemma">component_mx_isoP</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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/> - <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.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="component_mx_disjoint"><span class="id" title="lemma">component_mx_disjoint</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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> 0)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.OneRepresentation.Socle"><span class="id" title="section">Socle</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Record</span> <a name="socleType"><span class="id" title="record">socleType</span></a> := <a name="EnumSocle"><span class="id" title="constructor">EnumSocle</span></a> {<br/> - <a name="socle_base_enum"><span class="id" title="projection">socle_base_enum</span></a> : <a class="idref" href="mathcomp.ssreflect.seq.html#seq"><span class="id" title="abbreviation">seq</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>;<br/> - <span class="id" title="var">_</span> : <span class="id" title="keyword">∀</span> <span class="id" title="var">M</span>, <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#socle_base_enum"><span class="id" title="method">socle_base_enum</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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a>;<br/> - <span class="id" title="var">_</span> : <span class="id" title="keyword">∀</span> <span class="id" title="var">M</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.ssreflect.seq.html#has"><span class="id" title="definition">has</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple_iso"><span class="id" title="definition">mxsimple_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_base_enum"><span class="id" title="method">socle_base_enum</span></a><br/> -}.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="socle_exists"><span class="id" title="lemma">socle_exists</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#classically"><span class="id" title="definition">classically</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socleType"><span class="id" title="record">socleType</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.OneRepresentation.Socle.SocleDef"><span class="id" title="section">SocleDef</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="FieldRepr.OneRepresentation.Socle.SocleDef.sG0"><span class="id" title="variable">sG0</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#socleType"><span class="id" title="record">socleType</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="socle_enum"><span class="id" title="definition">socle_enum</span></a> := <a class="idref" href="mathcomp.ssreflect.seq.html#map"><span class="id" title="definition">map</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_base_enum"><span class="id" title="projection">socle_base_enum</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.SocleDef.sG0"><span class="id" title="variable">sG0</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="component_socle"><span class="id" title="lemma">component_socle</span></a> <span class="id" title="var">M</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#socle_enum"><span class="id" title="definition">socle_enum</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Inductive</span> <a name="socle_sort"><span class="id" title="inductive">socle_sort</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#predArgType"><span class="id" title="definition">predArgType</span></a> := <a name="PackSocle"><span class="id" title="constructor">PackSocle</span></a> <span class="id" title="var">W</span> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#socle_enum"><span class="id" title="definition">socle_enum</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="socle_base"><span class="id" title="definition">socle_base</span></a> <span class="id" title="var">W</span> := <span class="id" title="keyword">let</span>: <a class="idref" href="mathcomp.character.mxrepresentation.html#PackSocle"><span class="id" title="constructor">PackSocle</span></a> <span class="id" title="var">W</span> <span class="id" title="var">_</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#e0"><span class="id" title="abbreviation">e0</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">`</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.ssreflect.seq.html#index"><span class="id" title="definition">index</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_enum"><span class="id" title="definition">socle_enum</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Coercion</span> <span class="id" title="var">socle_val</span> <span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_base"><span class="id" title="definition">socle_base</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="socle_mult"><span class="id" title="definition">socle_mult</span></a> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</span></a>) := (<a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.ssreflect.div.html#2242f6721707980eca939ec29164eab3"><span class="id" title="notation">%/</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#socle_base"><span class="id" title="definition">socle_base</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><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="socle_simple"><span class="id" title="lemma">socle_simple</span></a> <span class="id" title="var">W</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_base"><span class="id" title="definition">socle_base</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="socle_module"><span class="id" title="definition">socle_module</span></a> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</span></a>) := <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple_module"><span class="id" title="lemma">mxsimple_module</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_simple"><span class="id" title="lemma">socle_simple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="socle_repr"><span class="id" title="definition">socle_repr</span></a> <span class="id" title="var">W</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#submod_repr"><span class="id" title="definition">submod_repr</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_module"><span class="id" title="definition">socle_module</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="nz_socle"><span class="id" title="lemma">nz_socle</span></a> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#228e85e3c31a939cba019f255574c875"><span class="id" title="notation">!=</span></a> 0 <a class="idref" href="mathcomp.ssreflect.eqtype.html#228e85e3c31a939cba019f255574c875"><span class="id" title="notation">:></span></a> <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="socle_mem"><span class="id" title="lemma">socle_mem</span></a> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</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="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#aed478b27f23b4f753c27c8ac393febc"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</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">\</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.character.mxrepresentation.html#socle_enum"><span class="id" title="definition">socle_enum</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="PackSocleK"><span class="id" title="lemma">PackSocleK</span></a> <span class="id" title="var">W</span> <span class="id" title="var">e0W</span> : @<a class="idref" href="mathcomp.character.mxrepresentation.html#PackSocle"><span class="id" title="constructor">PackSocle</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e0W"><span class="id" title="variable">e0W</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#b8b2ebc8e1a8b9aa935c0702efb5dccf"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#b8b2ebc8e1a8b9aa935c0702efb5dccf"><span class="id" title="notation">:></span></a> <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">socle_subType</span> := <a class="idref" href="mathcomp.ssreflect.eqtype.html#SubType"><span class="id" title="constructor">SubType</span></a> <span class="id" title="var">_</span> <span class="id" title="var">_</span> <span class="id" title="var">_</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_sort_rect"><span class="id" title="definition">socle_sort_rect</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#PackSocleK"><span class="id" title="lemma">PackSocleK</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="socle_eqMixin"><span class="id" title="definition">socle_eqMixin</span></a> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b361a0fe0b43cea5c506ee5eccc55542"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#b361a0fe0b43cea5c506ee5eccc55542"><span class="id" title="notation">eqMixin</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b361a0fe0b43cea5c506ee5eccc55542"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b361a0fe0b43cea5c506ee5eccc55542"><span class="id" title="notation">by</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b361a0fe0b43cea5c506ee5eccc55542"><span class="id" title="notation"><:]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">socle_eqType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.ssreflect.eqtype.html#Equality.Exports.EqType"><span class="id" title="abbreviation">EqType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_eqMixin"><span class="id" title="definition">socle_eqMixin</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="socle_choiceMixin"><span class="id" title="definition">socle_choiceMixin</span></a> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.ssreflect.choice.html#035054ba987e1c05f2985518b41ec31f"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#035054ba987e1c05f2985518b41ec31f"><span class="id" title="notation">choiceMixin</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#035054ba987e1c05f2985518b41ec31f"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#035054ba987e1c05f2985518b41ec31f"><span class="id" title="notation">by</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#035054ba987e1c05f2985518b41ec31f"><span class="id" title="notation"><:]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">socle_choiceType</span> := <a class="idref" href="mathcomp.ssreflect.choice.html#Choice.Exports.ChoiceType"><span class="id" title="abbreviation">ChoiceType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_choiceMixin"><span class="id" title="definition">socle_choiceMixin</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="socleP"><span class="id" title="lemma">socleP</span></a> (<span class="id" title="var">W</span> <span class="id" title="var">W'</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</span></a>) : <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.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#W'"><span class="id" title="variable">W'</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#2face00c9cbc11f22bacfabff84e3b9a"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W'"><span class="id" title="variable">W'</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Fact</span> <a name="socle_finType_subproof"><span class="id" title="lemma">socle_finType_subproof</span></a> :<br/> - <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> (<span class="id" title="keyword">fun</span> <span class="id" title="var">W</span> ⇒ <a class="idref" href="mathcomp.ssreflect.fintype.html#SeqSub"><span class="id" title="constructor">SeqSub</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_mem"><span class="id" title="lemma">socle_mem</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)) (<span class="id" title="keyword">fun</span> <span class="id" title="var">s</span> ⇒ <a class="idref" href="mathcomp.character.mxrepresentation.html#PackSocle"><span class="id" title="constructor">PackSocle</span></a> (<a class="idref" href="mathcomp.ssreflect.eqtype.html#valP"><span class="id" title="lemma">valP</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#s"><span class="id" title="variable">s</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="socle_countMixin"><span class="id" title="definition">socle_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.character.mxrepresentation.html#socle_finType_subproof"><span class="id" title="lemma">socle_finType_subproof</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">socle_countType</span> := <a class="idref" href="mathcomp.ssreflect.choice.html#Countable.Exports.CountType"><span class="id" title="abbreviation">CountType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_countMixin"><span class="id" title="definition">socle_countMixin</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">socle_subCountType</span> := <a class="idref" href="mathcomp.ssreflect.choice.html#9bbd910cbebcec91f8279b0711b4702d"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#9bbd910cbebcec91f8279b0711b4702d"><span class="id" title="notation">subCountType</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#9bbd910cbebcec91f8279b0711b4702d"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#9bbd910cbebcec91f8279b0711b4702d"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="socle_finMixin"><span class="id" title="definition">socle_finMixin</span></a> := <a class="idref" href="mathcomp.ssreflect.fintype.html#CanFinMixin"><span class="id" title="definition">CanFinMixin</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_finType_subproof"><span class="id" title="lemma">socle_finType_subproof</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">socle_finType</span> := <a class="idref" href="mathcomp.ssreflect.fintype.html#Finite.Exports.FinType"><span class="id" title="abbreviation">FinType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_finMixin"><span class="id" title="definition">socle_finMixin</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">socle_subFinType</span> := <a class="idref" href="mathcomp.ssreflect.fintype.html#ea70e506e168d39ce0ec3d3ecd2c349f"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#ea70e506e168d39ce0ec3d3ecd2c349f"><span class="id" title="notation">subFinType</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#ea70e506e168d39ce0ec3d3ecd2c349f"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="abbreviation">sG</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#ea70e506e168d39ce0ec3d3ecd2c349f"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.SocleDef"><span class="id" title="section">SocleDef</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Coercion</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_sort"><span class="id" title="inductive">socle_sort</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_sort"><span class="id" title="inductive">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_sort"><span class="id" title="inductive">socleType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_sort"><span class="id" title="inductive">>-></span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_sort"><span class="id" title="inductive">predArgType</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="FieldRepr.OneRepresentation.Socle.sG"><span class="id" title="variable">sG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#socleType"><span class="id" title="record">socleType</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.OneRepresentation.Socle.SubSocle"><span class="id" title="section">SubSocle</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="FieldRepr.OneRepresentation.Socle.SubSocle.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#pred"><span class="id" title="definition">pred</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.sG"><span class="id" title="variable">sG</span></a>.<br/> -<span class="id" title="keyword">Notation</span> <a name="S"><span class="id" title="abbreviation">S</span></a> := (<a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">(</span></a><span class="id" title="var">W</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.sG"><span class="id" title="variable">sG</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.SubSocle.P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_val"><span class="id" title="definition">socle_val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="subSocle_module"><span class="id" title="lemma">subSocle_module</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#S"><span class="id" title="abbreviation">S</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="subSocle_semisimple"><span class="id" title="lemma">subSocle_semisimple</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#S"><span class="id" title="abbreviation">S</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="subSocle_iso"><span class="id" title="lemma">subSocle_iso</span></a> <span class="id" title="var">M</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#S"><span class="id" title="abbreviation">S</span></a>)%<span class="id" title="var">MS</span> <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.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">{</span></a><span class="id" title="var">W</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.sG"><span class="id" title="variable">sG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.SubSocle.P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">&</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_base"><span class="id" title="definition">socle_base</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.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.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="capmx_subSocle"><span class="id" title="lemma">capmx_subSocle</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">M</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#S"><span class="id" title="abbreviation">S</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">(</span></a><span class="id" title="var">W</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.sG"><span class="id" title="variable">sG</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.SubSocle.P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">)</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.SubSocle"><span class="id" title="section">SubSocle</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="subSocle_direct"><span class="id" title="lemma">subSocle_direct</span></a> <span class="id" title="var">P</span> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#mxdirect"><span class="id" title="abbreviation">mxdirect</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">(</span></a><span class="id" title="var">W</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.sG"><span class="id" title="variable">sG</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#83c6f00b5e6d1ad22616b0c10916b08d"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="Socle"><span class="id" title="definition">Socle</span></a> := (<a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">(</span></a><span class="id" title="var">W</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.sG"><span class="id" title="variable">sG</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="simple_Socle"><span class="id" title="lemma">simple_Socle</span></a> <span class="id" title="var">M</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Socle"><span class="id" title="definition">Socle</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="semisimple_Socle"><span class="id" title="lemma">semisimple_Socle</span></a> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Socle"><span class="id" title="definition">Socle</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="reducible_Socle"><span class="id" title="lemma">reducible_Socle</span></a> <span class="id" title="var">U</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mx_completely_reducible"><span class="id" title="definition">mx_completely_reducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Socle"><span class="id" title="definition">Socle</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="genmx_Socle"><span class="id" title="lemma">genmx_Socle</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation"><<</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#Socle"><span class="id" title="definition">Socle</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation">>></span></a>%<span class="id" title="var">MS</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> <a class="idref" href="mathcomp.character.mxrepresentation.html#Socle"><span class="id" title="definition">Socle</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="reducible_Socle1"><span class="id" title="lemma">reducible_Socle1</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_completely_reducible"><span class="id" title="definition">mx_completely_reducible</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">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.character.mxrepresentation.html#Socle"><span class="id" title="definition">Socle</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> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Socle_module"><span class="id" title="lemma">Socle_module</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Socle"><span class="id" title="definition">Socle</span></a>. <br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Socle_semisimple"><span class="id" title="lemma">Socle_semisimple</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Socle"><span class="id" title="definition">Socle</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Socle_direct"><span class="id" title="lemma">Socle_direct</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#mxdirect"><span class="id" title="abbreviation">mxdirect</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Socle"><span class="id" title="definition">Socle</span></a>. <br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Socle_iso"><span class="id" title="lemma">Socle_iso</span></a> <span class="id" title="var">M</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">{</span></a><span class="id" title="var">W</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle.sG"><span class="id" title="variable">sG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_base"><span class="id" title="definition">socle_base</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.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.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.Socle"><span class="id" title="section">Socle</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - Centralizer subgroup and central homomorphisms. -</div> -<div class="code"> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.OneRepresentation.CentHom"><span class="id" title="section">CentHom</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="FieldRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="row_full_dom_hom"><span class="id" title="lemma">row_full_dom_hom</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#row_full"><span class="id" title="definition">row_full</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</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.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="memmx_cent_envelop"><span class="id" title="lemma">memmx_cent_envelop</span></a> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#450fad4e10028541ec558897fa67947d"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#450fad4e10028541ec558897fa67947d"><span class="id" title="notation">C</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#450fad4e10028541ec558897fa67947d"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#450fad4e10028541ec558897fa67947d"><span class="id" title="notation">)</span></a>)%<span class="id" title="var">MS</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> <a class="idref" href="mathcomp.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="kermx_centg_module"><span class="id" title="lemma">kermx_centg_module</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#kermx"><span class="id" title="definition">kermx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="centgmx_hom"><span class="id" title="lemma">centgmx_hom</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.CentHom.f"><span class="id" title="variable">f</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.CentHom"><span class="id" title="section">CentHom</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - (Globally) irreducible, and absolutely irreducible representations. Note - that unlike "reducible", "absolutely irreducible" can easily be decided. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_irrP"><span class="id" title="lemma">mx_irrP</span></a> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</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="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">></span></a> 0 <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">U</span>, @<a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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.algebra.mxalgebra.html#row_full"><span class="id" title="definition">row_full</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#ba2b0e492d2b4675a0acf3ea92aabadd"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - Schur's lemma for endomorphisms. -</div> -<div class="code"> -<span class="id" title="keyword">Lemma</span> <a name="mx_Schur"><span class="id" title="lemma">mx_Schur</span></a> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</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">f</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</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.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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.character.mxrepresentation.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#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.algebra.matrix.html#unitmx"><span class="id" title="definition">unitmx</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">></span></a> 0<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">&&</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#row_full"><span class="id" title="definition">row_full</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_abs_irrP"><span class="id" title="lemma">mx_abs_irrP</span></a> :<br/> - <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.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">></span></a> 0 <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#a883bdd010993579f99d60b3775bcf54"><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.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">,</span></a> <span class="id" title="keyword">∀</span> <span class="id" title="var">A</span>, <a class="idref" href="mathcomp.character.mxrepresentation.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.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#a_"><span class="id" title="variable">a_</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#3b05480e39db306e67fadbc79d394529"><span class="id" title="notation">*:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>)<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_abs_irr_cent_scalar"><span class="id" title="lemma">mx_abs_irr_cent_scalar</span></a> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</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">A</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#is_scalar_mx"><span class="id" title="definition">is_scalar_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_abs_irrW"><span class="id" title="lemma">mx_abs_irrW</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</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.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="linear_mx_abs_irr"><span class="id" title="lemma">linear_mx_abs_irr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.n"><span class="id" title="variable">n</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> 1%<span class="id" title="var">N</span> <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.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="abelian_abs_irr"><span class="id" title="lemma">abelian_abs_irr</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#abelian"><span class="id" title="definition">abelian</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation.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.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</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.character.mxrepresentation.html#FieldRepr.OneRepresentation.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.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.OneRepresentation"><span class="id" title="section">OneRepresentation</span></a>.<br/> - -<br/> - -<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Proper"><span class="id" title="section">Proper</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Proper.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="FieldRepr.Proper.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.character.mxrepresentation.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="FieldRepr.Proper.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">Variable</span> <a name="FieldRepr.Proper.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Proper.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="abbreviation">n</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="envelop_mx_ring"><span class="id" title="lemma">envelop_mx_ring</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#mxring"><span class="id" title="definition">mxring</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#enveloping_algebra_mx"><span class="id" title="definition">enveloping_algebra_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Proper.rG"><span class="id" title="variable">rG</span></a>).<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Proper"><span class="id" title="section">Proper</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.JacobsonDensity"><span class="id" title="section">JacobsonDensity</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.JacobsonDensity.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="FieldRepr.JacobsonDensity.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.character.mxrepresentation.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="FieldRepr.JacobsonDensity.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">Variable</span> <a name="FieldRepr.JacobsonDensity.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JacobsonDensity.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JacobsonDensity.n"><span class="id" title="variable">n</span></a>.<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.JacobsonDensity.irrG"><span class="id" title="variable">irrG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JacobsonDensity.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_Jacobson_density"><span class="id" title="lemma">mx_Jacobson_density</span></a> : (<a class="idref" href="mathcomp.algebra.mxalgebra.html#450fad4e10028541ec558897fa67947d"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#450fad4e10028541ec558897fa67947d"><span class="id" title="notation">C</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#450fad4e10028541ec558897fa67947d"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#Hom_G"><span class="id" title="abbreviation">Hom_G</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#450fad4e10028541ec558897fa67947d"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="cent_mx_scalar_abs_irr"><span class="id" title="lemma">cent_mx_scalar_abs_irr</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Hom_G"><span class="id" title="abbreviation">Hom_G</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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JacobsonDensity.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JacobsonDensity"><span class="id" title="section">JacobsonDensity</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.ChangeGroup"><span class="id" title="section">ChangeGroup</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.ChangeGroup.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="FieldRepr.ChangeGroup.G"><span class="id" title="variable">G</span></a> <a name="FieldRepr.ChangeGroup.H"><span class="id" title="variable">H</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.character.mxrepresentation.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="FieldRepr.ChangeGroup.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">Variables</span> (<a name="FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.ChangeGroup.SubGroup"><span class="id" title="section">SubGroup</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.ChangeGroup.SubGroup.sHG"><span class="id" title="variable">sHG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.H"><span class="id" title="variable">H</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.character.mxrepresentation.html#FieldRepr.ChangeGroup.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_subg"><span class="id" title="lemma">rfix_subg</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</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.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a>. <br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.ChangeGroup.SubGroup.Stabilisers"><span class="id" title="section">Stabilisers</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.ChangeGroup.SubGroup.Stabilisers.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>) (<a name="FieldRepr.ChangeGroup.SubGroup.Stabilisers.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabs_subg"><span class="id" title="lemma">rstabs_subg</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.SubGroup.Stabilisers.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.character.mxrepresentation.html#FieldRepr.ChangeGroup.H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#b9596739b058766532fc6517a36fef9f"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.SubGroup.Stabilisers.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule_subg"><span class="id" title="lemma">mxmodule_subg</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.SubGroup.Stabilisers.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.SubGroup.Stabilisers.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.SubGroup.Stabilisers"><span class="id" title="section">Stabilisers</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsimple_subg"><span class="id" title="lemma">mxsimple_subg</span></a> <span class="id" title="var">M</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="subg_mx_irr"><span class="id" title="lemma">subg_mx_irr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</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.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="subg_mx_abs_irr"><span class="id" title="lemma">subg_mx_abs_irr</span></a> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</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.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.SubGroup"><span class="id" title="section">SubGroup</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.ChangeGroup.SameGroup"><span class="id" title="section">SameGroup</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.ChangeGroup.SameGroup.eqGH"><span class="id" title="variable">eqGH</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#b91223a7636398c530555b2312d1e79b"><span class="id" title="notation">:==:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.H"><span class="id" title="variable">H</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_eqg"><span class="id" title="lemma">rfix_eqg</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</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.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a>. <br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.ChangeGroup.SameGroup.Stabilisers"><span class="id" title="section">Stabilisers</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.ChangeGroup.SameGroup.Stabilisers.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>) (<a name="FieldRepr.ChangeGroup.SameGroup.Stabilisers.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabs_eqg"><span class="id" title="lemma">rstabs_eqg</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.SameGroup.Stabilisers.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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.SameGroup.Stabilisers.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule_eqg"><span class="id" title="lemma">mxmodule_eqg</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.SameGroup.Stabilisers.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.SameGroup.Stabilisers.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.SameGroup.Stabilisers"><span class="id" title="section">Stabilisers</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsimple_eqg"><span class="id" title="lemma">mxsimple_eqg</span></a> <span class="id" title="var">M</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">↔</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="eqg_mx_irr"><span class="id" title="lemma">eqg_mx_irr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</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="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="eqg_mx_abs_irr"><span class="id" title="lemma">eqg_mx_abs_irr</span></a> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rH"><span class="id" title="abbreviation">rH</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.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup.SameGroup"><span class="id" title="section">SameGroup</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.ChangeGroup"><span class="id" title="section">ChangeGroup</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Morphpre"><span class="id" title="section">Morphpre</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Morphpre.aT"><span class="id" title="variable">aT</span></a> <a name="FieldRepr.Morphpre.rT"><span class="id" title="variable">rT</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#FinGroup.Exports.finGroupType"><span class="id" title="abbreviation">finGroupType</span></a>) (<a name="FieldRepr.Morphpre.D"><span class="id" title="variable">D</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.character.mxrepresentation.html#aT"><span class="id" title="variable">aT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) (<a name="FieldRepr.Morphpre.f"><span class="id" title="variable">f</span></a> : <a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">morphism</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#D"><span class="id" title="variable">D</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">>-></span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rT"><span class="id" title="variable">rT</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">}</span></a>).<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Morphpre.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.character.mxrepresentation.html#FieldRepr.Morphpre.rT"><span class="id" title="variable">rT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) (<a name="FieldRepr.Morphpre.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>) (<a name="FieldRepr.Morphpre.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Morphpre.Stabilisers"><span class="id" title="section">Stabilisers</span></a>.<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Morphpre.Stabilisers.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>) (<a name="FieldRepr.Morphpre.Stabilisers.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabs_morphpre"><span class="id" title="lemma">rstabs_morphpre</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.Stabilisers.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.character.mxrepresentation.html#FieldRepr.Morphpre.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">@*^-1</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.Stabilisers.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule_morphpre"><span class="id" title="lemma">mxmodule_morphpre</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#FieldRepr.Morphpre.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#70b0a61e30f130888503421fd44e1802"><span class="id" title="notation">@*</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.D"><span class="id" title="variable">D</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.Stabilisers.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.Stabilisers.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.Stabilisers"><span class="id" title="section">Stabilisers</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_morphpre"><span class="id" title="lemma">rfix_morphpre</span></a> (<span class="id" title="var">H</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.character.mxrepresentation.html#FieldRepr.Morphpre.aT"><span class="id" title="variable">aT</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d8708f36d374a98f4d683c7593d1ea6a"><span class="id" title="notation">}</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#FieldRepr.Morphpre.D"><span class="id" title="variable">D</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.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#70b0a61e30f130888503421fd44e1802"><span class="id" title="notation">@*</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>))%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="morphpre_mx_irr"><span class="id" title="lemma">morphpre_mx_irr</span></a> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#FieldRepr.Morphpre.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#70b0a61e30f130888503421fd44e1802"><span class="id" title="notation">@*</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.D"><span class="id" title="variable">D</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><a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</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="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.rG"><span class="id" title="variable">rG</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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="morphpre_mx_abs_irr"><span class="id" title="lemma">morphpre_mx_abs_irr</span></a> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#FieldRepr.Morphpre.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#70b0a61e30f130888503421fd44e1802"><span class="id" title="notation">@*</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.D"><span class="id" title="variable">D</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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</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.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphpre"><span class="id" title="section">Morphpre</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Morphim"><span class="id" title="section">Morphim</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Morphim.aT"><span class="id" title="variable">aT</span></a> <a name="FieldRepr.Morphim.rT"><span class="id" title="variable">rT</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#FinGroup.Exports.finGroupType"><span class="id" title="abbreviation">finGroupType</span></a>) (<a name="FieldRepr.Morphim.G"><span class="id" title="variable">G</span></a> <a name="FieldRepr.Morphim.D"><span class="id" title="variable">D</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.character.mxrepresentation.html#aT"><span class="id" title="variable">aT</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#dd8cd2228f051940101d045bfdffe2d9"><span class="id" title="notation">}</span></a>) (<a name="FieldRepr.Morphim.f"><span class="id" title="variable">f</span></a> : <a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">morphism</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#D"><span class="id" title="variable">D</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">>-></span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rT"><span class="id" title="variable">rT</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#efe2275bee4a5227161b40da886719a5"><span class="id" title="notation">}</span></a>).<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Morphim.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>) (<a name="FieldRepr.Morphim.rGf"><span class="id" title="variable">rGf</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#70b0a61e30f130888503421fd44e1802"><span class="id" title="notation">@*</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.G"><span class="id" title="variable">G</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.Morphim.sGD"><span class="id" title="variable">sGD</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#FieldRepr.Morphim.D"><span class="id" title="variable">D</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.Morphim.sG_f'fG"><span class="id" title="variable">sG_f'fG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#FieldRepr.Morphim.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">@*^-1</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#70b0a61e30f130888503421fd44e1802"><span class="id" title="notation">@*</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">)</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Morphim.Stabilisers"><span class="id" title="section">Stabilisers</span></a>.<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Morphim.Stabilisers.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>) (<a name="FieldRepr.Morphim.Stabilisers.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabs_morphim"><span class="id" title="lemma">rstabs_morphim</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="abbreviation">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.Stabilisers.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.character.mxrepresentation.html#FieldRepr.Morphim.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#b9596739b058766532fc6517a36fef9f"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#320f70d30c9a649ec82642b364681418"><span class="id" title="notation">@*^-1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.rGf"><span class="id" title="variable">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.Stabilisers.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule_morphim"><span class="id" title="lemma">mxmodule_morphim</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="abbreviation">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.Stabilisers.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.rGf"><span class="id" title="variable">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.Stabilisers.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.Stabilisers"><span class="id" title="section">Stabilisers</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_morphim"><span class="id" title="lemma">rfix_morphim</span></a> (<span class="id" title="var">H</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.character.mxrepresentation.html#FieldRepr.Morphim.aT"><span class="id" title="variable">aT</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d8708f36d374a98f4d683c7593d1ea6a"><span class="id" title="notation">}</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#FieldRepr.Morphim.D"><span class="id" title="variable">D</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.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="abbreviation">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.rGf"><span class="id" title="variable">rGf</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.morphism.html#70b0a61e30f130888503421fd44e1802"><span class="id" title="notation">@*</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>))%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsimple_morphim"><span class="id" title="lemma">mxsimple_morphim</span></a> <span class="id" title="var">M</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="abbreviation">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">↔</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.rGf"><span class="id" title="variable">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="morphim_mx_irr"><span class="id" title="lemma">morphim_mx_irr</span></a> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="abbreviation">rG</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="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.rGf"><span class="id" title="variable">rGf</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="morphim_mx_abs_irr"><span class="id" title="lemma">morphim_mx_abs_irr</span></a> : <br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="abbreviation">rG</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.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim.rGf"><span class="id" title="variable">rGf</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Morphim"><span class="id" title="section">Morphim</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Submodule"><span class="id" title="section">Submodule</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Submodule.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="FieldRepr.Submodule.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.character.mxrepresentation.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="FieldRepr.Submodule.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">Variables</span> (<a name="FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.n"><span class="id" title="variable">n</span></a>) (<a name="FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>) (<a name="FieldRepr.Submodule.Umod"><span class="id" title="variable">Umod</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_submod"><span class="id" title="lemma">rfix_submod</span></a> (<span class="id" title="var">H</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.character.mxrepresentation.html#FieldRepr.Submodule.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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#FieldRepr.Submodule.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.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU"><span class="id" title="abbreviation">rU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>))%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_factmod"><span class="id" title="lemma">rfix_factmod</span></a> (<span class="id" title="var">H</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.character.mxrepresentation.html#FieldRepr.Submodule.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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#FieldRepr.Submodule.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.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>) <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU'"><span class="id" title="abbreviation">rU'</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_submod"><span class="id" title="lemma">rstab_submod</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU"><span class="id" title="abbreviation">rU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabs_submod"><span class="id" title="lemma">rstabs_submod</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU"><span class="id" title="abbreviation">rU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_submod_module"><span class="id" title="lemma">val_submod_module</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#val_submod"><span class="id" title="definition">val_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU"><span class="id" title="abbreviation">rU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="in_submod_module"><span class="id" title="lemma">in_submod_module</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU"><span class="id" title="abbreviation">rU</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_factmod"><span class="id" title="lemma">rstab_factmod</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU'"><span class="id" title="abbreviation">rU'</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabs_factmod"><span class="id" title="lemma">rstabs_factmod</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#cokermx"><span class="id" title="definition">cokermx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU'"><span class="id" title="abbreviation">rU'</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_factmod_module"><span class="id" title="lemma">val_factmod_module</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#cokermx"><span class="id" title="definition">cokermx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">)</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#val_factmod"><span class="id" title="definition">val_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</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> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU'"><span class="id" title="abbreviation">rU'</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="in_factmod_module"><span class="id" title="lemma">in_factmod_module</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU'"><span class="id" title="abbreviation">rU'</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_submod"><span class="id" title="lemma">rker_submod</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU"><span class="id" title="abbreviation">rU</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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_norm"><span class="id" title="lemma">rstab_norm</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#1ff9e060a8cc6098d64e42214fa57c96"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_normal"><span class="id" title="lemma">rstab_normal</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#7e8095b432e7aa5c3c22bb87584658b7"><span class="id" title="notation"><|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="submod_mx_faithful"><span class="id" title="lemma">submod_mx_faithful</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU"><span class="id" title="abbreviation">rU</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.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_factmod"><span class="id" title="lemma">rker_factmod</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU'"><span class="id" title="abbreviation">rU'</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="factmod_mx_faithful"><span class="id" title="lemma">factmod_mx_faithful</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU'"><span class="id" title="abbreviation">rU'</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.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="submod_mx_irr"><span class="id" title="lemma">submod_mx_irr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rU"><span class="id" title="abbreviation">rU</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="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule.U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Submodule"><span class="id" title="section">Submodule</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Conjugate"><span class="id" title="section">Conjugate</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Conjugate.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="FieldRepr.Conjugate.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.character.mxrepresentation.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="FieldRepr.Conjugate.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">Variables</span> (<a name="FieldRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.n"><span class="id" title="variable">n</span></a>) (<a name="FieldRepr.Conjugate.B"><span class="id" title="variable">B</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.Conjugate.uB"><span class="id" title="variable">uB</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.B"><span class="id" title="variable">B</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.algebra.matrix.html#unitmx"><span class="id" title="definition">unitmx</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_conj"><span class="id" title="lemma">rfix_conj</span></a> (<span class="id" title="var">H</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.character.mxrepresentation.html#FieldRepr.Conjugate.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/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGB"><span class="id" title="abbreviation">rGB</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.B"><span class="id" title="variable">B</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#invmx"><span class="id" title="definition">invmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.B"><span class="id" title="variable">B</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabs_conj"><span class="id" title="lemma">rstabs_conj</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGB"><span class="id" title="abbreviation">rGB</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.B"><span class="id" title="variable">B</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule_conj"><span class="id" title="lemma">mxmodule_conj</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGB"><span class="id" title="abbreviation">rGB</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.B"><span class="id" title="variable">B</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="conj_mx_irr"><span class="id" title="lemma">conj_mx_irr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGB"><span class="id" title="abbreviation">rGB</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="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Conjugate"><span class="id" title="section">Conjugate</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Quotient"><span class="id" title="section">Quotient</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Quotient.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="FieldRepr.Quotient.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.character.mxrepresentation.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="FieldRepr.Quotient.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">Variables</span> (<a name="FieldRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.n"><span class="id" title="variable">n</span></a>) (<a name="FieldRepr.Quotient.H"><span class="id" title="variable">H</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.character.mxrepresentation.html#FieldRepr.Quotient.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/> -<span class="id" title="keyword">Hypotheses</span> (<a name="FieldRepr.Quotient.krH"><span class="id" title="variable">krH</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.H"><span class="id" title="variable">H</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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.rG"><span class="id" title="variable">rG</span></a>) (<a name="FieldRepr.Quotient.nHG"><span class="id" title="variable">nHG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.G"><span class="id" title="variable">G</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.character.mxrepresentation.html#FieldRepr.Quotient.H"><span class="id" title="variable">H</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#1ff9e060a8cc6098d64e42214fa57c96"><span class="id" title="notation">)</span></a>).<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.Quotient.nHGs"><span class="id" title="variable">nHGs</span></a> := <a class="idref" href="mathcomp.ssreflect.fintype.html#subsetP"><span class="id" title="lemma">subsetP</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.nHG"><span class="id" title="variable">nHG</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="quo_mx_quotient"><span class="id" title="lemma">quo_mx_quotient</span></a> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#E_"><span class="id" title="abbreviation">E_</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGH"><span class="id" title="abbreviation">rGH</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_"><span class="id" title="abbreviation">E_</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.rG"><span class="id" title="variable">rG</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_quo"><span class="id" title="lemma">rfix_quo</span></a> (<span class="id" title="var">K</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.character.mxrepresentation.html#FieldRepr.Quotient.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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#K"><span class="id" title="variable">K</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.character.mxrepresentation.html#FieldRepr.Quotient.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.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGH"><span class="id" title="abbreviation">rGH</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#K"><span class="id" title="variable">K</span></a> <a class="idref" href="mathcomp.fingroup.quotient.html#3e65ad3edf5f7fb3ea6bc63a878112a8"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.H"><span class="id" title="variable">H</span></a>)%<span class="id" title="var">g</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#K"><span class="id" title="variable">K</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabs_quo"><span class="id" title="lemma">rstabs_quo</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGH"><span class="id" title="abbreviation">rGH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.fingroup.quotient.html#3e65ad3edf5f7fb3ea6bc63a878112a8"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.H"><span class="id" title="variable">H</span></a>)%<span class="id" title="var">g</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule_quo"><span class="id" title="lemma">mxmodule_quo</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGH"><span class="id" title="abbreviation">rGH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="quo_mx_irr"><span class="id" title="lemma">quo_mx_irr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGH"><span class="id" title="abbreviation">rGH</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="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Quotient"><span class="id" title="section">Quotient</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.SplittingField"><span class="id" title="section">SplittingField</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Type</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>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="group_splitting_field"><span class="id" title="definition">group_splitting_field</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.character.mxrepresentation.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/> - <span class="id" title="keyword">∀</span> <span class="id" title="var">n</span> (<span class="id" title="var">rG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>),<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</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.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="group_closure_field"><span class="id" title="definition">group_closure_field</span></a> <span class="id" title="var">gT</span> :=<br/> - <span class="id" title="keyword">∀</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.character.mxrepresentation.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.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="quotient_splitting_field"><span class="id" title="lemma">quotient_splitting_field</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.character.mxrepresentation.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">H</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.character.mxrepresentation.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>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#G"><span class="id" title="variable">G</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.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.quotient.html#15f6d57e3ad1c8453221555081f89965"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="coset_splitting_field"><span class="id" title="lemma">coset_splitting_field</span></a> <span class="id" title="var">gT</span> (<span class="id" title="var">H</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.character.mxrepresentation.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>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#group_closure_field"><span class="id" title="definition">group_closure_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#group_closure_field"><span class="id" title="definition">group_closure_field</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.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>).<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.SplittingField"><span class="id" title="section">SplittingField</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Abelian"><span class="id" title="section">Abelian</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Abelian.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="FieldRepr.Abelian.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.character.mxrepresentation.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">Lemma</span> <a name="mx_faithful_irr_center_cyclic"><span class="id" title="lemma">mx_faithful_irr_center_cyclic</span></a> <span class="id" title="var">n</span> (<span class="id" title="var">rG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Abelian.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</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.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</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.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.character.mxrepresentation.html#FieldRepr.Abelian.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>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_faithful_irr_abelian_cyclic"><span class="id" title="lemma">mx_faithful_irr_abelian_cyclic</span></a> <span class="id" title="var">n</span> (<span class="id" title="var">rG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Abelian.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</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.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</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.character.mxrepresentation.html#FieldRepr.Abelian.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.character.mxrepresentation.html#FieldRepr.Abelian.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.Abelian.splitG"><span class="id" title="variable">splitG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Abelian.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_irr_abelian_linear"><span class="id" title="lemma">mx_irr_abelian_linear</span></a> <span class="id" title="var">n</span> (<span class="id" title="var">rG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Abelian.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</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.character.mxrepresentation.html#FieldRepr.Abelian.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.character.mxrepresentation.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.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 1%<span class="id" title="var">N</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsimple_abelian_linear"><span class="id" title="lemma">mxsimple_abelian_linear</span></a> <span class="id" title="var">n</span> (<span class="id" title="var">rG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Abelian.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>) <span class="id" title="var">M</span> :<br/> - <a class="idref" href="mathcomp.fingroup.fingroup.html#abelian"><span class="id" title="definition">abelian</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Abelian.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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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> 1%<span class="id" title="var">N</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="linear_mxsimple"><span class="id" title="lemma">linear_mxsimple</span></a> <span class="id" title="var">n</span> (<span class="id" title="var">rG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Abelian.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>) (<span class="id" title="var">M</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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> 1%<span class="id" title="var">N</span> <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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Abelian"><span class="id" title="section">Abelian</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.AbelianQuotient"><span class="id" title="section">AbelianQuotient</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.AbelianQuotient.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="FieldRepr.AbelianQuotient.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.character.mxrepresentation.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/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.AbelianQuotient.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>) (<a name="FieldRepr.AbelianQuotient.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.AbelianQuotient.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="center_kquo_cyclic"><span class="id" title="lemma">center_kquo_cyclic</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.AbelianQuotient.rG"><span class="id" title="variable">rG</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.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.character.mxrepresentation.html#FieldRepr.AbelianQuotient.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.fingroup.quotient.html#3e65ad3edf5f7fb3ea6bc63a878112a8"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.AbelianQuotient.rG"><span class="id" title="variable">rG</span></a><a class="idref" href="mathcomp.solvable.center.html#e90cc03a62af307fc4e121114703663b"><span class="id" title="notation">)</span></a>%<span class="id" title="var">g</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="der1_sub_rker"><span class="id" title="lemma">der1_sub_rker</span></a> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.AbelianQuotient.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.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.AbelianQuotient.rG"><span class="id" title="variable">rG</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/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.AbelianQuotient.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#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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.AbelianQuotient.rG"><span class="id" title="variable">rG</span></a>)%<span class="id" title="var">g</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> (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.AbelianQuotient.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>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.AbelianQuotient"><span class="id" title="section">AbelianQuotient</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Similarity"><span class="id" title="section">Similarity</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Similarity.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="FieldRepr.Similarity.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.character.mxrepresentation.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">Variant</span> <a name="mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <span class="id" title="var">n1</span> (<span class="id" title="var">rG1</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a>) <span class="id" title="var">n2</span> (<span class="id" title="var">rG2</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a>) : <span class="id" title="keyword">Prop</span> :=<br/> - <a name="MxReprSim"><span class="id" title="constructor">MxReprSim</span></a> <span class="id" title="var">B</span> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</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.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a> & <a class="idref" href="mathcomp.algebra.mxalgebra.html#row_free"><span class="id" title="definition">row_free</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a><br/> - & <span class="id" title="keyword">∀</span> <span class="id" title="var">x</span>, <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.Similarity.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.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#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.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxrank_rsim"><span class="id" title="lemma">mxrank_rsim</span></a> <span class="id" title="var">n1</span> <span class="id" title="var">n2</span> (<span class="id" title="var">rG1</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a>) (<span class="id" title="var">rG2</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</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.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</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.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_rsim_refl"><span class="id" title="lemma">mx_rsim_refl</span></a> <span class="id" title="var">n</span> (<span class="id" title="var">rG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_rsim_sym"><span class="id" title="lemma">mx_rsim_sym</span></a> <span class="id" title="var">n1</span> <span class="id" title="var">n2</span> (<span class="id" title="var">rG1</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a>) (<span class="id" title="var">rG2</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</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.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_rsim_trans"><span class="id" title="lemma">mx_rsim_trans</span></a> <span class="id" title="var">n1</span> <span class="id" title="var">n2</span> <span class="id" title="var">n3</span><br/> - (<span class="id" title="var">rG1</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a>) (<span class="id" title="var">rG2</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a>) (<span class="id" title="var">rG3</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n3"><span class="id" title="variable">n3</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</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.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG3"><span class="id" title="variable">rG3</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.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG3"><span class="id" title="variable">rG3</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_rsim_def"><span class="id" title="lemma">mx_rsim_def</span></a> <span class="id" title="var">n1</span> <span class="id" title="var">n2</span> (<span class="id" title="var">rG1</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a>) (<span class="id" title="var">rG2</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</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/> - <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">B</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.Init.Logic.html#3df228c109f14f0423b4fccc967ee1ac"><span class="id" title="notation">exists2</span></a> <span class="id" title="var">B'</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.character.mxrepresentation.html#B'"><span class="id" title="variable">B'</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#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> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</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">&</span></a><br/> - <span class="id" title="keyword">∀</span> <span class="id" title="var">x</span>, <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.Similarity.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.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#B'"><span class="id" title="variable">B'</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_rsim_iso"><span class="id" title="lemma">mx_rsim_iso</span></a> <span class="id" title="var">n</span> (<span class="id" title="var">rG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>) (<span class="id" title="var">U</span> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>)<br/> - (<span class="id" title="var">modU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) (<span class="id" title="var">modV</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#submod_repr"><span class="id" title="definition">submod_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#submod_repr"><span class="id" title="definition">submod_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</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="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_rsim_irr"><span class="id" title="lemma">mx_rsim_irr</span></a> <span class="id" title="var">n1</span> <span class="id" title="var">n2</span> (<span class="id" title="var">rG1</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a>) (<span class="id" title="var">rG2</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</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.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</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.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_rsim_abs_irr"><span class="id" title="lemma">mx_rsim_abs_irr</span></a> <span class="id" title="var">n1</span> <span class="id" title="var">n2</span> (<span class="id" title="var">rG1</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a>) (<span class="id" title="var">rG2</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</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.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_mx_rsim"><span class="id" title="lemma">rker_mx_rsim</span></a> <span class="id" title="var">n1</span> <span class="id" title="var">n2</span> (<span class="id" title="var">rG1</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a>) (<span class="id" title="var">rG2</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_rsim_faithful"><span class="id" title="lemma">mx_rsim_faithful</span></a> <span class="id" title="var">n1</span> <span class="id" title="var">n2</span> (<span class="id" title="var">rG1</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a>) (<span class="id" title="var">rG2</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</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.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</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.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_rsim_factmod"><span class="id" title="lemma">mx_rsim_factmod</span></a> <span class="id" title="var">n</span> (<span class="id" title="var">rG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>) <span class="id" title="var">U</span> <span class="id" title="var">V</span><br/> - (<span class="id" title="var">modU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) (<span class="id" title="var">modV</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>)%<span class="id" title="var">MS</span> <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.mxalgebra.html#mxdirect"><span class="id" title="abbreviation">mxdirect</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#factmod_repr"><span class="id" title="definition">factmod_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#submod_repr"><span class="id" title="definition">submod_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxtrace_rsim"><span class="id" title="lemma">mxtrace_rsim</span></a> <span class="id" title="var">n1</span> <span class="id" title="var">n2</span> (<span class="id" title="var">rG1</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a>) (<span class="id" title="var">rG2</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</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#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.character.mxrepresentation.html#FieldRepr.Similarity.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">x</span>, <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><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.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_rsim_scalar"><span class="id" title="lemma">mx_rsim_scalar</span></a> <span class="id" title="var">n1</span> <span class="id" title="var">n2</span> (<span class="id" title="var">rG1</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a>) (<span class="id" title="var">rG2</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#reprG"><span class="id" title="abbreviation">reprG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a>) <span class="id" title="var">x</span> <span class="id" title="var">c</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.Similarity.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.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</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.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#c"><span class="id" title="variable">c</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">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.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#c"><span class="id" title="variable">c</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Similarity"><span class="id" title="section">Similarity</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Socle"><span class="id" title="section">Socle</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Socle.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="FieldRepr.Socle.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.character.mxrepresentation.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/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Socle.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>) (<a name="FieldRepr.Socle.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Socle.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>) (<a name="FieldRepr.Socle.sG"><span class="id" title="variable">sG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#socleType"><span class="id" title="record">socleType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="socle_irr"><span class="id" title="lemma">socle_irr</span></a> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Socle.sG"><span class="id" title="variable">sG</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_repr"><span class="id" title="definition">socle_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="socle_rsimP"><span class="id" title="lemma">socle_rsimP</span></a> (<span class="id" title="var">W1</span> <span class="id" title="var">W2</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Socle.sG"><span class="id" title="variable">sG</span></a>) :<br/> - <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.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_repr"><span class="id" title="definition">socle_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W1"><span class="id" title="variable">W1</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_repr"><span class="id" title="definition">socle_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W2"><span class="id" title="variable">W2</span></a>)) (<a class="idref" href="mathcomp.character.mxrepresentation.html#W1"><span class="id" title="variable">W1</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#df45e8c2e8370fd4f0f7c4fdaf208180"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W2"><span class="id" title="variable">W2</span></a>).<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_rsim_in_submod"><span class="id" title="lemma">mx_rsim_in_submod</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> (<span class="id" title="var">modU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mG"><span class="id" title="abbreviation">mG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) (<span class="id" title="var">modV</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mG"><span class="id" title="abbreviation">mG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) :<br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">U'</span> := <a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation"><<</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#in_submod"><span class="id" title="definition">in_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation">>></span></a>%<span class="id" title="var">MS</span> <span class="id" title="tactic">in</span><br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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/> - <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">modU'</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.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#a883bdd010993579f99d60b3775bcf54"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU'"><span class="id" title="variable">modU'</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rsim_submod1"><span class="id" title="lemma">rsim_submod1</span></a> <span class="id" title="var">U</span> (<span class="id" title="var">modU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mG"><span class="id" title="abbreviation">mG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) : (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Socle.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxtrace_submod1"><span class="id" title="lemma">mxtrace_submod1</span></a> <span class="id" title="var">U</span> (<span class="id" title="var">modU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mG"><span class="id" title="abbreviation">mG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>)%<span class="id" title="var">MS</span> <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#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.character.mxrepresentation.html#FieldRepr.Socle.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">x</span>, <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><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.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Socle.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxtrace_dadd_mod"><span class="id" title="lemma">mxtrace_dadd_mod</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> <span class="id" title="var">W</span> (<span class="id" title="var">modU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mG"><span class="id" title="abbreviation">mG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) (<span class="id" title="var">modV</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mG"><span class="id" title="abbreviation">mG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) (<span class="id" title="var">modW</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mG"><span class="id" title="abbreviation">mG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span> <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.mxalgebra.html#mxdirect"><span class="id" title="abbreviation">mxdirect</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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/> - <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.character.mxrepresentation.html#FieldRepr.Socle.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">x</span>, <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#c7f78cf1f6a5e4f664654f7d671ca752"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><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.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modW"><span class="id" title="variable">modW</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxtrace_dsum_mod"><span class="id" title="lemma">mxtrace_dsum_mod</span></a> (<span class="id" title="var">I</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#Finite.Exports.finType"><span class="id" title="abbreviation">finType</span></a>) (<span class="id" title="var">P</span> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#pred"><span class="id" title="definition">pred</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#I"><span class="id" title="variable">I</span></a>) <span class="id" title="var">U</span> <span class="id" title="var">W</span><br/> - (<span class="id" title="var">modU</span> : <span class="id" title="keyword">∀</span> <span class="id" title="var">i</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#mG"><span class="id" title="abbreviation">mG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>)) (<span class="id" title="var">modW</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mG"><span class="id" title="abbreviation">mG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>) :<br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">S</span> := (<a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>)%<span class="id" title="var">MS</span> <span class="id" title="tactic">in</span> (<a class="idref" href="mathcomp.character.mxrepresentation.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</span> <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.mxalgebra.html#mxdirect"><span class="id" title="abbreviation">mxdirect</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><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#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.character.mxrepresentation.html#FieldRepr.Socle.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">x</span>, <a class="idref" href="mathcomp.algebra.ssralg.html#f43f2e9c8e0cc7a634fe022790373569"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#f43f2e9c8e0cc7a634fe022790373569"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#f43f2e9c8e0cc7a634fe022790373569"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.ssralg.html#f43f2e9c8e0cc7a634fe022790373569"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#P"><span class="id" title="variable">P</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#f43f2e9c8e0cc7a634fe022790373569"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><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.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modW"><span class="id" title="variable">modW</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxtrace_component"><span class="id" title="lemma">mxtrace_component</span></a> <span class="id" title="var">U</span> (<span class="id" title="var">simU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Socle.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) :<br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">V</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Socle.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <span class="id" title="tactic">in</span><br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">modV</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx_module"><span class="id" title="lemma">component_mx_module</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Socle.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <span class="id" title="tactic">in</span> <span class="id" title="keyword">let</span> <span class="id" title="var">modU</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple_module"><span class="id" title="lemma">mxsimple_module</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#simU"><span class="id" title="variable">simU</span></a> <span class="id" title="tactic">in</span><br/> - <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.character.mxrepresentation.html#FieldRepr.Socle.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">x</span>, <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><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.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#e9001f602764f7896bb1eb34bf606a23"><span class="id" title="notation">*+</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#e9001f602764f7896bb1eb34bf606a23"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.ssreflect.div.html#2242f6721707980eca939ec29164eab3"><span class="id" title="notation">%/</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#e9001f602764f7896bb1eb34bf606a23"><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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxtrace_Socle"><span class="id" title="lemma">mxtrace_Socle</span></a> : <span class="id" title="keyword">let</span> <span class="id" title="var">modS</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#Socle_module"><span class="id" title="lemma">Socle_module</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Socle.sG"><span class="id" title="variable">sG</span></a> <span class="id" title="tactic">in</span><br/> - <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.character.mxrepresentation.html#FieldRepr.Socle.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">x</span>,<br/> - <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#sr"><span class="id" title="abbreviation">sr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modS"><span class="id" title="variable">modS</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><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.algebra.ssralg.html#210141cbb4af7051facf94762acee6df"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#210141cbb4af7051facf94762acee6df"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#210141cbb4af7051facf94762acee6df"><span class="id" title="notation">(</span></a><span class="id" title="var">W</span> <a class="idref" href="mathcomp.algebra.ssralg.html#210141cbb4af7051facf94762acee6df"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Socle.sG"><span class="id" title="variable">sG</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#210141cbb4af7051facf94762acee6df"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#socle_repr"><span class="id" title="definition">socle_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#e9001f602764f7896bb1eb34bf606a23"><span class="id" title="notation">*+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_mult"><span class="id" title="definition">socle_mult</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Socle"><span class="id" title="section">Socle</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Clifford"><span class="id" title="section">Clifford</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Clifford.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="FieldRepr.Clifford.G"><span class="id" title="variable">G</span></a> <a name="FieldRepr.Clifford.H"><span class="id" title="variable">H</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.character.mxrepresentation.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/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.Clifford.nsHG"><span class="id" title="variable">nsHG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#7e8095b432e7aa5c3c22bb87584658b7"><span class="id" title="notation"><|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.G"><span class="id" title="variable">G</span></a>.<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Clifford.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>) (<a name="FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.Clifford.sHG"><span class="id" title="variable">sHG</span></a> := <a class="idref" href="mathcomp.fingroup.fingroup.html#normal_sub"><span class="id" title="lemma">normal_sub</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.nsHG"><span class="id" title="variable">nsHG</span></a>.<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.Clifford.nHG"><span class="id" title="variable">nHG</span></a> := <a class="idref" href="mathcomp.fingroup.fingroup.html#normal_norm"><span class="id" title="lemma">normal_norm</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.nsHG"><span class="id" title="variable">nsHG</span></a>.<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#subg_repr"><span class="id" title="definition">subg_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.sHG"><span class="id" title="variable">sHG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Clifford_simple"><span class="id" title="lemma">Clifford_simple</span></a> <span class="id" title="var">M</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.Clifford.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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Clifford_hom"><span class="id" title="lemma">Clifford_hom</span></a> <span class="id" title="var">x</span> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.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#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.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.character.mxrepresentation.html#FieldRepr.Clifford.H"><span class="id" title="variable">H</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.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#dom_hom_mx"><span class="id" title="definition">dom_hom_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>))%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Clifford_iso"><span class="id" title="lemma">Clifford_iso</span></a> <span class="id" title="var">x</span> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.character.mxrepresentation.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#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.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.character.mxrepresentation.html#FieldRepr.Clifford.H"><span class="id" title="variable">H</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.Init.Logic.html#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Clifford_iso2"><span class="id" title="lemma">Clifford_iso2</span></a> <span class="id" title="var">x</span> <span class="id" title="var">U</span> <span class="id" title="var">V</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.Clifford.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.character.mxrepresentation.html#mx_iso"><span class="id" title="inductive">mx_iso</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Clifford_componentJ"><span class="id" title="lemma">Clifford_componentJ</span></a> <span class="id" title="var">M</span> <span class="id" title="var">x</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.Clifford.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><br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>) <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#component_mx"><span class="id" title="definition">component_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.Clifford.irrG"><span class="id" title="variable">irrG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Clifford_basis"><span class="id" title="lemma">Clifford_basis</span></a> <span class="id" title="var">M</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><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.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">:</span></a> <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.character.mxrepresentation.html#FieldRepr.Clifford.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> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#FieldRepr.Clifford.G"><span class="id" title="variable">G</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">&</span></a><br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">S</span> := <a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#X"><span class="id" title="variable">X</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#82c1a6a5184deaa3ae19991e126caeb4"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">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.algebra.mxalgebra.html#mxdirect"><span class="id" title="abbreviation">mxdirect</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">}</span></a>%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="FieldRepr.Clifford.sH"><span class="id" title="variable">sH</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#socleType"><span class="id" title="record">socleType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="Clifford_act"><span class="id" title="definition">Clifford_act</span></a> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.sH"><span class="id" title="variable">sH</span></a>) <span class="id" title="var">x</span> :=<br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">Gx</span> := <a class="idref" href="mathcomp.fingroup.fingroup.html#subgP"><span class="id" title="lemma">subgP</span></a> (<a class="idref" href="mathcomp.fingroup.fingroup.html#subg"><span class="id" title="definition">subg</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>) <span class="id" title="tactic">in</span><br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#PackSocle"><span class="id" title="constructor">PackSocle</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#component_socle"><span class="id" title="lemma">component_socle</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.sH"><span class="id" title="variable">sH</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#Clifford_simple"><span class="id" title="lemma">Clifford_simple</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_simple"><span class="id" title="lemma">socle_simple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#Gx"><span class="id" title="variable">Gx</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.Clifford.valWact"><span class="id" title="variable">valWact</span></a> <span class="id" title="var">W</span> <span class="id" title="var">x</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#Clifford_act"><span class="id" title="definition">Clifford_act</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.fingroup.fingroup.html#sgval"><span class="id" title="definition">sgval</span></a> (<a class="idref" href="mathcomp.fingroup.fingroup.html#subg"><span class="id" title="definition">subg</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>)))%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Fact</span> <a name="Clifford_is_action"><span class="id" title="lemma">Clifford_is_action</span></a> : <a class="idref" href="mathcomp.fingroup.action.html#is_action"><span class="id" title="definition">is_action</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Clifford_act"><span class="id" title="definition">Clifford_act</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="Clifford_action"><span class="id" title="definition">Clifford_action</span></a> := <a class="idref" href="mathcomp.fingroup.action.html#Action"><span class="id" title="constructor">Action</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Clifford_is_action"><span class="id" title="lemma">Clifford_is_action</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="val_Clifford_act"><span class="id" title="lemma">val_Clifford_act</span></a> <span class="id" title="var">W</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.Clifford.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.character.mxrepresentation.html#c32b9d64dc405a3e24ead9493c235eac"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c32b9d64dc405a3e24ead9493c235eac"><span class="id" title="notation">Cl</span></a>%<span class="id" title="var">act</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Clifford_atrans"><span class="id" title="lemma">Clifford_atrans</span></a> : <a class="idref" href="mathcomp.fingroup.action.html#7ff4d7c306e2eb723a4b0e54810870ae"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.action.html#7ff4d7c306e2eb723a4b0e54810870ae"><span class="id" title="notation">transitive</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.fingroup.action.html#7ff4d7c306e2eb723a4b0e54810870ae"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.action.html#7ff4d7c306e2eb723a4b0e54810870ae"><span class="id" title="notation">on</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.character.mxrepresentation.html#FieldRepr.Clifford.sH"><span class="id" title="variable">sH</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">]</span></a> <a class="idref" href="mathcomp.fingroup.action.html#7ff4d7c306e2eb723a4b0e54810870ae"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#c32b9d64dc405a3e24ead9493c235eac"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c32b9d64dc405a3e24ead9493c235eac"><span class="id" title="notation">Cl</span></a><a class="idref" href="mathcomp.fingroup.action.html#7ff4d7c306e2eb723a4b0e54810870ae"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Clifford_Socle1"><span class="id" title="lemma">Clifford_Socle1</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#Socle"><span class="id" title="definition">Socle</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.sH"><span class="id" title="variable">sH</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> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Clifford_rank_components"><span class="id" title="lemma">Clifford_rank_components</span></a> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.sH"><span class="id" title="variable">sH</span></a>) : (<a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.sH"><span class="id" title="variable">sH</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#ea2ff3d561159081cea6fb2e8113cc54"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.n"><span class="id" title="variable">n</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Theorem</span> <a name="Clifford_component_basis"><span class="id" title="lemma">Clifford_component_basis</span></a> <span class="id" title="var">M</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rH"><span class="id" title="variable">rH</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a><br/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><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.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">:</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> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">&</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><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.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.sH"><span class="id" title="variable">sH</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.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">I_t</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.character.mxrepresentation.html#FieldRepr.Clifford.gT"><span class="id" title="variable">gT</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">|</span></a><br/> - <span class="id" title="keyword">∀</span> <span class="id" title="var">W</span>, <span class="id" title="keyword">let</span> <span class="id" title="var">sW</span> := (<a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">sum_j</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#x_"><span class="id" title="variable">x_</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</span></a>))%<span class="id" title="var">MS</span> <span class="id" title="tactic">in</span><br/> - <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="keyword">∀</span> <span class="id" title="var">j</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#x_"><span class="id" title="variable">x_</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</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.character.mxrepresentation.html#FieldRepr.Clifford.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.character.mxrepresentation.html#sW"><span class="id" title="variable">sW</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)%<span class="id" title="var">MS</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.algebra.mxalgebra.html#mxdirect"><span class="id" title="abbreviation">mxdirect</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#sW"><span class="id" title="variable">sW</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.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">}</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Clifford_astab"><span class="id" title="lemma">Clifford_astab</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#0d7ccd69af81527d9facc6293603bbef"><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.character.mxrepresentation.html#FieldRepr.Clifford.H"><span class="id" title="variable">H</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#04a5555c0db8685a27679a7e6af3f8c3"><span class="id" title="notation">)</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#563ec7f167b9e19c804c7f8a07d81e1d"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.fingroup.action.html#563ec7f167b9e19c804c7f8a07d81e1d"><span class="id" title="notation">C</span></a><a class="idref" href="mathcomp.fingroup.action.html#563ec7f167b9e19c804c7f8a07d81e1d"><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.character.mxrepresentation.html#FieldRepr.Clifford.sH"><span class="id" title="variable">sH</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d1cce020b4b43370087fd70de1477ab6"><span class="id" title="notation">]</span></a> <a class="idref" href="mathcomp.fingroup.action.html#563ec7f167b9e19c804c7f8a07d81e1d"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#c32b9d64dc405a3e24ead9493c235eac"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c32b9d64dc405a3e24ead9493c235eac"><span class="id" title="notation">Cl</span></a><a class="idref" href="mathcomp.fingroup.action.html#563ec7f167b9e19c804c7f8a07d81e1d"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Clifford_astab1"><span class="id" title="lemma">Clifford_astab1</span></a> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.sH"><span class="id" title="variable">sH</span></a>) : <a class="idref" href="mathcomp.fingroup.action.html#0bfe9e510ff7d53177796cf76ba5dbc3"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.fingroup.action.html#0bfe9e510ff7d53177796cf76ba5dbc3"><span class="id" title="notation">C</span></a><a class="idref" href="mathcomp.fingroup.action.html#0bfe9e510ff7d53177796cf76ba5dbc3"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.fingroup.action.html#0bfe9e510ff7d53177796cf76ba5dbc3"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#c32b9d64dc405a3e24ead9493c235eac"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c32b9d64dc405a3e24ead9493c235eac"><span class="id" title="notation">Cl</span></a><a class="idref" href="mathcomp.fingroup.action.html#0bfe9e510ff7d53177796cf76ba5dbc3"><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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Clifford_rstabs_simple"><span class="id" title="lemma">Clifford_rstabs_simple</span></a> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.sH"><span class="id" title="variable">sH</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#subg_repr"><span class="id" title="definition">subg_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs_sub"><span class="id" title="lemma">rstabs_sub</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>)) <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Clifford"><span class="id" title="section">Clifford</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.JordanHolder"><span class="id" title="section">JordanHolder</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.JordanHolder.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="FieldRepr.JordanHolder.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.character.mxrepresentation.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/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.JordanHolder.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>) (<a name="FieldRepr.JordanHolder.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JordanHolder.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="section_module"><span class="id" title="lemma">section_module</span></a> (<span class="id" title="var">U</span> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) (<span class="id" title="var">modU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) (<span class="id" title="var">modV</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#factmod_repr"><span class="id" title="definition">factmod_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a>) <a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation"><<</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#in_factmod"><span class="id" title="definition">in_factmod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation">>></span></a>%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="section_repr"><span class="id" title="definition">section_repr</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> (<span class="id" title="var">modU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) (<span class="id" title="var">modV</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) :=<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#submod_repr"><span class="id" title="definition">submod_repr</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#section_module"><span class="id" title="lemma">section_module</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_factmod_sub"><span class="id" title="lemma">mx_factmod_sub</span></a> <span class="id" title="var">U</span> <span class="id" title="var">modU</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (@<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <span class="id" title="var">_</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule1"><span class="id" title="lemma">mxmodule1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JordanHolder.rG"><span class="id" title="variable">rG</span></a>)) (<a class="idref" href="mathcomp.character.mxrepresentation.html#factmod_repr"><span class="id" title="definition">factmod_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="max_submod"><span class="id" title="definition">max_submod</span></a> (<span class="id" title="var">U</span> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) :=<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#74f1d33aea43cd94f177c35b7a221cde"><span class="id" title="notation"><</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</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> (<span class="id" title="keyword">∀</span> <span class="id" title="var">W</span>, <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><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.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#74f1d33aea43cd94f177c35b7a221cde"><span class="id" title="notation"><</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#74f1d33aea43cd94f177c35b7a221cde"><span class="id" title="notation"><</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="max_submodP"><span class="id" title="lemma">max_submodP</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> (<span class="id" title="var">modU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) (<span class="id" title="var">modV</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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><a class="idref" href="mathcomp.character.mxrepresentation.html#max_submod"><span class="id" title="definition">max_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="max_submod_eqmx"><span class="id" title="lemma">max_submod_eqmx</span></a> <span class="id" title="var">U1</span> <span class="id" title="var">U2</span> <span class="id" title="var">V1</span> <span class="id" title="var">V2</span> :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U1"><span class="id" title="variable">U1</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U2"><span class="id" title="variable">U2</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#V1"><span class="id" title="variable">V1</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V2"><span class="id" title="variable">V2</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#max_submod"><span class="id" title="definition">max_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U1"><span class="id" title="variable">U1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V1"><span class="id" title="variable">V1</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.character.mxrepresentation.html#max_submod"><span class="id" title="definition">max_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U2"><span class="id" title="variable">U2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V2"><span class="id" title="variable">V2</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mx_subseries"><span class="id" title="definition">mx_subseries</span></a> := <a class="idref" href="mathcomp.ssreflect.seq.html#all"><span class="id" title="definition">all</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mx_composition_series"><span class="id" title="definition">mx_composition_series</span></a> <span class="id" title="var">V</span> :=<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_subseries"><span class="id" title="definition">mx_subseries</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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">i</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#00fe0eaf5e6949f0a31725357afa4bba"><span class="id" title="notation"><</span></a> <a class="idref" href="mathcomp.ssreflect.seq.html#size"><span class="id" title="definition">size</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#max_submod"><span class="id" title="definition">max_submod</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">(</span></a>0 <a class="idref" href="mathcomp.ssreflect.seq.html#407cde5b61fbf27196d1a7c5a475e083"><span class="id" title="notation">::</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">)`</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">_i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">`</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">_i</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>.<br/> - -<br/> -<span class="id" title="keyword">Fact</span> <a name="mx_subseries_module"><span class="id" title="lemma">mx_subseries_module</span></a> <span class="id" title="var">V</span> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_subseries"><span class="id" title="definition">mx_subseries</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JordanHolder.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">`</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">_i</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Fact</span> <a name="mx_subseries_module'"><span class="id" title="lemma">mx_subseries_module'</span></a> <span class="id" title="var">V</span> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_subseries"><span class="id" title="definition">mx_subseries</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JordanHolder.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">(</span></a>0 <a class="idref" href="mathcomp.ssreflect.seq.html#407cde5b61fbf27196d1a7c5a475e083"><span class="id" title="notation">::</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">)`</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">_i</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="subseries_repr"><span class="id" title="definition">subseries_repr</span></a> <span class="id" title="var">V</span> <span class="id" title="var">i</span> (<span class="id" title="var">modV</span> : <a class="idref" href="mathcomp.ssreflect.seq.html#all"><span class="id" title="definition">all</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) :=<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#mx_subseries_module'"><span class="id" title="lemma">mx_subseries_module'</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#mx_subseries_module"><span class="id" title="lemma">mx_subseries_module</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="series_repr"><span class="id" title="definition">series_repr</span></a> <span class="id" title="var">V</span> <span class="id" title="var">i</span> (<span class="id" title="var">compV</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_composition_series"><span class="id" title="definition">mx_composition_series</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) :=<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#subseries_repr"><span class="id" title="definition">subseries_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#proj1"><span class="id" title="lemma">proj1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compV"><span class="id" title="variable">compV</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_series_lt"><span class="id" title="lemma">mx_series_lt</span></a> <span class="id" title="var">V</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_composition_series"><span class="id" title="definition">mx_composition_series</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.path.html#path"><span class="id" title="definition">path</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#ltmx"><span class="id" title="definition">ltmx</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="max_size_mx_series"><span class="id" title="lemma">max_size_mx_series</span></a> (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.ssreflect.seq.html#seq"><span class="id" title="abbreviation">seq</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>) :<br/> - <a class="idref" href="mathcomp.ssreflect.path.html#path"><span class="id" title="definition">path</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#ltmx"><span class="id" title="definition">ltmx</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.seq.html#size"><span class="id" title="definition">size</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.ssreflect.seq.html#last"><span class="id" title="definition">last</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_series_repr_irr"><span class="id" title="lemma">mx_series_repr_irr</span></a> <span class="id" title="var">V</span> <span class="id" title="var">i</span> (<span class="id" title="var">compV</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_composition_series"><span class="id" title="definition">mx_composition_series</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#00fe0eaf5e6949f0a31725357afa4bba"><span class="id" title="notation"><</span></a> <a class="idref" href="mathcomp.ssreflect.seq.html#size"><span class="id" title="definition">size</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#series_repr"><span class="id" title="definition">series_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compV"><span class="id" title="variable">compV</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_series_rcons"><span class="id" title="lemma">mx_series_rcons</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_series"><span class="id" title="abbreviation">mx_series</span></a> (<a class="idref" href="mathcomp.ssreflect.seq.html#rcons"><span class="id" title="definition">rcons</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.ssr.ssrbool.html#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">[/\</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_series"><span class="id" title="abbreviation">mx_series</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#d7e433f5d2fe56f5b712860a9ff2a681"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#max_submod"><span class="id" title="definition">max_submod</span></a> (<a class="idref" href="mathcomp.ssreflect.seq.html#last"><span class="id" title="definition">last</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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">Theorem</span> <a name="mx_Schreier"><span class="id" title="lemma">mx_Schreier</span></a> <span class="id" title="var">U</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_subseries"><span class="id" title="definition">mx_subseries</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssreflect.path.html#path"><span class="id" title="definition">path</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#ltmx"><span class="id" title="definition">ltmx</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.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/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#classically"><span class="id" title="definition">classically</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">V</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.character.mxrepresentation.html#mx_series"><span class="id" title="abbreviation">mx_series</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.seq.html#last"><span class="id" title="definition">last</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">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> <a class="idref" href="mathcomp.ssreflect.seq.html#subseq"><span class="id" title="definition">subseq</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_second_rsim"><span class="id" title="lemma">mx_second_rsim</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> (<span class="id" title="var">modU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) (<span class="id" title="var">modV</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) :<br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">modI</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#capmx_module"><span class="id" title="lemma">capmx_module</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a> <span class="id" title="tactic">in</span> <span class="id" title="keyword">let</span> <span class="id" title="var">modA</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#addsmx_module"><span class="id" title="lemma">addsmx_module</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a> <span class="id" title="tactic">in</span><br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modI"><span class="id" title="variable">modI</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modA"><span class="id" title="variable">modA</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="section_eqmx_add"><span class="id" title="lemma">section_eqmx_add</span></a> <span class="id" title="var">U1</span> <span class="id" title="var">U2</span> <span class="id" title="var">V1</span> <span class="id" title="var">V2</span> <span class="id" title="var">modU1</span> <span class="id" title="var">modU2</span> <span class="id" title="var">modV1</span> <span class="id" title="var">modV2</span> :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U1"><span class="id" title="variable">U1</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U2"><span class="id" title="variable">U2</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#U1"><span class="id" title="variable">U1</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V1"><span class="id" title="variable">V1</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U2"><span class="id" title="variable">U2</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b116c353d9d5a3e6e54e78df2da7c80e"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V2"><span class="id" title="variable">V2</span></a>)%<span class="id" title="var">MS</span> <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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (@<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U1"><span class="id" title="variable">U1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V1"><span class="id" title="variable">V1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU1"><span class="id" title="variable">modU1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV1"><span class="id" title="variable">modV1</span></a>) (@<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U2"><span class="id" title="variable">U2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V2"><span class="id" title="variable">V2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU2"><span class="id" title="variable">modU2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV2"><span class="id" title="variable">modV2</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="section_eqmx"><span class="id" title="lemma">section_eqmx</span></a> <span class="id" title="var">U1</span> <span class="id" title="var">U2</span> <span class="id" title="var">V1</span> <span class="id" title="var">V2</span> <span class="id" title="var">modU1</span> <span class="id" title="var">modU2</span> <span class="id" title="var">modV1</span> <span class="id" title="var">modV2</span><br/> - (<span class="id" title="var">eqU</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#U1"><span class="id" title="variable">U1</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U2"><span class="id" title="variable">U2</span></a>)%<span class="id" title="var">MS</span>) (<span class="id" title="var">eqV</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#V1"><span class="id" title="variable">V1</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V2"><span class="id" title="variable">V2</span></a>)%<span class="id" title="var">MS</span>) : <br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (@<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U1"><span class="id" title="variable">U1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V1"><span class="id" title="variable">V1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU1"><span class="id" title="variable">modU1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV1"><span class="id" title="variable">modV1</span></a>) (@<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U2"><span class="id" title="variable">U2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V2"><span class="id" title="variable">V2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU2"><span class="id" title="variable">modU2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV2"><span class="id" title="variable">modV2</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_butterfly"><span class="id" title="lemma">mx_butterfly</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> <span class="id" title="var">W</span> <span class="id" title="var">modU</span> <span class="id" title="var">modV</span> <span class="id" title="var">modW</span> :<br/> - <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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#2face00c9cbc11f22bacfabff84e3b9a"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#max_submod"><span class="id" title="definition">max_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#max_submod"><span class="id" title="definition">max_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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/> - <span class="id" title="keyword">let</span> <span class="id" title="var">modUV</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#capmx_module"><span class="id" title="lemma">capmx_module</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a> <span class="id" title="tactic">in</span> <br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#max_submod"><span class="id" title="definition">max_submod</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a><br/> - <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.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (@<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modW"><span class="id" title="variable">modW</span></a>) (@<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> <span class="id" title="var">_</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modUV"><span class="id" title="variable">modUV</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_JordanHolder_exists"><span class="id" title="lemma">mx_JordanHolder_exists</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_composition_series"><span class="id" title="definition">mx_composition_series</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#max_submod"><span class="id" title="definition">max_submod</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> (<a class="idref" href="mathcomp.ssreflect.seq.html#last"><span class="id" title="definition">last</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.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/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">{</span></a><span class="id" title="var">W</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.ssreflect.seq.html#seq"><span class="id" title="abbreviation">seq</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_composition_series"><span class="id" title="definition">mx_composition_series</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">&</span></a> <a class="idref" href="mathcomp.ssreflect.seq.html#last"><span class="id" title="definition">last</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#f92718946b2f68c8f7100be4d6b45f82"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.JordanHolder.rsim_rcons"><span class="id" title="variable">rsim_rcons</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> <span class="id" title="var">compU</span> <span class="id" title="var">compUV</span> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#00fe0eaf5e6949f0a31725357afa4bba"><span class="id" title="notation"><</span></a> <a class="idref" href="mathcomp.ssreflect.seq.html#size"><span class="id" title="definition">size</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (@<a class="idref" href="mathcomp.character.mxrepresentation.html#series_repr"><span class="id" title="definition">series_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="variable">compU</span></a>) (@<a class="idref" href="mathcomp.character.mxrepresentation.html#series_repr"><span class="id" title="definition">series_repr</span></a> (<a class="idref" href="mathcomp.ssreflect.seq.html#rcons"><span class="id" title="definition">rcons</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compUV"><span class="id" title="variable">compUV</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.JordanHolder.last_mod"><span class="id" title="variable">last_mod</span></a> <span class="id" title="var">U</span> (<span class="id" title="var">compU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_series"><span class="id" title="abbreviation">mx_series</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#modG"><span class="id" title="abbreviation">modG</span></a> (<a class="idref" href="mathcomp.ssreflect.seq.html#last"><span class="id" title="definition">last</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.JordanHolder.rsim_last"><span class="id" title="variable">rsim_last</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> <span class="id" title="var">modUm</span> <span class="id" title="var">modV</span> <span class="id" title="var">compUV</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (@<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> (<a class="idref" href="mathcomp.ssreflect.seq.html#last"><span class="id" title="definition">last</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modUm"><span class="id" title="variable">modUm</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a>)<br/> - (@<a class="idref" href="mathcomp.character.mxrepresentation.html#series_repr"><span class="id" title="definition">series_repr</span></a> (<a class="idref" href="mathcomp.ssreflect.seq.html#rcons"><span class="id" title="definition">rcons</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>) (<a class="idref" href="mathcomp.ssreflect.seq.html#size"><span class="id" title="definition">size</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#compUV"><span class="id" title="variable">compUV</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_JordanHolder"><span class="id" title="lemma">mx_JordanHolder</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> <span class="id" title="var">compU</span> <span class="id" title="var">compV</span> :<br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">m</span> := <a class="idref" href="mathcomp.ssreflect.seq.html#size"><span class="id" title="definition">size</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <span class="id" title="tactic">in</span> (<a class="idref" href="mathcomp.ssreflect.seq.html#last"><span class="id" title="definition">last</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.ssreflect.seq.html#last"><span class="id" title="definition">last</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span> <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/> - <a class="idref" href="mathcomp.character.mxrepresentation.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.ssreflect.seq.html#size"><span class="id" title="definition">size</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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><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">p</span> : <a class="idref" href="mathcomp.fingroup.perm.html#b84ec172b7d8a9cb94a7af117c5a31d6"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.fingroup.perm.html#b84ec172b7d8a9cb94a7af117c5a31d6"><span class="id" title="notation">S_m</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="keyword">∀</span> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">I_m</span></a>,<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (@<a class="idref" href="mathcomp.character.mxrepresentation.html#series_repr"><span class="id" title="definition">series_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="variable">compU</span></a>) (@<a class="idref" href="mathcomp.character.mxrepresentation.html#series_repr"><span class="id" title="definition">series_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#compV"><span class="id" title="variable">compV</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>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_JordanHolder_max"><span class="id" title="lemma">mx_JordanHolder_max</span></a> <span class="id" title="var">U</span> (<span class="id" title="var">m</span> := <a class="idref" href="mathcomp.ssreflect.seq.html#size"><span class="id" title="definition">size</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) <span class="id" title="var">V</span> <span class="id" title="var">compU</span> <span class="id" title="var">modV</span> :<br/> - (<a class="idref" href="mathcomp.ssreflect.seq.html#last"><span class="id" title="definition">last</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> (@<a class="idref" href="mathcomp.character.mxrepresentation.html#factmod_repr"><span class="id" title="definition">factmod_repr</span></a> <span class="id" title="var">_</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JordanHolder.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JordanHolder.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JordanHolder.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</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/> - <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">i</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">I_m</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> <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#factmod_repr"><span class="id" title="definition">factmod_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a>) (@<a class="idref" href="mathcomp.character.mxrepresentation.html#series_repr"><span class="id" title="definition">series_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="variable">compU</span></a>).<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.JordanHolder"><span class="id" title="section">JordanHolder</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Regular"><span class="id" title="section">Regular</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Regular.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="FieldRepr.Regular.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.character.mxrepresentation.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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_free"><span class="id" title="lemma">gring_free</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#row_free"><span class="id" title="definition">row_free</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_op_id"><span class="id" title="lemma">gring_op_id</span></a> <span class="id" title="var">A</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_rowK"><span class="id" title="lemma">gring_rowK</span></a> <span class="id" title="var">A</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gring_row"><span class="id" title="definition">gring_row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mem_gring_mx"><span class="id" title="lemma">mem_gring_mx</span></a> <span class="id" title="var">m</span> <span class="id" title="var">a</span> (<span class="id" title="var">M</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#nG"><span class="id" title="abbreviation">nG</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a>)%<span class="id" title="var">MS</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> (<a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mem_sub_gring"><span class="id" title="lemma">mem_sub_gring</span></a> <span class="id" title="var">m</span> <span class="id" title="var">A</span> (<span class="id" title="var">M</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#nG"><span class="id" title="abbreviation">nG</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a>)%<span class="id" title="var">MS</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> (<a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#gring_row"><span class="id" title="definition">gring_row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Regular.GringMx"><span class="id" title="section">GringMx</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Regular.GringMx.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>) (<a name="FieldRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_mxP"><span class="id" title="lemma">gring_mxP</span></a> <span class="id" title="var">a</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#gring_mx"><span class="id" title="definition">gring_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#enveloping_algebra_mx"><span class="id" title="definition">enveloping_algebra_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="gring_opM"><span class="id" title="lemma">gring_opM</span></a> <span class="id" title="var">A</span> <span class="id" title="var">B</span> :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#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.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.Regular.GringMx.irrG"><span class="id" title="variable">irrG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rsim_regular_factmod"><span class="id" title="lemma">rsim_regular_factmod</span></a> :<br/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">{</span></a><span class="id" title="var">U</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_nG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">&</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">{</span></a><span class="id" title="var">modU</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">&</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#factmod_repr"><span class="id" title="definition">factmod_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a>)<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">}}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rsim_regular_series"><span class="id" title="lemma">rsim_regular_series</span></a> <span class="id" title="var">U</span> (<span class="id" title="var">compU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_composition_series"><span class="id" title="definition">mx_composition_series</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) :<br/> - (<a class="idref" href="mathcomp.ssreflect.seq.html#last"><span class="id" title="definition">last</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>)%<span class="id" title="var">MS</span> <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/> - <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">i</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">I_</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.ssreflect.seq.html#size"><span class="id" title="definition">size</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><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> <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#series_repr"><span class="id" title="definition">series_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#compU"><span class="id" title="variable">compU</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.Regular.GringMx.F'G"><span class="id" title="variable">F'G</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">char</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">]</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#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.character.mxrepresentation.html#FieldRepr.Regular.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rsim_regular_submod"><span class="id" title="lemma">rsim_regular_submod</span></a> :<br/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">{</span></a><span class="id" title="var">U</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_nG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">&</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">{</span></a><span class="id" title="var">modU</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">&</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.GringMx.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#submod_repr"><span class="id" title="definition">submod_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a>)<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span class="id" title="notation">}}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.GringMx"><span class="id" title="section">GringMx</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="gset_mx"><span class="id" title="definition">gset_mx</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.character.mxrepresentation.html#FieldRepr.Regular.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>) := <a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#b4ba9f64661118f4ed0bad900f98d2a2"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="classg_base"><span class="id" title="definition">classg_base</span></a> := <a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">matrix_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">(</span></a><span class="id" title="var">k</span> <a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation"><</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#tG"><span class="id" title="abbreviation">tG</span></a><a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gset_mx"><span class="id" title="definition">gset_mx</span></a> (<a class="idref" href="mathcomp.ssreflect.fintype.html#enum_val"><span class="id" title="definition">enum_val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#k"><span class="id" title="variable">k</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.Regular.groupCl"><span class="id" title="variable">groupCl</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.character.mxrepresentation.html#FieldRepr.Regular.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">x</span>, <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#ca592708f529c7c7ee5f3dbd6cf93463"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#ca592708f529c7c7ee5f3dbd6cf93463"><span class="id" title="notation">subset</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#38a288b01c62a2a6a720c34fc1fffe2c"><span class="id" title="notation">^:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.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#ca592708f529c7c7ee5f3dbd6cf93463"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.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#ca592708f529c7c7ee5f3dbd6cf93463"><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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="classg_base_free"><span class="id" title="lemma">classg_base_free</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#row_free"><span class="id" title="definition">row_free</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#classg_base"><span class="id" title="definition">classg_base</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="classg_base_center"><span class="id" title="lemma">classg_base_center</span></a> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#classg_base"><span class="id" title="definition">classg_base</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#c6c995a25415413a47df0a8d4a5b9d94"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c6c995a25415413a47df0a8d4a5b9d94"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c6c995a25415413a47df0a8d4a5b9d94"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c6c995a25415413a47df0a8d4a5b9d94"><span class="id" title="notation">)</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="regular_module_ideal"><span class="id" title="lemma">regular_module_ideal</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">M</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#nG"><span class="id" title="abbreviation">nG</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.algebra.mxalgebra.html#right_mx_ideal"><span class="id" title="definition">right_mx_ideal</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="irrType"><span class="id" title="definition">irrType</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#socleType"><span class="id" title="record">socleType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a>.<br/> -<span class="id" title="keyword">Identity</span> <span class="id" title="keyword">Coercion</span> <span class="id" title="var">type_of_irrType</span> : <span class="id" title="var">irrType</span> >-> <span class="id" title="var">socleType</span>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="FieldRepr.Regular.sG"><span class="id" title="variable">sG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#irrType"><span class="id" title="definition">irrType</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="irr_degree"><span class="id" title="definition">irr_degree</span></a> (<span class="id" title="var">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.sG"><span class="id" title="variable">sG</span></a>) := <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#socle_base"><span class="id" title="definition">socle_base</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">)</span></a>.<br/> -<span class="id" title="keyword">Local Open</span> <span class="id" title="keyword">Scope</span> <span class="id" title="var">group_ring_scope</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_degreeE"><span class="id" title="lemma">irr_degreeE</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">n_i</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.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#socle_base"><span class="id" title="definition">socle_base</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">)</span></a>. <br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_degree_gt0"><span class="id" title="lemma">irr_degree_gt0</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">n_i</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">></span></a> 0.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="irr_repr"><span class="id" title="definition">irr_repr</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">n_i</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_repr"><span class="id" title="definition">socle_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>.<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_reprE"><span class="id" title="lemma">irr_reprE</span></a> <span class="id" title="var">i</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#irr_repr"><span class="id" title="definition">irr_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#submod_mx"><span class="id" title="definition">submod_mx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_module"><span class="id" title="definition">socle_module</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rfix_regular"><span class="id" title="lemma">rfix_regular</span></a> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_row"><span class="id" title="definition">gring_row</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gset_mx"><span class="id" title="definition">gset_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.G"><span class="id" title="variable">G</span></a>))%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="principal_comp_subproof"><span class="id" title="lemma">principal_comp_subproof</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.G"><span class="id" title="variable">G</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Fact</span> <a name="principal_comp_key"><span class="id" title="lemma">principal_comp_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="principal_comp_def"><span class="id" title="definition">principal_comp_def</span></a> :=<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#PackSocle"><span class="id" title="constructor">PackSocle</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#component_socle"><span class="id" title="lemma">component_socle</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.sG"><span class="id" title="variable">sG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#principal_comp_subproof"><span class="id" title="lemma">principal_comp_subproof</span></a>).<br/> -<span class="id" title="keyword">Definition</span> <a name="principal_comp"><span class="id" title="definition">principal_comp</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.character.mxrepresentation.html#principal_comp_key"><span class="id" title="lemma">principal_comp_key</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#principal_comp_def"><span class="id" title="definition">principal_comp_def</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr1_rfix"><span class="id" title="lemma">irr1_rfix</span></a> : (1%<span class="id" title="var">irr</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.G"><span class="id" title="variable">G</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rank_irr1"><span class="id" title="lemma">rank_irr1</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> 1%<span class="id" title="var">irr</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> 1%<span class="id" title="var">N</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="degree_irr1"><span class="id" title="lemma">degree_irr1</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">n_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> 1%<span class="id" title="var">N</span>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="Wedderburn_subring"><span class="id" title="definition">Wedderburn_subring</span></a> (<span class="id" title="var">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.sG"><span class="id" title="variable">sG</span></a>) := <a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation"><<</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation">>></span></a>%<span class="id" title="var">MS</span>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.Regular.sums_R"><span class="id" title="variable">sums_R</span></a> : (<a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">sum_i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Socle"><span class="id" title="definition">Socle</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.sG"><span class="id" title="variable">sG</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_ideal"><span class="id" title="lemma">Wedderburn_ideal</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#mx_ideal"><span class="id" title="definition">mx_ideal</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_direct"><span class="id" title="lemma">Wedderburn_direct</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#mxdirect"><span class="id" title="abbreviation">mxdirect</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">sum_i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_disjoint"><span class="id" title="lemma">Wedderburn_disjoint</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</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.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_j</span></a>)%<span class="id" title="var">MS</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> 0.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_annihilate"><span class="id" title="lemma">Wedderburn_annihilate</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</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.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#17486d1fe34aeecf54f5debb0e4245b6"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_j</span></a>)%<span class="id" title="var">MS</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> 0.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_mulmx0"><span class="id" title="lemma">Wedderburn_mulmx0</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">A</span> <span class="id" title="var">B</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</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.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_j</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#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> 0.<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.Regular.F'G"><span class="id" title="variable">F'G</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">char</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">]</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#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.character.mxrepresentation.html#FieldRepr.Regular.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_mx_sum"><span class="id" title="lemma">irr_mx_sum</span></a> : (<a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.sG"><span class="id" title="variable">sG</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#4cc20c6ab533394b2a577ee2dd2a6a4f"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_sum"><span class="id" title="lemma">Wedderburn_sum</span></a> : (<a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c8f30cdc06d84b3164901828b8ce3cb3"><span class="id" title="notation">sum_i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="Wedderburn_id"><span class="id" title="definition">Wedderburn_id</span></a> <span class="id" title="var">i</span> :=<br/> - <a class="idref" href="mathcomp.algebra.matrix.html#vec_mx"><span class="id" title="definition">vec_mx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#proj_mx"><span class="id" title="definition">proj_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">sum_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">(</span></a><span class="id" title="var">j</span> <a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#ba43ca3989a0bfce795ffb9f5d1783ba"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_j</span></a>)%<span class="id" title="var">MS</span>).<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_sum_id"><span class="id" title="lemma">Wedderburn_sum_id</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#de3e30c288f66ee879ea2b40e81e186c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#de3e30c288f66ee879ea2b40e81e186c"><span class="id" title="notation">sum_i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">e_i</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> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_id_mem"><span class="id" title="lemma">Wedderburn_id_mem</span></a> <span class="id" title="var">i</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">e_i</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_is_id"><span class="id" title="lemma">Wedderburn_is_id</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#mxring_id"><span class="id" title="definition">mxring_id</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">e_i</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_closed"><span class="id" title="lemma">Wedderburn_closed</span></a> <span class="id" title="var">i</span> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#17486d1fe34aeecf54f5debb0e4245b6"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</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.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_is_ring"><span class="id" title="lemma">Wedderburn_is_ring</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#mxring"><span class="id" title="definition">mxring</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_min_ideal"><span class="id" title="lemma">Wedderburn_min_ideal</span></a> <span class="id" title="var">m</span> <span class="id" title="var">i</span> (<span class="id" title="var">E</span> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#76a078f18670eba87f6da45223e154d2"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#76a078f18670eba87f6da45223e154d2"><span class="id" title="notation">A_</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#76a078f18670eba87f6da45223e154d2"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#76a078f18670eba87f6da45223e154d2"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#nG"><span class="id" title="abbreviation">nG</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#76a078f18670eba87f6da45223e154d2"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#E"><span class="id" title="variable">E</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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.character.mxrepresentation.html#E"><span class="id" title="variable">E</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a>)%<span class="id" title="var">MS</span> <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.mxalgebra.html#mx_ideal"><span class="id" title="definition">mx_ideal</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E"><span class="id" title="variable">E</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.character.mxrepresentation.html#E"><span class="id" title="variable">E</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Regular.IrrComponent"><span class="id" title="section">IrrComponent</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - The component of the socle of the regular module that is associated to an - irreducible representation. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.Regular.IrrComponent.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>) (<a name="FieldRepr.Regular.IrrComponent.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.Regular.IrrComponent.not_rsim_op0"><span class="id" title="variable">not_rsim_op0</span></a> (<span class="id" title="var">iG</span> <span class="id" title="var">j</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.sG"><span class="id" title="variable">sG</span></a>) <span class="id" title="var">A</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.IrrComponent.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#socle_repr"><span class="id" title="definition">socle_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#iG"><span class="id" title="variable">iG</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.character.mxrepresentation.html#iG"><span class="id" title="variable">iG</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</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.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_j</span></a>)%<span class="id" title="var">MS</span> <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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.IrrComponent.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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> 0.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="irr_comp"><span class="id" title="definition">irr_comp</span></a> := <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%<span class="id" title="var">irr</span> <a class="idref" href="mathcomp.ssreflect.fintype.html#17198bb01f8e546f36bb74df399b01c5"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#17198bb01f8e546f36bb74df399b01c5"><span class="id" title="notation">pick</span></a> <span class="id" title="var">i</span> <a class="idref" href="mathcomp.ssreflect.fintype.html#17198bb01f8e546f36bb74df399b01c5"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.IrrComponent.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">e_i</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> 0<a class="idref" href="mathcomp.ssreflect.fintype.html#17198bb01f8e546f36bb74df399b01c5"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.Regular.IrrComponent.irrG"><span class="id" title="variable">irrG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.IrrComponent.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rsim_irr_comp"><span class="id" title="lemma">rsim_irr_comp</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.IrrComponent.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#irr_repr"><span class="id" title="definition">irr_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#iG"><span class="id" title="abbreviation">iG</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_comp'_op0"><span class="id" title="lemma">irr_comp'_op0</span></a> <span class="id" title="var">j</span> <span class="id" title="var">A</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#iG"><span class="id" title="abbreviation">iG</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.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_j</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.IrrComponent.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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> 0.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_comp_envelop"><span class="id" title="lemma">irr_comp_envelop</span></a> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_iG</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#lin_mx"><span class="id" title="definition">lin_mx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.IrrComponent.rG"><span class="id" title="variable">rG</span></a>) <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="ker_irr_comp_op"><span class="id" title="lemma">ker_irr_comp_op</span></a> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_iG</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#92683a3ca3b0c0704351ce117beaffe3"><span class="id" title="notation">:&:</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#kermx"><span class="id" title="definition">kermx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#lin_mx"><span class="id" title="definition">lin_mx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.IrrComponent.rG"><span class="id" title="variable">rG</span></a>)))%<span class="id" title="var">MS</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> 0.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="regular_op_inj"><span class="id" title="lemma">regular_op_inj</span></a> :<br/> - <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="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#27dabc72ea2c2c768f2db80a79f42524"><span class="id" title="notation">[</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#27dabc72ea2c2c768f2db80a79f42524"><span class="id" title="notation">pred</span></a> <span class="id" title="var">A</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#27dabc72ea2c2c768f2db80a79f42524"><span class="id" title="notation">|</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_iG</span></a>)%<span class="id" title="var">MS</span><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#27dabc72ea2c2c768f2db80a79f42524"><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.ssrfun.html#injective"><span class="id" title="definition">injective</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.IrrComponent.rG"><span class="id" title="variable">rG</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>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rank_irr_comp"><span class="id" title="lemma">rank_irr_comp</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_iG</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.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#E_G"><span class="id" title="abbreviation">E_G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.IrrComponent"><span class="id" title="section">IrrComponent</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_comp_rsim"><span class="id" title="lemma">irr_comp_rsim</span></a> <span class="id" title="var">n1</span> <span class="id" title="var">n2</span> <span class="id" title="var">rG1</span> <span class="id" title="var">rG2</span> :<br/> - @<a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <span class="id" title="var">_</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</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.character.mxrepresentation.html#irr_comp"><span class="id" title="definition">irr_comp</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</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.character.mxrepresentation.html#irr_comp"><span class="id" title="definition">irr_comp</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_reprK"><span class="id" title="lemma">irr_reprK</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#irr_comp"><span class="id" title="definition">irr_comp</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#irr_repr"><span class="id" title="definition">irr_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_repr'_op0"><span class="id" title="lemma">irr_repr'_op0</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">A</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b07e6617bc8db0b83b350e09f8851b51"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_j</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#irr_repr"><span class="id" title="definition">irr_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.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> 0.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="op_Wedderburn_id"><span class="id" title="lemma">op_Wedderburn_id</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#gring_op"><span class="id" title="definition">gring_op</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#irr_repr"><span class="id" title="definition">irr_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">e_i</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> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_comp_id"><span class="id" title="lemma">irr_comp_id</span></a> (<span class="id" title="var">M</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_nG</span></a>) (<span class="id" title="var">modM</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a>) (<span class="id" title="var">iM</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.sG"><span class="id" title="variable">sG</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#iM"><span class="id" title="variable">iM</span></a>)%<span class="id" title="var">MS</span> <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.character.mxrepresentation.html#irr_comp"><span class="id" title="definition">irr_comp</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#submod_repr"><span class="id" title="definition">submod_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modM"><span class="id" title="variable">modM</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.character.mxrepresentation.html#iM"><span class="id" title="variable">iM</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr1_repr"><span class="id" title="lemma">irr1_repr</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.Regular.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.character.mxrepresentation.html#irr_repr"><span class="id" title="definition">irr_repr</span></a> 1 <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Hypothesis</span> <a name="FieldRepr.Regular.splitG"><span class="id" title="variable">splitG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rank_Wedderburn_subring"><span class="id" title="lemma">rank_Wedderburn_subring</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#b8af73c258a533909a2acba13114d67c"><span class="id" title="notation">rank</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</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.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">n_i</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> 2)%<span class="id" title="var">N</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="sum_irr_degree"><span class="id" title="lemma">sum_irr_degree</span></a> : (<a class="idref" href="mathcomp.ssreflect.bigop.html#e903f8dba09838168c567661c1b86640"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.ssreflect.bigop.html#e903f8dba09838168c567661c1b86640"><span class="id" title="notation">sum_i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">n_i</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><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> <a class="idref" href="mathcomp.character.mxrepresentation.html#nG"><span class="id" title="abbreviation">nG</span></a>)%<span class="id" title="var">N</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_mx_mult"><span class="id" title="lemma">irr_mx_mult</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_mult"><span class="id" title="definition">socle_mult</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</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.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">n_i</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxtrace_regular"><span class="id" title="lemma">mxtrace_regular</span></a> :<br/> - <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.character.mxrepresentation.html#FieldRepr.Regular.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">x</span>, <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#aG"><span class="id" title="abbreviation">aG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><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.algebra.ssralg.html#de3e30c288f66ee879ea2b40e81e186c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#de3e30c288f66ee879ea2b40e81e186c"><span class="id" title="notation">sum_i</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">tr</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#socle_repr"><span class="id" title="definition">socle_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#055f111b06ebab166375c628a8e0315f"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#e9001f602764f7896bb1eb34bf606a23"><span class="id" title="notation">*+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">n_i</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/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="linear_irr"><span class="id" title="definition">linear_irr</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">i</span> <a class="idref" href="mathcomp.ssreflect.finset.html#9e3f1d0cf47c39e3927b1f03a0797327"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">n_i</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="mathcomp.ssreflect.finset.html#9e3f1d0cf47c39e3927b1f03a0797327"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_degree_abelian"><span class="id" title="lemma">irr_degree_abelian</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#abelian"><span class="id" title="definition">abelian</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.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> <span class="id" title="keyword">∀</span> <span class="id" title="var">i</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">n_i</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> 1%<span class="id" title="var">N</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="linear_irr_comp"><span class="id" title="lemma">linear_irr_comp</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#c76c6c26fb72cd04c64ab5deab6af994"><span class="id" title="notation">n_i</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> 1%<span class="id" title="var">N</span> <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.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#socle_base"><span class="id" title="definition">socle_base</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_subring_center"><span class="id" title="lemma">Wedderburn_subring_center</span></a> <span class="id" title="var">i</span> : (<a class="idref" href="mathcomp.algebra.mxalgebra.html#c6c995a25415413a47df0a8d4a5b9d94"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c6c995a25415413a47df0a8d4a5b9d94"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c6c995a25415413a47df0a8d4a5b9d94"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#fed1998123fd4374722b35d4bd45df37"><span class="id" title="notation">R_i</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c6c995a25415413a47df0a8d4a5b9d94"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">e_i</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="Wedderburn_center"><span class="id" title="lemma">Wedderburn_center</span></a> :<br/> - (<a class="idref" href="mathcomp.algebra.mxalgebra.html#c6c995a25415413a47df0a8d4a5b9d94"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c6c995a25415413a47df0a8d4a5b9d94"><span class="id" title="notation">Z</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c6c995a25415413a47df0a8d4a5b9d94"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#R_G"><span class="id" title="abbreviation">R_G</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#c6c995a25415413a47df0a8d4a5b9d94"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">matrix_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><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.character.mxrepresentation.html#FieldRepr.Regular.sG"><span class="id" title="variable">sG</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a><a class="idref" href="mathcomp.algebra.matrix.html#8741a4b06f31c1d83a8c7654b1254f7b"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">e_</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#enum_val"><span class="id" title="definition">enum_val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#054dde6e8475b5f978f6fc72d9b3020d"><span class="id" title="notation">)</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="card_irr"><span class="id" title="lemma">card_irr</span></a> : <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.sG"><span class="id" title="variable">sG</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.character.mxrepresentation.html#tG"><span class="id" title="abbreviation">tG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.Regular.CenterMode"><span class="id" title="section">CenterMode</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="FieldRepr.Regular.CenterMode.i"><span class="id" title="variable">i</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.sG"><span class="id" title="variable">sG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="FieldRepr.Regular.CenterMode.i0"><span class="id" title="variable">i0</span></a> := <a class="idref" href="mathcomp.ssreflect.fintype.html#Ordinal"><span class="id" title="constructor">Ordinal</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#irr_degree_gt0"><span class="id" title="lemma">irr_degree_gt0</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.CenterMode.i"><span class="id" title="variable">i</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="irr_mode"><span class="id" title="definition">irr_mode</span></a> <span class="id" title="var">x</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#irr_repr"><span class="id" title="definition">irr_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.CenterMode.i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.CenterMode.i0"><span class="id" title="variable">i0</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.CenterMode.i0"><span class="id" title="variable">i0</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_mode1"><span class="id" title="lemma">irr_mode1</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#irr_mode"><span class="id" title="definition">irr_mode</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.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_center_scalar"><span class="id" title="lemma">irr_center_scalar</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.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.character.mxrepresentation.html#FieldRepr.Regular.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#8c08d4203604dbed63e7afa9b689d858"><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.character.mxrepresentation.html#irr_repr"><span class="id" title="definition">irr_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.CenterMode.i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#irr_mode"><span class="id" title="definition">irr_mode</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">)%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_modeM"><span class="id" title="lemma">irr_modeM</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.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.character.mxrepresentation.html#FieldRepr.Regular.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#b4f176550f5b849a7fbba2ee164934d3"><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">{</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.character.mxrepresentation.html#irr_mode"><span class="id" title="definition">irr_mode</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">x</span> <span class="id" title="var">y</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.character.mxrepresentation.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.character.mxrepresentation.html#y"><span class="id" title="variable">y</span></a>)%<span class="id" title="var">g</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#2d0cfb150261028f4ebd2ba355623dcc"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#y"><span class="id" title="variable">y</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.ssrbool.html#b4f176550f5b849a7fbba2ee164934d3"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_modeX"><span class="id" title="lemma">irr_modeX</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#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.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.character.mxrepresentation.html#FieldRepr.Regular.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#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.character.mxrepresentation.html#irr_mode"><span class="id" title="definition">irr_mode</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">x</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.character.mxrepresentation.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.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>)%<span class="id" title="var">g</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#663140372ac3b275aae871b74b140513"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</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.ssrbool.html#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_mode_unit"><span class="id" title="lemma">irr_mode_unit</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.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.character.mxrepresentation.html#FieldRepr.Regular.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#8c08d4203604dbed63e7afa9b689d858"><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.character.mxrepresentation.html#irr_mode"><span class="id" title="definition">irr_mode</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#f6c65697fefaf4504de1d4d641cd4409"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#f6c65697fefaf4504de1d4d641cd4409"><span class="id" title="notation">is</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#f6c65697fefaf4504de1d4d641cd4409"><span class="id" title="notation">a</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#8c08d4203604dbed63e7afa9b689d858"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_mode_neq0"><span class="id" title="lemma">irr_mode_neq0</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.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.character.mxrepresentation.html#FieldRepr.Regular.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#8c08d4203604dbed63e7afa9b689d858"><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.character.mxrepresentation.html#irr_mode"><span class="id" title="definition">irr_mode</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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> 0<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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr_modeV"><span class="id" title="lemma">irr_modeV</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.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.character.mxrepresentation.html#FieldRepr.Regular.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#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.character.mxrepresentation.html#irr_mode"><span class="id" title="definition">irr_mode</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">x</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a>)%<span class="id" title="var">g</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#4e5a4c91ec0aa12de06dfe1cc07ea126"><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">}</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/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular.CenterMode"><span class="id" title="section">CenterMode</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="irr1_mode"><span class="id" title="lemma">irr1_mode</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.Regular.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.character.mxrepresentation.html#irr_mode"><span class="id" title="definition">irr_mode</span></a> 1 <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> 1.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.Regular"><span class="id" title="section">Regular</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="FieldRepr.LinearIrr"><span class="id" title="section">LinearIrr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="FieldRepr.LinearIrr.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="FieldRepr.LinearIrr.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.character.mxrepresentation.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">Lemma</span> <a name="card_linear_irr"><span class="id" title="lemma">card_linear_irr</span></a> (<span class="id" title="var">sG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#irrType"><span class="id" title="definition">irrType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.G"><span class="id" title="variable">G</span></a>) :<br/> - <a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">char</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">]</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#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.character.mxrepresentation.html#FieldRepr.LinearIrr.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.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.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><br/> - <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#linear_irr"><span class="id" title="definition">linear_irr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="variable">sG</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.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.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.character.mxrepresentation.html#FieldRepr.LinearIrr.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.fingroup.fingroup.html#0665f11b64f1431f9d664aba3c000866"><span class="id" title="notation">|</span></a>%<span class="id" title="var">g</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="primitive_root_splitting_abelian"><span class="id" title="lemma">primitive_root_splitting_abelian</span></a> (<span class="id" title="var">z</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a>) :<br/> - <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.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.algebra.poly.html#ad6a7217bc47606779ec5b6d2378a1dd"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.algebra.poly.html#ad6a7217bc47606779ec5b6d2378a1dd"><span class="id" title="notation">primitive_root</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#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.character.mxrepresentation.html#FieldRepr.LinearIrr.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.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="cycle_repr_structure"><span class="id" title="lemma">cycle_repr_structure</span></a> <span class="id" title="var">x</span> (<span class="id" title="var">sG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#irrType"><span class="id" title="definition">irrType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.G"><span class="id" title="variable">G</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.G"><span class="id" title="variable">G</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#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation"><[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><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.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">char</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">]</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#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.character.mxrepresentation.html#FieldRepr.LinearIrr.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.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.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><br/> - <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">w</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.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</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.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.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.algebra.poly.html#ad6a7217bc47606779ec5b6d2378a1dd"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.algebra.poly.html#ad6a7217bc47606779ec5b6d2378a1dd"><span class="id" title="notation">primitive_root</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#w"><span class="id" title="variable">w</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><br/> - <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">iphi</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">I_</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.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.character.mxrepresentation.html#sG"><span class="id" title="variable">sG</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/> - <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.ssrfun.html#bijective"><span class="id" title="inductive">bijective</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#iphi"><span class="id" title="variable">iphi</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="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#sG"><span class="id" title="variable">sG</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.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.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.ssr.ssrbool.html#554fc3f3cf0a27fe0863b7741d119014"><span class="id" title="notation">,</span></a><br/> - <span class="id" title="keyword">∀</span> <span class="id" title="var">i</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#irr_mode"><span class="id" title="definition">irr_mode</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#iphi"><span class="id" title="variable">iphi</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#w"><span class="id" title="variable">w</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#663140372ac3b275aae871b74b140513"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><br/> - <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="keyword">∀</span> <span class="id" title="var">i</span>, <a class="idref" href="mathcomp.character.mxrepresentation.html#irr_repr"><span class="id" title="definition">irr_repr</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#iphi"><span class="id" title="variable">iphi</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#w"><span class="id" title="variable">w</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#663140372ac3b275aae871b74b140513"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">)%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">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>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="splitting_cyclic_primitive_root"><span class="id" title="lemma">splitting_cyclic_primitive_root</span></a> :<br/> - <a class="idref" href="mathcomp.solvable.cyclic.html#cyclic"><span class="id" title="definition">cyclic</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.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.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">char</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#0928aaf0450c3a4c5521d7d3da15b6d8"><span class="id" title="notation">]</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#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.character.mxrepresentation.html#FieldRepr.LinearIrr.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.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr.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><br/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#classically"><span class="id" title="definition">classically</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">{</span></a><span class="id" title="var">z</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.F"><span class="id" title="variable">F</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><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.character.mxrepresentation.html#FieldRepr.LinearIrr.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.algebra.poly.html#ad6a7217bc47606779ec5b6d2378a1dd"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.algebra.poly.html#ad6a7217bc47606779ec5b6d2378a1dd"><span class="id" title="notation">primitive_root</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.Specif.html#6556914db359db999889decec6a4a562"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr.LinearIrr"><span class="id" title="section">LinearIrr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#FieldRepr"><span class="id" title="section">FieldRepr</span></a>.<br/> - -<br/> - -<br/> - -<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Notation</span> <a name="2fc7104f415f5748dd0aaca6d2c766b8"><span class="id" title="notation">"</span></a>'Cl" := (<a class="idref" href="mathcomp.character.mxrepresentation.html#Clifford_action"><span class="id" title="definition">Clifford_action</span></a> <span class="id" title="var">_</span>) : <span class="id" title="var">action_scope</span>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Notation</span> <a name="c49896f064298adaf11dc4abacd4c29b"><span class="id" title="notation">"</span></a>[ 1 sG ]" := (<a class="idref" href="mathcomp.character.mxrepresentation.html#principal_comp"><span class="id" title="definition">principal_comp</span></a> <span class="id" title="var">sG</span>) : <span class="id" title="var">irrType_scope</span>.<br/> -<span class="id" title="keyword">Notation</span> <a name="3b62e426b0060d2e9cc71f9b19a809c8"><span class="id" title="notation">"</span></a>''n_' i" := (<a class="idref" href="mathcomp.character.mxrepresentation.html#irr_degree"><span class="id" title="definition">irr_degree</span></a> <span class="id" title="var">i</span>) : <span class="id" title="var">group_ring_scope</span>.<br/> -<span class="id" title="keyword">Notation</span> <a name="694a7bd3e93c188dd682d276c2de1ba7"><span class="id" title="notation">"</span></a>''R_' i" := (<a class="idref" href="mathcomp.character.mxrepresentation.html#Wedderburn_subring"><span class="id" title="definition">Wedderburn_subring</span></a> <span class="id" title="var">i</span>) : <span class="id" title="var">group_ring_scope</span>.<br/> -<span class="id" title="keyword">Notation</span> <a name="5baf4780359156a377cb3b1121c1e7d1"><span class="id" title="notation">"</span></a>''e_' i" := (<a class="idref" href="mathcomp.character.mxrepresentation.html#Wedderburn_id"><span class="id" title="definition">Wedderburn_id</span></a> <span class="id" title="var">i</span>) : <span class="id" title="var">group_ring_scope</span>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="DecideRed"><span class="id" title="section">DecideRed</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Import</span> <span class="id" title="var">MatrixFormula</span>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="DecideRed.Definitions"><span class="id" title="section">Definitions</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="DecideRed.Definitions.F"><span class="id" title="variable">F</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.Exports.fieldType"><span class="id" title="abbreviation">fieldType</span></a>) (<a name="DecideRed.Definitions.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="DecideRed.Definitions.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.character.mxrepresentation.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="DecideRed.Definitions.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">Variable</span> <a name="DecideRed.Definitions.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.n"><span class="id" title="variable">n</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mxmodule_form"><span class="id" title="definition">mxmodule_form</span></a> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#term"><span class="id" title="abbreviation">term</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>) :=<br/> - <a class="idref" href="mathcomp.ssreflect.bigop.html#d37140b0b5d9683da109df6bc7f32772"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.ssreflect.bigop.html#d37140b0b5d9683da109df6bc7f32772"><span class="id" title="notation">big</span></a><a class="idref" href="mathcomp.ssreflect.bigop.html#d37140b0b5d9683da109df6bc7f32772"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#And"><span class="id" title="abbreviation">And</span></a><a class="idref" href="mathcomp.ssreflect.bigop.html#d37140b0b5d9683da109df6bc7f32772"><span class="id" title="notation">/</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#True"><span class="id" title="abbreviation">True</span></a><a class="idref" href="mathcomp.ssreflect.bigop.html#d37140b0b5d9683da109df6bc7f32772"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.ssreflect.bigop.html#d37140b0b5d9683da109df6bc7f32772"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.ssreflect.bigop.html#d37140b0b5d9683da109df6bc7f32772"><span class="id" title="notation">(</span></a><span class="id" title="var">x</span> <a class="idref" href="mathcomp.ssreflect.bigop.html#d37140b0b5d9683da109df6bc7f32772"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.G"><span class="id" title="variable">G</span></a><a class="idref" href="mathcomp.ssreflect.bigop.html#d37140b0b5d9683da109df6bc7f32772"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.submx_form"><span class="id" title="definition">submx_form</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mulmx_term"><span class="id" title="definition">mulmx_term</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mx_term"><span class="id" title="definition">mx_term</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>))) <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule_form_qf"><span class="id" title="lemma">mxmodule_form_qf</span></a> <span class="id" title="var">U</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#qf_form"><span class="id" title="abbreviation">qf_form</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule_form"><span class="id" title="definition">mxmodule_form</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="eval_mxmodule"><span class="id" title="lemma">eval_mxmodule</span></a> <span class="id" title="var">U</span> <span class="id" title="var">e</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#qf_eval"><span class="id" title="abbreviation">qf_eval</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule_form"><span class="id" title="definition">mxmodule_form</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.eval_mx"><span class="id" title="definition">eval_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mxnonsimple_form"><span class="id" title="definition">mxnonsimple_form</span></a> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#term"><span class="id" title="abbreviation">term</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>) :=<br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">V</span> := <a class="idref" href="mathcomp.algebra.matrix.html#vec_mx"><span class="id" title="definition">vec_mx</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.row_var"><span class="id" title="definition">row_var</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.F"><span class="id" title="variable">F</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#ea2ff3d561159081cea6fb2e8113cc54"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.n"><span class="id" title="variable">n</span></a>) 0) <span class="id" title="tactic">in</span><br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">nzV</span> := (<a class="idref" href="mathcomp.algebra.ssralg.html#5a358d3997cc6f2a7919089a2f91e45f"><span class="id" title="notation">¬</span></a> <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mxrank_form"><span class="id" title="definition">mxrank_form</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">T</span> <span class="id" title="tactic">in</span><br/> - <span class="id" title="keyword">let</span> <span class="id" title="var">properVU</span> := (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.submx_form"><span class="id" title="definition">submx_form</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#5a500d4ce4c6eea4df7cd2e3cacc0360"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#5a358d3997cc6f2a7919089a2f91e45f"><span class="id" title="notation">¬</span></a> <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.submx_form"><span class="id" title="definition">submx_form</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">T</span> <span class="id" title="tactic">in</span><br/> - (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.Exists_row_form"><span class="id" title="definition">Exists_row_form</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#ea2ff3d561159081cea6fb2e8113cc54"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions.n"><span class="id" title="variable">n</span></a>) 0 (<a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule_form"><span class="id" title="definition">mxmodule_form</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#5a500d4ce4c6eea4df7cd2e3cacc0360"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#nzV"><span class="id" title="variable">nzV</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#5a500d4ce4c6eea4df7cd2e3cacc0360"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#properVU"><span class="id" title="variable">properVU</span></a>))%<span class="id" title="var">T</span>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.Definitions"><span class="id" title="section">Definitions</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="DecideRed.F"><span class="id" title="variable">F</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.DecidableField.Exports.decFieldType"><span class="id" title="abbreviation">decFieldType</span></a>) (<a name="DecideRed.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="DecideRed.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.character.mxrepresentation.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="DecideRed.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">Variable</span> <a name="DecideRed.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.n"><span class="id" title="variable">n</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="mxnonsimple_sat"><span class="id" title="definition">mxnonsimple_sat</span></a> <span class="id" title="var">U</span> :=<br/> - <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.sat"><span class="id" title="definition">GRing.sat</span></a> (@<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.row_env"><span class="id" title="definition">row_env</span></a> <span class="id" title="var">_</span> (<a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#ea2ff3d561159081cea6fb2e8113cc54"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.n"><span class="id" title="variable">n</span></a>) <a class="idref" href="mathcomp.ssreflect.seq.html#0a934e621391740b862762275992e626"><span class="id" title="notation">[::]</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#mxnonsimple_form"><span class="id" title="definition">mxnonsimple_form</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mx_term"><span class="id" title="definition">mx_term</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxnonsimpleP"><span class="id" title="lemma">mxnonsimpleP</span></a> <span class="id" title="var">U</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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="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.character.mxrepresentation.html#mxnonsimple"><span class="id" title="definition">mxnonsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#mxnonsimple_sat"><span class="id" title="definition">mxnonsimple_sat</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="dec_mxsimple_exists"><span class="id" title="lemma">dec_mxsimple_exists</span></a> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</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="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#c0bbd202248f4def7aaf0c316cf2c29e"><span class="id" title="notation">{</span></a><span class="id" title="var">V</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#c0bbd202248f4def7aaf0c316cf2c29e"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#c0bbd202248f4def7aaf0c316cf2c29e"><span class="id" title="notation">&</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.Specif.html#c0bbd202248f4def7aaf0c316cf2c29e"><span class="id" title="notation">}</span></a>%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="dec_mx_reducible_semisimple"><span class="id" title="lemma">dec_mx_reducible_semisimple</span></a> <span class="id" title="var">U</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mx_completely_reducible"><span class="id" title="definition">mx_completely_reducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxsemisimple"><span class="id" title="inductive">mxsemisimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="DecSocleType"><span class="id" title="lemma">DecSocleType</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#socleType"><span class="id" title="record">socleType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#DecideRed"><span class="id" title="section">DecideRed</span></a>.<br/> - -<br/> - -<br/> -</div> - -<div class="doc"> - Change of representation field (by tensoring) -</div> -<div class="code"> -<span class="id" title="keyword">Section</span> <a name="ChangeOfField"><span class="id" title="section">ChangeOfField</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="ChangeOfField.aF"><span class="id" title="variable">aF</span></a> <a name="ChangeOfField.rF"><span class="id" title="variable">rF</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.Exports.fieldType"><span class="id" title="abbreviation">fieldType</span></a>) (<a name="ChangeOfField.f"><span class="id" title="variable">f</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#d531732ed602c7af62b88c7cfce824e5"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#d531732ed602c7af62b88c7cfce824e5"><span class="id" title="notation">rmorphism</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#aF"><span class="id" title="variable">aF</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.character.mxrepresentation.html#rF"><span class="id" title="variable">rF</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#d531732ed602c7af62b88c7cfce824e5"><span class="id" title="notation">}</span></a>).<br/> -<span class="id" title="keyword">Variables</span> (<a name="ChangeOfField.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="ChangeOfField.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.character.mxrepresentation.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">Section</span> <a name="ChangeOfField.OneRepresentation"><span class="id" title="section">OneRepresentation</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="ChangeOfField.OneRepresentation.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>) (<a name="ChangeOfField.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.aF"><span class="id" title="variable">aF</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_rfix_mx"><span class="id" title="lemma">map_rfix_mx</span></a> <span class="id" title="var">H</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">)^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">f</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.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rcent_map"><span class="id" title="lemma">rcent_map</span></a> <span class="id" title="var">A</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">f</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.character.mxrepresentation.html#rcent"><span class="id" title="definition">rcent</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstab_map"><span class="id" title="lemma">rstab_map</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">f</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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rstabs_map"><span class="id" title="lemma">rstabs_map</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">f</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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="centgmx_map"><span class="id" title="lemma">centgmx_map</span></a> <span class="id" title="var">A</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">f</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.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxmodule_map"><span class="id" title="lemma">mxmodule_map</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">f</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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mxsimple_map"><span class="id" title="lemma">mxsimple_map</span></a> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2a5412586d59ba16d2c60c55e120c7ee"><span class="id" title="notation">M_n</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">f</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.character.mxrepresentation.html#mxsimple"><span class="id" title="definition">mxsimple</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_irr_map"><span class="id" title="lemma">mx_irr_map</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</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.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="rker_map"><span class="id" title="lemma">rker_map</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_mx_faithful"><span class="id" title="lemma">map_mx_faithful</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</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.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_mx_abs_irr"><span class="id" title="lemma">map_mx_abs_irr</span></a> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="abbreviation">rGf</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.character.mxrepresentation.html#mx_absolutely_irreducible"><span class="id" title="definition">mx_absolutely_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.OneRepresentation"><span class="id" title="section">OneRepresentation</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="mx_rsim_map"><span class="id" title="lemma">mx_rsim_map</span></a> <span class="id" title="var">n1</span> <span class="id" title="var">n2</span> <span class="id" title="var">rG1</span> <span class="id" title="var">rG2</span> :<br/> - @<a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> <span class="id" title="var">_</span> <span class="id" title="var">_</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n1"><span class="id" title="variable">n1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n2"><span class="id" title="variable">n2</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</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.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#map_repr"><span class="id" title="definition">map_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG1"><span class="id" title="variable">rG1</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#map_repr"><span class="id" title="definition">map_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG2"><span class="id" title="variable">rG2</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_section_repr"><span class="id" title="lemma">map_section_repr</span></a> <span class="id" title="var">n</span> (<span class="id" title="var">rG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.aF"><span class="id" title="variable">aF</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#n"><span class="id" title="variable">n</span></a>) <span class="id" title="var">rGf</span> <span class="id" title="var">U</span> <span class="id" title="var">V</span><br/> - (<span class="id" title="var">modU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) (<span class="id" title="var">modV</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)<br/> - (<span class="id" title="var">modUf</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="variable">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">f</span></a>) (<span class="id" title="var">modVf</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="variable">rGf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">f</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#map_repr"><span class="id" title="definition">map_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#876aa133fb3472bffd492f74ff496035"><span class="id" title="notation">=1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rGf"><span class="id" title="variable">rGf</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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#map_repr"><span class="id" title="definition">map_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.f"><span class="id" title="variable">f</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modV"><span class="id" title="variable">modV</span></a>)) (<a class="idref" href="mathcomp.character.mxrepresentation.html#section_repr"><span class="id" title="definition">section_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modUf"><span class="id" title="variable">modUf</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modVf"><span class="id" title="variable">modVf</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="map_regular_subseries"><span class="id" title="lemma">map_regular_subseries</span></a> <span class="id" title="var">U</span> <span class="id" title="var">i</span> (<span class="id" title="var">modU</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_subseries"><span class="id" title="definition">mx_subseries</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#regular_repr"><span class="id" title="definition">regular_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.aF"><span class="id" title="variable">aF</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.G"><span class="id" title="variable">G</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>)<br/> - (<span class="id" title="var">modUf</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_subseries"><span class="id" title="definition">mx_subseries</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#regular_repr"><span class="id" title="definition">regular_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.rF"><span class="id" title="variable">rF</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.G"><span class="id" title="variable">G</span></a>) <a class="idref" href="mathcomp.ssreflect.seq.html#dcd18413b33436252c77b6c6465f02bc"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.seq.html#dcd18413b33436252c77b6c6465f02bc"><span class="id" title="notation">seq</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#M"><span class="id" title="variable">M</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">^</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#ba0a667eed4af88c4a40c36abce10db5"><span class="id" title="notation">f</span></a> <a class="idref" href="mathcomp.ssreflect.seq.html#dcd18413b33436252c77b6c6465f02bc"><span class="id" title="notation">|</span></a> <span class="id" title="var">M</span> <a class="idref" href="mathcomp.ssreflect.seq.html#dcd18413b33436252c77b6c6465f02bc"><span class="id" title="notation"><-</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a><a class="idref" href="mathcomp.ssreflect.seq.html#dcd18413b33436252c77b6c6465f02bc"><span class="id" title="notation">]</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_rsim"><span class="id" title="inductive">mx_rsim</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#map_repr"><span class="id" title="definition">map_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.f"><span class="id" title="variable">f</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#subseries_repr"><span class="id" title="definition">subseries_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modU"><span class="id" title="variable">modU</span></a>)) (<a class="idref" href="mathcomp.character.mxrepresentation.html#subseries_repr"><span class="id" title="definition">subseries_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#modUf"><span class="id" title="variable">modUf</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="extend_group_splitting_field"><span class="id" title="lemma">extend_group_splitting_field</span></a> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.aF"><span class="id" title="variable">aF</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.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.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.rF"><span class="id" title="variable">rF</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField.G"><span class="id" title="variable">G</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#ChangeOfField"><span class="id" title="section">ChangeOfField</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - Construction of a splitting field FA of an irreducible representation, for - a matrix A in the centraliser of the representation. FA is the row-vector - space of the matrix algebra generated by A with basis 1, A, ..., A ^+ d.-1 - or, equivalently, the polynomials in {poly F} taken mod the (irreducible) - minimal polynomial pA of A (of degree d). - The details of the construction of FA are encapsulated in a submodule. -</div> -<div class="code"> -<span class="id" title="keyword">Module</span> <span class="id" title="keyword">Import</span> <a name="MatrixGenField"><span class="id" title="module">MatrixGenField</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - The type definition must come before the main section so that the Bind - Scope directive applies to all lemmas and definition discharged at the - of the section. -</div> -<div class="code"> -<span class="id" title="keyword">Record</span> <a name="MatrixGenField.gen_of"><span class="id" title="record">gen_of</span></a> {<span class="id" title="var">F</span> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.Exports.fieldType"><span class="id" title="abbreviation">fieldType</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.character.mxrepresentation.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> : <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="var">rG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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>} {<span class="id" title="var">A</span> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n'</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">.+1</span></a>}<br/> - (<span class="id" title="var">irrG</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a>) (<span class="id" title="var">cGA</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a>) :=<br/> - <a name="MatrixGenField.Gen"><span class="id" title="constructor">Gen</span></a> {<a name="MatrixGenField.rVval"><span class="id" title="projection">rVval</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#928a892a0c1438777aeb17535aec0378"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#928a892a0c1438777aeb17535aec0378"><span class="id" title="notation">rV</span></a><a class="idref" href="mathcomp.algebra.matrix.html#928a892a0c1438777aeb17535aec0378"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#928a892a0c1438777aeb17535aec0378"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#928a892a0c1438777aeb17535aec0378"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#928a892a0c1438777aeb17535aec0378"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.algebra.mxpoly.html#degree_mxminpoly"><span class="id" title="definition">degree_mxminpoly</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.algebra.matrix.html#928a892a0c1438777aeb17535aec0378"><span class="id" title="notation">)</span></a>}.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="MatrixGenField.GenField"><span class="id" title="section">GenField</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="MatrixGenField.GenField.F"><span class="id" title="variable">F</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.Exports.fieldType"><span class="id" title="abbreviation">fieldType</span></a>) (<a name="MatrixGenField.GenField.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="MatrixGenField.GenField.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.character.mxrepresentation.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="MatrixGenField.GenField.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">Variables</span> (<a name="MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a>) (<a name="MatrixGenField.GenField.A"><span class="id" title="variable">A</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="MatrixGenField.GenField.d_gt0"><span class="id" title="variable">d_gt0</span></a> := <a class="idref" href="mathcomp.algebra.mxpoly.html#mxminpoly_nonconstant"><span class="id" title="lemma">mxminpoly_nonconstant</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.A"><span class="id" title="variable">A</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Hypotheses</span> (<a name="MatrixGenField.GenField.irrG"><span class="id" title="variable">irrG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.irr"><span class="id" title="abbreviation">irr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a>) (<a name="MatrixGenField.GenField.cGA"><span class="id" title="variable">cGA</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.A"><span class="id" title="variable">A</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Notation</span> <a name="MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> := (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_of"><span class="id" title="record">gen_of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.irrG"><span class="id" title="variable">irrG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.cGA"><span class="id" title="variable">cGA</span></a>).<br/> -<span class="id" title="keyword">Let</span> <a name="MatrixGenField.GenField.inFA"><span class="id" title="variable">inFA</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.Gen"><span class="id" title="constructor">Gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.irrG"><span class="id" title="variable">irrG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.cGA"><span class="id" title="variable">cGA</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_subType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.ssreflect.eqtype.html#685b4c9ab7ccde70d9229dfbdb93d490"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#685b4c9ab7ccde70d9229dfbdb93d490"><span class="id" title="notation">newType</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#685b4c9ab7ccde70d9229dfbdb93d490"><span class="id" title="notation">for</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rVval"><span class="id" title="projection">rVval</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#aed478b27f23b4f753c27c8ac393febc"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</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.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">rV_d</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#685b4c9ab7ccde70d9229dfbdb93d490"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_eqMixin"><span class="id" title="definition">gen_eqMixin</span></a> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b361a0fe0b43cea5c506ee5eccc55542"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#b361a0fe0b43cea5c506ee5eccc55542"><span class="id" title="notation">eqMixin</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b361a0fe0b43cea5c506ee5eccc55542"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b361a0fe0b43cea5c506ee5eccc55542"><span class="id" title="notation">by</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b361a0fe0b43cea5c506ee5eccc55542"><span class="id" title="notation"><:]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_eqType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.ssreflect.eqtype.html#Equality.Exports.EqType"><span class="id" title="abbreviation">EqType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_eqMixin"><span class="id" title="definition">gen_eqMixin</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_choiceMixin"><span class="id" title="definition">gen_choiceMixin</span></a> := <a class="idref" href="mathcomp.ssreflect.choice.html#035054ba987e1c05f2985518b41ec31f"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#035054ba987e1c05f2985518b41ec31f"><span class="id" title="notation">choiceMixin</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#035054ba987e1c05f2985518b41ec31f"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#035054ba987e1c05f2985518b41ec31f"><span class="id" title="notation">by</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#035054ba987e1c05f2985518b41ec31f"><span class="id" title="notation"><:]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_choiceType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.ssreflect.choice.html#Choice.Exports.ChoiceType"><span class="id" title="abbreviation">ChoiceType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_choiceMixin"><span class="id" title="definition">gen_choiceMixin</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen0"><span class="id" title="definition">gen0</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.inFA"><span class="id" title="variable">inFA</span></a> 0.<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.genN"><span class="id" title="definition">genN</span></a> (<span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a>) := <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.inFA"><span class="id" title="variable">inFA</span></a> (<a class="idref" href="mathcomp.algebra.ssralg.html#8d0566c961139ec21811f52ef0c317db"><span class="id" title="notation">-</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>).<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.genD"><span class="id" title="definition">genD</span></a> (<span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a>) := <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.inFA"><span class="id" title="variable">inFA</span></a> (<a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#c7f78cf1f6a5e4f664654f7d671ca752"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#y"><span class="id" title="variable">y</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_addA"><span class="id" title="lemma">gen_addA</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#associative"><span class="id" title="definition">associative</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.genD"><span class="id" title="definition">genD</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_addC"><span class="id" title="lemma">gen_addC</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#commutative"><span class="id" title="definition">commutative</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.genD"><span class="id" title="definition">genD</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_add0r"><span class="id" title="lemma">gen_add0r</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#left_id"><span class="id" title="definition">left_id</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen0"><span class="id" title="definition">gen0</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.genD"><span class="id" title="definition">genD</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_addNr"><span class="id" title="lemma">gen_addNr</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#left_inverse"><span class="id" title="definition">left_inverse</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen0"><span class="id" title="definition">gen0</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.genN"><span class="id" title="definition">genN</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.genD"><span class="id" title="definition">genD</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_zmodMixin"><span class="id" title="definition">gen_zmodMixin</span></a> := <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Zmodule.Exports.ZmodMixin"><span class="id" title="abbreviation">ZmodMixin</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_addA"><span class="id" title="lemma">gen_addA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_addC"><span class="id" title="lemma">gen_addC</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_add0r"><span class="id" title="lemma">gen_add0r</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_addNr"><span class="id" title="lemma">gen_addNr</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_zmodType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Zmodule.Exports.ZmodType"><span class="id" title="abbreviation">ZmodType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_zmodMixin"><span class="id" title="definition">gen_zmodMixin</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.pval"><span class="id" title="definition">pval</span></a> (<span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a>) := <a class="idref" href="mathcomp.algebra.mxpoly.html#rVpoly"><span class="id" title="definition">rVpoly</span></a> (<a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> (<span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a>) := <a class="idref" href="mathcomp.algebra.mxpoly.html#horner_mx"><span class="id" title="definition">horner_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.A"><span class="id" title="variable">A</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.pval"><span class="id" title="definition">pval</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen"><span class="id" title="definition">gen</span></a> (<span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.F"><span class="id" title="variable">F</span></a>) := <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.inFA"><span class="id" title="variable">inFA</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#poly_rV"><span class="id" title="definition">poly_rV</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.poly.html#8b14e41ab5fcce2460b8672da1456d67"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.poly.html#8b14e41ab5fcce2460b8672da1456d67"><span class="id" title="notation">P</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.genK"><span class="id" title="lemma">genK</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen"><span class="id" title="definition">gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxval_inj"><span class="id" title="lemma">mxval_inj</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.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxval0"><span class="id" title="lemma">mxval0</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> 0 <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> 0.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxvalN"><span class="id" title="lemma">mxvalN</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">morph</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><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.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#8d0566c961139ec21811f52ef0c317db"><span class="id" title="notation">-</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxvalD"><span class="id" title="lemma">mxvalD</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">morph</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">:</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#c7f78cf1f6a5e4f664654f7d671ca752"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.mxval_sum"><span class="id" title="definition">mxval_sum</span></a> := <a class="idref" href="mathcomp.ssreflect.bigop.html#big_morph"><span class="id" title="lemma">big_morph</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxvalD"><span class="id" title="lemma">mxvalD</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval0"><span class="id" title="lemma">mxval0</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen1"><span class="id" title="definition">gen1</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.inFA"><span class="id" title="variable">inFA</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#poly_rV"><span class="id" title="definition">poly_rV</span></a> 1).<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.genM"><span class="id" title="definition">genM</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.inFA"><span class="id" title="variable">inFA</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#poly_rV"><span class="id" title="definition">poly_rV</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.pval"><span class="id" title="definition">pval</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#2d0cfb150261028f4ebd2ba355623dcc"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.pval"><span class="id" title="definition">pval</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.algebra.polydiv.html#d8832071e7663562cc14f17c6edf99dc"><span class="id" title="notation">%%</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.pA"><span class="id" title="abbreviation">pA</span></a>)).<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.genV"><span class="id" title="definition">genV</span></a> <span class="id" title="var">x</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.inFA"><span class="id" title="variable">inFA</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#poly_rV"><span class="id" title="definition">poly_rV</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#mx_inv_horner"><span class="id" title="definition">mx_inv_horner</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#4e5a4c91ec0aa12de06dfe1cc07ea126"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#4e5a4c91ec0aa12de06dfe1cc07ea126"><span class="id" title="notation">)^-1</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxval_gen1"><span class="id" title="lemma">mxval_gen1</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen1"><span class="id" title="definition">gen1</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> 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxval_genM"><span class="id" title="lemma">mxval_genM</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.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</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">x</span> <span class="id" title="var">y</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.character.mxrepresentation.html#MatrixGenField.genM"><span class="id" title="definition">genM</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#y"><span class="id" title="variable">y</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="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#y"><span class="id" title="variable">y</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>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxval_genV"><span class="id" title="lemma">mxval_genV</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.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</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">x</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.character.mxrepresentation.html#MatrixGenField.genV"><span class="id" title="definition">genV</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">>-></span></a> <a class="idref" href="mathcomp.algebra.matrix.html#invmx"><span class="id" title="definition">invmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_mulA"><span class="id" title="lemma">gen_mulA</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#associative"><span class="id" title="definition">associative</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.genM"><span class="id" title="definition">genM</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_mulC"><span class="id" title="lemma">gen_mulC</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#commutative"><span class="id" title="definition">commutative</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.genM"><span class="id" title="definition">genM</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_mul1r"><span class="id" title="lemma">gen_mul1r</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#left_id"><span class="id" title="definition">left_id</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen1"><span class="id" title="definition">gen1</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.genM"><span class="id" title="definition">genM</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_mulDr"><span class="id" title="lemma">gen_mulDr</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#left_distributive"><span class="id" title="definition">left_distributive</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.genM"><span class="id" title="definition">genM</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#a87d5ea2e207e69e5e474db24f56d4cb"><span class="id" title="notation">+%</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#a87d5ea2e207e69e5e474db24f56d4cb"><span class="id" title="notation">R</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_ntriv"><span class="id" title="lemma">gen_ntriv</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen1"><span class="id" title="definition">gen1</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> 0.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_ringMixin"><span class="id" title="definition">gen_ringMixin</span></a> :=<br/> - <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.ComRing.Exports.ComRingMixin"><span class="id" title="abbreviation">ComRingMixin</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_mulA"><span class="id" title="lemma">gen_mulA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_mulC"><span class="id" title="lemma">gen_mulC</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_mul1r"><span class="id" title="lemma">gen_mul1r</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_mulDr"><span class="id" title="lemma">gen_mulDr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_ntriv"><span class="id" title="lemma">gen_ntriv</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_ringType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Ring.Exports.RingType"><span class="id" title="abbreviation">RingType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_ringMixin"><span class="id" title="definition">gen_ringMixin</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_comRingType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.ComRing.Exports.ComRingType"><span class="id" title="abbreviation">ComRingType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_mulC"><span class="id" title="lemma">gen_mulC</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxval1"><span class="id" title="lemma">mxval1</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</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<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>. <br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxvalM"><span class="id" title="lemma">mxvalM</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.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</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">x</span> <span class="id" title="var">y</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#2d0cfb150261028f4ebd2ba355623dcc"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#y"><span class="id" title="variable">y</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="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#y"><span class="id" title="variable">y</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>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxval_sub"><span class="id" title="lemma">mxval_sub</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Additive.Exports.additive"><span class="id" title="abbreviation">additive</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a>.<br/> - <span class="id" title="keyword">Canonical</span> <span class="id" title="var">mxval_additive</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Additive.Exports.Additive"><span class="id" title="abbreviation">Additive</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval_sub"><span class="id" title="lemma">mxval_sub</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxval_is_multiplicative"><span class="id" title="lemma">mxval_is_multiplicative</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.RMorphism.Exports.multiplicative"><span class="id" title="abbreviation">multiplicative</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a>.<br/> - <span class="id" title="keyword">Canonical</span> <span class="id" title="var">mxval_rmorphism</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.RMorphism.Exports.AddRMorphism"><span class="id" title="abbreviation">AddRMorphism</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval_is_multiplicative"><span class="id" title="lemma">mxval_is_multiplicative</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxval_centg"><span class="id" title="lemma">mxval_centg</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_mulVr"><span class="id" title="lemma">gen_mulVr</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.axiom"><span class="id" title="definition">GRing.Field.axiom</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.genV"><span class="id" title="definition">genV</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_invr0"><span class="id" title="lemma">gen_invr0</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.genV"><span class="id" title="definition">genV</span></a> 0 <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> 0.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_unitRingMixin"><span class="id" title="definition">gen_unitRingMixin</span></a> := <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.Exports.FieldUnitMixin"><span class="id" title="abbreviation">FieldUnitMixin</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_mulVr"><span class="id" title="lemma">gen_mulVr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_invr0"><span class="id" title="lemma">gen_invr0</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_unitRingType</span> :=<br/> - <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.UnitRing.Exports.UnitRingType"><span class="id" title="abbreviation">UnitRingType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_unitRingMixin"><span class="id" title="definition">gen_unitRingMixin</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_comUnitRingType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.ssralg.html#2dfeb3fb2088b370ad93742d4f23a0dc"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#2dfeb3fb2088b370ad93742d4f23a0dc"><span class="id" title="notation">comUnitRingType</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#2dfeb3fb2088b370ad93742d4f23a0dc"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#2dfeb3fb2088b370ad93742d4f23a0dc"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_fieldMixin"><span class="id" title="definition">gen_fieldMixin</span></a> :=<br/> - @<a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.Exports.FieldMixin"><span class="id" title="abbreviation">FieldMixin</span></a> <span class="id" title="var">_</span> <span class="id" title="var">_</span> <span class="id" title="var">_</span> <span class="id" title="var">_</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#aed478b27f23b4f753c27c8ac393febc"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.mixin_of"><span class="id" title="definition">GRing.Field.mixin_of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_unitRingType"><span class="id" title="definition">gen_unitRingType</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_idomainMixin"><span class="id" title="definition">gen_idomainMixin</span></a> := <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.Exports.FieldIdomainMixin"><span class="id" title="abbreviation">FieldIdomainMixin</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_fieldMixin"><span class="id" title="definition">gen_fieldMixin</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_idomainType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.IntegralDomain.Exports.IdomainType"><span class="id" title="abbreviation">IdomainType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_idomainMixin"><span class="id" title="definition">gen_idomainMixin</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_fieldType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.Exports.FieldType"><span class="id" title="abbreviation">FieldType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_fieldMixin"><span class="id" title="definition">gen_fieldMixin</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxvalV"><span class="id" title="lemma">mxvalV</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.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</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">x</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#4e5a4c91ec0aa12de06dfe1cc07ea126"><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">>-></span></a> <a class="idref" href="mathcomp.algebra.matrix.html#invmx"><span class="id" title="definition">invmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_is_rmorphism"><span class="id" title="lemma">gen_is_rmorphism</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.RMorphism.Exports.rmorphism"><span class="id" title="abbreviation">rmorphism</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen"><span class="id" title="definition">gen</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_additive</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Additive.Exports.Additive"><span class="id" title="abbreviation">Additive</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_is_rmorphism"><span class="id" title="lemma">gen_is_rmorphism</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_rmorphism</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.RMorphism.Exports.RMorphism"><span class="id" title="abbreviation">RMorphism</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_is_rmorphism"><span class="id" title="lemma">gen_is_rmorphism</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - The generated field contains a root of the minimal polynomial (in some - cases we want to use the construction solely for that purpose). -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.groot"><span class="id" title="definition">groot</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.inFA"><span class="id" title="variable">inFA</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#poly_rV"><span class="id" title="definition">poly_rV</span></a> (<a class="idref" href="mathcomp.algebra.poly.html#dc2ed3a32abac1baa27cfc93ddc4e844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.poly.html#dc2ed3a32abac1baa27cfc93ddc4e844"><span class="id" title="notation">X</span></a> <a class="idref" href="mathcomp.algebra.polydiv.html#d8832071e7663562cc14f17c6edf99dc"><span class="id" title="notation">%%</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.pA"><span class="id" title="abbreviation">pA</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxval_groot"><span class="id" title="lemma">mxval_groot</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.groot"><span class="id" title="definition">groot</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.character.mxrepresentation.html#MatrixGenField.GenField.A"><span class="id" title="variable">A</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxval_grootX"><span class="id" title="lemma">mxval_grootX</span></a> <span class="id" title="var">k</span> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.groot"><span class="id" title="definition">groot</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#663140372ac3b275aae871b74b140513"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#k"><span class="id" title="variable">k</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.character.mxrepresentation.html#MatrixGenField.GenField.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.character.mxrepresentation.html#k"><span class="id" title="variable">k</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.map_mxminpoly_groot"><span class="id" title="lemma">map_mxminpoly_groot</span></a> : <a class="idref" href="mathcomp.algebra.poly.html#e4361ce58e4de0a4b9786d0011b61316"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.algebra.poly.html#map_poly"><span class="id" title="definition">map_poly</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen"><span class="id" title="definition">gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.pA"><span class="id" title="abbreviation">pA</span></a><a class="idref" href="mathcomp.algebra.poly.html#e4361ce58e4de0a4b9786d0011b61316"><span class="id" title="notation">).[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.groot"><span class="id" title="definition">groot</span></a><a class="idref" href="mathcomp.algebra.poly.html#e4361ce58e4de0a4b9786d0011b61316"><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> 0.<br/> - -<br/> -</div> - -<div class="doc"> - Plugging the extension morphism gen into the ext_repr construction - yields a (reducible) tensored representation. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.non_linear_gen_reducible"><span class="id" title="lemma">non_linear_gen_reducible</span></a> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.d"><span class="id" title="abbreviation">d</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><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> <a class="idref" href="mathcomp.character.mxrepresentation.html#mxnonsimple"><span class="id" title="definition">mxnonsimple</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#map_repr"><span class="id" title="definition">map_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_rmorphism"><span class="id" title="definition">gen_rmorphism</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a>) 1<a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>.<br/> - -<br/> -</div> - -<div class="doc"> - An alternative to the above, used in the proof of the p-stability of - groups of odd order, is to reconsider the original vector space as a - vector space of dimension n / e over FA. This is applicable only if G is - the largest group represented on the original vector space (i.e., if we - are not studying a representation of G induced by one of a larger group, - as in B & G Theorem 2.6 for instance). We can't fully exploit one of the - benefits of this approach -- that the type domain for the vector space can - remain unchanged -- because we're restricting ourselves to row matrices; - we have to use explicit bijections to convert between the two views. -</div> -<div class="code"> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.subbase"><span class="id" title="definition">subbase</span></a> <span class="id" title="var">nA</span> (<span class="id" title="var">B</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">rV_nA</span></a>) : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#nA"><span class="id" title="variable">nA</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#ea2ff3d561159081cea6fb2e8113cc54"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.d"><span class="id" title="abbreviation">d</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a> :=<br/> - <a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">matrix_ik</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#9b7ac910045fe3e3a8253dae2e2bc494"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9b7ac910045fe3e3a8253dae2e2bc494"><span class="id" title="notation">matrix_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9b7ac910045fe3e3a8253dae2e2bc494"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span><a class="idref" href="mathcomp.algebra.matrix.html#9b7ac910045fe3e3a8253dae2e2bc494"><span class="id" title="notation">,</span></a> <span class="id" title="var">k</span><a class="idref" href="mathcomp.algebra.matrix.html#9b7ac910045fe3e3a8253dae2e2bc494"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#9b7ac910045fe3e3a8253dae2e2bc494"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.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.character.mxrepresentation.html#k"><span class="id" title="variable">k</span></a>)<a class="idref" href="mathcomp.algebra.matrix.html#9b7ac910045fe3e3a8253dae2e2bc494"><span class="id" title="notation">)</span></a>) 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#ik"><span class="id" title="variable">ik</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_dim_ex_proof"><span class="id" title="lemma">gen_dim_ex_proof</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">nA</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="mathcomp.ssreflect.fintype.html#9b7547477b3531f14d89d6b13ad78482"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#9b7547477b3531f14d89d6b13ad78482"><span class="id" title="notation">∃</span></a> <span class="id" title="var">B</span> <a class="idref" href="mathcomp.ssreflect.fintype.html#9b7547477b3531f14d89d6b13ad78482"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">rV_nA</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#f3be25edeb0349b0a76405eded9d0b98"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#row_free"><span class="id" title="definition">row_free</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.subbase"><span class="id" title="definition">subbase</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a>)<a class="idref" href="mathcomp.ssreflect.fintype.html#9b7547477b3531f14d89d6b13ad78482"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_dim_ub_proof"><span class="id" title="lemma">gen_dim_ub_proof</span></a> <span class="id" title="var">nA</span> :<br/> - <a class="idref" href="mathcomp.ssreflect.fintype.html#9b7547477b3531f14d89d6b13ad78482"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#9b7547477b3531f14d89d6b13ad78482"><span class="id" title="notation">∃</span></a> <span class="id" title="var">B</span> <a class="idref" href="mathcomp.ssreflect.fintype.html#9b7547477b3531f14d89d6b13ad78482"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">rV_nA</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#f3be25edeb0349b0a76405eded9d0b98"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#row_free"><span class="id" title="definition">row_free</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.subbase"><span class="id" title="definition">subbase</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a>)<a class="idref" href="mathcomp.ssreflect.fintype.html#9b7547477b3531f14d89d6b13ad78482"><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.character.mxrepresentation.html#nA"><span class="id" title="variable">nA</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a>)%<span class="id" title="var">N</span>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_dim"><span class="id" title="definition">gen_dim</span></a> := <a class="idref" href="mathcomp.ssreflect.ssrnat.html#ex_maxn"><span class="id" title="definition">ex_maxn</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_dim_ex_proof"><span class="id" title="lemma">gen_dim_ex_proof</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_dim_ub_proof"><span class="id" title="lemma">gen_dim_ub_proof</span></a>.<br/> -<span class="id" title="keyword">Notation</span> <a name="MatrixGenField.nA"><span class="id" title="abbreviation">nA</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_dim"><span class="id" title="definition">gen_dim</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_base"><span class="id" title="definition">gen_base</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">rV_nA</span></a> := <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> 0 <a class="idref" href="mathcomp.ssreflect.fintype.html#17198bb01f8e546f36bb74df399b01c5"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#17198bb01f8e546f36bb74df399b01c5"><span class="id" title="notation">pick</span></a> <span class="id" title="var">B</span> <a class="idref" href="mathcomp.ssreflect.fintype.html#17198bb01f8e546f36bb74df399b01c5"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#row_free"><span class="id" title="definition">row_free</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.subbase"><span class="id" title="definition">subbase</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#B"><span class="id" title="variable">B</span></a>)<a class="idref" href="mathcomp.ssreflect.fintype.html#17198bb01f8e546f36bb74df399b01c5"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.base"><span class="id" title="definition">base</span></a> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.subbase"><span class="id" title="definition">subbase</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_base"><span class="id" title="definition">gen_base</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.base_free"><span class="id" title="lemma">base_free</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#row_free"><span class="id" title="definition">row_free</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.base"><span class="id" title="definition">base</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.base_full"><span class="id" title="lemma">base_full</span></a> : <a class="idref" href="mathcomp.algebra.mxalgebra.html#row_full"><span class="id" title="definition">row_full</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.base"><span class="id" title="definition">base</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_dim_factor"><span class="id" title="lemma">gen_dim_factor</span></a> : (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.nA"><span class="id" title="abbreviation">nA</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#ea2ff3d561159081cea6fb2e8113cc54"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.d"><span class="id" title="abbreviation">d</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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_dim_gt0"><span class="id" title="lemma">gen_dim_gt0</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.nA"><span class="id" title="abbreviation">nA</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">></span></a> 0.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="MatrixGenField.GenField.Bijection"><span class="id" title="section">Bijection</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="MatrixGenField.GenField.Bijection.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/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.Bijection.m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.Bijection.m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.nA"><span class="id" title="abbreviation">nA</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a> :=<br/> - <a class="idref" href="mathcomp.algebra.matrix.html#9b7ac910045fe3e3a8253dae2e2bc494"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9b7ac910045fe3e3a8253dae2e2bc494"><span class="id" title="notation">matrix_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9b7ac910045fe3e3a8253dae2e2bc494"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span><a class="idref" href="mathcomp.algebra.matrix.html#9b7ac910045fe3e3a8253dae2e2bc494"><span class="id" title="notation">,</span></a> <span class="id" title="var">j</span><a class="idref" href="mathcomp.algebra.matrix.html#9b7ac910045fe3e3a8253dae2e2bc494"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.inFA"><span class="id" title="variable">inFA</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#vec_mx"><span class="id" title="definition">vec_mx</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#pinvmx"><span class="id" title="definition">pinvmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.base"><span class="id" title="definition">base</span></a>))).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> (<span class="id" title="var">W</span> : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.Bijection.m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.nA"><span class="id" title="abbreviation">nA</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.Bijection.m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#9c0a062cce31174bb4a1f05fb9cee844"><span class="id" title="notation">)</span></a> :=<br/> - <a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">matrix_i</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">matrix_j</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</span></a>)) <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.base"><span class="id" title="definition">base</span></a><a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">)</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.in_genK"><span class="id" title="lemma">in_genK</span></a> : <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.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.val_genK"><span class="id" title="lemma">val_genK</span></a> : <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.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.in_gen0"><span class="id" title="lemma">in_gen0</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> 0 <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> 0.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.val_gen0"><span class="id" title="lemma">val_gen0</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> 0 <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> 0.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.in_genN"><span class="id" title="lemma">in_genN</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">morph</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">:</span></a> <span class="id" title="var">W</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#8d0566c961139ec21811f52ef0c317db"><span class="id" title="notation">-</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.val_genN"><span class="id" title="lemma">val_genN</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">morph</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">:</span></a> <span class="id" title="var">W</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#8d0566c961139ec21811f52ef0c317db"><span class="id" title="notation">-</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#3d6621e6eef40dcc7dc9a612222d0b4e"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.in_genD"><span class="id" title="lemma">in_genD</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">morph</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">:</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#c7f78cf1f6a5e4f664654f7d671ca752"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.val_genD"><span class="id" title="lemma">val_genD</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">morph</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">:</span></a> <span class="id" title="var">U</span> <span class="id" title="var">V</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#c7f78cf1f6a5e4f664654f7d671ca752"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e69c60b553f06d3463460a9f4cee3c01"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.in_gen_sum"><span class="id" title="definition">in_gen_sum</span></a> := <a class="idref" href="mathcomp.ssreflect.bigop.html#big_morph"><span class="id" title="lemma">big_morph</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_genD"><span class="id" title="lemma">in_genD</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen0"><span class="id" title="lemma">in_gen0</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.val_gen_sum"><span class="id" title="definition">val_gen_sum</span></a> := <a class="idref" href="mathcomp.ssreflect.bigop.html#big_morph"><span class="id" title="lemma">big_morph</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_genD"><span class="id" title="lemma">val_genD</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen0"><span class="id" title="lemma">val_gen0</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.in_genZ"><span class="id" title="lemma">in_genZ</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="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.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</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">W</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.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#3b05480e39db306e67fadbc79d394529"><span class="id" title="notation">*:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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="mathcomp.character.mxrepresentation.html#MatrixGenField.gen"><span class="id" title="definition">gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#a"><span class="id" title="variable">a</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#3b05480e39db306e67fadbc79d394529"><span class="id" title="notation">*:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.Bijection"><span class="id" title="section">Bijection</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.val_gen_rV"><span class="id" title="lemma">val_gen_rV</span></a> (<span class="id" title="var">w</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">rV_nA</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#w"><span class="id" title="variable">w</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.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">matrix_j</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#w"><span class="id" title="variable">w</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</span></a>)) <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.base"><span class="id" title="definition">base</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="MatrixGenField.GenField.Bijection2"><span class="id" title="section">Bijection2</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="MatrixGenField.GenField.Bijection2.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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.val_gen_row"><span class="id" title="lemma">val_gen_row</span></a> <span class="id" title="var">W</span> (<span class="id" title="var">i</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">I_m</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.matrix.html#row"><span class="id" title="definition">row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.in_gen_row"><span class="id" title="lemma">in_gen_row</span></a> <span class="id" title="var">W</span> (<span class="id" title="var">i</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">I_m</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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.matrix.html#row"><span class="id" title="definition">row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.row_gen_sum_mxval"><span class="id" title="lemma">row_gen_sum_mxval</span></a> <span class="id" title="var">W</span> (<span class="id" title="var">i</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#545d9d6249a673300f950a2a8b8a930b"><span class="id" title="notation">I_m</span></a>) :<br/> - <a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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#de3e30c288f66ee879ea2b40e81e186c"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#de3e30c288f66ee879ea2b40e81e186c"><span class="id" title="notation">sum_j</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_base"><span class="id" title="definition">gen_base</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.val_genZ"><span class="id" title="lemma">val_genZ</span></a> <span class="id" title="var">x</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.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">morph</span></a> @<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.Bijection2.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">W</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.character.mxrepresentation.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#3b05480e39db306e67fadbc79d394529"><span class="id" title="notation">*:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</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="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.Bijection2"><span class="id" title="section">Bijection2</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.submx_in_gen"><span class="id" title="lemma">submx_in_gen</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.submx_in_gen_eq"><span class="id" title="lemma">submx_in_gen_eq</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</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>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_mx"><span class="id" title="definition">gen_mx</span></a> <span class="id" title="var">g</span> := <a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">matrix_i</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_base"><span class="id" title="definition">gen_base</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#g"><span class="id" title="variable">g</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="MatrixGenField.GenField.val_genJmx"><span class="id" title="variable">val_genJmx</span></a> <span class="id" title="var">m</span> :<br/> - <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.character.mxrepresentation.html#MatrixGenField.GenField.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">g</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.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">morph</span></a> @<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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">W</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_mx"><span class="id" title="definition">gen_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">>-></span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_mx_repr"><span class="id" title="lemma">gen_mx_repr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_repr"><span class="id" title="definition">mx_repr</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_mx"><span class="id" title="definition">gen_mx</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_repr</span> := <a class="idref" href="mathcomp.character.mxrepresentation.html#MxRepresentation"><span class="id" title="constructor">MxRepresentation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_mx_repr"><span class="id" title="lemma">gen_mx_repr</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.val_genJ"><span class="id" title="lemma">val_genJ</span></a> <span class="id" title="var">m</span> :<br/> - <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.character.mxrepresentation.html#MatrixGenField.GenField.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">g</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.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">morph</span></a> @<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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">W</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.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rGA"><span class="id" title="abbreviation">rGA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">>-></span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#W"><span class="id" title="variable">W</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.in_genJ"><span class="id" title="lemma">in_genJ</span></a> <span class="id" title="var">m</span> :<br/> - <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.character.mxrepresentation.html#MatrixGenField.GenField.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">g</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.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">morph</span></a> @<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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">v</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.character.mxrepresentation.html#v"><span class="id" title="variable">v</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.ssrfun.html#8bf6fdbe8b0c22b67e58fa5cd9937190"><span class="id" title="notation">>-></span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#v"><span class="id" title="variable">v</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rGA"><span class="id" title="abbreviation">rGA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.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/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.rfix_gen"><span class="id" title="lemma">rfix_gen</span></a> (<span class="id" title="var">H</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.character.mxrepresentation.html#MatrixGenField.GenField.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/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</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.character.mxrepresentation.html#MatrixGenField.GenField.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.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rGA"><span class="id" title="abbreviation">rGA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#rfix_mx"><span class="id" title="definition">rfix_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#H"><span class="id" title="variable">H</span></a>))%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.rowval_gen"><span class="id" title="definition">rowval_gen</span></a> <span class="id" title="var">m</span> <span class="id" title="var">U</span> :=<br/> - <a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation"><<</span></a><a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#156c57e70d793ff8d6e063eb2f2cbdf2"><span class="id" title="notation">matrix_ik</span></a><br/> - <a class="idref" href="mathcomp.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#54af16cfdb12c4fc43c97a572906d8b3"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#54af16cfdb12c4fc43c97a572906d8b3"><span class="id" title="notation">matrix_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#54af16cfdb12c4fc43c97a572906d8b3"><span class="id" title="notation">(</span></a><span class="id" title="var">i</span> <a class="idref" href="mathcomp.algebra.matrix.html#54af16cfdb12c4fc43c97a572906d8b3"><span class="id" title="notation"><</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#54af16cfdb12c4fc43c97a572906d8b3"><span class="id" title="notation">,</span></a> <span class="id" title="var">k</span> <a class="idref" href="mathcomp.algebra.matrix.html#54af16cfdb12c4fc43c97a572906d8b3"><span class="id" title="notation"><</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.d"><span class="id" title="abbreviation">d</span></a><a class="idref" href="mathcomp.algebra.matrix.html#54af16cfdb12c4fc43c97a572906d8b3"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#54af16cfdb12c4fc43c97a572906d8b3"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.algebra.matrix.html#row"><span class="id" title="definition">row</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.val_gen"><span class="id" title="definition">val_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.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.character.mxrepresentation.html#k"><span class="id" title="variable">k</span></a><a class="idref" href="mathcomp.algebra.matrix.html#54af16cfdb12c4fc43c97a572906d8b3"><span class="id" title="notation">)</span></a>) 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#ik"><span class="id" title="variable">ik</span></a><a class="idref" href="mathcomp.algebra.mxalgebra.html#3962b76563fd8a8f45948950a775860e"><span class="id" title="notation">>></span></a>%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.submx_rowval_gen"><span class="id" title="lemma">submx_rowval_gen</span></a> <span class="id" title="var">m1</span> <span class="id" title="var">m2</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m1"><span class="id" title="variable">m1</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) (<span class="id" title="var">V</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m2"><span class="id" title="variable">m2</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.nA"><span class="id" title="abbreviation">nA</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rowval_gen"><span class="id" title="definition">rowval_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</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> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#V"><span class="id" title="variable">V</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.rowval_genK"><span class="id" title="lemma">rowval_genK</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.nA"><span class="id" title="abbreviation">nA</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rowval_gen"><span class="id" title="definition">rowval_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>) <a class="idref" href="mathcomp.algebra.mxalgebra.html#f769dda5dbc6895d666659cb6e305422"><span class="id" title="notation">:=:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.rowval_gen_stable"><span class="id" title="lemma">rowval_gen_stable</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.nA"><span class="id" title="abbreviation">nA</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rowval_gen"><span class="id" title="definition">rowval_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">×</span></a><a class="idref" href="mathcomp.algebra.matrix.html#b2b431de65e6c1e23c1ae3a60262ea15"><span class="id" title="notation">m</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.A"><span class="id" title="variable">A</span></a> <a class="idref" href="mathcomp.algebra.mxalgebra.html#09a21fbfc35503eeecaca8720742f7ab"><span class="id" title="notation">≤</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rowval_gen"><span class="id" title="definition">rowval_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>)%<span class="id" title="var">MS</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.rstab_in_gen"><span class="id" title="lemma">rstab_in_gen</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) : <a class="idref" href="mathcomp.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rGA"><span class="id" title="abbreviation">rGA</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#rstab"><span class="id" title="definition">rstab</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.rstabs_in_gen"><span class="id" title="lemma">rstabs_in_gen</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rGA"><span class="id" title="abbreviation">rGA</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.in_gen"><span class="id" title="definition">in_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.rstabs_rowval_gen"><span class="id" title="lemma">rstabs_rowval_gen</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.nA"><span class="id" title="abbreviation">nA</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rowval_gen"><span class="id" title="definition">rowval_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#rstabs"><span class="id" title="definition">rstabs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rGA"><span class="id" title="abbreviation">rGA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.mxmodule_rowval_gen"><span class="id" title="lemma">mxmodule_rowval_gen</span></a> <span class="id" title="var">m</span> (<span class="id" title="var">U</span> : <a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">M_</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#m"><span class="id" title="variable">m</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.nA"><span class="id" title="abbreviation">nA</span></a><a class="idref" href="mathcomp.algebra.matrix.html#5402b0dfe2a7ea661b91256aeeaf93da"><span class="id" title="notation">)</span></a>) :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rowval_gen"><span class="id" title="definition">rowval_gen</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#mxmodule"><span class="id" title="definition">mxmodule</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rGA"><span class="id" title="abbreviation">rGA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#U"><span class="id" title="variable">U</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_mx_irr"><span class="id" title="lemma">gen_mx_irr</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rGA"><span class="id" title="abbreviation">rGA</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.rker_gen"><span class="id" title="lemma">rker_gen</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rGA"><span class="id" title="abbreviation">rGA</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.character.mxrepresentation.html#rker"><span class="id" title="definition">rker</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_mx_faithful"><span class="id" title="lemma">gen_mx_faithful</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.rGA"><span class="id" title="abbreviation">rGA</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.character.mxrepresentation.html#mx_faithful"><span class="id" title="definition">mx_faithful</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField.rG"><span class="id" title="variable">rG</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.GenField"><span class="id" title="section">GenField</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="MatrixGenField.DecideGenField"><span class="id" title="section">DecideGenField</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Import</span> <span class="id" title="var">MatrixFormula</span>.<br/> - -<br/> -<span class="id" title="keyword">Variable</span> <a name="MatrixGenField.DecideGenField.F"><span class="id" title="variable">F</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.DecidableField.Exports.decFieldType"><span class="id" title="abbreviation">decFieldType</span></a>.<br/> - -<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="MatrixGenField.DecideGenField.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="MatrixGenField.DecideGenField.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.character.mxrepresentation.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="MatrixGenField.DecideGenField.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">Variables</span> (<a name="MatrixGenField.DecideGenField.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a>) (<a name="MatrixGenField.DecideGenField.A"><span class="id" title="variable">A</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>).<br/> -<span class="id" title="keyword">Hypotheses</span> (<a name="MatrixGenField.DecideGenField.irrG"><span class="id" title="variable">irrG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.rG"><span class="id" title="variable">rG</span></a>) (<a name="MatrixGenField.DecideGenField.cGA"><span class="id" title="variable">cGA</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.A"><span class="id" title="variable">A</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="MatrixGenField.DecideGenField.d_gt0"><span class="id" title="variable">d_gt0</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.d"><span class="id" title="abbreviation">d</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#7f2a7ef2c63af7359b22787a9daf336e"><span class="id" title="notation">></span></a> 0 := <a class="idref" href="mathcomp.algebra.mxpoly.html#mxminpoly_nonconstant"><span class="id" title="lemma">mxminpoly_nonconstant</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.A"><span class="id" title="variable">A</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="MatrixGenField.DecideGenField.mxT"><span class="id" title="variable">mxT</span></a> (<span class="id" title="var">u</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">rV_d</span></a>) := <a class="idref" href="mathcomp.algebra.matrix.html#vec_mx"><span class="id" title="definition">vec_mx</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mulmx_term"><span class="id" title="definition">mulmx_term</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mx_term"><span class="id" title="definition">mx_term</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.Ad"><span class="id" title="abbreviation">Ad</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="MatrixGenField.DecideGenField.eval_mxT"><span class="id" title="variable">eval_mxT</span></a> <span class="id" title="var">e</span> <span class="id" title="var">u</span> : <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.eval_mx"><span class="id" title="definition">eval_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.mxT"><span class="id" title="variable">mxT</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.character.mxrepresentation.html#MatrixGenField.mxval"><span class="id" title="definition">mxval</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.inFA"><span class="id" title="abbreviation">inFA</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.eval_mx"><span class="id" title="definition">eval_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Let</span> <a name="MatrixGenField.DecideGenField.Ad'T"><span class="id" title="variable">Ad'T</span></a> := <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mx_term"><span class="id" title="definition">mx_term</span></a> (<a class="idref" href="mathcomp.algebra.mxalgebra.html#pinvmx"><span class="id" title="definition">pinvmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.Ad"><span class="id" title="abbreviation">Ad</span></a>).<br/> -<span class="id" title="keyword">Let</span> <a name="MatrixGenField.DecideGenField.mulT"><span class="id" title="variable">mulT</span></a> (<span class="id" title="var">u</span> <span class="id" title="var">v</span> : <a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#2f65cfd766dcf020894d753750ad1a23"><span class="id" title="notation">rV_d</span></a>) := <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mulmx_term"><span class="id" title="definition">mulmx_term</span></a> (<a class="idref" href="mathcomp.algebra.matrix.html#mxvec"><span class="id" title="definition">mxvec</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mulmx_term"><span class="id" title="definition">mulmx_term</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.mxT"><span class="id" title="variable">mxT</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.mxT"><span class="id" title="variable">mxT</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#v"><span class="id" title="variable">v</span></a>))) <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.Ad'T"><span class="id" title="variable">Ad'T</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.eval_mulT"><span class="id" title="lemma">eval_mulT</span></a> <span class="id" title="var">e</span> <span class="id" title="var">u</span> <span class="id" title="var">v</span> :<br/> - <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.eval_mx"><span class="id" title="definition">eval_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.mulT"><span class="id" title="variable">mulT</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#v"><span class="id" title="variable">v</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#val"><span class="id" title="projection">val</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.inFA"><span class="id" title="abbreviation">inFA</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.eval_mx"><span class="id" title="definition">eval_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#u"><span class="id" title="variable">u</span></a>) <a class="idref" href="mathcomp.algebra.ssralg.html#2d0cfb150261028f4ebd2ba355623dcc"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.inFA"><span class="id" title="abbreviation">inFA</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.eval_mx"><span class="id" title="definition">eval_mx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#v"><span class="id" title="variable">v</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Fixpoint</span> <a name="MatrixGenField.gen_term"><span class="id" title="definition">gen_term</span></a> <span class="id" title="var">t</span> := <span class="id" title="keyword">match</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#t"><span class="id" title="variable">t</span></a> <span class="id" title="keyword">with</span><br/> -| <a class="idref" href="mathcomp.algebra.ssralg.html#4469cceefa45bf6eb9c3a2c83154c5db"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#4469cceefa45bf6eb9c3a2c83154c5db"><span class="id" title="notation">X_k</span></a> ⇒ <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.row_var"><span class="id" title="definition">row_var</span></a> <span class="id" title="var">_</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.d"><span class="id" title="abbreviation">d</span></a> <span class="id" title="var">k</span><br/> -| <span class="id" title="var">x</span><a class="idref" href="mathcomp.algebra.ssralg.html#06be6dc84074dd93c618bfd62ba301ab"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#06be6dc84074dd93c618bfd62ba301ab"><span class="id" title="notation">T</span></a> ⇒ <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mx_term"><span class="id" title="definition">mx_term</span></a> (<a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> (<span class="id" title="var">x</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#aed478b27f23b4f753c27c8ac393febc"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a>))<br/> -| <span class="id" title="var">n1</span><a class="idref" href="mathcomp.algebra.ssralg.html#4ce27ef85740ec20828e07c70791cf75"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#4ce27ef85740ec20828e07c70791cf75"><span class="id" title="notation">R</span></a> ⇒ <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mx_term"><span class="id" title="definition">mx_term</span></a> (<a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> (<span class="id" title="var">n1</span><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.ssreflect.html#aed478b27f23b4f753c27c8ac393febc"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a>))%<span class="id" title="var">R</span><br/> -| <span class="id" title="var">t1</span> <a class="idref" href="mathcomp.algebra.ssralg.html#c58c2dd0f0bcaa7496089cb3d706fa33"><span class="id" title="notation">+</span></a> <span class="id" title="var">t2</span> ⇒ <a class="idref" href="mathcomp.algebra.matrix.html#e96cc16a4a892792949f73b0ccf32cf1"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#e96cc16a4a892792949f73b0ccf32cf1"><span class="id" title="notation">row_i</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#e96cc16a4a892792949f73b0ccf32cf1"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#gen_term"><span class="id" title="definition">gen_term</span></a> <span class="id" title="var">t1</span> 0%<span class="id" title="var">R</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#c58c2dd0f0bcaa7496089cb3d706fa33"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gen_term"><span class="id" title="definition">gen_term</span></a> <span class="id" title="var">t2</span> 0%<span class="id" title="var">R</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.matrix.html#e96cc16a4a892792949f73b0ccf32cf1"><span class="id" title="notation">)</span></a><br/> -| <a class="idref" href="mathcomp.algebra.ssralg.html#e17e96c7b2b76669d2df8ffe5474ae56"><span class="id" title="notation">-</span></a> <span class="id" title="var">t1</span> ⇒ <a class="idref" href="mathcomp.algebra.matrix.html#e96cc16a4a892792949f73b0ccf32cf1"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.algebra.matrix.html#e96cc16a4a892792949f73b0ccf32cf1"><span class="id" title="notation">row_i</span></a> <a class="idref" href="mathcomp.algebra.matrix.html#e96cc16a4a892792949f73b0ccf32cf1"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#e17e96c7b2b76669d2df8ffe5474ae56"><span class="id" title="notation">-</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gen_term"><span class="id" title="definition">gen_term</span></a> <span class="id" title="var">t1</span> 0%<span class="id" title="var">R</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#i"><span class="id" title="variable">i</span></a><a class="idref" href="mathcomp.algebra.matrix.html#e96cc16a4a892792949f73b0ccf32cf1"><span class="id" title="notation">)</span></a><br/> -| <span class="id" title="var">t1</span> <a class="idref" href="mathcomp.algebra.ssralg.html#494fad3691a494dda8171ded2aab3af2"><span class="id" title="notation">*+</span></a> <span class="id" title="var">n1</span> ⇒ <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mulmx_term"><span class="id" title="definition">mulmx_term</span></a> (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mx_term"><span class="id" title="definition">mx_term</span></a> <span class="id" title="var">n1</span><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="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">%:</span></a><a class="idref" href="mathcomp.algebra.matrix.html#850c060d75891e97ece38bfec139b8ea"><span class="id" title="notation">M</span></a>)%<span class="id" title="var">R</span> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gen_term"><span class="id" title="definition">gen_term</span></a> <span class="id" title="var">t1</span>)<br/> -| <span class="id" title="var">t1</span> <a class="idref" href="mathcomp.algebra.ssralg.html#0f66e0377386facac088dbe9d64fe464"><span class="id" title="notation">×</span></a> <span class="id" title="var">t2</span> ⇒ <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.mulT"><span class="id" title="variable">mulT</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gen_term"><span class="id" title="definition">gen_term</span></a> <span class="id" title="var">t1</span>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#gen_term"><span class="id" title="definition">gen_term</span></a> <span class="id" title="var">t2</span>)<br/> -| <span class="id" title="var">t1</span><a class="idref" href="mathcomp.algebra.ssralg.html#43ec4b364d04e6bb82d286dda6431508"><span class="id" title="notation">^-1</span></a> ⇒ <a class="idref" href="mathcomp.character.mxrepresentation.html#gen_term"><span class="id" title="definition">gen_term</span></a> <span class="id" title="var">t1</span><br/> -| <span class="id" title="var">t1</span> <a class="idref" href="mathcomp.algebra.ssralg.html#97a215ca9363e5673a28657d47b8e8e5"><span class="id" title="notation">^+</span></a> <span class="id" title="var">n1</span> ⇒ <a class="idref" href="mathcomp.ssreflect.ssrnat.html#iter"><span class="id" title="definition">iter</span></a> <span class="id" title="var">n1</span> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField.mulT"><span class="id" title="variable">mulT</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gen_term"><span class="id" title="definition">gen_term</span></a> <span class="id" title="var">t1</span>)) (<a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mx_term"><span class="id" title="definition">mx_term</span></a> (<a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> (1%<span class="id" title="var">R</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#aed478b27f23b4f753c27c8ac393febc"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a>)))<br/> -<span class="id" title="keyword">end</span>%<span class="id" title="var">T</span>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_env"><span class="id" title="definition">gen_env</span></a> (<span class="id" title="var">e</span> : <a class="idref" href="mathcomp.ssreflect.seq.html#seq"><span class="id" title="abbreviation">seq</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a>) := <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.row_env"><span class="id" title="definition">row_env</span></a> (<a class="idref" href="mathcomp.ssreflect.seq.html#map"><span class="id" title="definition">map</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.nth_map_rVval"><span class="id" title="lemma">nth_map_rVval</span></a> (<span class="id" title="var">e</span> : <a class="idref" href="mathcomp.ssreflect.seq.html#seq"><span class="id" title="abbreviation">seq</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a>) <span class="id" title="var">j</span> : <a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.ssreflect.seq.html#map"><span class="id" title="definition">map</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">)`</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">_j</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#val"><span class="id" title="projection">val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">`</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#82d810f9f90b79e8fe98d90a63070c32"><span class="id" title="notation">_j</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.set_nth_map_rVval"><span class="id" title="lemma">set_nth_map_rVval</span></a> (<span class="id" title="var">e</span> : <a class="idref" href="mathcomp.ssreflect.seq.html#seq"><span class="id" title="abbreviation">seq</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a>) <span class="id" title="var">j</span> <span class="id" title="var">v</span> :<br/> - <a class="idref" href="mathcomp.ssreflect.seq.html#set_nth"><span class="id" title="definition">set_nth</span></a> 0 (<a class="idref" href="mathcomp.ssreflect.seq.html#map"><span class="id" title="definition">map</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a>) <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#v"><span class="id" title="variable">v</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.seq.html#map"><span class="id" title="definition">map</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#val"><span class="id" title="projection">val</span></a> (<a class="idref" href="mathcomp.ssreflect.seq.html#set_nth"><span class="id" title="definition">set_nth</span></a> 0 <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#j"><span class="id" title="variable">j</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.inFA"><span class="id" title="abbreviation">inFA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#v"><span class="id" title="variable">v</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.eval_gen_term"><span class="id" title="lemma">eval_gen_term</span></a> <span class="id" title="var">e</span> <span class="id" title="var">t</span> : <br/> - <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.rterm"><span class="id" title="definition">GRing.rterm</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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#1c93e43e07fbeaeb6a625cb6614beb5d"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.eval_mx"><span class="id" title="definition">eval_mx</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_env"><span class="id" title="definition">gen_env</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_term"><span class="id" title="definition">gen_term</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.eqtype.html#val"><span class="id" title="projection">val</span></a> (<a class="idref" href="mathcomp.algebra.ssralg.html#GRing.eval"><span class="id" title="definition">GRing.eval</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#t"><span class="id" title="variable">t</span></a>).<br/> - -<br/> -<span class="id" title="keyword">Fixpoint</span> <a name="MatrixGenField.gen_form"><span class="id" title="definition">gen_form</span></a> <span class="id" title="var">f</span> := <span class="id" title="keyword">match</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a> <span class="id" title="keyword">with</span><br/> -| <span class="id" title="var">Bool</span> <span class="id" title="var">b</span> ⇒ <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.Bool"><span class="id" title="abbreviation">Bool</span></a> <span class="id" title="var">b</span><br/> -| <span class="id" title="var">t1</span> <a class="idref" href="mathcomp.algebra.ssralg.html#8ba71119b4b4369b5eb5b6037f9b1b72"><span class="id" title="notation">==</span></a> <span class="id" title="var">t2</span> ⇒ <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mxrank_form"><span class="id" title="definition">mxrank_form</span></a> 0 (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_term"><span class="id" title="definition">gen_term</span></a> (<span class="id" title="var">t1</span> <a class="idref" href="mathcomp.algebra.ssralg.html#5cb99c63f36860400b899961ab21258a"><span class="id" title="notation">-</span></a> <span class="id" title="var">t2</span>))<br/> -| <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Unit"><span class="id" title="constructor">GRing.Unit</span></a> <span class="id" title="var">t1</span> ⇒ <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.mxrank_form"><span class="id" title="definition">mxrank_form</span></a> 1 (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_term"><span class="id" title="definition">gen_term</span></a> <span class="id" title="var">t1</span>)<br/> -| <span class="id" title="var">f1</span> <a class="idref" href="mathcomp.algebra.ssralg.html#5a500d4ce4c6eea4df7cd2e3cacc0360"><span class="id" title="notation">∧</span></a> <span class="id" title="var">f2</span> ⇒ <a class="idref" href="mathcomp.character.mxrepresentation.html#gen_form"><span class="id" title="definition">gen_form</span></a> <span class="id" title="var">f1</span> <a class="idref" href="mathcomp.algebra.ssralg.html#5a500d4ce4c6eea4df7cd2e3cacc0360"><span class="id" title="notation">∧</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gen_form"><span class="id" title="definition">gen_form</span></a> <span class="id" title="var">f2</span><br/> -| <span class="id" title="var">f1</span> <a class="idref" href="mathcomp.algebra.ssralg.html#fb8e71b0a04b4fb792321652d3394589"><span class="id" title="notation">∨</span></a> <span class="id" title="var">f2</span> ⇒ <a class="idref" href="mathcomp.character.mxrepresentation.html#gen_form"><span class="id" title="definition">gen_form</span></a> <span class="id" title="var">f1</span> <a class="idref" href="mathcomp.algebra.ssralg.html#fb8e71b0a04b4fb792321652d3394589"><span class="id" title="notation">∨</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gen_form"><span class="id" title="definition">gen_form</span></a> <span class="id" title="var">f2</span><br/> -| <span class="id" title="var">f1</span> <a class="idref" href="mathcomp.algebra.ssralg.html#b7075a427ea950c442d03d47d831421c"><span class="id" title="notation">==></span></a> <span class="id" title="var">f2</span> ⇒ <a class="idref" href="mathcomp.character.mxrepresentation.html#gen_form"><span class="id" title="definition">gen_form</span></a> <span class="id" title="var">f1</span> <a class="idref" href="mathcomp.algebra.ssralg.html#b7075a427ea950c442d03d47d831421c"><span class="id" title="notation">==></span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gen_form"><span class="id" title="definition">gen_form</span></a> <span class="id" title="var">f2</span><br/> -| <a class="idref" href="mathcomp.algebra.ssralg.html#5a358d3997cc6f2a7919089a2f91e45f"><span class="id" title="notation">¬</span></a> <span class="id" title="var">f1</span> ⇒ <a class="idref" href="mathcomp.algebra.ssralg.html#5a358d3997cc6f2a7919089a2f91e45f"><span class="id" title="notation">¬</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gen_form"><span class="id" title="definition">gen_form</span></a> <span class="id" title="var">f1</span><br/> -| (<a class="idref" href="mathcomp.algebra.ssralg.html#ed4038db2198f4fe9955121b51cc9a06"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#ed4038db2198f4fe9955121b51cc9a06"><span class="id" title="notation">∃</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#ed4038db2198f4fe9955121b51cc9a06"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#ed4038db2198f4fe9955121b51cc9a06"><span class="id" title="notation">X_k</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#ed4038db2198f4fe9955121b51cc9a06"><span class="id" title="notation">,</span></a> <span class="id" title="var">f1</span>) ⇒ <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.Exists_row_form"><span class="id" title="definition">Exists_row_form</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.d"><span class="id" title="abbreviation">d</span></a> <span class="id" title="var">k</span> (<a class="idref" href="mathcomp.character.mxrepresentation.html#gen_form"><span class="id" title="definition">gen_form</span></a> <span class="id" title="var">f1</span>)<br/> -| (<a class="idref" href="mathcomp.algebra.ssralg.html#61e99859b5405813120fb72b6bd3697e"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#61e99859b5405813120fb72b6bd3697e"><span class="id" title="notation">∀</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#61e99859b5405813120fb72b6bd3697e"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#61e99859b5405813120fb72b6bd3697e"><span class="id" title="notation">X_k</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#61e99859b5405813120fb72b6bd3697e"><span class="id" title="notation">,</span></a> <span class="id" title="var">f1</span>) ⇒ <a class="idref" href="mathcomp.algebra.ssralg.html#5a358d3997cc6f2a7919089a2f91e45f"><span class="id" title="notation">¬</span></a> <a class="idref" href="mathcomp.algebra.mxpoly.html#MatrixFormula.Exists_row_form"><span class="id" title="definition">Exists_row_form</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.d"><span class="id" title="abbreviation">d</span></a> <span class="id" title="var">k</span> (<a class="idref" href="mathcomp.algebra.ssralg.html#5a358d3997cc6f2a7919089a2f91e45f"><span class="id" title="notation">¬</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#5a358d3997cc6f2a7919089a2f91e45f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#gen_form"><span class="id" title="definition">gen_form</span></a> <span class="id" title="var">f1</span><a class="idref" href="mathcomp.algebra.ssralg.html#5a358d3997cc6f2a7919089a2f91e45f"><span class="id" title="notation">)</span></a>)<br/> -<span class="id" title="keyword">end</span>%<span class="id" title="var">T</span>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.sat_gen_form"><span class="id" title="lemma">sat_gen_form</span></a> <span class="id" title="var">e</span> <span class="id" title="var">f</span> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.rformula"><span class="id" title="definition">GRing.rformula</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</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/> - <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.algebra.ssralg.html#GRing.holds"><span class="id" title="definition">GRing.holds</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>) (<a class="idref" href="mathcomp.algebra.ssralg.html#GRing.sat"><span class="id" title="definition">GRing.sat</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_env"><span class="id" title="definition">gen_env</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_form"><span class="id" title="definition">gen_form</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_sat"><span class="id" title="definition">gen_sat</span></a> <span class="id" title="var">e</span> <span class="id" title="var">f</span> := <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.sat"><span class="id" title="definition">GRing.sat</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_env"><span class="id" title="definition">gen_env</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#e"><span class="id" title="variable">e</span></a>) (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_form"><span class="id" title="definition">gen_form</span></a> (<a class="idref" href="mathcomp.algebra.ssralg.html#GRing.to_rform"><span class="id" title="definition">GRing.to_rform</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#f"><span class="id" title="variable">f</span></a>)).<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.gen_satP"><span class="id" title="lemma">gen_satP</span></a> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.DecidableField.axiom"><span class="id" title="definition">GRing.DecidableField.axiom</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_sat"><span class="id" title="definition">gen_sat</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_decFieldMixin"><span class="id" title="definition">gen_decFieldMixin</span></a> := <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.DecidableField.Exports.DecFieldMixin"><span class="id" title="abbreviation">DecFieldMixin</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_satP"><span class="id" title="lemma">gen_satP</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_decFieldType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.DecidableField.Exports.DecFieldType"><span class="id" title="abbreviation">DecFieldType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_decFieldMixin"><span class="id" title="definition">gen_decFieldMixin</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.DecideGenField"><span class="id" title="section">DecideGenField</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Section</span> <a name="MatrixGenField.FiniteGenField"><span class="id" title="section">FiniteGenField</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Variables</span> (<a name="MatrixGenField.FiniteGenField.F"><span class="id" title="variable">F</span></a> : <a class="idref" href="mathcomp.algebra.finalg.html#FinRing.Field.Exports.finFieldType"><span class="id" title="abbreviation">finFieldType</span></a>) (<a name="MatrixGenField.FiniteGenField.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="MatrixGenField.FiniteGenField.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.character.mxrepresentation.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="MatrixGenField.FiniteGenField.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">Variables</span> (<a name="MatrixGenField.FiniteGenField.rG"><span class="id" title="variable">rG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_representation"><span class="id" title="record">mx_representation</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField.F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField.G"><span class="id" title="variable">G</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.n"><span class="id" title="abbreviation">n</span></a>) (<a name="MatrixGenField.FiniteGenField.A"><span class="id" title="variable">A</span></a> : <a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">M</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField.F"><span class="id" title="variable">F</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">]</span></a><a class="idref" href="mathcomp.algebra.matrix.html#60bd2bc9fb9187afe5d7f780c1576e3c"><span class="id" title="notation">_n</span></a>).<br/> -<span class="id" title="keyword">Hypotheses</span> (<a name="MatrixGenField.FiniteGenField.irrG"><span class="id" title="variable">irrG</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#mx_irreducible"><span class="id" title="definition">mx_irreducible</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField.rG"><span class="id" title="variable">rG</span></a>) (<a name="MatrixGenField.FiniteGenField.cGA"><span class="id" title="variable">cGA</span></a> : <a class="idref" href="mathcomp.character.mxrepresentation.html#centgmx"><span class="id" title="definition">centgmx</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField.rG"><span class="id" title="variable">rG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField.A"><span class="id" title="variable">A</span></a>).<br/> -<span class="id" title="keyword">Notation</span> <a name="MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> := (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_of"><span class="id" title="record">gen_of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField.irrG"><span class="id" title="variable">irrG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField.cGA"><span class="id" title="variable">cGA</span></a>).<br/> - -<br/> -</div> - -<div class="doc"> - This should be [countMixin of FA by <: ] -</div> -<div class="code"> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_countMixin"><span class="id" title="definition">gen_countMixin</span></a> := (<a class="idref" href="mathcomp.ssreflect.choice.html#sub_countMixin"><span class="id" title="definition">sub_countMixin</span></a> (<a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_subType"><span class="id" title="definition">gen_subType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField.irrG"><span class="id" title="variable">irrG</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField.cGA"><span class="id" title="variable">cGA</span></a>)).<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_countType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.ssreflect.choice.html#Countable.Exports.CountType"><span class="id" title="abbreviation">CountType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_countMixin"><span class="id" title="definition">gen_countMixin</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_subCountType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.ssreflect.choice.html#9bbd910cbebcec91f8279b0711b4702d"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#9bbd910cbebcec91f8279b0711b4702d"><span class="id" title="notation">subCountType</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#9bbd910cbebcec91f8279b0711b4702d"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#9bbd910cbebcec91f8279b0711b4702d"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="MatrixGenField.gen_finMixin"><span class="id" title="definition">gen_finMixin</span></a> := <a class="idref" href="mathcomp.ssreflect.fintype.html#fede21e6a36088be0833d2600143b39c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#fede21e6a36088be0833d2600143b39c"><span class="id" title="notation">finMixin</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#fede21e6a36088be0833d2600143b39c"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#fede21e6a36088be0833d2600143b39c"><span class="id" title="notation">by</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#fede21e6a36088be0833d2600143b39c"><span class="id" title="notation"><:]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.ssreflect.fintype.html#Finite.Exports.FinType"><span class="id" title="abbreviation">FinType</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.gen_finMixin"><span class="id" title="definition">gen_finMixin</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_subFinType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.ssreflect.fintype.html#ea70e506e168d39ce0ec3d3ecd2c349f"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#ea70e506e168d39ce0ec3d3ecd2c349f"><span class="id" title="notation">subFinType</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#ea70e506e168d39ce0ec3d3ecd2c349f"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#ea70e506e168d39ce0ec3d3ecd2c349f"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finZmodType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.finalg.html#144f70011c058d1c741eaa431b4b8944"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.finalg.html#144f70011c058d1c741eaa431b4b8944"><span class="id" title="notation">finZmodType</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#144f70011c058d1c741eaa431b4b8944"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="mathcomp.algebra.finalg.html#144f70011c058d1c741eaa431b4b8944"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_baseFinGroupType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.finalg.html#d6b25f501b9fb5e9b743073d52f24511"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.finalg.html#d6b25f501b9fb5e9b743073d52f24511"><span class="id" title="notation">baseFinGroupType</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#d6b25f501b9fb5e9b743073d52f24511"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#d6b25f501b9fb5e9b743073d52f24511"><span class="id" title="notation">for</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#d6b25f501b9fb5e9b743073d52f24511"><span class="id" title="notation">+%</span></a><a class="idref" href="mathcomp.algebra.finalg.html#d6b25f501b9fb5e9b743073d52f24511"><span class="id" title="notation">R</span></a><a class="idref" href="mathcomp.algebra.finalg.html#d6b25f501b9fb5e9b743073d52f24511"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finGroupType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.finalg.html#a37f16a335f7a3ac65f83e3545c3e50c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.finalg.html#a37f16a335f7a3ac65f83e3545c3e50c"><span class="id" title="notation">finGroupType</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#a37f16a335f7a3ac65f83e3545c3e50c"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#a37f16a335f7a3ac65f83e3545c3e50c"><span class="id" title="notation">for</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#a37f16a335f7a3ac65f83e3545c3e50c"><span class="id" title="notation">+%</span></a><a class="idref" href="mathcomp.algebra.finalg.html#a37f16a335f7a3ac65f83e3545c3e50c"><span class="id" title="notation">R</span></a><a class="idref" href="mathcomp.algebra.finalg.html#a37f16a335f7a3ac65f83e3545c3e50c"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finRingType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.finalg.html#dfd62d789441026daed4d1ea30e2ff11"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.finalg.html#dfd62d789441026daed4d1ea30e2ff11"><span class="id" title="notation">finRingType</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#dfd62d789441026daed4d1ea30e2ff11"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="mathcomp.algebra.finalg.html#dfd62d789441026daed4d1ea30e2ff11"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finComRingType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.finalg.html#b13c97e55bebdc1c181a99b80106c099"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.finalg.html#b13c97e55bebdc1c181a99b80106c099"><span class="id" title="notation">finComRingType</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#b13c97e55bebdc1c181a99b80106c099"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="mathcomp.algebra.finalg.html#b13c97e55bebdc1c181a99b80106c099"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finUnitRingType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.finalg.html#157b0761db3726d8e1bc0a71108dc48f"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.finalg.html#157b0761db3726d8e1bc0a71108dc48f"><span class="id" title="notation">finUnitRingType</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#157b0761db3726d8e1bc0a71108dc48f"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="mathcomp.algebra.finalg.html#157b0761db3726d8e1bc0a71108dc48f"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finComUnitRingType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.finalg.html#29c2dac4b2cace3201f3f23b551d143a"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.finalg.html#29c2dac4b2cace3201f3f23b551d143a"><span class="id" title="notation">finComUnitRingType</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#29c2dac4b2cace3201f3f23b551d143a"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="mathcomp.algebra.finalg.html#29c2dac4b2cace3201f3f23b551d143a"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finIdomainType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.finalg.html#762465ada9848b70124d860dd97a755c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.finalg.html#762465ada9848b70124d860dd97a755c"><span class="id" title="notation">finIdomainType</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#762465ada9848b70124d860dd97a755c"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="mathcomp.algebra.finalg.html#762465ada9848b70124d860dd97a755c"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finFieldType</span> := <span class="id" title="keyword">Eval</span> <span class="id" title="tactic">hnf</span> <span class="id" title="tactic">in</span> <a class="idref" href="mathcomp.algebra.finalg.html#85a9f33cca8b2a31e30517c43d5ecb47"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.algebra.finalg.html#85a9f33cca8b2a31e30517c43d5ecb47"><span class="id" title="notation">finFieldType</span></a> <a class="idref" href="mathcomp.algebra.finalg.html#85a9f33cca8b2a31e30517c43d5ecb47"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="mathcomp.algebra.finalg.html#85a9f33cca8b2a31e30517c43d5ecb47"><span class="id" title="notation">]</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="MatrixGenField.card_gen"><span class="id" title="lemma">card_gen</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.ssr.ssrbool.html#fa3b33ae9d0a52de608b305a09f3b881"><span class="id" title="notation">{:</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FA"><span class="id" title="abbreviation">FA</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#fa3b33ae9d0a52de608b305a09f3b881"><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.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField.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="mathcomp.ssreflect.ssrnat.html#81fd94e251a61ee523cdd7855774ae7c"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.algebra.mxpoly.html#degree_mxminpoly"><span class="id" title="definition">degree_mxminpoly</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField.A"><span class="id" title="variable">A</span></a>)%<span class="id" title="var">N</span>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField.FiniteGenField"><span class="id" title="section">FiniteGenField</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#MatrixGenField"><span class="id" title="module">MatrixGenField</span></a>.<br/> - -<br/> - -<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_subType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_eqType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_choiceType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_countType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_subCountType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_subFinType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_zmodType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finZmodType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_baseFinGroupType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finGroupType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_ringType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finRingType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_comRingType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finComRingType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_unitRingType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finUnitRingType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_comUnitRingType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finComUnitRingType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_idomainType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finIdomainType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_fieldType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_finFieldType</span>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">gen_decFieldType</span>.<br/> - -<br/> -</div> - -<div class="doc"> - Classical splitting and closure field constructions provide convenient - packaging for the pointwise construction. -</div> -<div class="code"> -<span class="id" title="keyword">Section</span> <a name="BuildSplittingField"><span class="id" title="section">BuildSplittingField</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Type</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>.<br/> -<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Type</span> <span class="id" title="var">F</span> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.Exports.fieldType"><span class="id" title="abbreviation">fieldType</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="group_splitting_field_exists"><span class="id" title="lemma">group_splitting_field_exists</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.character.mxrepresentation.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">F</span> :<br/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#classically"><span class="id" title="definition">classically</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#2d3f7aca3c5e595bced87000c0854440"><span class="id" title="notation">{</span></a><span class="id" title="var">Fs</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#2d3f7aca3c5e595bced87000c0854440"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.Exports.fieldType"><span class="id" title="abbreviation">fieldType</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#2d3f7aca3c5e595bced87000c0854440"><span class="id" title="notation">&</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#d531732ed602c7af62b88c7cfce824e5"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#d531732ed602c7af62b88c7cfce824e5"><span class="id" title="notation">rmorphism</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#F"><span class="id" title="variable">F</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.character.mxrepresentation.html#Fs"><span class="id" title="variable">Fs</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#d531732ed602c7af62b88c7cfce824e5"><span class="id" title="notation">}</span></a><br/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#2d3f7aca3c5e595bced87000c0854440"><span class="id" title="notation">&</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#group_splitting_field"><span class="id" title="definition">group_splitting_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Fs"><span class="id" title="variable">Fs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.Specif.html#2d3f7aca3c5e595bced87000c0854440"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="group_closure_field_exists"><span class="id" title="lemma">group_closure_field_exists</span></a> <span class="id" title="var">gT</span> <span class="id" title="var">F</span> :<br/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#classically"><span class="id" title="definition">classically</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#2d3f7aca3c5e595bced87000c0854440"><span class="id" title="notation">{</span></a><span class="id" title="var">Fs</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#2d3f7aca3c5e595bced87000c0854440"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.Field.Exports.fieldType"><span class="id" title="abbreviation">fieldType</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#2d3f7aca3c5e595bced87000c0854440"><span class="id" title="notation">&</span></a> <a class="idref" href="mathcomp.algebra.ssralg.html#d531732ed602c7af62b88c7cfce824e5"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#d531732ed602c7af62b88c7cfce824e5"><span class="id" title="notation">rmorphism</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#F"><span class="id" title="variable">F</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.character.mxrepresentation.html#Fs"><span class="id" title="variable">Fs</span></a><a class="idref" href="mathcomp.algebra.ssralg.html#d531732ed602c7af62b88c7cfce824e5"><span class="id" title="notation">}</span></a><br/> - <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Specif.html#2d3f7aca3c5e595bced87000c0854440"><span class="id" title="notation">&</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#group_closure_field"><span class="id" title="definition">group_closure_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#Fs"><span class="id" title="variable">Fs</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.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.Specif.html#2d3f7aca3c5e595bced87000c0854440"><span class="id" title="notation">}</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Lemma</span> <a name="group_closure_closed_field"><span class="id" title="lemma">group_closure_closed_field</span></a> (<span class="id" title="var">F</span> : <a class="idref" href="mathcomp.algebra.ssralg.html#GRing.ClosedField.Exports.closedFieldType"><span class="id" title="abbreviation">closedFieldType</span></a>) <span class="id" title="var">gT</span> :<br/> - <a class="idref" href="mathcomp.character.mxrepresentation.html#group_closure_field"><span class="id" title="definition">group_closure_field</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#F"><span class="id" title="variable">F</span></a> <a class="idref" href="mathcomp.character.mxrepresentation.html#gT"><span class="id" title="variable">gT</span></a>.<br/> - -<br/> -<span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.character.mxrepresentation.html#BuildSplittingField"><span class="id" title="section">BuildSplittingField</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 |
