<p>We provide <em>signed permutations</em>, that is permutations that can additionally change the sign of their result.</p>
<p>Assume <span class="SimpleMath">\(n \in \mathbb{N}\)</span>, then a signed permutation on <span class="SimpleMath">\(n\)</span> points is a permutation <span class="SimpleMath">\(\pi\)</span> on <span class="SimpleMath">\(\{ 1 \ldots n \}\)</span> together with signs <span class="SimpleMath">\(sgn : \{ 1 .. n \} \rightarrow \{-1,1\}\)</span>. A signed permutation on <span class="SimpleMath">\(n\)</span> points acts on the set <span class="SimpleMath">\(\{ -n \ldots 1, 1 \ldots n \}\)</span> by <span class="SimpleMath">\( \omega ^ { (\pi, sgn) } = sgn(\omega)\cdot sgn(|\omega|^\pi) \cdot (|\omega|^\pi) \)</span>.</p>
<p>We provide two representations of signed permutations, one as a list of images <code class="func">IsSignedPermListRep</code> (<a href="chap7_mj.html#X8531225C7C224C62"><span class="RefLink">7.2-8</span></a>) and one formed as pair of a permutation and a sign map <code class="func">IsSignedPermRep</code> (<a href="chap7_mj.html#X87BCE2B280486669"><span class="RefLink">7.2-7</span></a>). Our benchmarks indicate that a list of images is the better representation, and hence this is the default.</p>
<p>To get started with signed permutations consider the following example</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ ListSignedPerm</code>( <var class="Arg">perm</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Convert a signed permutation into a list of images, equivalent to List([1..LargestMovedPoint(s)], x -> x^s);</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ ListSignedPerm</code>( <var class="Arg">arg1</var>, <var class="Arg">arg2</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Convert a signed permutation to a list of images of length <var class="Arg">len</var>. Arguments perm, len</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ SignedPerm</code>( <var class="Arg">arg</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Given a list of signed images create a signed permutation object in <code class="func">IsSignedPermListRep</code> (<a href="chap7_mj.html#X8531225C7C224C62"><span class="RefLink">7.2-8</span></a>).</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ LargestMovedPoint</code>( <var class="Arg">arg</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>The largest point that is moved by the signed permutation, where moving includes changing the sign.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ RandomSignedPermList</code>( <var class="Arg">arg</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Create a random list of images that can be used to create a signed permutation.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ RandomSignedPerm</code>( <var class="Arg">arg</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Create a random signed permutation</p>
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.