170 likes | 180 Views
This course aims to enhance the learning experience of Automata Theory by increasing visualization, interaction, and faster feedback. It includes a variety of automata, applications, historical background, and development. Developed tools and materials help students understand abstract and difficult concepts.
E N D
A Visual & Interactive Computability Course Emphasizing Breadth of Automata Rakesh Verma Computer Science Department University of Houston http://www.cs.uh.edu/~rmverma SIGCSE 06: NSF Showcase CS@UH
Outline • The problem • Proposed solution • Teaching experience summary • Conclusions & future work SIGCSE 06: NSF Showcase CS@UH
The Problem • Learning and teaching Automata Theory are challenging tasks • Abstract, difficult material • Considerable creativity required • Slow feedback in traditional format • Student perceptions make it worse • Dated material, of little use • Dry at best and boring/frustrating at worst SIGCSE 06: NSF Showcase CS@UH
Challenges Specific to UH • Large, urban institution with a mature and diverse student population • Some loss of mathematical knowledge • Significant number of working students • In-school tutorial sessions difficult SIGCSE 06: NSF Showcase CS@UH
Goals • Enhance learning and learning experience by increasing: visualization, interaction, and faster feedback • Expose students to: • A variety of automata • Applications, especially recent ones • Historical background and development SIGCSE 06: NSF Showcase CS@UH
Proposed Solution • Complete revision of course contents and teaching with: • integration of enhanced JFLAP (Duke U.) and LRR (UH) • variety of automata, e.g., tree and DAG automata • recent and classical applications of automata SIGCSE 06: NSF Showcase CS@UH
Solution (contd.) • We have developed: • Power point slides for lectures including JFLAP animations (LRR animations in F05) • New problem sets requiring use of these tools • Notes on tree automata and DAG automata • Web site: http://www2.cs.uh.edu/~rmverma/3340new/html/index.html SIGCSE 06: NSF Showcase CS@UH
LRR and its advantages • LRR – input is a set of rules and an expression • Each rule is l r, where l and r are expressions with variables and operators • Example: x + 0 x and x + -x 0 • Applies rules via matching to given expression • LRR can implement any computation • A Turing machine can be encoded via just one rule! SIGCSE 06: NSF Showcase CS@UH
Visualizing Tree Automata • Instead of developing another package we use LRR with RuleMaker – a graphical interface • DFA example: • a(q0) q0 a(q1) q1 • b(q0) q1 b(q1) q0 • Final(q0) true Final(q1) false • Final(b(a(q0))? SIGCSE 06: NSF Showcase CS@UH
Examples (contd.) • NFA can be simulated as below: • a(a(q1)) q2 (string) q0 q1 (epsilon) • Tree automaton example: • true q0 false q1 • and(q0, q0) q0 and(q0, q1) q1 • and(q1, q0) q1 and(q1, q1) q1 SIGCSE 06: NSF Showcase CS@UH
UH Enhancements to JFLAP • “Debug” feature – students can generate strings at random and find the results for all the strings • Equivalence checking for DFA’s (this is now part of JFLAP version 4.0) SIGCSE 06: NSF Showcase CS@UH
Preliminary Results • Students participating in special problems and projects on automata SIGCSE 06: NSF Showcase CS@UH
Prel. Results (contd.) • Positive feedback on surveys regarding JFLAP/JFLAP++ and web-site materials • Students from this course showed improved performance on subsequent compilers course compared to traditional versions taught by other faculty SIGCSE 06: NSF Showcase CS@UH
Conclusions • Automata theory can be made interesting and easier • Visualization is helpful • Interaction is key – during lectures and outside class SIGCSE 06: NSF Showcase CS@UH
Future Work • Rigorous comparison with “traditional” automata courses • Further development of materials on breadth and applications of automata • A drastic revision of course contents … SIGCSE 06: NSF Showcase CS@UH
Acknowledgements • Students • Saquib Hakim (JFLAP++ and slides) • Mohammad Anwar (web site) • Pavan Podila and Patrick Sharkey (RuleMaker) • James Thigpen (integration with LRR) • Sponsor: National Science Foundation • The students who have enjoyed/suffered through my course! SIGCSE 06: NSF Showcase CS@UH
Thank You! ?’s or !’s For more info:http://www2.cs.uh.edu/~rmverma/3340new/html/index.html SIGCSE 06: NSF Showcase CS@UH