1 / 22

A Visual Interactive Tool For the Course “Automata and Formal Languages”

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,

blaine
Download Presentation

A Visual Interactive Tool For the Course “Automata and Formal Languages”

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Visual Interactive ToolFor 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 2nd 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… Conceptsremain too abstract Theorems and algorithms areused 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 toolforvisual 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)

  15. 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

  16. 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

  17. 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

  18. 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

  19. Further steps Improve integration into the learning process: Extend the coverageof the course material - developed a script language for definition of lesson scenarios Assignments withmandatory use of the tools Levels of accessto tool’s functions, according to course schedule Use of tools in synchronous teaching

  20. Interactive Tools for Teaching Automata and Formal Languages Thanks for your attention

More Related