permutations (version 1.0-9)

inverse: Inverse of a permutation

Description

Calculates the inverse of a permutation in either word or cycle form

Usage

inverse(x)
# S3 method for word
inverse(x)
# S3 method for cycle
inverse(x)
inverse_word_single(W)
inverse_cyclist_single(cyc)

Arguments

x

Object of class permutation to be inverted

W

In function inverse_word_single(), a vector corresponding to a permutation in word form (that is, one row of a word object)

cyc

In function inverse_cyclist_single(), a cyclist to be inverted

Value

Function inverse() returns an object of the same class as its argument.

Details

The package provides methods to invert objects of class word (the R idiom is W[W] <- seq_along(W)) and also objects of class cycle (the idiom is lapply(cyc,function(o){c(o[1],rev(o[-1]))})).

The user should use inverse() directly, which dispatches to either inverse.word() or inverse.cycle() as appropriate.

Sometimes, using idiom such as x^-1 or id/x gives neater code, although these may require coercion between word form and cycle form.

See Also

cycle_power

Examples

# NOT RUN {
x <- rperm(10,6)
inverse(x)

all(is.id(x*inverse(x)))  # should be TRUE

inverse(as.cycle(matrix(1:8,9,8)))

# }