You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Malte Isberner edited this page Nov 7, 2013
·
2 revisions
In AutomataLib, an alphabet is a finite ordered set of input symbols. Mathematically, it can be described as a set S = { a_1, ..., a_n }. The main purpose of an Alphabet in AutomataLib is, besides representing the collection of input symbols, to assign to each symbol a unique index between 0 and n-1, where n is the size of the alphabet. This symbol to index mapping is used
to fix an ordering on the input symbols, based on the ordering of the indices and
to allow automaton implementations to abstract from the concrete type used for input symbols, and internally work on integers instead (i.e., maintaining transition information in an array instead of a Map).
This article will assist you to choose the right alphabet type depending on your use case.
Immutable Alphabets
In the following, we discuss scenarios where the alphabet is fixed once and thereafter remains unchanged.