Témata prací (Výběr práce)Témata prací (Výběr práce)(verze: 368)
Detail práce
   Přihlásit přes CAS
Algoritmus PD-KIND v řešiči Golem
Název práce v češtině: Algoritmus PD-KIND v řešiči Golem
Název v anglickém jazyce: The PD-KIND algorithm in the Golem SMT solver
Akademický rok vypsání: 2023/2024
Typ práce: bakalářská práce
Jazyk práce:
Ústav: Katedra distribuovaných a spolehlivých systémů (32-KDSS)
Vedoucí / školitel: doc. RNDr. Jan Kofroň, Ph.D.
Řešitel: skrytý - zadáno a potvrzeno stud. odd.
Datum přihlášení: 06.02.2024
Datum zadání: 11.03.2024
Datum potvrzení stud. oddělením: 09.04.2024
Konzultanti: Mgr. Martin Blicha, Ph.D.
Zásady pro vypracování
Golem [1] je řešič Hornových klauzulí, který se využívá pro verifikaci programů pomocí efektivní metody, kterou je překlad do Hornových klauzulí a následně jejich vyhodnocení. Obsahuje několik algoritmů, které využívá k řešení těchto klauzulí, a tedy jejich verifikaci. K nim dokáže poskytnout i svědka jako certifikát validity. Algoritmus PD-Kind (Property-directed k-induction) [4] využívá myšlenky separace ověřování dosažitelnosti od indukčního uvažování v algoritmu IC3 [5] a integruje do ní K-indukci. K-indukce je silnější než normální indukce a pomocí ní má tato metoda potenciál vytvářet přesnější (logicky silnější) invarianty.

Cílem této práce je navrhnout způsob, jak algoritmus PD-KIND integrovat do řešiče Golem, a po té algoritmus v tomto nástroji implementovat. Funkčnost řešení bude demonstrována na sadě dostupných benchmarků.
Seznam odborné literatury
[1] Golem – Řešič Hornových klauzulí https://github.com/usi-verification-and-security/golem
[2] OpenSMT – SMT řešič https://github.com/usi-verification-and-security/opensmt/
[3] SMT-LIB 2.6 – https://smtlib.cs.uiowa.edu/papers/smt-lib-reference-v2.6-r2021-05-12.pdf
[4] D. Jovanović and B. Dutertre. Property-directed k-induction, Formal Methods in Computer-Aided Design (FMCAD), Mountain View, CA, USA, 2016, pp. 85-92, DOI: 10.1109/FMCAD.2016.7886665.
[5] Lange, T., Neuhäußer, M.R., Noll, T. et al. IC3 software model checking. Int J Softw Tools Technol Transfer 22, 135–161 (2020). https://doi.org/10.1007/s10009-019-00547-x
 
Univerzita Karlova | Informační systém UK