char_to_free: Convert character vectors to free objects

char_to_freeR Documentation

Convert character vectors to free objects

Description

Convert character vectors to free objects

Usage

char_to_matrix(x)

Arguments

x

A character vector

Details

Function char_to_matrix() gives very basic conversion between character vectors and free objects. Current functionality is limited to strings like “aaabaacd”, which would give a^3.b.a^2.c.d. It would be nice to take a string like “a^3b^(-3)” but this is not yet implemented.

Function char_to_free() is a vectorized version that coerces output to free.

Note

The function is not robust; for example, passing anything other than lower-case letters a-z will give possibly undesirable behaviour.

Function char_to_free() is consistent with the default print options (which are that the symbols are the lowercase letters a-z). If you change the symbols' names, for example options(symbols=sample(letters)), then things can get confusing. The print method does not change the internal representation of a free object, which is a list of integer matrices.

Author(s)

Robin K. S. Hankin

See Also

print.free

Examples


char_to_matrix("aaabcABC")

rfree(10,3) + as.free('xxxxxxxxxxxx')

as.free(letters)*7

as.free('')  # identity element


freegroup documentation built on Dec. 28, 2022, 2:14 a.m.