Konverze mezi floaty a string ve string constraint solvingu

Loading...
Thumbnail Image

Date

Authors

Pařízek, Tomáš

Mark

A

Journal Title

Journal ISSN

Volume Title

Publisher

Vysoké učení technické v Brně. Fakulta informačních technologií

ORCID

Abstract

Tato bakalářská práce se zabývá návrhem a implementací metody pro řešení řetězcových omezení s konverzemi mezi řetězci a reálnými čísly. Řešení logických formulí obsahujících řetězce je klíčovou oblastí využívanou při verifikaci programů, analýze bezpečnosti softwarových aplikací, včetně webových a blockchainových řešení nebo při automatickém generování testů. Současné SMT-solvery ovšem převážně podporují pouze konverze mezi řetězci a celými čísly. Tato práce proto rozšiřuje stabilizační přístup solveru Z3-Noodler o převody mezi reálnými čísly a řetězci, čímž zobecňuje algoritmy původně navržené pouze pro čísla celá. Nově implementované rozšíření je integrováno do solveru Z3-Noodler a využívá iterativní zpřesňování regulárních omezení reprezentovaných automaty, dokud není nalezeno stabilní řešení splňující daná omezení. Experimentální výsledky ukazují, že tato nová funkcionalita řeší úlohy s reálnými čísly efektivně a dosahuje výkonu srovnatelného s existujícími metodami pro celočíselné vstupy.
This bachelor's thesis deals with the design and implementation of a method for solving string constraints with string-float conversion. Solving logical formulae containing strings is a key area used in program verification, security analysis of software applications, including web and blockchain solutions, or in automatic test generation. However, current SMT-solvers mainly support only conversions between strings and integers. Therefore, this work extends the stabilization approach of the Z3-Noodler solver to include conversions between real numbers and strings, thus generalizing algorithms originally designed only for integers. The newly implemented extension is integrated into the Z3-Noodler solver and uses iterative refinement of regular constraints represented by automata until a stable solution satisfying the given constraints is found. Experimental results show that this new functionality solves problems with real numbers efficiently and achieves performance comparable to existing methods for integer inputs.

Description

Citation

PAŘÍZEK, T. Konverze mezi floaty a string ve string constraint solvingu [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2025.

Document type

Document version

Date of access to the full text

Language of document

en

Study field

Informační technologie

Comittee

doc. RNDr. Milan Češka, Ph.D. (předseda) Ing. Zbyněk Křivka, Ph.D. (člen) Ing. Zdeněk Materna, Ph.D. (člen) doc. Ing. Jan Kořenek, Ph.D. (člen) Ing. Jaroslav Rozman, Ph.D. (člen)

Date of acceptance

2025-06-16

Defence

Student 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 oponenta a na další 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.

Result of defence

práce byla úspěšně obhájena

DOI

Collections

Endorsement

Review

Supplemented By

Referenced By

Citace PRO