  Most Formal Languages and Automata Theory courses explore the duality between
computation models to recognize words in a language and computation models to
generate words in a language. For students unaccustomed to formal statements,
these transformations are rarely intuitive. To assist students with such
transformations, visualization tools can play a pivotal role. This article
presents visualization tools developed for FSM -- a domain-specific language
for the Automata Theory classroom -- to transform a finite state automaton to a
regular expression and vice versa. Using these tools, the user may provide an
arbitrary finite-state machine or an arbitrary regular expression and step
forward and step backwards through a transformation. At each step, the
visualization describes the step taken. The tools are outlined, their
implementation is described, and they are compared with related work. In
addition, empirical data collected from a control group is presented. The
empirical data suggests that the tools are well-received, effective, and
learning how to use them has a low extraneous cognitive load.
