# inverse: Inverse of a permutation In permutations: The Symmetric Group: Permutations of a Finite Set

## Description

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

## Usage

 ```1 2 3 4 5 6 7``` ```inverse(x) ## S3 method for class 'word' inverse(x) ## S3 method for class '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

## 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.

## Value

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

## Author(s)

Robin K. S. Hankin

`cycle_power`
 ```1 2 3 4 5 6``` ```x <- rperm(10,6) inverse(x) all(is.id(x*inverse(x))) # should be TRUE inverse(as.cycle(matrix(1:8,9,8))) ```