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.
翻译:大多数形式语言与自动机理论课程都会探讨识别语言中单词的计算模型与生成语言中单词的计算模型之间的对偶性。对于不熟悉形式化表述的学生而言,这些转换过程往往缺乏直观性。为帮助学生理解此类转换,可视化工具可发挥关键作用。本文介绍了为FSM(自动机理论课堂教学专用领域特定语言)开发的可视化工具,用于实现有限状态自动机与正则表达式之间的双向转换。借助这些工具,用户可输入任意有限状态机或任意正则表达式,并能够逐步向前或向后查看转换过程。每个步骤均配有可视化说明。本文概述了工具设计框架,阐述了实现方法,并与相关研究进行了比较。此外,文中还展示了对照组收集的实证数据。实证数据表明:该工具获得良好反响,具有显著教学效果,且学习使用该工具所需的外在认知负荷较低。