The dot: commutators and the Hall-Witt identity in R

![](`r system.file("help/figures/permutations.png", package = "permutations")`){width=10%} ![](`r system.file("help/figures/freealg.png", package = "freealg")`){width=10%}

set.seed(0)
knitr::opts_chunk$set(echo = TRUE)
library("freealg")
library("permutations")

This short document introduces the dot object and shows how it can be used to work with commutators and verify the Hall-Wittidentity. The dot object is a (trivial) S4 object of class dot,

`.` <- new("dot")
save(".", file="dot.rda") # copy dot.rda to the data/ directory.

The dot uses the dot class of the freealg package. The point of the dot (!) is that it allows one to calculate the bracket $[x,y]=x^{-1}y^{-1}xy$ using R idiom .[x,y]. Thus:

x <- as.cycle(1:3)
y <- as.cycle(2:5)
x^-1*y^-1*x*y
.[x,y]

It would have been nice to use \code{[x,y]} (that is, without the dot) but although this is syntactically consistent, it cannot be done in R AFAICS.

It is possible to apply the dot construction .[x,y] to more complicated examples. Note that the Jacobi identity does not really make sense in this context, but the Hall-Witt identity does:

x <- rperm(10,7)
y <- rperm(10,8)
z <- rperm(10,9)
.[.[x,y],z^x] * .[.[z,x],y^z] * .[.[y,z],x^y]


Try the permutations package in your browser

Any scripts or data that you put into this service are public.

permutations documentation built on March 7, 2023, 8:26 p.m.