### R code from vignette source 'freegroup.Rnw'

###################################################
### code chunk number 1: freegroup.Rnw:77-79
###################################################
library("freegroup")
options(freegroup_symbols=letters) # should not be necessary


###################################################
### code chunk number 2: freegroup.Rnw:142-143
###################################################
(M <- rbind(c(1,2,3,3,1),c(2,-3,2,3,-2)))


###################################################
### code chunk number 3: freegroup.Rnw:149-151
###################################################
library("freegroup")
(x <- free(M))


###################################################
### code chunk number 4: freegroup.Rnw:160-161
###################################################
(y <- as.free("aabbbcccc"))


###################################################
### code chunk number 5: freegroup.Rnw:168-169
###################################################
x + y


###################################################
### code chunk number 6: freegroup.Rnw:198-199
###################################################
x*5


###################################################
### code chunk number 7: freegroup.Rnw:204-205
###################################################
x*(0:3)


###################################################
### code chunk number 8: freegroup.Rnw:210-211
###################################################
abc(1:9)


###################################################
### code chunk number 9: freegroup.Rnw:216-217
###################################################
rfree(10,4)


###################################################
### code chunk number 10: freegroup.Rnw:222-225
###################################################
(p <- rfree(10,4))
-p
p-p


###################################################
### code chunk number 11: freegroup.Rnw:231-232
###################################################
sum(p)


###################################################
### code chunk number 12: freegroup.Rnw:239-242
###################################################
p
a <- alpha(26)
p^a


###################################################
### code chunk number 13: freegroup.Rnw:248-249
###################################################
sum(p^a) == sum(p)^a


###################################################
### code chunk number 14: freegroup.Rnw:255-260
###################################################
x <- rfree()
y <- rfree()
z <- rfree()
all((x*y)^z == x^z * y^z)
all(x^(y*z) == (x^y)^z)


###################################################
### code chunk number 15: freegroup.Rnw:270-272
###################################################
all(x * c(y, z) == c(x*y, x*z))
all(c(x, y) * z == c(x*z, y*z))


###################################################
### code chunk number 16: freegroup.Rnw:279-280
###################################################
.[p,a]


###################################################
### code chunk number 17: freegroup.Rnw:285-286
###################################################
alpha(1:30)


###################################################
### code chunk number 18: freegroup.Rnw:292-294
###################################################
options(freegroup_symbols = state.abb)
alpha(1:30)


###################################################
### code chunk number 19: freegroup.Rnw:305-306
###################################################
options(freegroup_symbols=letters)
