Zlepšení přesnosti formální analýzy programů v nástroji 2LS

but.committeeprof. Ing. Tomáš Vojnar, Ph.D. (předseda) prof. Ing. Jan M. Honzík, CSc. (místopředseda) Ing. František Grézl, Ph.D. (člen) doc. Ing. Jan Kořenek, Ph.D. (člen) Ing. Aleš Smrčka, Ph.D. (člen)cs
but.defenceStudent nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm " A ". Otázky u obhajoby: --cs
but.jazykangličtina (English)
but.programInformační technologiecs
but.resultpráce byla úspěšně obhájenacs
dc.contributor.advisorMalík, Viktoren
dc.contributor.authorSmutný, Martinen
dc.contributor.refereeVojnar, Tomášen
dc.date.accessioned2019-07-08T15:56:12Z
dc.date.available2019-07-08T15:56:12Z
dc.date.created2019cs
dc.description.abstractCílem této práce je navrhnout způsob vedoucí ke zvýšení přesnosti analýzy programů pomocí nástroje 2LS, založený na existujících konceptech, a to hlavně na syntézi invariant na základě šablon. 2LS je nástroj pro statickou analýzu programů napsaných v jazyce C, který využívá SMT solver a abstraktní interpretaci k automatickému odvození invariant. V případě kdy 2LS nedokáže rozhodnout zda je program správný, navrhované řešení analyzuje invarianty vypočítané v různých abstraktních doménách, a identifikuje takové části invariant, které mohou s největší pravděpodobností způsobit nejednoznačnost verifikace. Pomocí těchto získaných informací, dokáže navrhnutá metoda identifikovat proměnné původního programu, na kterých pravděpodobně závisí úspěch verifikace. Výstup tohoto řešení může posloužit jako zpětná vazba indikující proměnné, jejíchž problematické hodnoty by měly být omezeny. Také může být výstup využit vývojáři 2LS pro účely debugování při vývoji nových analýz. Řešení bylo implementováno v nástroji 2LS. Na základě různých experimentů mezinárodní soutěže ve verifikaci programů SV-COMP, dokáže řešení identifikovat proměnné způsobující nejednoznačnost verifikace ve více než polovině programů, na kterých verifikace momentálně selhává.en
dc.description.abstractThe goal of this work is to propose a way to improve precision of program analysis in the 2LS framework, based on its existing concepts, mainly template-based synthesis of invariants. 2LS is a static analysis framework for analysing C programs which relies on the use of an SMT solver and of abstract interpretation for automatic invariant inference. In a case when 2LS can not decide whether a program is correct, the proposed solution analyses the invariants computed in various abstract domains and identifies parts of the invariants that potentially cause undecidability of the verification. Using the obtained information, the designed method is able to identify variables of the original program that possibly determine whether the verification is successful. The output of our solution can be used as a feedback to indicate variables with problematic values that should be constrained. Also, it can be utilized by the 2LS developers for debugging purposes during development of new analyses. The solution has been implemented in the 2LS framework. Testing our solution on various benchmarks from the International Competition on Software Verification (SV-COMP) shows that it can identify variables that cause undecidability of the verification in more than half of the programs where the verification currently fails.cs
dc.description.markAcs
dc.identifier.citationSMUTNÝ, M. Zlepšení přesnosti formální analýzy programů v nástroji 2LS [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2019.cs
dc.identifier.other121994cs
dc.identifier.urihttp://hdl.handle.net/11012/180165
dc.language.isoencs
dc.publisherVysoké učení technické v Brně. Fakulta informačních technologiícs
dc.rightsStandardní licenční smlouva - přístup k plnému textu bez omezenícs
dc.subjectformální verifikaceen
dc.subjectanalýza programůen
dc.subjectstatická analýzaen
dc.subject2LSen
dc.subjectabstraktní interpretaceen
dc.subjectinvarianten
dc.subjectSSA formaen
dc.subjectabstraktní doménaen
dc.subjectanalýza na základě šablonen
dc.subjectformal verificationcs
dc.subjectprogram analysiscs
dc.subjectstatic analysiscs
dc.subject2LScs
dc.subjectabstract interpretationcs
dc.subjectinvariantcs
dc.subjectSSA formcs
dc.subjectabstract domaincs
dc.subjecttemplate-based analysiscs
dc.titleZlepšení přesnosti formální analýzy programů v nástroji 2LSen
dc.title.alternativeImproving Precision of Program Analysis in the 2LS Frameworkcs
dc.typeTextcs
dc.type.driverbachelorThesisen
dc.type.evskpbakalářská prácecs
dcterms.dateAccepted2019-06-10cs
dcterms.modified2019-07-08-13:31:22cs
eprints.affiliatedInstitution.facultyFakulta informačních technologiícs
sync.item.dbid121994en
sync.item.dbtypeZPen
sync.item.insts2021.11.23 01:00:36en
sync.item.modts2021.11.23 00:00:44en
thesis.disciplineInformační technologiecs
thesis.grantorVysoké učení technické v Brně. Fakulta informačních technologií. Ústav inteligentních systémůcs
thesis.levelBakalářskýcs
thesis.nameBc.cs
Files
Original bundle
Now showing 1 - 4 of 4
Loading...
Thumbnail Image
Name:
final-thesis.pdf
Size:
1.2 MB
Format:
Adobe Portable Document Format
Description:
final-thesis.pdf
Loading...
Thumbnail Image
Name:
Posudek-Vedouci prace-21638_v.pdf
Size:
86.36 KB
Format:
Adobe Portable Document Format
Description:
Posudek-Vedouci prace-21638_v.pdf
Loading...
Thumbnail Image
Name:
Posudek-Oponent prace-21638_o.pdf
Size:
87.26 KB
Format:
Adobe Portable Document Format
Description:
Posudek-Oponent prace-21638_o.pdf
Loading...
Thumbnail Image
Name:
review_121994.html
Size:
1.46 KB
Format:
Hypertext Markup Language
Description:
review_121994.html
Collections