
arXiv: 2508.03641
In Formal Languages and Automata Theory courses, students find understanding nondeterministic finite-state and pushdown automata difficult. In many cases, this means that it is challenging for them to comprehend the operational semantics of such machines and, as a consequence, determine why a word is accepted or rejected. This is not entirely surprising, because students are mostly trained to design and implement deterministic programs. Comprehension of pushdown automata is further complicated, because reasoning about the stack is necessary. A common difficulty students face, for example, is understanding that two different computations on the same word may reach the same state with different stack values. To aid student understanding, we present two novel dynamic visualization tools for FSM -- a domain-specific programming language for the Automata Theory classroom -- to support the design of such machines. These tools visualize all computations that may be performed, respectively, by a nondeterministic finite-state machine or by a pushdown automata in a stepwise manner. In addition, these tools aid the machine verification process by allowing users to visually validate whether the properties a state represents hold when a machine transitions into it.
In Proceedings TFPiE 2025, arXiv:2508.02305
Human-Computer Interaction, Software Engineering (cs.SE), FOS: Computer and information sciences, Formal Languages and Automata Theory (cs.FL), Software Engineering, Programming Languages, Formal Languages and Automata Theory, Human-Computer Interaction (cs.HC), Programming Languages (cs.PL)
Human-Computer Interaction, Software Engineering (cs.SE), FOS: Computer and information sciences, Formal Languages and Automata Theory (cs.FL), Software Engineering, Programming Languages, Formal Languages and Automata Theory, Human-Computer Interaction (cs.HC), Programming Languages (cs.PL)
| selected citations These citations are derived from selected sources. This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | 0 | |
| popularity This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network. | Average | |
| influence This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | Average | |
| impulse This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network. | Average |
