RegMat
structure
structure RegMat
: sig ... end
This is the matrix algebra over the Kleenean algebra Reg
of regular expressions (with free variables).
structure Ring : pKA
type 'a t
val dimension : 'a t -> int * int
val tabulate : int * int
-> (int * int -> 'a Ring.t) -> 'a t
val sub : 'a t * (int * int) -> 'a Ring.t
val map : ('a Ring.t -> 'a Ring.t) -> 'a t -> 'a t
val zero : int * int -> 'a t
val unit : int * int -> 'a t
val sum : ''a t * ''a t -> ''a t
val prod : ''a t * ''a t -> ''a t
val star : ''a t -> ''a t
val transpose : ''a t -> ''a t
structure Ring : pKA
type 'a t
dimension A
tabulate (i, j) f
sub (A, (i, j))
map f A
zero (i, j)
unit (i, j)
sum (A, B)
prod (A, B)
star A
transpose A
Reg
,RegEqns
The matrix algebra over Reg is useful in solving systems of regular recursion equations. (It is used in RegEqnsFm
to translate a finite automaton to a regular expression by solving a system of regular right-linear recursion equations that describe the automaton.)