diff options
| author | Enrico Tassi | 2019-05-22 13:43:08 +0200 |
|---|---|---|
| committer | Enrico Tassi | 2019-05-22 15:34:14 +0200 |
| commit | 748d716efb2f2f75946c8386e441ce1789806a39 (patch) | |
| tree | fe7bb1c5235550410c64e968f4a4d69b7f10a047 /docs/htmldoc/mathcomp.fingroup.perm.html | |
| parent | 415be3b908daadabf178a292c885db78e5b2c9a4 (diff) | |
htmldoc regenerated
Diffstat (limited to 'docs/htmldoc/mathcomp.fingroup.perm.html')
| -rw-r--r-- | docs/htmldoc/mathcomp.fingroup.perm.html | 250 |
1 files changed, 131 insertions, 119 deletions
diff --git a/docs/htmldoc/mathcomp.fingroup.perm.html b/docs/htmldoc/mathcomp.fingroup.perm.html index e957ec7..7a984bf 100644 --- a/docs/htmldoc/mathcomp.fingroup.perm.html +++ b/docs/htmldoc/mathcomp.fingroup.perm.html @@ -21,7 +21,6 @@ <div class="code"> <span class="comment">(* (c) Copyright 2006-2016 Microsoft Corporation and Inria. <br/> Distributed under the terms of CeCILL-B. *)</span><br/> -<span class="id" title="keyword">Require</span> <span class="id" title="keyword">Import</span> <a class="idref" href="mathcomp.ssreflect.ssreflect.html#"><span class="id" title="library">mathcomp.ssreflect.ssreflect</span></a>.<br/> <br/> </div> @@ -65,45 +64,45 @@ <span class="id" title="keyword">Variable</span> <a name="PermDefSection.T"><span class="id" title="variable">T</span></a> : <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">Inductive</span> <a name="perm_type"><span class="id" title="inductive">perm_type</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#predArgType"><span class="id" title="definition">predArgType</span></a> :=<br/> - <a name="Perm"><span class="id" title="constructor">Perm</span></a> (<span class="id" title="var">pval</span> : <a class="idref" href="mathcomp.ssreflect.finfun.html#9f24a6f16bf73832c2d9aa4e2c16f692"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.ssreflect.finfun.html#9f24a6f16bf73832c2d9aa4e2c16f692"><span class="id" title="notation">ffun</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSection.T"><span class="id" title="variable">T</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSection.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.ssreflect.finfun.html#9f24a6f16bf73832c2d9aa4e2c16f692"><span class="id" title="notation">}</span></a>) & <a class="idref" href="mathcomp.ssreflect.fintype.html#injectiveb"><span class="id" title="definition">injectiveb</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pval"><span class="id" title="variable">pval</span></a>.<br/> +<span class="id" title="keyword">Inductive</span> <a name="perm_type"><span class="id" title="inductive">perm_type</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> :=<br/> + <a name="Perm"><span class="id" title="constructor">Perm</span></a> (<span class="id" title="var">pval</span> : <a class="idref" href="mathcomp.ssreflect.finfun.html#31493a873acc18a8368490ef56022c0c"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.ssreflect.finfun.html#31493a873acc18a8368490ef56022c0c"><span class="id" title="notation">ffun</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSection.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.fingroup.perm.html#PermDefSection.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.ssreflect.finfun.html#31493a873acc18a8368490ef56022c0c"><span class="id" title="notation">}</span></a>) & <a class="idref" href="mathcomp.ssreflect.fintype.html#injectiveb"><span class="id" title="definition">injectiveb</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pval"><span class="id" title="variable">pval</span></a>.<br/> <span class="id" title="keyword">Definition</span> <a name="pval"><span class="id" title="definition">pval</span></a> <span class="id" title="var">p</span> := <span class="id" title="keyword">let</span>: <a class="idref" href="mathcomp.fingroup.perm.html#Perm"><span class="id" title="constructor">Perm</span></a> <span class="id" title="var">f</span> <span class="id" title="var">_</span> := <a class="idref" href="mathcomp.fingroup.perm.html#p"><span class="id" title="variable">p</span></a> <span class="id" title="tactic">in</span> <span class="id" title="var">f</span>.<br/> -<span class="id" title="keyword">Definition</span> <a name="perm_of"><span class="id" title="definition">perm_of</span></a> <span class="id" title="keyword">of</span> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssreflect.html#phant"><span class="id" title="inductive">phant</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSection.T"><span class="id" title="variable">T</span></a> := <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a>.<br/> +<span class="id" title="keyword">Definition</span> <a name="perm_of"><span class="id" title="definition">perm_of</span></a> <span class="id" title="keyword">of</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#phant"><span class="id" title="inductive">phant</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSection.T"><span class="id" title="variable">T</span></a> := <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a>.<br/> <span class="id" title="keyword">Identity</span> <span class="id" title="keyword">Coercion</span> <span class="id" title="var">type_of_perm</span> : <span class="id" title="var">perm_of</span> >-> <span class="id" title="var">perm_type</span>.<br/> <br/> -<span class="id" title="keyword">Notation</span> <a name="pT"><span class="id" title="abbreviation">pT</span></a> := (<a class="idref" href="mathcomp.fingroup.perm.html#perm_of"><span class="id" title="definition">perm_of</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssreflect.html#Phant"><span class="id" title="constructor">Phant</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSection.T"><span class="id" title="variable">T</span></a>)).<br/> +<span class="id" title="keyword">Notation</span> <a name="pT"><span class="id" title="abbreviation">pT</span></a> := (<a class="idref" href="mathcomp.fingroup.perm.html#perm_of"><span class="id" title="definition">perm_of</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#Phant"><span class="id" title="constructor">Phant</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSection.T"><span class="id" title="variable">T</span></a>)).<br/> <br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_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#341c160c3e7b20d967b85d1852a7f89f"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#341c160c3e7b20d967b85d1852a7f89f"><span class="id" title="notation">subType</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#341c160c3e7b20d967b85d1852a7f89f"><span class="id" title="notation">for</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pval"><span class="id" title="definition">pval</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#341c160c3e7b20d967b85d1852a7f89f"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="perm_eqMixin"><span class="id" title="definition">perm_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#4bc2d2dce12edef0fb9c71d4a902ae5d"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#4bc2d2dce12edef0fb9c71d4a902ae5d"><span class="id" title="notation">eqMixin</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#4bc2d2dce12edef0fb9c71d4a902ae5d"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#4bc2d2dce12edef0fb9c71d4a902ae5d"><span class="id" title="notation">by</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#4bc2d2dce12edef0fb9c71d4a902ae5d"><span class="id" title="notation"><:]</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_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#c2d02b544d823cdc1e1e08de552cdba4"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#c2d02b544d823cdc1e1e08de552cdba4"><span class="id" title="notation">subType</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c2d02b544d823cdc1e1e08de552cdba4"><span class="id" title="notation">for</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pval"><span class="id" title="definition">pval</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#c2d02b544d823cdc1e1e08de552cdba4"><span class="id" title="notation">]</span></a>.<br/> +<span class="id" title="keyword">Definition</span> <a name="perm_eqMixin"><span class="id" title="definition">perm_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.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</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">perm_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.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_eqMixin"><span class="id" title="definition">perm_eqMixin</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="perm_choiceMixin"><span class="id" title="definition">perm_choiceMixin</span></a> := <a class="idref" href="mathcomp.ssreflect.choice.html#6c8b2d90ff1fbb8e9926bbf12495cb70"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#6c8b2d90ff1fbb8e9926bbf12495cb70"><span class="id" title="notation">choiceMixin</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#6c8b2d90ff1fbb8e9926bbf12495cb70"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#6c8b2d90ff1fbb8e9926bbf12495cb70"><span class="id" title="notation">by</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#6c8b2d90ff1fbb8e9926bbf12495cb70"><span class="id" title="notation"><:]</span></a>.<br/> +<span class="id" title="keyword">Definition</span> <a name="perm_choiceMixin"><span class="id" title="definition">perm_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.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</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">perm_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.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_choiceMixin"><span class="id" title="definition">perm_choiceMixin</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="perm_countMixin"><span class="id" title="definition">perm_countMixin</span></a> := <a class="idref" href="mathcomp.ssreflect.choice.html#99c739c8f4212f142296b27d3077c65e"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#99c739c8f4212f142296b27d3077c65e"><span class="id" title="notation">countMixin</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#99c739c8f4212f142296b27d3077c65e"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#99c739c8f4212f142296b27d3077c65e"><span class="id" title="notation">by</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#99c739c8f4212f142296b27d3077c65e"><span class="id" title="notation"><:]</span></a>.<br/> +<span class="id" title="keyword">Definition</span> <a name="perm_countMixin"><span class="id" title="definition">perm_countMixin</span></a> := <a class="idref" href="mathcomp.ssreflect.choice.html#c2a823e7a76d1d303efdd00309d93aca"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#c2a823e7a76d1d303efdd00309d93aca"><span class="id" title="notation">countMixin</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#c2a823e7a76d1d303efdd00309d93aca"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#c2a823e7a76d1d303efdd00309d93aca"><span class="id" title="notation">by</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#c2a823e7a76d1d303efdd00309d93aca"><span class="id" title="notation"><:]</span></a>.<br/> <span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_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.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_countMixin"><span class="id" title="definition">perm_countMixin</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_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#8a7192fa64a42310658fd5be07ae4fcc"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#8a7192fa64a42310658fd5be07ae4fcc"><span class="id" title="notation">subCountType</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#8a7192fa64a42310658fd5be07ae4fcc"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#8a7192fa64a42310658fd5be07ae4fcc"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="perm_finMixin"><span class="id" title="definition">perm_finMixin</span></a> := <a class="idref" href="mathcomp.ssreflect.fintype.html#8c180561768185dd10396a5d3615104a"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#8c180561768185dd10396a5d3615104a"><span class="id" title="notation">finMixin</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#8c180561768185dd10396a5d3615104a"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#8c180561768185dd10396a5d3615104a"><span class="id" title="notation">by</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#8c180561768185dd10396a5d3615104a"><span class="id" title="notation"><:]</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_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.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</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="perm_finMixin"><span class="id" title="definition">perm_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.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</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">perm_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.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_finMixin"><span class="id" title="definition">perm_finMixin</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_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#a701c7b60b4a16f07950761d8bf90924"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#a701c7b60b4a16f07950761d8bf90924"><span class="id" title="notation">subFinType</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#a701c7b60b4a16f07950761d8bf90924"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#a701c7b60b4a16f07950761d8bf90924"><span class="id" title="notation">]</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_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.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</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">Canonical</span> <span class="id" title="var">perm_for_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#6645671e2203a23d135a621a3cf0157c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#6645671e2203a23d135a621a3cf0157c"><span class="id" title="notation">subType</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#6645671e2203a23d135a621a3cf0157c"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#6645671e2203a23d135a621a3cf0157c"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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#cb062fd562aed512787df99359c6e3f2"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#cb062fd562aed512787df99359c6e3f2"><span class="id" title="notation">eqType</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#cb062fd562aed512787df99359c6e3f2"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#cb062fd562aed512787df99359c6e3f2"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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#1731a28227324c9e5fc49499029635b3"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#1731a28227324c9e5fc49499029635b3"><span class="id" title="notation">choiceType</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#1731a28227324c9e5fc49499029635b3"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#1731a28227324c9e5fc49499029635b3"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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#be2fb44e85835140c455bc256ce18d4c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#be2fb44e85835140c455bc256ce18d4c"><span class="id" title="notation">countType</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#be2fb44e85835140c455bc256ce18d4c"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#be2fb44e85835140c455bc256ce18d4c"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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#8a7192fa64a42310658fd5be07ae4fcc"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#8a7192fa64a42310658fd5be07ae4fcc"><span class="id" title="notation">subCountType</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#8a7192fa64a42310658fd5be07ae4fcc"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#8a7192fa64a42310658fd5be07ae4fcc"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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#eb1f7a25d8e03f1f02a5769831d0e74e"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#eb1f7a25d8e03f1f02a5769831d0e74e"><span class="id" title="notation">finType</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#eb1f7a25d8e03f1f02a5769831d0e74e"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#eb1f7a25d8e03f1f02a5769831d0e74e"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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#a701c7b60b4a16f07950761d8bf90924"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#a701c7b60b4a16f07950761d8bf90924"><span class="id" title="notation">subFinType</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#a701c7b60b4a16f07950761d8bf90924"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#a701c7b60b4a16f07950761d8bf90924"><span class="id" title="notation">]</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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#aa8c179e7d847b79500c7558a661edb0"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#aa8c179e7d847b79500c7558a661edb0"><span class="id" title="notation">subType</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#aa8c179e7d847b79500c7558a661edb0"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#aa8c179e7d847b79500c7558a661edb0"><span class="id" title="notation">]</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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#2b9222c46a529018a8ebb5be6355801c"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#2b9222c46a529018a8ebb5be6355801c"><span class="id" title="notation">eqType</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#2b9222c46a529018a8ebb5be6355801c"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#2b9222c46a529018a8ebb5be6355801c"><span class="id" title="notation">]</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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#6cecb3ca492751e55998eec154506328"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#6cecb3ca492751e55998eec154506328"><span class="id" title="notation">choiceType</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#6cecb3ca492751e55998eec154506328"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#6cecb3ca492751e55998eec154506328"><span class="id" title="notation">]</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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#3fd72847645c366340e6e9be05776bd8"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#3fd72847645c366340e6e9be05776bd8"><span class="id" title="notation">countType</span></a> <a class="idref" href="mathcomp.ssreflect.choice.html#3fd72847645c366340e6e9be05776bd8"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#3fd72847645c366340e6e9be05776bd8"><span class="id" title="notation">]</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.choice.html#9bbd910cbebcec91f8279b0711b4702d"><span class="id" title="notation">]</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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#0e3773306b0834fa9a0572c7b198b77f"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#0e3773306b0834fa9a0572c7b198b77f"><span class="id" title="notation">finType</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#0e3773306b0834fa9a0572c7b198b77f"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#0e3773306b0834fa9a0572c7b198b77f"><span class="id" title="notation">]</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_for_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.fingroup.perm.html#pT"><span class="id" title="abbreviation">pT</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">Lemma</span> <a name="perm_proof"><span class="id" title="lemma">perm_proof</span></a> (<span class="id" title="var">f</span> : <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSection.T"><span class="id" title="variable">T</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSection.T"><span class="id" title="variable">T</span></a>) : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#injective"><span class="id" title="definition">injective</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#injectiveb"><span class="id" title="definition">injectiveb</span></a> (<a class="idref" href="mathcomp.ssreflect.finfun.html#finfun"><span class="id" title="abbreviation">finfun</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a>).<br/> +<span class="id" title="keyword">Lemma</span> <a name="perm_proof"><span class="id" title="lemma">perm_proof</span></a> (<span class="id" title="var">f</span> : <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSection.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.fingroup.perm.html#PermDefSection.T"><span class="id" title="variable">T</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.fingroup.perm.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.ssreflect.fintype.html#injectiveb"><span class="id" title="definition">injectiveb</span></a> (<a class="idref" href="mathcomp.ssreflect.finfun.html#finfun"><span class="id" title="abbreviation">finfun</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a>).<br/> <br/> <span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSection"><span class="id" title="section">PermDefSection</span></a>.<br/> <br/> -<span class="id" title="keyword">Notation</span> <a name="8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">"</span></a>{ 'perm' T }" := (<a class="idref" href="mathcomp.fingroup.perm.html#perm_of"><span class="id" title="definition">perm_of</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssreflect.html#Phant"><span class="id" title="constructor">Phant</span></a> <span class="id" title="var">T</span>))<br/> +<span class="id" title="keyword">Notation</span> <a name="683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">"</span></a>{ 'perm' T }" := (<a class="idref" href="mathcomp.fingroup.perm.html#perm_of"><span class="id" title="definition">perm_of</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#Phant"><span class="id" title="constructor">Phant</span></a> <span class="id" title="var">T</span>))<br/> (<span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 0, <span class="id" title="var">format</span> "{ 'perm' T }") : <span class="id" title="var">type_scope</span>.<br/> <br/> @@ -111,33 +110,33 @@ <br/> <br/> -<span class="id" title="keyword">Notation</span> <a name="ea6fcc91866185ddfad466ada7c10b27"><span class="id" title="notation">"</span></a>''S_' n" := <a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#9de6d53cccc27f521f3ab56b38159140"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#9de6d53cccc27f521f3ab56b38159140"><span class="id" title="notation">I_n</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">}</span></a><br/> +<span class="id" title="keyword">Notation</span> <a name="b84ec172b7d8a9cb94a7af117c5a31d6"><span class="id" title="notation">"</span></a>''S_' n" := <a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.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_n</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">}</span></a><br/> (<span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 8, <span class="id" title="var">n</span> <span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 2, <span class="id" title="var">format</span> "''S_' n").<br/> <br/> <br/> <span class="id" title="keyword">Module</span> <span class="id" title="keyword">Type</span> <a name="PermDefSig"><span class="id" title="module">PermDefSig</span></a>.<br/> -<span class="id" title="keyword">Parameter</span> <a name="PermDefSig.fun_of_perm"><span class="id" title="axiom">fun_of_perm</span></a> : <span class="id" title="keyword">∀</span> <span class="id" title="var">T</span>, <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a>.<br/> -<span class="id" title="keyword">Parameter</span> <a name="PermDefSig.perm"><span class="id" title="axiom">perm</span></a> : <span class="id" title="keyword">∀</span> (<span class="id" title="var">T</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">f</span> : <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a>), <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#injective"><span class="id" title="definition">injective</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">}</span></a>.<br/> -<span class="id" title="keyword">Axiom</span> <a name="PermDefSig.fun_of_permE"><span class="id" title="axiom">fun_of_permE</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSig.fun_of_perm"><span class="id" title="axiom">fun_of_perm</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#fun_of_perm_def"><span class="id" title="abbreviation">fun_of_perm_def</span></a>.<br/> -<span class="id" title="keyword">Axiom</span> <a name="PermDefSig.permE"><span class="id" title="axiom">permE</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSig.perm"><span class="id" title="axiom">perm</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_def"><span class="id" title="abbreviation">perm_def</span></a>.<br/> +<span class="id" title="keyword">Parameter</span> <a name="PermDefSig.fun_of_perm"><span class="id" title="axiom">fun_of_perm</span></a> : <span class="id" title="keyword">∀</span> <span class="id" title="var">T</span>, <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.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.fingroup.perm.html#T"><span class="id" title="variable">T</span></a>.<br/> +<span class="id" title="keyword">Parameter</span> <a name="PermDefSig.perm"><span class="id" title="axiom">perm</span></a> : <span class="id" title="keyword">∀</span> (<span class="id" title="var">T</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">f</span> : <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#T"><span class="id" title="variable">T</span></a>), <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#injective"><span class="id" title="definition">injective</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">}</span></a>.<br/> +<span class="id" title="keyword">Axiom</span> <a name="PermDefSig.fun_of_permE"><span class="id" title="axiom">fun_of_permE</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSig.fun_of_perm"><span class="id" title="axiom">fun_of_perm</span></a> <a class="idref" href="http://coq.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.perm.html#fun_of_perm_def"><span class="id" title="abbreviation">fun_of_perm_def</span></a>.<br/> +<span class="id" title="keyword">Axiom</span> <a name="PermDefSig.permE"><span class="id" title="axiom">permE</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSig.perm"><span class="id" title="axiom">perm</span></a> <a class="idref" href="http://coq.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.perm.html#perm_def"><span class="id" title="abbreviation">perm_def</span></a>.<br/> <span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSig"><span class="id" title="module">PermDefSig</span></a>.<br/> <br/> <span class="id" title="keyword">Module</span> <a name="PermDef"><span class="id" title="module">PermDef</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#PermDefSig"><span class="id" title="module">PermDefSig</span></a>.<br/> <span class="id" title="keyword">Definition</span> <a name="PermDef.fun_of_perm"><span class="id" title="definition">fun_of_perm</span></a> := <a class="idref" href="mathcomp.fingroup.perm.html#fun_of_perm_def"><span class="id" title="abbreviation">fun_of_perm_def</span></a>.<br/> <span class="id" title="keyword">Definition</span> <a name="PermDef.perm"><span class="id" title="definition">perm</span></a> := <a class="idref" href="mathcomp.fingroup.perm.html#perm_def"><span class="id" title="abbreviation">perm_def</span></a>.<br/> -<span class="id" title="keyword">Lemma</span> <a name="PermDef.fun_of_permE"><span class="id" title="lemma">fun_of_permE</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#PermDef.fun_of_perm"><span class="id" title="definition">fun_of_perm</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#fun_of_perm_def"><span class="id" title="abbreviation">fun_of_perm_def</span></a>. <br/> -<span class="id" title="keyword">Lemma</span> <a name="PermDef.permE"><span class="id" title="lemma">permE</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#PermDef.perm"><span class="id" title="definition">perm</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_def"><span class="id" title="abbreviation">perm_def</span></a>. <br/> +<span class="id" title="keyword">Lemma</span> <a name="PermDef.fun_of_permE"><span class="id" title="lemma">fun_of_permE</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#PermDef.fun_of_perm"><span class="id" title="definition">fun_of_perm</span></a> <a class="idref" href="http://coq.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.perm.html#fun_of_perm_def"><span class="id" title="abbreviation">fun_of_perm_def</span></a>. <br/> +<span class="id" title="keyword">Lemma</span> <a name="PermDef.permE"><span class="id" title="lemma">permE</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#PermDef.perm"><span class="id" title="definition">perm</span></a> <a class="idref" href="http://coq.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.perm.html#perm_def"><span class="id" title="abbreviation">perm_def</span></a>. <br/> <span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.fingroup.perm.html#PermDef"><span class="id" title="module">PermDef</span></a>.<br/> <br/> <span class="id" title="keyword">Notation</span> <a name="fun_of_perm"><span class="id" title="abbreviation">fun_of_perm</span></a> := <a class="idref" href="mathcomp.fingroup.perm.html#fun_of_perm"><span class="id" title="axiom">PermDef.fun_of_perm</span></a>.<br/> -<span class="id" title="keyword">Notation</span> <a name="ed3415d539756427d396dbdd3cf8051f"><span class="id" title="notation">"</span></a>@ 'perm'" := (@<a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="axiom">PermDef.perm</span></a>) (<span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 10, <span class="id" title="var">format</span> "@ 'perm'").<br/> +<span class="id" title="keyword">Notation</span> <a name="62bf0ee6e1af563ba54ed9489553a1f5"><span class="id" title="notation">"</span></a>@ 'perm'" := (@<a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="axiom">PermDef.perm</span></a>) (<span class="id" title="tactic">at</span> <span class="id" title="keyword">level</span> 10, <span class="id" title="var">format</span> "@ 'perm'").<br/> <span class="id" title="keyword">Notation</span> <a name="perm"><span class="id" title="abbreviation">perm</span></a> := (@<a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="axiom">PermDef.perm</span></a> <span class="id" title="var">_</span> <span class="id" title="var">_</span>).<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">fun_of_perm_unlock</span> := <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssreflect.html#Unlockable"><span class="id" title="constructor">Unlockable</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#fun_of_permE"><span class="id" title="axiom">PermDef.fun_of_permE</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_unlock</span> := <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssreflect.html#Unlockable"><span class="id" title="constructor">Unlockable</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#permE"><span class="id" title="axiom">PermDef.permE</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">fun_of_perm_unlock</span> := <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#Unlockable"><span class="id" title="constructor">Unlockable</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#fun_of_permE"><span class="id" title="axiom">PermDef.fun_of_permE</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_unlock</span> := <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssreflect.html#Unlockable"><span class="id" title="constructor">Unlockable</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#permE"><span class="id" title="axiom">PermDef.permE</span></a>.<br/> <span class="id" title="keyword">Coercion</span> <a class="idref" href="mathcomp.fingroup.perm.html#fun_of_perm"><span class="id" title="axiom">fun_of_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#fun_of_perm"><span class="id" title="axiom">:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#fun_of_perm"><span class="id" title="axiom">perm_type</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#fun_of_perm"><span class="id" title="axiom">>-></span></a> <a class="idref" href="mathcomp.fingroup.perm.html#fun_of_perm"><span class="id" title="axiom">Funclass</span></a>.<br/> <br/> @@ -145,46 +144,44 @@ <br/> <span class="id" title="keyword">Variable</span> <a name="Theory.T"><span class="id" title="variable">T</span></a> : <a class="idref" href="mathcomp.ssreflect.fintype.html#Finite.Exports.finType"><span class="id" title="abbreviation">finType</span></a>.<br/> -<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Types</span> (<span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a>) (<span class="id" title="var">s</span> <span class="id" title="var">t</span> : <a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">}</span></a>) (<span class="id" title="var">S</span> : <a class="idref" href="mathcomp.ssreflect.finset.html#0fec877de6d09ef39abb9b599a84eb0e"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#0fec877de6d09ef39abb9b599a84eb0e"><span class="id" title="notation">set</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#0fec877de6d09ef39abb9b599a84eb0e"><span class="id" title="notation">}</span></a>).<br/> +<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Types</span> (<span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a>) (<span class="id" title="var">s</span> <span class="id" title="var">t</span> : <a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">}</span></a>) (<span class="id" title="var">S</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.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.ssreflect.finset.html#d8708f36d374a98f4d683c7593d1ea6a"><span class="id" title="notation">}</span></a>).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="permP"><span class="id" title="lemma">permP</span></a> <span class="id" title="var">s</span> <span class="id" title="var">t</span> : <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#2500d48ed8e862ccfda98a44dff88963"><span class="id" title="notation">=1</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#df1ced36fc33ce188051218bca314374"><span class="id" title="notation">↔</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="permP"><span class="id" title="lemma">permP</span></a> <span class="id" title="var">s</span> <span class="id" title="var">t</span> : <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#876aa133fb3472bffd492f74ff496035"><span class="id" title="notation">=1</span></a> <a class="idref" href="mathcomp.fingroup.perm.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#4bfb4f2d0721ba668e3a802ab1b745a1"><span class="id" title="notation">↔</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="pvalE"><span class="id" title="lemma">pvalE</span></a> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#pval"><span class="id" title="definition">pval</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#8f9364556521ebb498093f28eea2240f"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#8f9364556521ebb498093f28eea2240f"><span class="id" title="notation">:></span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#8f9364556521ebb498093f28eea2240f"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#8f9364556521ebb498093f28eea2240f"><span class="id" title="notation">)</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="pvalE"><span class="id" title="lemma">pvalE</span></a> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#pval"><span class="id" title="definition">pval</span></a> <a class="idref" href="mathcomp.fingroup.perm.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#b8b2ebc8e1a8b9aa935c0702efb5dccf"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.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#b8b2ebc8e1a8b9aa935c0702efb5dccf"><span class="id" title="notation">:></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.fingroup.perm.html#Theory.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.fingroup.perm.html#Theory.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#b8b2ebc8e1a8b9aa935c0702efb5dccf"><span class="id" title="notation">)</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="permE"><span class="id" title="lemma">permE</span></a> <span class="id" title="var">f</span> <span class="id" title="var">f_inj</span> : <a class="idref" href="mathcomp.fingroup.perm.html#ed3415d539756427d396dbdd3cf8051f"><span class="id" title="notation">@</span></a><a class="idref" href="mathcomp.fingroup.perm.html#ed3415d539756427d396dbdd3cf8051f"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ed3415d539756427d396dbdd3cf8051f"><span class="id" title="notation">T</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ed3415d539756427d396dbdd3cf8051f"><span class="id" title="notation">f</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ed3415d539756427d396dbdd3cf8051f"><span class="id" title="notation">f_inj</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#2500d48ed8e862ccfda98a44dff88963"><span class="id" title="notation">=1</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="permE"><span class="id" title="lemma">permE</span></a> <span class="id" title="var">f</span> <span class="id" title="var">f_inj</span> : <a class="idref" href="mathcomp.fingroup.perm.html#62bf0ee6e1af563ba54ed9489553a1f5"><span class="id" title="notation">@</span></a><a class="idref" href="mathcomp.fingroup.perm.html#62bf0ee6e1af563ba54ed9489553a1f5"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#62bf0ee6e1af563ba54ed9489553a1f5"><span class="id" title="notation">T</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#62bf0ee6e1af563ba54ed9489553a1f5"><span class="id" title="notation">f</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#62bf0ee6e1af563ba54ed9489553a1f5"><span class="id" title="notation">f_inj</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.fingroup.perm.html#f"><span class="id" title="variable">f</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="perm_inj"><span class="id" title="lemma">perm_inj</span></a> <span class="id" title="var">s</span> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#injective"><span class="id" title="definition">injective</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>.<br/> - -<br/> -<span class="id" title="keyword">Hint Resolve</span> <span class="id" title="var">perm_inj</span>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="perm_inj"><span class="id" title="lemma">perm_inj</span></a> {<span class="id" title="var">s</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.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>.<br/> + <span class="id" title="keyword">Hint Resolve</span> <span class="id" title="var">perm_inj</span> : <span class="id" title="var">core</span>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="perm_onto"><span class="id" title="lemma">perm_onto</span></a> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#codom"><span class="id" title="definition">codom</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#20bf07099d6d8cf369383b22fd37862e"><span class="id" title="notation">=</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#20bf07099d6d8cf369383b22fd37862e"><span class="id" title="notation">i</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#predT"><span class="id" title="definition">predT</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="perm_onto"><span class="id" title="lemma">perm_onto</span></a> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#codom"><span class="id" title="definition">codom</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#1e6a438ff685c38fcd9034a94f271777"><span class="id" title="notation">=</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#1e6a438ff685c38fcd9034a94f271777"><span class="id" title="notation">i</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#predT"><span class="id" title="definition">predT</span></a>.<br/> <br/> -<span class="id" title="keyword">Definition</span> <a name="perm_one"><span class="id" title="definition">perm_one</span></a> := <a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="abbreviation">perm</span></a> (@<a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#inj_id"><span class="id" title="lemma">inj_id</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a>).<br/> +<span class="id" title="keyword">Definition</span> <a name="perm_one"><span class="id" title="definition">perm_one</span></a> := <a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="abbreviation">perm</span></a> (@<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#inj_id"><span class="id" title="lemma">inj_id</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a>).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="perm_invK"><span class="id" title="lemma">perm_invK</span></a> <span class="id" title="var">s</span> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.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">x</span> ⇒ <a class="idref" href="mathcomp.ssreflect.fintype.html#iinv"><span class="id" title="definition">iinv</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#perm_onto"><span class="id" title="lemma">perm_onto</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>)) <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="perm_invK"><span class="id" title="lemma">perm_invK</span></a> <span class="id" title="var">s</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> (<span class="id" title="keyword">fun</span> <span class="id" title="var">x</span> ⇒ <a class="idref" href="mathcomp.ssreflect.fintype.html#iinv"><span class="id" title="definition">iinv</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#perm_onto"><span class="id" title="lemma">perm_onto</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>)) <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>.<br/> <br/> -<span class="id" title="keyword">Definition</span> <a name="perm_inv"><span class="id" title="definition">perm_inv</span></a> <span class="id" title="var">s</span> := <a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="abbreviation">perm</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#can_inj"><span class="id" title="lemma">can_inj</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#perm_invK"><span class="id" title="lemma">perm_invK</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>)).<br/> +<span class="id" title="keyword">Definition</span> <a name="perm_inv"><span class="id" title="definition">perm_inv</span></a> <span class="id" title="var">s</span> := <a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="abbreviation">perm</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#can_inj"><span class="id" title="lemma">can_inj</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#perm_invK"><span class="id" title="lemma">perm_invK</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>)).<br/> <br/> -<span class="id" title="keyword">Definition</span> <a name="perm_mul"><span class="id" title="definition">perm_mul</span></a> <span class="id" title="var">s</span> <span class="id" title="var">t</span> := <a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="abbreviation">perm</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#inj_comp"><span class="id" title="lemma">inj_comp</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#perm_inj"><span class="id" title="lemma">perm_inj</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>) (<a class="idref" href="mathcomp.fingroup.perm.html#perm_inj"><span class="id" title="lemma">perm_inj</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>)).<br/> +<span class="id" title="keyword">Definition</span> <a name="perm_mul"><span class="id" title="definition">perm_mul</span></a> <span class="id" title="var">s</span> <span class="id" title="var">t</span> := <a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="abbreviation">perm</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#inj_comp"><span class="id" title="lemma">inj_comp</span></a> (@<a class="idref" href="mathcomp.fingroup.perm.html#perm_inj"><span class="id" title="lemma">perm_inj</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>) (@<a class="idref" href="mathcomp.fingroup.perm.html#perm_inj"><span class="id" title="lemma">perm_inj</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>)).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="perm_oneP"><span class="id" title="lemma">perm_oneP</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#left_id"><span class="id" title="definition">left_id</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_one"><span class="id" title="definition">perm_one</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_mul"><span class="id" title="definition">perm_mul</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="perm_oneP"><span class="id" title="lemma">perm_oneP</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.fingroup.perm.html#perm_one"><span class="id" title="definition">perm_one</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_mul"><span class="id" title="definition">perm_mul</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="perm_invP"><span class="id" title="lemma">perm_invP</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#left_inverse"><span class="id" title="definition">left_inverse</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_one"><span class="id" title="definition">perm_one</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_inv"><span class="id" title="definition">perm_inv</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_mul"><span class="id" title="definition">perm_mul</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="perm_invP"><span class="id" title="lemma">perm_invP</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.fingroup.perm.html#perm_one"><span class="id" title="definition">perm_one</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_inv"><span class="id" title="definition">perm_inv</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_mul"><span class="id" title="definition">perm_mul</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="perm_mulP"><span class="id" title="lemma">perm_mulP</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#associative"><span class="id" title="definition">associative</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_mul"><span class="id" title="definition">perm_mul</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="perm_mulP"><span class="id" title="lemma">perm_mulP</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.fingroup.perm.html#perm_mul"><span class="id" title="definition">perm_mul</span></a>.<br/> <br/> <span class="id" title="keyword">Definition</span> <a name="perm_of_baseFinGroupMixin"><span class="id" title="definition">perm_of_baseFinGroupMixin</span></a> : <a class="idref" href="mathcomp.fingroup.fingroup.html#FinGroup.mixin_of"><span class="id" title="record">FinGroup.mixin_of</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a>) :=<br/> @@ -195,95 +192,95 @@ <br/> <span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_of_baseFinGroupType</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.fingroup.fingroup.html#bdbf19c07c4322c6fcf6df6c95066969"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#bdbf19c07c4322c6fcf6df6c95066969"><span class="id" title="notation">baseFinGroupType</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#bdbf19c07c4322c6fcf6df6c95066969"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">}</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#bdbf19c07c4322c6fcf6df6c95066969"><span class="id" title="notation">]</span></a>.<br/> -<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_of_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.fingroup.fingroup.html#db944dcc0a08a3bc9a79ca11eb10ad09"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#db944dcc0a08a3bc9a79ca11eb10ad09"><span class="id" title="notation">finGroupType</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#db944dcc0a08a3bc9a79ca11eb10ad09"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">}</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#db944dcc0a08a3bc9a79ca11eb10ad09"><span class="id" title="notation">]</span></a>.<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.fingroup.fingroup.html#ac5c214a3d709d8519333b0f98027cc9"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#ac5c214a3d709d8519333b0f98027cc9"><span class="id" title="notation">baseFinGroupType</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#ac5c214a3d709d8519333b0f98027cc9"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">}</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#ac5c214a3d709d8519333b0f98027cc9"><span class="id" title="notation">]</span></a>.<br/> +<span class="id" title="keyword">Canonical</span> <span class="id" title="var">perm_of_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.fingroup.fingroup.html#2bd77263376cf9e19a7b9689cc638b8a"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#2bd77263376cf9e19a7b9689cc638b8a"><span class="id" title="notation">finGroupType</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#2bd77263376cf9e19a7b9689cc638b8a"><span class="id" title="notation">of</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">}</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#2bd77263376cf9e19a7b9689cc638b8a"><span class="id" title="notation">]</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="perm1"><span class="id" title="lemma">perm1</span></a> <span class="id" title="var">x</span> : (1 <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssreflect.html#4509b22bf26e3d6d771897e22bd8bc8f"><span class="id" title="notation">:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">}</span></a>) <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="perm1"><span class="id" title="lemma">perm1</span></a> <span class="id" title="var">x</span> : (1 <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.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">}</span></a>) <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="permM"><span class="id" title="lemma">permM</span></a> <span class="id" title="var">s</span> <span class="id" title="var">t</span> <span class="id" title="var">x</span> : (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#169fb610eeaa28cebf8ec36928167473"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>) <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>).<br/> +<span class="id" title="keyword">Lemma</span> <a name="permM"><span class="id" title="lemma">permM</span></a> <span class="id" title="var">s</span> <span class="id" title="var">t</span> <span class="id" title="var">x</span> : (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>) <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="permK"><span class="id" title="lemma">permK</span></a> <span class="id" title="var">s</span> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#cancel"><span class="id" title="definition">cancel</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a605acbeae7597f74f5a9b816ed8a717"><span class="id" title="notation">^-1</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="permK"><span class="id" title="lemma">permK</span></a> <span class="id" title="var">s</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.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="permKV"><span class="id" title="lemma">permKV</span></a> <span class="id" title="var">s</span> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#cancel"><span class="id" title="definition">cancel</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a605acbeae7597f74f5a9b816ed8a717"><span class="id" title="notation">^-1</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="permKV"><span class="id" title="lemma">permKV</span></a> <span class="id" title="var">s</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.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="permJ"><span class="id" title="lemma">permJ</span></a> <span class="id" title="var">s</span> <span class="id" title="var">t</span> <span class="id" title="var">x</span> : (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#808c6b8e35e792f23899f360a21e4638"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>) (<a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>).<br/> +<span class="id" title="keyword">Lemma</span> <a name="permJ"><span class="id" title="lemma">permJ</span></a> <span class="id" title="var">s</span> <span class="id" title="var">t</span> <span class="id" title="var">x</span> : (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>) (<a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="permX"><span class="id" title="lemma">permX</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> <span class="id" title="var">n</span> : (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#86a04fb564fb97d388cad84a3a204260"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#n"><span class="id" title="variable">n</span></a>) <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#iter"><span class="id" title="definition">iter</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="permX"><span class="id" title="lemma">permX</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> <span class="id" title="var">n</span> : (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#n"><span class="id" title="variable">n</span></a>) <a class="idref" href="mathcomp.fingroup.perm.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.ssreflect.ssrnat.html#iter"><span class="id" title="definition">iter</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#n"><span class="id" title="variable">n</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="im_permV"><span class="id" title="lemma">im_permV</span></a> <span class="id" title="var">s</span> <span class="id" title="var">S</span> : <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a605acbeae7597f74f5a9b816ed8a717"><span class="id" title="notation">^-1</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#f2bdcb40cf423bf8d54f091f6cec6964"><span class="id" title="notation">@:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#aa0c936d7feb8f26825e601735c0125f"><span class="id" title="notation">@^-1:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="im_permV"><span class="id" title="lemma">im_permV</span></a> <span class="id" title="var">s</span> <span class="id" title="var">S</span> : <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#de2c3fcab69008133cce8f8fc06f2b4b"><span class="id" title="notation">@:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#a26e64199ff8828f9b3d592a35c487af"><span class="id" title="notation">@^-1:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="preim_permV"><span class="id" title="lemma">preim_permV</span></a> <span class="id" title="var">s</span> <span class="id" title="var">S</span> : <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a605acbeae7597f74f5a9b816ed8a717"><span class="id" title="notation">^-1</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#aa0c936d7feb8f26825e601735c0125f"><span class="id" title="notation">@^-1:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#f2bdcb40cf423bf8d54f091f6cec6964"><span class="id" title="notation">@:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="preim_permV"><span class="id" title="lemma">preim_permV</span></a> <span class="id" title="var">s</span> <span class="id" title="var">S</span> : <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#a26e64199ff8828f9b3d592a35c487af"><span class="id" title="notation">@^-1:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#de2c3fcab69008133cce8f8fc06f2b4b"><span class="id" title="notation">@:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a>.<br/> <br/> -<span class="id" title="keyword">Definition</span> <a name="perm_on"><span class="id" title="definition">perm_on</span></a> <span class="id" title="var">S</span> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#pred"><span class="id" title="definition">pred</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">}</span></a> := <span class="id" title="keyword">fun</span> <span class="id" title="var">s</span> ⇒ <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#880a9790dece461a678db8aa0c091f63"><span class="id" title="notation">[</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#880a9790dece461a678db8aa0c091f63"><span class="id" title="notation">pred</span></a> <span class="id" title="var">x</span> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#880a9790dece461a678db8aa0c091f63"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b1eeadc2feabc7422252baa895418c7b"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#880a9790dece461a678db8aa0c091f63"><span class="id" title="notation">]</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#826eae8d7598a787ea56f4249e6e210e"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#826eae8d7598a787ea56f4249e6e210e"><span class="id" title="notation">subset</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a>.<br/> +<span class="id" title="keyword">Definition</span> <a name="perm_on"><span class="id" title="definition">perm_on</span></a> <span class="id" title="var">S</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.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">}</span></a> := <span class="id" title="keyword">fun</span> <span class="id" title="var">s</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#27dabc72ea2c2c768f2db80a79f42524"><span class="id" title="notation">pred</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#27dabc72ea2c2c768f2db80a79f42524"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.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#27dabc72ea2c2c768f2db80a79f42524"><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.perm.html#S"><span class="id" title="variable">S</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="perm_closed"><span class="id" title="lemma">perm_closed</span></a> <span class="id" title="var">S</span> <span class="id" title="var">s</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">)</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="perm_closed"><span class="id" title="lemma">perm_closed</span></a> <span class="id" title="var">S</span> <span class="id" title="var">s</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="mathcomp.fingroup.perm.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> <a class="idref" href="http://coq.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.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.perm.html#S"><span class="id" title="variable">S</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.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.perm.html#S"><span class="id" title="variable">S</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">)</span></a>.<br/> <br/> <span class="id" title="keyword">Lemma</span> <a name="perm_on1"><span class="id" title="lemma">perm_on1</span></a> <span class="id" title="var">H</span> : <a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#H"><span class="id" title="variable">H</span></a> 1.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="perm_onM"><span class="id" title="lemma">perm_onM</span></a> <span class="id" title="var">H</span> <span class="id" title="var">s</span> <span class="id" title="var">t</span> : <a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#H"><span class="id" title="variable">H</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#169fb610eeaa28cebf8ec36928167473"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>).<br/> +<span class="id" title="keyword">Lemma</span> <a name="perm_onM"><span class="id" title="lemma">perm_onM</span></a> <span class="id" title="var">H</span> <span class="id" title="var">s</span> <span class="id" title="var">t</span> : <a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.fingroup.perm.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> <a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#H"><span class="id" title="variable">H</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#H"><span class="id" title="variable">H</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="out_perm"><span class="id" title="lemma">out_perm</span></a> <span class="id" title="var">S</span> <span class="id" title="var">u</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#ad6d23746eb1a3b62e52010d3945a1db"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#ad6d23746eb1a3b62e52010d3945a1db"><span class="id" title="notation">notin</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="out_perm"><span class="id" title="lemma">out_perm</span></a> <span class="id" title="var">S</span> <span class="id" title="var">u</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.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#c1ad6bcc76a6221225111f87bc3b0c3d"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#c1ad6bcc76a6221225111f87bc3b0c3d"><span class="id" title="notation">notin</span></a> <a class="idref" href="mathcomp.fingroup.perm.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> <a class="idref" href="mathcomp.fingroup.perm.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="im_perm_on"><span class="id" title="lemma">im_perm_on</span></a> <span class="id" title="var">u</span> <span class="id" title="var">S</span> : <a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#f2bdcb40cf423bf8d54f091f6cec6964"><span class="id" title="notation">@:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="im_perm_on"><span class="id" title="lemma">im_perm_on</span></a> <span class="id" title="var">u</span> <span class="id" title="var">S</span> : <a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#u"><span class="id" title="variable">u</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#de2c3fcab69008133cce8f8fc06f2b4b"><span class="id" title="notation">@:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#S"><span class="id" title="variable">S</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="tperm_proof"><span class="id" title="lemma">tperm_proof</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/8.8.0/stdlib//Coq.ssr.ssrfun.html#involutive"><span class="id" title="definition">involutive</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#98daeff9b38ed89b3ac0db77b4ceb901"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#98daeff9b38ed89b3ac0db77b4ceb901"><span class="id" title="notation">fun</span></a> <span class="id" title="var">z</span> <a class="idref" href="mathcomp.ssreflect.eqtype.html#98daeff9b38ed89b3ac0db77b4ceb901"><span class="id" title="notation">⇒</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#98daeff9b38ed89b3ac0db77b4ceb901"><span class="id" title="notation">with</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#208083cddfca3726231c4e84b7c928c1"><span class="id" title="notation">|-></span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#98daeff9b38ed89b3ac0db77b4ceb901"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#208083cddfca3726231c4e84b7c928c1"><span class="id" title="notation">|-></span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#98daeff9b38ed89b3ac0db77b4ceb901"><span class="id" title="notation">]</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="tperm_proof"><span class="id" title="lemma">tperm_proof</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#involutive"><span class="id" title="definition">involutive</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#5f847db88545de607ca99ef9077577ce"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#5f847db88545de607ca99ef9077577ce"><span class="id" title="notation">fun</span></a> <span class="id" title="var">z</span> <a class="idref" href="mathcomp.ssreflect.eqtype.html#5f847db88545de607ca99ef9077577ce"><span class="id" title="notation">⇒</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#5f847db88545de607ca99ef9077577ce"><span class="id" title="notation">with</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#d74b61a39ba99967624d24970637896f"><span class="id" title="notation">|-></span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#5f847db88545de607ca99ef9077577ce"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#d74b61a39ba99967624d24970637896f"><span class="id" title="notation">|-></span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.ssreflect.eqtype.html#5f847db88545de607ca99ef9077577ce"><span class="id" title="notation">]</span></a>.<br/> <br/> -<span class="id" title="keyword">Definition</span> <a name="tperm"><span class="id" title="definition">tperm</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> := <a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="abbreviation">perm</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#can_inj"><span class="id" title="lemma">can_inj</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm_proof"><span class="id" title="lemma">tperm_proof</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>)).<br/> +<span class="id" title="keyword">Definition</span> <a name="tperm"><span class="id" title="definition">tperm</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> := <a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="abbreviation">perm</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#can_inj"><span class="id" title="lemma">can_inj</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm_proof"><span class="id" title="lemma">tperm_proof</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>)).<br/> <br/> -<span class="id" title="keyword">CoInductive</span> <a name="tperm_spec"><span class="id" title="inductive">tperm_spec</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> <span class="id" title="var">z</span> : <a class="idref" href="mathcomp.fingroup.perm.html#Theory.T"><span class="id" title="variable">T</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <span class="id" title="keyword">Type</span> :=<br/> - | <a name="TpermFirst"><span class="id" title="constructor">TpermFirst</span></a> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm_spec"><span class="id" title="inductive">tperm_spec</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><br/> - | <a name="TpermSecond"><span class="id" title="constructor">TpermSecond</span></a> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm_spec"><span class="id" title="inductive">tperm_spec</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a><br/> - | <a name="TpermNone"><span class="id" title="constructor">TpermNone</span></a> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#32263a1c8b01baecdff9deb038955bc9"><span class="id" title="notation">≠</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> & <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#32263a1c8b01baecdff9deb038955bc9"><span class="id" title="notation">≠</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm_spec"><span class="id" title="inductive">tperm_spec</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a>.<br/> +<span class="id" title="keyword">Variant</span> <a name="tperm_spec"><span class="id" title="inductive">tperm_spec</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> <span class="id" title="var">z</span> : <a class="idref" href="mathcomp.fingroup.perm.html#Theory.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> <span class="id" title="keyword">Type</span> :=<br/> + | <a name="TpermFirst"><span class="id" title="constructor">TpermFirst</span></a> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm_spec"><span class="id" title="inductive">tperm_spec</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><br/> + | <a name="TpermSecond"><span class="id" title="constructor">TpermSecond</span></a> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm_spec"><span class="id" title="inductive">tperm_spec</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a><br/> + | <a name="TpermNone"><span class="id" title="constructor">TpermNone</span></a> <span class="id" title="keyword">of</span> <a class="idref" href="mathcomp.fingroup.perm.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#a0a5068f83a704fcfbda8cd473a6cfea"><span class="id" title="notation">≠</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> & <a class="idref" href="mathcomp.fingroup.perm.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#a0a5068f83a704fcfbda8cd473a6cfea"><span class="id" title="notation">≠</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm_spec"><span class="id" title="inductive">tperm_spec</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a>.<br/> <br/> <span class="id" title="keyword">Lemma</span> <a name="tpermP"><span class="id" title="lemma">tpermP</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> <span class="id" title="var">z</span> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm_spec"><span class="id" title="inductive">tperm_spec</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a>).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="tpermL"><span class="id" title="lemma">tpermL</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="tpermL"><span class="id" title="lemma">tpermL</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="tpermR"><span class="id" title="lemma">tpermR</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="tpermR"><span class="id" title="lemma">tpermR</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="tpermD"><span class="id" title="lemma">tpermD</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> <span class="id" title="var">z</span> : <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b1eeadc2feabc7422252baa895418c7b"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b1eeadc2feabc7422252baa895418c7b"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="tpermD"><span class="id" title="lemma">tpermD</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> <span class="id" title="var">z</span> : <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="tpermC"><span class="id" title="lemma">tpermC</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="tpermC"><span class="id" title="lemma">tpermC</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="tperm1"><span class="id" title="lemma">tperm1</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> 1.<br/> +<span class="id" title="keyword">Lemma</span> <a name="tperm1"><span class="id" title="lemma">tperm1</span></a> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.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">Lemma</span> <a name="tpermK"><span class="id" title="lemma">tpermK</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/8.8.0/stdlib//Coq.ssr.ssrfun.html#involutive"><span class="id" title="definition">involutive</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>).<br/> +<span class="id" title="keyword">Lemma</span> <a name="tpermK"><span class="id" title="lemma">tpermK</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#involutive"><span class="id" title="definition">involutive</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="tpermKg"><span class="id" title="lemma">tpermKg</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/8.8.0/stdlib//Coq.ssr.ssrfun.html#involutive"><span class="id" title="definition">involutive</span></a> (<a class="idref" href="mathcomp.fingroup.fingroup.html#mulg"><span class="id" title="definition">mulg</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>)).<br/> +<span class="id" title="keyword">Lemma</span> <a name="tpermKg"><span class="id" title="lemma">tpermKg</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#involutive"><span class="id" title="definition">involutive</span></a> (<a class="idref" href="mathcomp.fingroup.fingroup.html#mulg"><span class="id" title="definition">mulg</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>)).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="tpermV"><span class="id" title="lemma">tpermV</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#a605acbeae7597f74f5a9b816ed8a717"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a605acbeae7597f74f5a9b816ed8a717"><span class="id" title="notation">)^-1</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="tpermV"><span class="id" title="lemma">tpermV</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">)^-1</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="tperm2"><span class="id" title="lemma">tperm2</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#169fb610eeaa28cebf8ec36928167473"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> 1.<br/> +<span class="id" title="keyword">Lemma</span> <a name="tperm2"><span class="id" title="lemma">tperm2</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.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> 1.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="card_perm"><span class="id" title="lemma">card_perm</span></a> <span class="id" title="var">A</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#f2f331192ff43772ca561a371dde9740"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">|</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f2f331192ff43772ca561a371dde9740"><span class="id" title="notation">)`!</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="card_perm"><span class="id" title="lemma">card_perm</span></a> <span class="id" title="var">A</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#perm_on"><span class="id" title="definition">perm_on</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#fb85b56582e20c3ab47a4e55b1f6f111"><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.fingroup.perm.html#A"><span class="id" title="variable">A</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#fb85b56582e20c3ab47a4e55b1f6f111"><span class="id" title="notation">)`!</span></a>.<br/> <br/> <span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.fingroup.perm.html#Theory"><span class="id" title="section">Theory</span></a>.<br/> @@ -291,16 +288,25 @@ <br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="inj_tperm"><span class="id" title="lemma">inj_tperm</span></a> (<span class="id" title="var">T</span> <span class="id" title="var">T'</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">f</span> : <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T'"><span class="id" title="variable">T'</span></a>) <span class="id" title="var">x</span> <span class="id" title="var">y</span> <span class="id" title="var">z</span> :<br/> - <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#injective"><span class="id" title="definition">injective</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>) (<a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>) (<a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a>).<br/> +</div> + +<div class="doc"> + Shorthand for using a permutation to reindex a bigop. +</div> +<div class="code"> +<span class="id" title="keyword">Notation</span> <a name="reindex_perm"><span class="id" title="abbreviation">reindex_perm</span></a> <span class="id" title="var">s</span> := (<a class="idref" href="mathcomp.ssreflect.bigop.html#reindex_inj"><span class="id" title="lemma">reindex_inj</span></a> (@<a class="idref" href="mathcomp.fingroup.perm.html#perm_inj"><span class="id" title="lemma">perm_inj</span></a> <span class="id" title="var">_</span> <span class="id" title="var">s</span>)).<br/> + +<br/> +<span class="id" title="keyword">Lemma</span> <a name="inj_tperm"><span class="id" title="lemma">inj_tperm</span></a> (<span class="id" title="var">T</span> <span class="id" title="var">T'</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">f</span> : <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#T'"><span class="id" title="variable">T'</span></a>) <span class="id" title="var">x</span> <span class="id" title="var">y</span> <span class="id" title="var">z</span> :<br/> + <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.fingroup.perm.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.fingroup.perm.html#f"><span class="id" title="variable">f</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>) (<a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>) (<a class="idref" href="mathcomp.fingroup.perm.html#f"><span class="id" title="variable">f</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#z"><span class="id" title="variable">z</span></a>).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="tpermJ"><span class="id" title="lemma">tpermJ</span></a> (<span class="id" title="var">T</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">x</span> <span class="id" title="var">y</span> (<span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">}</span></a>) :<br/> - <a class="idref" href="mathcomp.fingroup.fingroup.html#808c6b8e35e792f23899f360a21e4638"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#808c6b8e35e792f23899f360a21e4638"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#808c6b8e35e792f23899f360a21e4638"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>) (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>).<br/> +<span class="id" title="keyword">Lemma</span> <a name="tpermJ"><span class="id" title="lemma">tpermJ</span></a> (<span class="id" title="var">T</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">x</span> <span class="id" title="var">y</span> (<span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">}</span></a>) :<br/> + <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>) (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="tuple_perm_eqP"><span class="id" title="lemma">tuple_perm_eqP</span></a> {<span class="id" title="var">T</span> : <a class="idref" href="mathcomp.ssreflect.eqtype.html#Equality.Exports.eqType"><span class="id" title="abbreviation">eqType</span></a>} {<span class="id" title="var">n</span>} {<span class="id" title="var">s</span> : <a class="idref" href="mathcomp.ssreflect.seq.html#seq"><span class="id" title="abbreviation">seq</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a>} {<span class="id" title="var">t</span> : <a class="idref" href="mathcomp.fingroup.perm.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.tuple.html#d8866adbd4a602b7b4cc275d73486ace"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.ssreflect.tuple.html#d8866adbd4a602b7b4cc275d73486ace"><span class="id" title="notation">tuple</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a>} :<br/> - <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#reflect"><span class="id" title="abbreviation">reflect</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#84eb6d2849dbf3581b1c0c05add5f2d8"><span class="id" title="notation">∃</span></a> <span class="id" title="var">p</span> : <a class="idref" href="mathcomp.fingroup.perm.html#ea6fcc91866185ddfad466ada7c10b27"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.fingroup.perm.html#ea6fcc91866185ddfad466ada7c10b27"><span class="id" title="notation">S_n</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#84eb6d2849dbf3581b1c0c05add5f2d8"><span class="id" title="notation">,</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.tuple.html#1bdc3d6f63dc0019ce17772415ee5798"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.tuple.html#1bdc3d6f63dc0019ce17772415ee5798"><span class="id" title="notation">tuple</span></a> <a class="idref" href="mathcomp.ssreflect.tuple.html#tnth"><span class="id" title="definition">tnth</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.ssreflect.tuple.html#1bdc3d6f63dc0019ce17772415ee5798"><span class="id" title="notation">|</span></a> <span class="id" title="var">i</span> <a class="idref" href="mathcomp.ssreflect.tuple.html#1bdc3d6f63dc0019ce17772415ee5798"><span class="id" title="notation"><</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.tuple.html#1bdc3d6f63dc0019ce17772415ee5798"><span class="id" title="notation">]</span></a>) (<a class="idref" href="mathcomp.ssreflect.seq.html#perm_eq"><span class="id" title="definition">perm_eq</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>).<br/> +<span class="id" title="keyword">Lemma</span> <a name="tuple_permP"><span class="id" title="lemma">tuple_permP</span></a> {<span class="id" title="var">T</span> : <a class="idref" href="mathcomp.ssreflect.eqtype.html#Equality.Exports.eqType"><span class="id" title="abbreviation">eqType</span></a>} {<span class="id" title="var">n</span>} {<span class="id" title="var">s</span> : <a class="idref" href="mathcomp.ssreflect.seq.html#seq"><span class="id" title="abbreviation">seq</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</span></a>} {<span class="id" title="var">t</span> : <a class="idref" href="mathcomp.fingroup.perm.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.tuple.html#c3913abe839346eb60d82da74b0b1f67"><span class="id" title="notation">.-</span></a><a class="idref" href="mathcomp.ssreflect.tuple.html#c3913abe839346eb60d82da74b0b1f67"><span class="id" title="notation">tuple</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#T"><span class="id" title="variable">T</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="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_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="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.tuple.html#9d5b9af75768e306a1218aacdf8c3490"><span class="id" title="notation">[</span></a><a class="idref" href="mathcomp.ssreflect.tuple.html#9d5b9af75768e306a1218aacdf8c3490"><span class="id" title="notation">tuple</span></a> <a class="idref" href="mathcomp.ssreflect.tuple.html#tnth"><span class="id" title="definition">tnth</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#p"><span class="id" title="variable">p</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.ssreflect.tuple.html#9d5b9af75768e306a1218aacdf8c3490"><span class="id" title="notation">|</span></a> <span class="id" title="var">i</span> <a class="idref" href="mathcomp.ssreflect.tuple.html#9d5b9af75768e306a1218aacdf8c3490"><span class="id" title="notation"><</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#n"><span class="id" title="variable">n</span></a><a class="idref" href="mathcomp.ssreflect.tuple.html#9d5b9af75768e306a1218aacdf8c3490"><span class="id" title="notation">]</span></a>) (<a class="idref" href="mathcomp.ssreflect.seq.html#perm_eq"><span class="id" title="definition">perm_eq</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>).<br/> <br/> <span class="id" title="keyword">Section</span> <a name="PermutationParity"><span class="id" title="section">PermutationParity</span></a>.<br/> @@ -309,7 +315,7 @@ <span class="id" title="keyword">Variable</span> <a name="PermutationParity.T"><span class="id" title="variable">T</span></a> : <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">Implicit</span> <span class="id" title="keyword">Types</span> (<span class="id" title="var">s</span> <span class="id" title="var">t</span> <span class="id" title="var">u</span> <span class="id" title="var">v</span> : <a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#8787ba8c1ae558dde17e1bdb8427679e"><span class="id" title="notation">}</span></a>) (<span class="id" title="var">x</span> <span class="id" title="var">y</span> <span class="id" title="var">z</span> <span class="id" title="var">a</span> <span class="id" title="var">b</span> : <a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</span></a>).<br/> +<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Types</span> (<span class="id" title="var">s</span> <span class="id" title="var">t</span> <span class="id" title="var">u</span> <span class="id" title="var">v</span> : <a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">{</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.fingroup.perm.html#683bed2e43e8b9b52492c89e618e34b6"><span class="id" title="notation">}</span></a>) (<span class="id" title="var">x</span> <span class="id" title="var">y</span> <span class="id" title="var">z</span> <span class="id" title="var">a</span> <span class="id" title="var">b</span> : <a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</span></a>).<br/> <br/> </div> @@ -325,69 +331,69 @@ <br/> <span class="id" title="keyword">Definition</span> <a name="aperm"><span class="id" title="definition">aperm</span></a> <span class="id" title="var">x</span> <span class="id" title="var">s</span> := <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="pcycle"><span class="id" title="definition">pcycle</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> := <a class="idref" href="mathcomp.fingroup.perm.html#aperm"><span class="id" title="definition">aperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#f2bdcb40cf423bf8d54f091f6cec6964"><span class="id" title="notation">@:</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#30152704c0ab4066186d0284456667e8"><span class="id" title="notation"><[</span></a><a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#30152704c0ab4066186d0284456667e8"><span class="id" title="notation">]></span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="pcycles"><span class="id" title="definition">pcycles</span></a> <span class="id" title="var">s</span> := <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#f2bdcb40cf423bf8d54f091f6cec6964"><span class="id" title="notation">@:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</span></a>.<br/> -<span class="id" title="keyword">Definition</span> <a name="odd_perm"><span class="id" title="definition">odd_perm</span></a> (<span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</span></a>) := <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">|</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#ef177bde7d01ae97c98f9cba81f6c95b"><span class="id" title="notation">(+)</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#pcycles"><span class="id" title="definition">pcycles</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">|</span></a>.<br/> +<span class="id" title="keyword">Definition</span> <a name="pcycle"><span class="id" title="definition">pcycle</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> := <a class="idref" href="mathcomp.fingroup.perm.html#aperm"><span class="id" title="definition">aperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#de2c3fcab69008133cce8f8fc06f2b4b"><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.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#5e5825d099c952c2db2842c142cbde94"><span class="id" title="notation">]></span></a>.<br/> +<span class="id" title="keyword">Definition</span> <a name="pcycles"><span class="id" title="definition">pcycles</span></a> <span class="id" title="var">s</span> := <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.ssreflect.finset.html#de2c3fcab69008133cce8f8fc06f2b4b"><span class="id" title="notation">@:</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</span></a>.<br/> +<span class="id" title="keyword">Definition</span> <a name="odd_perm"><span class="id" title="definition">odd_perm</span></a> (<span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#perm_type"><span class="id" title="inductive">perm_type</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</span></a>) := <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</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#a60537c464e134477471443dd91ae651"><span class="id" title="notation">(+)</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#pcycles"><span class="id" title="definition">pcycles</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="apermE"><span class="id" title="lemma">apermE</span></a> <span class="id" title="var">x</span> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#aperm"><span class="id" title="definition">aperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>. <br/> +<span class="id" title="keyword">Lemma</span> <a name="apermE"><span class="id" title="lemma">apermE</span></a> <span class="id" title="var">x</span> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#aperm"><span class="id" title="definition">aperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>. <br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="mem_pcycle"><span class="id" title="lemma">mem_pcycle</span></a> <span class="id" title="var">s</span> <span class="id" title="var">i</span> <span class="id" title="var">x</span> : (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#86a04fb564fb97d388cad84a3a204260"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="mem_pcycle"><span class="id" title="lemma">mem_pcycle</span></a> <span class="id" title="var">s</span> <span class="id" title="var">i</span> <span class="id" title="var">x</span> : (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.fingroup.perm.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.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="pcycle_id"><span class="id" title="lemma">pcycle_id</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="pcycle_id"><span class="id" title="lemma">pcycle_id</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.fingroup.perm.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.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="uniq_traject_pcycle"><span class="id" title="lemma">uniq_traject_pcycle</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.ssreflect.seq.html#uniq"><span class="id" title="definition">uniq</span></a> (<a class="idref" href="mathcomp.ssreflect.path.html#traject"><span class="id" title="definition">traject</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">|</span></a>).<br/> +<span class="id" title="keyword">Lemma</span> <a name="uniq_traject_pcycle"><span class="id" title="lemma">uniq_traject_pcycle</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.ssreflect.seq.html#uniq"><span class="id" title="definition">uniq</span></a> (<a class="idref" href="mathcomp.ssreflect.path.html#traject"><span class="id" title="definition">traject</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a>).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="pcycle_traject"><span class="id" title="lemma">pcycle_traject</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#20bf07099d6d8cf369383b22fd37862e"><span class="id" title="notation">=</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#20bf07099d6d8cf369383b22fd37862e"><span class="id" title="notation">i</span></a> <a class="idref" href="mathcomp.ssreflect.path.html#traject"><span class="id" title="definition">traject</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">|</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="pcycle_traject"><span class="id" title="lemma">pcycle_traject</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.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#1e6a438ff685c38fcd9034a94f271777"><span class="id" title="notation">=</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#1e6a438ff685c38fcd9034a94f271777"><span class="id" title="notation">i</span></a> <a class="idref" href="mathcomp.ssreflect.path.html#traject"><span class="id" title="definition">traject</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="iter_pcycle"><span class="id" title="lemma">iter_pcycle</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.ssreflect.ssrnat.html#iter"><span class="id" title="definition">iter</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="iter_pcycle"><span class="id" title="lemma">iter_pcycle</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.ssreflect.ssrnat.html#iter"><span class="id" title="definition">iter</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#234f50e13366f794cd6877cf832a5935"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="eq_pcycle_mem"><span class="id" title="lemma">eq_pcycle_mem</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#17d28d004d0863cb022d4ce832ddaaae"><span class="id" title="notation">==</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">)</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="eq_pcycle_mem"><span class="id" title="lemma">eq_pcycle_mem</span></a> <span class="id" title="var">s</span> <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.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.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="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.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.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.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>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="pcycle_sym"><span class="id" title="lemma">pcycle_sym</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#46c9e8232fa09401e24f1934bb65029f"><span class="id" title="notation">in</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">)</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="pcycle_sym"><span class="id" title="lemma">pcycle_sym</span></a> <span class="id" title="var">s</span> <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.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.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.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.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="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.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.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.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.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/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="pcycle_perm"><span class="id" title="lemma">pcycle_perm</span></a> <span class="id" title="var">s</span> <span class="id" title="var">i</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> ((<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#86a04fb564fb97d388cad84a3a204260"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="pcycle_perm"><span class="id" title="lemma">pcycle_perm</span></a> <span class="id" title="var">s</span> <span class="id" title="var">i</span> <span class="id" title="var">x</span> : <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> ((<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#06cdd2633d7788bac7abeac13b2dd91e"><span class="id" title="notation">^+</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a>) <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a>.<br/> <br/> <span class="id" title="keyword">Lemma</span> <a name="ncycles_mul_tperm"><span class="id" title="lemma">ncycles_mul_tperm</span></a> <span class="id" title="var">s</span> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <span class="id" title="keyword">let</span> <span class="id" title="var">t</span> := <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <span class="id" title="tactic">in</span><br/> - <a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#pcycles"><span class="id" title="definition">pcycles</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#169fb610eeaa28cebf8ec36928167473"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>)<a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#b3eea360671e1b32b18a26e15b3aace3"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#f460b977ac49dd1a229be682bc38c411"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#ad6d23746eb1a3b62e52010d3945a1db"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#ad6d23746eb1a3b62e52010d3945a1db"><span class="id" title="notation">notin</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#f460b977ac49dd1a229be682bc38c411"><span class="id" title="notation">).*2</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">#|</span></a><a class="idref" href="mathcomp.fingroup.perm.html#pcycles"><span class="id" title="definition">pcycles</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#f01714bb99e6c7abc6cfb2e43eff7f6e"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#b3eea360671e1b32b18a26e15b3aace3"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#b3eea360671e1b32b18a26e15b3aace3"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b1eeadc2feabc7422252baa895418c7b"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#b3eea360671e1b32b18a26e15b3aace3"><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.fingroup.perm.html#pcycles"><span class="id" title="definition">pcycles</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</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#0dacc1786c5ba797d47dd85006231633"><span class="id" title="notation">+</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#bff172cdafaf4b86cefb300b16285e42"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.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#c1ad6bcc76a6221225111f87bc3b0c3d"><span class="id" title="notation">\</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#c1ad6bcc76a6221225111f87bc3b0c3d"><span class="id" title="notation">notin</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#pcycle"><span class="id" title="definition">pcycle</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bff172cdafaf4b86cefb300b16285e42"><span class="id" title="notation">).*2</span></a> <a class="idref" href="http://coq.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.fingroup.perm.html#pcycles"><span class="id" title="definition">pcycles</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</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#0dacc1786c5ba797d47dd85006231633"><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.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#0dacc1786c5ba797d47dd85006231633"><span class="id" title="notation">)</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="odd_perm1"><span class="id" title="lemma">odd_perm1</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> 1 <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Datatypes.html#false"><span class="id" title="constructor">false</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="odd_perm1"><span class="id" title="lemma">odd_perm1</span></a> : <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</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> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#false"><span class="id" title="constructor">false</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="odd_mul_tperm"><span class="id" title="lemma">odd_mul_tperm</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#169fb610eeaa28cebf8ec36928167473"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#ef177bde7d01ae97c98f9cba81f6c95b"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b1eeadc2feabc7422252baa895418c7b"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#ef177bde7d01ae97c98f9cba81f6c95b"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#ef177bde7d01ae97c98f9cba81f6c95b"><span class="id" title="notation">(+)</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="odd_mul_tperm"><span class="id" title="lemma">odd_mul_tperm</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#a60537c464e134477471443dd91ae651"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.ssrbool.html#a60537c464e134477471443dd91ae651"><span class="id" title="notation">)</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#a60537c464e134477471443dd91ae651"><span class="id" title="notation">(+)</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="odd_tperm"><span class="id" title="lemma">odd_tperm</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#b1eeadc2feabc7422252baa895418c7b"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#y"><span class="id" title="variable">y</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">)</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="odd_tperm"><span class="id" title="lemma">odd_tperm</span></a> <span class="id" title="var">x</span> <span class="id" title="var">y</span> : <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.fingroup.perm.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="http://coq.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.perm.html#x"><span class="id" title="variable">x</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#c385a484ee9d1b4e0615924561a9b75e"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.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>.<br/> <br/> -<span class="id" title="keyword">Definition</span> <a name="dpair"><span class="id" title="definition">dpair</span></a> (<span class="id" title="var">eT</span> : <a class="idref" href="mathcomp.ssreflect.eqtype.html#Equality.Exports.eqType"><span class="id" title="abbreviation">eqType</span></a>) := <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#880a9790dece461a678db8aa0c091f63"><span class="id" title="notation">[</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#880a9790dece461a678db8aa0c091f63"><span class="id" title="notation">pred</span></a> <span class="id" title="var">t</span> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#880a9790dece461a678db8aa0c091f63"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#c4877bbfe60d8f22b47ac99ace86216a"><span class="id" title="notation">.1</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#9e45f909d1732d6d9e153b650829bccf"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#f4827404159513e7fd691b60b7877737"><span class="id" title="notation">.2</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#9e45f909d1732d6d9e153b650829bccf"><span class="id" title="notation">:></span></a> <a class="idref" href="mathcomp.fingroup.perm.html#eT"><span class="id" title="variable">eT</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#880a9790dece461a678db8aa0c091f63"><span class="id" title="notation">]</span></a>.<br/> +<span class="id" title="keyword">Definition</span> <a name="dpair"><span class="id" title="definition">dpair</span></a> (<span class="id" title="var">eT</span> : <a class="idref" href="mathcomp.ssreflect.eqtype.html#Equality.Exports.eqType"><span class="id" title="abbreviation">eqType</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">t</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.fingroup.perm.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e0817251e7d67ad994b4d9b1aa82a412"><span class="id" title="notation">.1</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#228e85e3c31a939cba019f255574c875"><span class="id" title="notation">!=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#675082cc4d4538da052b547bdc6ea4c9"><span class="id" title="notation">.2</span></a> <a class="idref" href="mathcomp.ssreflect.eqtype.html#228e85e3c31a939cba019f255574c875"><span class="id" title="notation">:></span></a> <a class="idref" href="mathcomp.fingroup.perm.html#eT"><span class="id" title="variable">eT</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>.<br/> <br/> <span class="id" title="keyword">Lemma</span> <a name="prod_tpermP"><span class="id" title="lemma">prod_tpermP</span></a> <span class="id" title="var">s</span> :<br/> - <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Specif.html#602b9943a639fb973abed6e2c7854421"><span class="id" title="notation">{</span></a><span class="id" title="var">ts</span> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Specif.html#602b9943a639fb973abed6e2c7854421"><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.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Datatypes.html#d19c7eafd0e2d195d10df94b392087b5"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Specif.html#602b9943a639fb973abed6e2c7854421"><span class="id" title="notation">|</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#644e2d6a4fd9b4978c70acde75bf082b"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#644e2d6a4fd9b4978c70acde75bf082b"><span class="id" title="notation">prod_</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#644e2d6a4fd9b4978c70acde75bf082b"><span class="id" title="notation">(</span></a><span class="id" title="var">t</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#644e2d6a4fd9b4978c70acde75bf082b"><span class="id" title="notation"><-</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ts"><span class="id" title="variable">ts</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#644e2d6a4fd9b4978c70acde75bf082b"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#c4877bbfe60d8f22b47ac99ace86216a"><span class="id" title="notation">.1</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#f4827404159513e7fd691b60b7877737"><span class="id" title="notation">.2</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Specif.html#602b9943a639fb973abed6e2c7854421"><span class="id" title="notation">&</span></a> <a class="idref" href="mathcomp.ssreflect.seq.html#all"><span class="id" title="definition">all</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#dpair"><span class="id" title="definition">dpair</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ts"><span class="id" title="variable">ts</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Specif.html#602b9943a639fb973abed6e2c7854421"><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">ts</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.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#11c698c8685bb8ab1cf725545c085ac4"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity.T"><span class="id" title="variable">T</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.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#a6fcb2cd7cc8744b73250ec95fc4cde7"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a6fcb2cd7cc8744b73250ec95fc4cde7"><span class="id" title="notation">prod_</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a6fcb2cd7cc8744b73250ec95fc4cde7"><span class="id" title="notation">(</span></a><span class="id" title="var">t</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#a6fcb2cd7cc8744b73250ec95fc4cde7"><span class="id" title="notation"><-</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ts"><span class="id" title="variable">ts</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a6fcb2cd7cc8744b73250ec95fc4cde7"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e0817251e7d67ad994b4d9b1aa82a412"><span class="id" title="notation">.1</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#675082cc4d4538da052b547bdc6ea4c9"><span class="id" title="notation">.2</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#all"><span class="id" title="definition">all</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#dpair"><span class="id" title="definition">dpair</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ts"><span class="id" title="variable">ts</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="odd_perm_prod"><span class="id" title="lemma">odd_perm_prod</span></a> <span class="id" title="var">ts</span> :<br/> - <a class="idref" href="mathcomp.ssreflect.seq.html#all"><span class="id" title="definition">all</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#dpair"><span class="id" title="definition">dpair</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ts"><span class="id" title="variable">ts</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#d43e996736952df71ebeeae74d10a287"><span class="id" title="notation">→</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> (<a class="idref" href="mathcomp.fingroup.fingroup.html#644e2d6a4fd9b4978c70acde75bf082b"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#644e2d6a4fd9b4978c70acde75bf082b"><span class="id" title="notation">prod_</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#644e2d6a4fd9b4978c70acde75bf082b"><span class="id" title="notation">(</span></a><span class="id" title="var">t</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#644e2d6a4fd9b4978c70acde75bf082b"><span class="id" title="notation"><-</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ts"><span class="id" title="variable">ts</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#644e2d6a4fd9b4978c70acde75bf082b"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#c4877bbfe60d8f22b47ac99ace86216a"><span class="id" title="notation">.1</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#f4827404159513e7fd691b60b7877737"><span class="id" title="notation">.2</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> (<a class="idref" href="mathcomp.ssreflect.seq.html#size"><span class="id" title="definition">size</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ts"><span class="id" title="variable">ts</span></a>).<br/> + <a class="idref" href="mathcomp.ssreflect.seq.html#all"><span class="id" title="definition">all</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#dpair"><span class="id" title="definition">dpair</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ts"><span class="id" title="variable">ts</span></a> <a class="idref" href="http://coq.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.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> (<a class="idref" href="mathcomp.fingroup.fingroup.html#a6fcb2cd7cc8744b73250ec95fc4cde7"><span class="id" title="notation">\</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a6fcb2cd7cc8744b73250ec95fc4cde7"><span class="id" title="notation">prod_</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a6fcb2cd7cc8744b73250ec95fc4cde7"><span class="id" title="notation">(</span></a><span class="id" title="var">t</span> <a class="idref" href="mathcomp.fingroup.fingroup.html#a6fcb2cd7cc8744b73250ec95fc4cde7"><span class="id" title="notation"><-</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ts"><span class="id" title="variable">ts</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a6fcb2cd7cc8744b73250ec95fc4cde7"><span class="id" title="notation">)</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tperm"><span class="id" title="definition">tperm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#e0817251e7d67ad994b4d9b1aa82a412"><span class="id" title="notation">.1</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a><a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#675082cc4d4538da052b547bdc6ea4c9"><span class="id" title="notation">.2</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> (<a class="idref" href="mathcomp.ssreflect.seq.html#size"><span class="id" title="definition">size</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#ts"><span class="id" title="variable">ts</span></a>).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="odd_permM"><span class="id" title="lemma">odd_permM</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#a0fd72584f326d7220475d01d3fceccd"><span class="id" title="notation">{</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#a0fd72584f326d7220475d01d3fceccd"><span class="id" title="notation">morph</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#a0fd72584f326d7220475d01d3fceccd"><span class="id" title="notation">:</span></a> <span class="id" title="var">s1</span> <span class="id" title="var">s2</span> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#a0fd72584f326d7220475d01d3fceccd"><span class="id" title="notation">/</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s1"><span class="id" title="variable">s1</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#169fb610eeaa28cebf8ec36928167473"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s2"><span class="id" title="variable">s2</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#a0fd72584f326d7220475d01d3fceccd"><span class="id" title="notation">>-></span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s1"><span class="id" title="variable">s1</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#ef177bde7d01ae97c98f9cba81f6c95b"><span class="id" title="notation">(+)</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s2"><span class="id" title="variable">s2</span></a><a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#a0fd72584f326d7220475d01d3fceccd"><span class="id" title="notation">}</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="odd_permM"><span class="id" title="lemma">odd_permM</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.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</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">s1</span> <span class="id" title="var">s2</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.fingroup.perm.html#s1"><span class="id" title="variable">s1</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s2"><span class="id" title="variable">s2</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.fingroup.perm.html#s1"><span class="id" title="variable">s1</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#a60537c464e134477471443dd91ae651"><span class="id" title="notation">(+)</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s2"><span class="id" title="variable">s2</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="odd_permV"><span class="id" title="lemma">odd_permV</span></a> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a605acbeae7597f74f5a9b816ed8a717"><span class="id" title="notation">^-1</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="odd_permV"><span class="id" title="lemma">odd_permV</span></a> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="odd_permJ"><span class="id" title="lemma">odd_permJ</span></a> <span class="id" title="var">s1</span> <span class="id" title="var">s2</span> : <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s1"><span class="id" title="variable">s1</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#808c6b8e35e792f23899f360a21e4638"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s2"><span class="id" title="variable">s2</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s1"><span class="id" title="variable">s1</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="odd_permJ"><span class="id" title="lemma">odd_permJ</span></a> <span class="id" title="var">s1</span> <span class="id" title="var">s2</span> : <a class="idref" href="mathcomp.fingroup.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s1"><span class="id" title="variable">s1</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#746f7e4d3218aa2699eefc064b513fc2"><span class="id" title="notation">^</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s2"><span class="id" title="variable">s2</span></a>) <a class="idref" href="http://coq.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.perm.html#odd_perm"><span class="id" title="definition">odd_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s1"><span class="id" title="variable">s1</span></a>.<br/> <br/> <span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.fingroup.perm.html#PermutationParity"><span class="id" title="section">PermutationParity</span></a>.<br/> @@ -405,45 +411,51 @@ <div class="code"> <br/> -<span class="id" title="keyword">Variable</span> <a name="LiftPerm.n"><span class="id" title="variable">n</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Datatypes.html#nat"><span class="id" title="inductive">nat</span></a>.<br/> -<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Types</span> <span class="id" title="var">i</span> <span class="id" title="var">j</span> : <a class="idref" href="mathcomp.ssreflect.fintype.html#9de6d53cccc27f521f3ab56b38159140"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#9de6d53cccc27f521f3ab56b38159140"><span class="id" title="notation">I_n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#361454269931ea8643f7b402f2ab7222"><span class="id" title="notation">.+1</span></a>.<br/> -<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Types</span> <span class="id" title="var">s</span> <span class="id" title="var">t</span> : <a class="idref" href="mathcomp.fingroup.perm.html#ea6fcc91866185ddfad466ada7c10b27"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.fingroup.perm.html#ea6fcc91866185ddfad466ada7c10b27"><span class="id" title="notation">S_n</span></a>.<br/> +<span class="id" title="keyword">Variable</span> <a name="LiftPerm.n"><span class="id" title="variable">n</span></a> : <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#nat"><span class="id" title="inductive">nat</span></a>.<br/> +<span class="id" title="keyword">Implicit</span> <span class="id" title="keyword">Types</span> <span class="id" title="var">i</span> <span class="id" title="var">j</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_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="keyword">Implicit</span> <span class="id" title="keyword">Types</span> <span class="id" title="var">s</span> <span class="id" title="var">t</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_n</span></a>.<br/> <br/> <span class="id" title="keyword">Definition</span> <a name="lift_perm_fun"><span class="id" title="definition">lift_perm_fun</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">s</span> <span class="id" title="var">k</span> :=<br/> - <span class="id" title="keyword">if</span> <a class="idref" href="mathcomp.ssreflect.fintype.html#unlift"><span class="id" title="definition">unlift</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#k"><span class="id" title="variable">k</span></a> <span class="id" title="keyword">is</span> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Datatypes.html#Some"><span class="id" title="constructor">Some</span></a> <span class="id" title="var">k'</span> <span class="id" title="keyword">then</span> <a class="idref" href="mathcomp.ssreflect.fintype.html#lift"><span class="id" title="definition">lift</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <span class="id" title="var">k'</span>) <span class="id" title="keyword">else</span> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a>.<br/> + <span class="id" title="keyword">if</span> <a class="idref" href="mathcomp.ssreflect.fintype.html#unlift"><span class="id" title="definition">unlift</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#k"><span class="id" title="variable">k</span></a> <span class="id" title="keyword">is</span> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#Some"><span class="id" title="constructor">Some</span></a> <span class="id" title="var">k'</span> <span class="id" title="keyword">then</span> <a class="idref" href="mathcomp.ssreflect.fintype.html#lift"><span class="id" title="definition">lift</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <span class="id" title="var">k'</span>) <span class="id" title="keyword">else</span> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a>.<br/> <br/> <span class="id" title="keyword">Lemma</span> <a name="lift_permK"><span class="id" title="lemma">lift_permK</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">s</span> :<br/> - <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#cancel"><span class="id" title="definition">cancel</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#lift_perm_fun"><span class="id" title="definition">lift_perm_fun</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>) (<a class="idref" href="mathcomp.fingroup.perm.html#lift_perm_fun"><span class="id" title="definition">lift_perm_fun</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a605acbeae7597f74f5a9b816ed8a717"><span class="id" title="notation">^-1</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> (<a class="idref" href="mathcomp.fingroup.perm.html#lift_perm_fun"><span class="id" title="definition">lift_perm_fun</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>) (<a class="idref" href="mathcomp.fingroup.perm.html#lift_perm_fun"><span class="id" title="definition">lift_perm_fun</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a>).<br/> <br/> -<span class="id" title="keyword">Definition</span> <a name="lift_perm"><span class="id" title="definition">lift_perm</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">s</span> := <a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="abbreviation">perm</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrfun.html#can_inj"><span class="id" title="lemma">can_inj</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#lift_permK"><span class="id" title="lemma">lift_permK</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>)).<br/> +<span class="id" title="keyword">Definition</span> <a name="lift_perm"><span class="id" title="definition">lift_perm</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">s</span> := <a class="idref" href="mathcomp.fingroup.perm.html#perm"><span class="id" title="abbreviation">perm</span></a> (<a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrfun.html#can_inj"><span class="id" title="lemma">can_inj</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#lift_permK"><span class="id" title="lemma">lift_permK</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a>)).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="lift_perm_id"><span class="id" title="lemma">lift_perm_id</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="lift_perm_id"><span class="id" title="lemma">lift_perm_id</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#j"><span class="id" title="variable">j</span></a>.<br/> <br/> <span class="id" title="keyword">Lemma</span> <a name="lift_perm_lift"><span class="id" title="lemma">lift_perm_lift</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">s</span> <span class="id" title="var">k'</span> :<br/> - <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> (<a class="idref" href="mathcomp.ssreflect.fintype.html#lift"><span class="id" title="definition">lift</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#k'"><span class="id" title="variable">k'</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#8f9364556521ebb498093f28eea2240f"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#lift"><span class="id" title="definition">lift</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#k'"><span class="id" title="variable">k'</span></a>) <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#8f9364556521ebb498093f28eea2240f"><span class="id" title="notation">:></span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#9de6d53cccc27f521f3ab56b38159140"><span class="id" title="notation">'</span></a><a class="idref" href="mathcomp.ssreflect.fintype.html#9de6d53cccc27f521f3ab56b38159140"><span class="id" title="notation">I_n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#361454269931ea8643f7b402f2ab7222"><span class="id" title="notation">.+1</span></a>.<br/> + <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> (<a class="idref" href="mathcomp.ssreflect.fintype.html#lift"><span class="id" title="definition">lift</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.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#b8b2ebc8e1a8b9aa935c0702efb5dccf"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.fintype.html#lift"><span class="id" title="definition">lift</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.perm.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#b8b2ebc8e1a8b9aa935c0702efb5dccf"><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_n</span></a><a class="idref" href="mathcomp.ssreflect.ssrnat.html#bda89d73ec4a8f23ae92b565ffb5aaa6"><span class="id" title="notation">.+1</span></a>.<br/> <br/> <span class="id" title="keyword">Lemma</span> <a name="lift_permM"><span class="id" title="lemma">lift_permM</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">k</span> <span class="id" title="var">s</span> <span class="id" title="var">t</span> :<br/> - <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#169fb610eeaa28cebf8ec36928167473"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#k"><span class="id" title="variable">k</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#k"><span class="id" title="variable">k</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#169fb610eeaa28cebf8ec36928167473"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>).<br/> + <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#k"><span class="id" title="variable">k</span></a> <a class="idref" href="mathcomp.fingroup.perm.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.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#k"><span class="id" title="variable">k</span></a> (<a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="mathcomp.fingroup.fingroup.html#8b8794efbfbae1b793d9cb62ce802285"><span class="id" title="notation">×</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#t"><span class="id" title="variable">t</span></a>).<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="lift_perm1"><span class="id" title="lemma">lift_perm1</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> 1 <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> 1.<br/> +<span class="id" title="keyword">Lemma</span> <a name="lift_perm1"><span class="id" title="lemma">lift_perm1</span></a> <span class="id" title="var">i</span> : <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</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="lift_permV"><span class="id" title="lemma">lift_permV</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#a605acbeae7597f74f5a9b816ed8a717"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a605acbeae7597f74f5a9b816ed8a717"><span class="id" title="notation">)^-1</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#1c39bf18749e5cc609e83c0a0ba5a372"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#a605acbeae7597f74f5a9b816ed8a717"><span class="id" title="notation">^-1</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="lift_permV"><span class="id" title="lemma">lift_permV</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">(</span></a><a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">)^-1</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a><a class="idref" href="mathcomp.fingroup.fingroup.html#766fd55608aa0e125ed6f55c83bcc09a"><span class="id" title="notation">^-1</span></a>.<br/> <br/> -<span class="id" title="keyword">Lemma</span> <a name="odd_lift_perm"><span class="id" title="lemma">odd_lift_perm</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#8f9364556521ebb498093f28eea2240f"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#ef177bde7d01ae97c98f9cba81f6c95b"><span class="id" title="notation">(+)</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.ssr.ssrbool.html#ef177bde7d01ae97c98f9cba81f6c95b"><span class="id" title="notation">(+)</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#s"><span class="id" title="variable">s</span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Logic.html#8f9364556521ebb498093f28eea2240f"><span class="id" title="notation">:></span></a> <a class="idref" href="http://coq.inria.fr/distrib/8.8.0/stdlib//Coq.Init.Datatypes.html#bool"><span class="id" title="inductive">bool</span></a>.<br/> +<span class="id" title="keyword">Lemma</span> <a name="odd_lift_perm"><span class="id" title="lemma">odd_lift_perm</span></a> <span class="id" title="var">i</span> <span class="id" title="var">j</span> <span class="id" title="var">s</span> : <a class="idref" href="mathcomp.fingroup.perm.html#lift_perm"><span class="id" title="definition">lift_perm</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#j"><span class="id" title="variable">j</span></a> <a class="idref" href="mathcomp.fingroup.perm.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#b8b2ebc8e1a8b9aa935c0702efb5dccf"><span class="id" title="notation">=</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#i"><span class="id" title="variable">i</span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.ssr.ssrbool.html#a60537c464e134477471443dd91ae651"><span class="id" title="notation">(+)</span></a> <a class="idref" href="mathcomp.ssreflect.ssrnat.html#odd"><span class="id" title="definition">odd</span></a> <a class="idref" href="mathcomp.fingroup.perm.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#a60537c464e134477471443dd91ae651"><span class="id" title="notation">(+)</span></a> <a class="idref" href="mathcomp.fingroup.perm.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#b8b2ebc8e1a8b9aa935c0702efb5dccf"><span class="id" title="notation">:></span></a> <a class="idref" href="http://coq.inria.fr/distrib/V8.9.0/stdlib//Coq.Init.Datatypes.html#bool"><span class="id" title="inductive">bool</span></a>.<br/> <br/> <span class="id" title="keyword">End</span> <a class="idref" href="mathcomp.fingroup.perm.html#LiftPerm"><span class="id" title="section">LiftPerm</span></a>.<br/> <br/> + +<br/> +<span class="id" title="keyword">Notation</span> <a name="tuple_perm_eqP"><span class="id" title="abbreviation">tuple_perm_eqP</span></a> :=<br/> + (<a class="idref" href="mathcomp.ssreflect.ssreflect.html#Deprecation.Exports.deprecate"><span class="id" title="abbreviation">deprecate</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tuple_perm_eqP"><span class="id" title="variable">tuple_perm_eqP</span></a> <a class="idref" href="mathcomp.fingroup.perm.html#tuple_permP"><span class="id" title="variable">tuple_permP</span></a>) (<span class="id" title="var">only</span> <span class="id" title="var">parsing</span>).<br/> + +<br/> </div> </div> |
