Students find their first course in Formal Languages and Automata Theory challenging. Most students struggle to understand nondeterministic computation models like nondeterministic finite-state machines, pushdown automata, and Turing machines. Often, students find it difficult to understand why a nondeterministic machine accepts or rejects a word. Furthermore, they may feel uncomfortable with there being multiple computations on the same input and with a computation not consuming all of its input. This article presents a visualization tool developed to help students understand nondeterministic behavior. The tool is integrated into FSM–a domain-specific language for the Automata Theory classroom. The strategy is based on the automatic generation of computation graphs. Unlike previous visualization tools, the computation graphs generated reflect the structure of the given machine’s transition diagram and not the structure of the computation tree. Empirical data collected from students at two universities suggests that the visualizations are well-received and useful.
Thu 24 OctDisplayed time zone: Pacific Time (US & Canada) change
10:40 - 12:20 | |||
10:40 20mTalk | Gender Differences in Story, Game and Visual Adventures in Hedy SPLASH-E Shirley de Wit Delft University of Technology, Felienne Hermans Vrije Universiteit Amsterdam, Marcus Specht Delft University of Technology, Efthimia Aivaloglou Delft University of Technology | ||
11:00 20mTalk | Roles of Variables in the Hedy programming language SPLASH-E Julia Vanwijnsberghe-Bolt Vrije Universiteit Amsterdam, Felienne Hermans Vrije Universiteit Amsterdam | ||
11:20 20mBreak | SPLASH-E Break SPLASH-E | ||
11:40 20mTalk | Using Computation Graphs to Explain Nondeterminism to Students SPLASH-E | ||
12:00 20mTalk | Visualizing Composed Turing Machines SPLASH-E |