ŘEZÁČ, M. Heuristiky ve string solvingu [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2024.

Posudky

Posudek vedoucího

Síč, Juraj

Vzľadom k nedostatkom popísaných vyššie, ale aj k tomu, že zadanie bolo náročnejšie, by som odporúčil udeliť známku D .

Dílčí hodnocení
Kritérium Známka Body Slovní hodnocení
Informace k zadání Zadanie považujem za náročné,  bolo potrebné si naštudovať ako funguje string solving v rámci nástrojov cvc5 a Z3 a identifikovať v nich heuristiky, ktoré pomáhajú pri riešení. Študent na tomto zadaní pokračuje druhým rokom, keďže to minulý rok nestihol dokončiť. S výsledkami nie som úplne spokojný. Študent identifikoval a vyhodnotil určité heuristiky v rámci takzvaného rewriteru, kde sa formule prepisujú na jednoduchšie, ale heuristiky, ktoré sa používajú v rámci samotného riešenia formúl, už nenašiel. To sa dá vysvetliť tým, že tieto heuristiky sú zakomponované príliš hlboko a nedajú sa úplne oddeliť od zbytku. Avšak zhodnotenie nájdených heuristík nie je dostatočné. Popis heuristík vychádza zvyčajne z existujúcej literatúry, ale v experimentoch nie je jasné, ktoré z týchto heuristík sa používajú pri porovnávaní. Ďalej by som očakával, že toto porovnanie pôjde viac do hĺbky, rád by som videl nejaké zdôvodnenie, prečo niektoré heuristiky nemali skoro žiadny vplyv, zatiaľ čo vplyv iných bol oveľa väčší.
Práce s literaturou S prácou študenta s literatúrou som spokojný, pracoval s vhodnými zdrojmi, samostatne a naštudoval si netriviálne množstvo informácií o tom, ako funguje string solving v cvc5 a Z3.
Aktivita během řešení, konzultace, komunikace Študent počas riešenia bol zo začiatku aktívny, ale postupne sa táto aktivita znižovala, na konzultácie často prichádzal s tým, že sa mu skoro nič nepodarilo zrobiť. Posledné tri mesiace som od študenta nemal žiadnu správu, ozval sa mi až týždeň pred odozvdaním.
Aktivita při dokončování Obsah práce nebol konzultovaný skoro vôbec, bola dokončovaná na poslednú chvíľu s tým, že prvýkrát som ju uvidel týždeň pred odovzdaním.
Publikační činnost, ocenění Práca nebola publikovaná.
Navrhovaná známka
D
Body
60

Posudek oponenta

Havlena, Vojtěch

Student Michal Řezáč se v práci věnoval experimentálnímu vyhodnocení heuristik použitých pro řešení řetězcových omezení  nástrojích cvc5 a Z3. Vzhledem ke slabší kvalitě technické zprávy a minimalistickému experimentálnímu vyhodnocení obsahující výše zmíněné nedostatky, hodnotím práci stupněm   D (uspokojivě) na spodním okraji. 

Dílčí hodnocení
Kritérium Známka Body Slovní hodnocení
Náročnost zadání Zadání považuji za obtížnější. Zadání vyžadovalo po studentovi nastudování metod pro řešení řetězcových omezení použitých v nástrojích cvc5/Z3. Pro splnění bylo také nutné do určité míry porozumět částem kódu těchto nástrojů, což není úplně snadné. 
Rozsah splnění požadavků zadání Zadání považuji na splněné dosti minimalistickým způsobem. Popis heuristik v nástroji Z3 je hodně stručný a třeba úplně vynechává heuristiky použité v theory rewriteru. 
Rozsah technické zprávy Text práce je v obvyklém rozmezí. 
Prezentační úroveň technické zprávy 60 Musím říct, že s prezentační úrovní technické zprávy nejsem příliš spokojen, zejména pokud se jedná o návaznosti kapitol a celkovou koherenci textu. Kapitola 2 slouží jako úvod do SMT solvingu, nicméně se zachází do detailů, které nejsou z pohledu práce důležité. Například jsou formálně definovány pravidla DPLL(T) procedury, které ale nejsou dále použity. Podobně popis SMT přístupů je příliš podrobný a opět není dobře provázán se zbytkem práce. Očekával bych, že když student věnuje prostor popisu lazy a eager SMT technikám, bude u nástrojů cvc5 a Z3 uvedeno, jaké SMT přístupy používají. 
Formální úprava technické zprávy 75 Práce je psána dobrou angličtinou a obsahuje menší množství překlepů. Po typografické stránce je práce v pořádku (tabulky by si tedy zasloužily ještě nějakou péči). 
Práce s literaturou 75 Student v práci cituje relevantní časopisecké a konferenční články. Převzané části považuji za dostatečně oddělené. 
Realizační výstup 60 Realizačním výstupem práce mělo být experimentální vyhodnocení heuristik použitých v nástrojích cvc5 a Z3. To vyžadovalo modifikaci zmíněných nástrojů o možnosti zapínat/vypínat heuristiky. Odevzdaný archiv obsahuje výsledky měření a modifikované nástroje. Mám výtky k samotnému experimentálnímu vyhodnocení. Jednak mi tam chybí lepší popis heuristik, jejichž vliv se měřil (opravdu nevím, jaká heuristika je range_re2). Rovněž mi tam chybělo vyhodnocení na více benchmarcích z SMT-LIBu (byla uvažována pouze malá podmnožina). Očekával bych také, že bude provedena hlubší diskuse, která by dávala do relace heuristiky a vlastnosti formulí v měřených benchmarcích. 
Využitelnost výsledků Jedná se práci experimentálního charakteru. Vzhledem k absenci hlubší analýzy výsledků je využití dosti omezené.
Navrhovaná známka
D
Body
61

Otázky

eVSKP id 153659