Generator of Exercises on Automata and Grammars
Generátor příkladů na automaty a gramatiky
bachelor thesis (DEFENDED)

View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/192876Identifiers
Study Information System: 260906
Collections
- Kvalifikační práce [11325]
Author
Advisor
Referee
Holubová, Irena
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Computer Science with specialisation in Foundations of Computer Science
Department
Department of Software Engineering
Date of defense
5. 9. 2024
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
English
Grade
Excellent
Keywords (Czech)
Automat|Gramatika|Úloha|Generátor|ŘešičKeywords (English)
Automaton|Grammar|Problem|Generator|SolverTato práce představuje nástroj založený na Pythonu, který je navržen pro generování různorodých a originálních úkolů v teorii formálních jazyků, zahr- nujících úkoly jako determinizace, CYK problém a převod na správnou bezkontextovou gramatiku. Nástroj umožňuje specifikaci požadovaných vlastností pro generované úkoly. Kromě toho usnadňuje tvorbu variant těchto úkolů, což zajišťuje jejich opakované použití při různých termínech zkoušek. Každý úkol obsahuje podrobnou zprávu, která zahrnuje proces řešení, vlastnosti problému a konečné řešení, vše formátované v LaTeXu pro snad- nou integraci do vzdělávacích materiálů. Pomocí konfiguračních souborů JSON nástroj nabízí flexibilitu a podporuje bezproblémové přidávání nových problémů. Řešením výzev při generování úkolů a ověřování řešení slouží tento nástroj jako zdroj pro zlepšení výuky teorie formálních jazyků. 1
This thesis introduces a Python-based tool designed to generate diverse and original problem assignments in formal languages theory, encompassing tasks such as determiniza- tion, the CYK problem, and conversion to a proper CFG. The tool allows the specification of desired properties for the generated problem assignments. Moreover, it allows us to facilitate the creation of variations of these assignments, ensuring their reuse across dif- ferent exam dates. Each problem assignment includes a detailed report that covers the solving process, problem properties, and final solution, all formatted in LaTeX for easy integration into educational materials. Utilizing JSON configuration files, the tool offers flexibility and supports the seamless addition of new problems. By addressing challenges in the problem generation and solution validation, this tool serves as a valuable resource for enhancing teaching and assessment of formal languages theory. 1