Sign of a permutation
sgn.Rd
Returns the sign of a permutation
Details
The sign of a permutation is \(\pm 1\) depending on whether it is even or odd. A permutation is even if it can be written as a product of an even number of transpositions, and odd if it can be written as an odd number of transpositions. The map \(\operatorname{sgn}\colon S_n\longrightarrow\left\lbrace +1,-1\right\rbrace\) is a homomorphism; see examples.
Examples
sgn(id) # always problematic
#> [1] 1
sgn(rperm(10,5))
#> [1] -1 1 1 -1 1 -1 1 1 -1 1
x <- rperm(40,6)
y <- rperm(40,6)
stopifnot(all(sgn(x*y) == sgn(x)*sgn(y))) # sgn() is a homomorphism
z <- as.cycle(rperm(20,9,5))
z[is.even(z)]
#> [1] (26)(34) (195) (38764) (59768) (16875) (28)(67) (679) (28476)
z[is.odd(z)]
#> [1] (2659) (1946) (379)(45) (164)(35) (58) (28)(367) (146)(37)
#> [8] (3897) (18) (29) (1687) (45)