CHOCHOLATÝ, D. Převodníky v automatové knihovně Mata [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2024.
Velké množství pokročilé výzkumné práce s dobrými výsledky, které dosahují úrovně kvalitních konferencí, a které budeme publikovat. Text je pěkný na standard studentských práci, i když není zcela na úrovní vědecké publikace, částečně proto, že student i školitel se namísto ladění textu věnovali přípravě publikací ne přímo souvisejících s tématem (student je také hlavním vývojářem knihovny Mata, která je jedním z centrálních témat výzkumné skupiny). Stále jde o výjimečou práci, na kterou by rozhodně nestačil běžný rok studentova života. Student zde zúročil několikaletou zkušenost ve výzkumu v oblasti a dosáhl kvalitních vědeckých výsledků.
Kritérium | Známka | Body | Slovní hodnocení |
---|---|---|---|
Informace k zadání | Náročné zadání. 1) Implementace převodníků musí být dostatečně efektivní pro optimalizovaný string constraint solver Noodler, datová struktura měla být zároveň použitelná pro reprezentaci automatů, která je hybridem mezi automaty a BDD (pro práci velkými abecedami). Snažili jsme se tedy o něco efektivnějšího a univerzálnějšího než existující řešení. 2) Návrh podpory relačních omezení v algoritmu nástroje Noodler je náročným výzkumným úkolem, který vyžaduje extensivní zkušenost ve výzkumu string constraint solvingu. V podstatě jde o dvě diplomky v jedné. Studentovi bylo možné toto provést, protože na výzkumu pracuje dlouhodobě. | ||
Práce s literaturou | Student zvládl samostatně a do hloubky nastudovat poměrně hodně literatury o automatových technikách a jejich implementaci. Zvládl nastudovat problematiku constraint string solvingu tak, aby se mohl plnohodnotně zapojit do výzkumu nástroje Noodler. Toto by nebylo zvládnutelné pro studenta, který by začínal od nuly. | ||
Aktivita během řešení, konzultace, komunikace | Student byl velmi aktivní. Přesto, že jsem ho zatěžoval řadou výzkumných úkolů, které přímo nesouvisejí s tématem, pracoval efektivně a samostatně. | ||
Aktivita při dokončování | Technický obsah byl konzultován extensivně. Text, ačkoliv je kvalitní, jsme mohli konzultovat více, technické řešení by si zasloužilo odladěnější prezentaci (v každém případě práci budeme publikovat), ale na vině jsou také mé vlastní časové možnosti. | ||
Publikační činnost, ocenění | Úspěšná účast na EXCELu, práce bude součástí dvou publikací: o implementaci relačních omezení ve string solveru Noodler, o nové verzi knihovny Mata s podporou pro převodníky a BDD-automata hybridní datovou strukturou. |
Diplomová práce Davida Chocholatého podstatně rozšiřuje funkcionalitu automatové knihovny Mata a SMT solveru Z3-Noodler. Student navrhl a naimplementoval efektivní reprezentaci konečných převodníků a jejich použití pro řešení omezení nad řetězci. Vyvinuté rozšíření bude zaintegrováno do hlavní větve zmíněných nástrojů. Celkový skvělý dojem trochu sráží formální stránka práce, je ale nutné zopakovat, že zadání i řešení je nadstandardní a tudíž hodnotím práci známkou výborně (A).
Kritérium | Známka | Body | Slovní hodnocení |
---|---|---|---|
Náročnost zadání | Zadání je samo o sobě značně obtížné a pro běžného studenta by asi nebylo zvládnutelné - bylo potřeba detailně pochopit fungování knihovny Mata, string solveru Z3-Noodler a implementovat do nich podporu pro konečné převodníky. David Chocholatý ale mohl budovat na tom, že do vývoje obou nástrojů je již nějakou dobu zapojen. | ||
Rozsah splnění požadavků zadání | Zadání bylo splněno, oproti němu student i integroval rozšíření do string solveru Z3-Noodler pro řešení řetězcových omezení s operací replace pomocí implementace převodníků | ||
Rozsah technické zprávy | |||
Prezentační úroveň technické zprávy | 90 | V pořádku. | |
Formální úprava technické zprávy | 85 | Práce je psána čitelnou angličtinou. Bohužel obsahuje nemalé množství gramatických chyb, překlepů a provinění proti typografii. | |
Práce s literaturou | 95 | V pořádku, student cituje vhodné zdroje na vhodných místech. | |
Realizační výstup | 95 | Student implementoval rozšíření knihovny Mata o konečné převodníky a integraci této rozšířené knihovny do solveru Z3-Noodler. Student mi rozšíření demonstroval. Můžu komentovat, že zdrojové kódy jsou psány čitelně, s pečlivě dokumentovanými funkcemi; jsem s nimi velmi spokojen. | |
Využitelnost výsledků | Plánuje se začlenění modifikací do hlavní větve knihovny Mata a solveru Z3-Noodler, lze teda očekávat, že výsledky budou hrát roli např. v dalším ročníku soutěže SMT-COMP, kde se Z3-Noodler zúčastní, případně samozřejmě kdykoliv někdo solver použije na vstupech, kde jsou operace replace. Samotné rozšíření knihovny může být použito např. v technice regulárního model checkingu, kde se s převodníky pracuje. |
eVSKP id 155757