A visual and interactive automata theory course emphasizing breadth of automata

Teaching Theory of Computation and learning it are both challenging tasks. Moreover, students are not sufficiently interested/motivated to learn this material since: (i) they believe that the material is dated and of little use and (ii) it is too abstract and difficult. To counter the first perception, we have developed materials to illustrate the breadth of finite automata concepts. To overcome the second problem we have: enhanced and integrated visualization software and historical background into newly-devloped materials including homeworks and slides for lectures. Most of the materials are available at a web site for the course that we developed. Our preliminary experience is positive overall, but there are some remaining concerns.

[1]  William Yurcik,et al.  Using theoretical computer simulators for formal languages and automata theory , 2003, SGCS.

[2]  Michael T. Grinder Animating automata: a cross-platform program for teaching finite automata , 2002, SIGCSE '02.

[3]  J. Stasko,et al.  A Meta-Study of Algorithm Visualization Effectiveness , 2002, J. Vis. Lang. Comput..

[4]  Jon Barwise,et al.  Computers, visualization, and the nature of reasoning , 1998 .

[5]  Moshe Y. Vardi Nontraditional Applications of Automata Theory , 1994, TACS.

[6]  Susan H. Rodger,et al.  Using JFLAP to interact with theorems in automata theory , 1999, SIGCSE '99.

[7]  Susan H. Rodger,et al.  Increasing visualization and interaction in the automata theory course , 2000, SIGCSE '00.

[8]  Mohamed Hamada,et al.  A classroom experiment for teaching automata , 2004, ITiCSE '04.

[9]  Max Dauchet,et al.  Simulation of Turing Machines by a Regular Rewrite Rule , 1992, Theor. Comput. Sci..

[10]  Hubert Comon,et al.  Tree automata techniques and applications , 1997 .

[11]  Michael T. Grinder A preliminary empirical evaluation of the effectiveness of a finite state automaton animator , 2003, SIGCSE.

[12]  H RodgerSusan,et al.  A collection of tools for making automata theory and formal languages come alive , 1997 .

[13]  Rakesh M. Verma,et al.  LarrowR2: A Laboratory fro Rapid Term Graph Rewriting , 1999, RTA.

[14]  Ana Gabriela Maguitman,et al.  Didactic strategies for promoting significant learning in formal languages and automata theory , 2004, ITiCSE '04.

[15]  Orit Hazzan Reducing abstraction level when learning computability theory concepts , 2002, ITiCSE '02.

[16]  Michael Sipser,et al.  Introduction to the Theory of Computation , 1996, SIGA.

[17]  Christos H. Papadimitriou,et al.  Elements of the Theory of Computation , 1997, SIGA.

[18]  R. Verma,et al.  LR2 : A laboratory for rapid term graph rewriting1 , 1999 .

[19]  Makoto Murata,et al.  Hedge automata: a formal model for xml schemata , 1999 .

[20]  Nachum Dershowitz,et al.  In handbook of automated reasoning , 2001 .

[21]  J. Moor,et al.  The digital phoenix : how computers are changing philosophy , 1998 .

[22]  Susan H. Rodger,et al.  A visual and interactive automata theory course with JFLAP 4.0 , 2004 .

[23]  Rockford J. Ross,et al.  Loving to learn theory: active learning modules for the theory of computing , 2002, SIGCSE '02.

[24]  Andrew T. Duchowski,et al.  A Java-based tool for reasoning about models of computation through simulating finite automata and Turing machines , 1999, SIGCSE '99.

[25]  Nachum Dershowitz,et al.  Chapter 9 – Rewriting , 2001 .

[26]  Dieter Maurer,et al.  Compiler Design , 2013, Springer Berlin Heidelberg.

[27]  Thomas L. Naps,et al.  Exploring the role of visualization and engagement in computer science education , 2003, ITiCSE-WGR '02.

[28]  H RodgerSusan,et al.  Using JFLAP to interact with theorems in automata theory , 1999 .

[29]  Susan H. Rodger,et al.  A collection of tools for making automata theory and formal languages come alive , 1997, SIGCSE '97.