options(rmarkdown.html_vignette.check_title = FALSE)
knitr::opts_chunk$set(echo = TRUE)
library("freegroup")
library("permutations")
set.seed(0)

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

Here are some use-cases for outer automorphisms using permsymb() and outer(). It needs a bit of work.

x <- abc(5)
x
permsymb(x, as.function(cyc_len(7)))

f <- as.function(rperm(10,9))
permsymb(as.free('abbccc'),f)
permsymb(abc(1)+abc(8),f)

autosub(abc(1:6),'c',as.free('xxxyz'))

S <- free(rbind(23+sample(1:3,10,TRUE),sample(c(-1,1,3),10,TRUE)))


X <- rfree(10,9)
all(X==X %>% autosub('a',S) %>% autosub('a',-S))
## should be TRUE


## Possible to use slightly slicker idiom:
g <- function(x){permsymb(x,f)}
g(X)


RobinHankin/freegroup documentation built on March 11, 2024, 12:32 a.m.