Generator of Exercises on Automata and Grammars
Generátor příkladů na automaty a gramatiky
bakalářská práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/192876Identifikátory
SIS: 260906
Kolekce
- Kvalifikační práce [11216]
Autor
Vedoucí práce
Oponent práce
Holubová, Irena
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Informatika se specializací Obecná informatika
Katedra / ústav / klinika
Katedra softwarového inženýrství
Datum obhajoby
5. 9. 2024
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Výborně
Klíčová slova (česky)
Automat|Gramatika|Úloha|Generátor|ŘešičKlíčová slova (anglicky)
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