Download presentation
Presentation is loading. Please wait.
Published byIsabel Carr Modified over 9 years ago
1
A Visual Interactive Tool For the Course “Automata and Formal Languages” Holon Institute of Technology Mark Trakhtenbrot, Vladimir Nodelman, Avi Lamai The Open University of Israel Judith Gal-Ezer, Rina Zviel-Girshin, Michal Armoni, Yahalom Humi
2
The course Mandatory course for 2 nd year CS students Studies mathematical models of computation (automata, grammars), their properties and expressive power, transformations, etc. Provides a strong background for a variety of CS areas: construction of compilers, verification, design of digital systems, etc.
3
Learning a theoretical CS course is difficult … Why? Heavy use of formal methods: Intuition behind formal concepts is not always clear Serious challenge - formal math language to describe abstract objects, their properties and relations Needed ability of precise math reasoning
4
Learning a theoretical CS course is difficult … Why? Students’ background and motivation significant break after the high school; certain erosion in math skills required for CS studies seeking a high-tech career; tend to view theoretical courses as something not needed for “real work”
5
More problems… Slow feedback: Student becomes aware of certain misunderstandings only when getting back the checked assignment Often happens too late already busy with learning another material
6
And more … Communication problems: difficulty to use formal language for asking questions often not supported technically; leads to a verbal mess In distance education (OpenU): rare face-to-face classes
7
As a result… Concepts remain too abstract Theorems and algorithms are used improperly Common problems left without proper attention
8
The challenge Help to: make formal concepts more clear and tangible make communication about them easier discover problems earlier get answers in “real time” Use technology to address these issues
9
To make this happen… Developed: interactive tool for visual hands-on exploration of the studied computational models Prototype: - covers automata and grammars chapters of the course - Windows application, downloaded from the course site Internet version: - so far, automata only
10
Interactive tool for AFL course Supports the self-study process: Build-in lessons - based on pre-defined scenarios Build-in exercises and exams - “american” and “open” questions - automatic check of solutions - tips provided in case of error Unlimited exercising
11
Interactive tool for AFL course Major features: Visual creation of computational models Static checks of model consistency and completeness Interactive simulation and animation Operations on automata and regular languages Transformations of models Traceability Different levels of details
12
Visual creation of models Learn basic elements, their properties & relationships Different views of model (diagrams vs. math notation)
13
Static checks Reveal hidden properties; find errors / omissions Examples: no final states, missing transitions; unused grammar symbols
14
Simulation and Animation Models are not just pictures; they are executable Interactive animation: select next action, observe reaction Flexibility: one-shot / step-wise; forward / backward; etc. Allows for: Dynamic check of model correctness run under different test inputs; similar to debugging Explore different derivation policies (left-most, right-most, use of backtracking)
16
Transformations and Traceability Variety of transformations supported: determinization and minimization of automata translation of grammar into a normal form conversions: Automata Regular Expressions Traceability: show mapping between source and target models
17
Selecting level of details Flexible use of the tool: view all details vs. final result only Example (determinization): for given NDA, build equivalent DA Process: Build your own solution Generate final answer with the tool & compare it with yours (e.g. compare simulation results on the same inputs) Your solution is incorrect, reasons unclear? View all interim details, see what went wrong
19
Share models to improve communication Attach model file when posting a question / homework Used by recipient both as doc & executable replaces messy verbal description / makes it more clear can be checked and run easier to understand the question and to answer it Similar for assignment solutions published by tutor: view & simulate it to compare with your solution
20
Summary of learning process improvements Better sense of learned concepts: live & tangible Thorough validation of solutions not just 1-2 paper-and-pencil checks Easy trial-and-error: make changes, check their impact Levels of details leading to proper understanding Improved communication
21
Further steps Improve integration into the learning process: Extend the coverage of the course material - developed a script language for definition of lesson scenarios Assignments with mandatory use of the tools Levels of access to tool’s functions, according to course schedule Use of tools in synchronous teaching
22
Interactive Tools for Teaching Automata and Formal Languages Thanks for your attention
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.