Detail projektu
Efektivní konečné automaty pro automatické usuzování
Období řešení: 1.1.2020 — 31.12.2024
Zdroje financování
Ministerstvo školství, mládeže a tělovýchovy ČR - ERC CZ
O projektu
Cílem projektu je zlepšit efektivitu základních technik konečných automatů. Konečný automat je základní koncepcí informatiky s četnými aplikacemi. Výzkum automatů přináší neustále nové výsledky týkající se široké škály aplikací v automatizovaném rozhodování, formálním ověřování, zpracování jazyka, databázích a webových technologiích. Bohužel jejich praktický dopad, i když je pozoruhodný, je do značné míry omezen nedostatečnou škálovatelností automatických technik zakořeněné ve velmi základních pojmech a algoritmech. Efektivnost automatické technologie však není dostatečně vyřešena. Výzkum se většinou zaměřuje na různá rozšíření automatů a vzrušující "teoretické" aplikace. Důvodem této nedostatečné pozornosti je skutečnost, že se základní automatizační techniky zdají být z obvyklé automatické teoretické perspektivy již dobře pochopené, a proto neposkytují dostatek prostoru pro výzkum. Je zapotřebí vyvinout soustředěné úsilí a přijít s novými myšlenkami v mnohem pragmatickějším směru, abych mohlo dojít k posunutí vývoje. Příležitost v dosažení průlomu v efektivnosti rozhodování vidím ve využití automatů, které vychází z pokroku v automatizovaném rozhodování a ověřování. Koncepty, jako je líné hodnocení, symbolické reprezentace, abstrakce nebo heuristika z řešení SAT / SMT, lze kombinovat s tradičními automatovými technikami a zpracovat novým způsobem. Plánuji detailně prozkoumat základní automatové nástroje společně s těmito koncepty s důrazem na jejich výkonnost v praxi. Jsem přesvědčen, že když výkonnost v praxi získává zaslouženou pozornost, můžeme očekávat podobně rychlý pokrok, jaký byl např. u řešení problému SAT / SMT nebo u ověřování softwaru, což může vést k velmi užitečným a prakticky škálovatelným metodám a nástrojům, stejně jako k novým příležitostem pro hluboké teoretické studium nových technik.
Popis anglicky
The project aims at improving the efficiency of basic techniques of finite
automata technology. Finite automaton is a core concept of computer science, with
numerous practical applications, with compilers and pattern matching among the
most established ones, and with a vast and continuously expanding space of
theoretical possibilities on the verge of being practically applicable, in
automated reasoning, formal verification, modelling, language processing,
databases, web technologies, and many other areas. The practical impact of
automata theory is however limited by insufficient scalability of automata
technology, and research in practical efficiency of basic automata technology is
not being addressed sufficiently. The basic automata techniques seem well
understood and do not yield research opportunities easily, and so most of
automata related research focuses on various more complex automata extensions and
their exciting possibilities, even though still inheriting all the scalability
problems of the basic model.
The main thesis of this project is that (1) the practical scalability of basic
automata technology needs to be addressed more in order to unlock the theoretical
potential of basic automata as well as of their extensions,
and that (2) it is indeed possible to do that.
To this end, we will put the basic automata toolkit under a detailed scrutiny
with a strong focus on practical performance, and utilise advances in modern
automated reasoning and verification. Concepts such as lazy evaluation,
alternation, symbolic representation, abstraction, or heuristics from SAT/SMT
solving can be combined with traditional automata techniques and elaborated on in
novel ways. To maintain a connection to practice, we will drive our research by
a research in application domains of automata. We will namely focus on string
constraint solving (e.g., for vulnerability analysis of string manipulating
programs), pattern matching (e.g., classical pattern matching, hardware
accelerated pattern matching in network monitoring), shape analysis (low level
pointer program analysis, analysis of programs with complex data structures, of
parallel pointer programs), automata learning (e.g., learning of network traffic
characteristics for fast anomaly detection).
We believe that a concentrated focus on practical efficiency of automata can
initiate a success story similarly to that of SAT/SMT solving, ultimately
yielding widely useful and practically scalable methods and tools and also
opportunities for a practically relevant theoretical research.
Klíčová slova
konečné automaty, logika, automatizované uvažování, formální verifikace, analýza
programu, analýza tvaru, analýza řetězcových programů, bezpečnost
Klíčová slova anglicky
finite automata, logic, automated reasoning, formal verification, program
analysis, shape analysis, string program analysis, security
Označení
LL1908
Originální jazyk
čeština
Řešitelé
Holík Lukáš, doc. Mgr., Ph.D. - hlavní řešitel
Blahoudek František, RNDr., Ph.D. - spoluřešitel
Češka Milan, doc. RNDr., Ph.D. - spoluřešitel
Fiedor Tomáš, Ing., Ph.D. - spoluřešitel
Havlena Vojtěch, Ing., Ph.D. - spoluřešitel
Holíková Lenka, Ing., Ph.D. - spoluřešitel
Homoliak Ivan, doc. Ing., Ph.D. - spoluřešitel
Horký Michal, Ing. - spoluřešitel
Hošták Viliam Samuel, Ing. - spoluřešitel
Hruška Martin, Ing., Ph.D. - spoluřešitel
Jawed Soyiba, Dr., MSc - spoluřešitel
Kesiraju Michaela, Bc. - spoluřešitel
Křivka Zbyněk, Ing., Ph.D. - spoluřešitel
Lengál Ondřej, Ing., Ph.D. - spoluřešitel
Macák Filip, Ing. - spoluřešitel
Martiček Štefan, Ing. - spoluřešitel
Meduna Alexandr, prof. RNDr., CSc. - spoluřešitel
Rogalewicz Adam, doc. Mgr., Ph.D. - spoluřešitel
Síč Juraj, Mgr. - spoluřešitel
Slezáková Alexandra, Bc. - spoluřešitel
Útvary
Ústav inteligentních systémů
- odpovědné pracoviště (16.7.2019 - nezadáno)
Automata@FIT
- interní (16.7.2019 - 31.12.2024)
Výzkumná skupina automatizované analýzy a verifikace - VeriFIT
- interní (16.7.2019 - 31.12.2024)
Ústav inteligentních systémů
- příjemce (16.7.2019 - 31.12.2024)
Výsledky
ABDULLA, P.; CHEN, Y.; CHEN, Y.; HOLÍK, L.; LENGÁL, O.; LIN, J.; LO, F.; TSAI, W. Verifying Quantum Circuits with Level-Synchronized Tree Automata. Proceedings of the ACM on Programming Languages, 2025, vol. 9, no. 1, p. 923-953. ISSN: 2475-1421.
Detail
HAVLENA, V.; HOLÍK, L.; LENGÁL, O.; SÍČ, J. Cooking String-Integer Conversions with Noodles. Proceedings of SAT'24. Leibniz International Proceedings in Informatics, LIPIcs. Leibniz International Proceedings in Informatics (LIPIcs). Pune: Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik, 2024. p. 1-19. ISSN: 1868-8969.
Detail
HAVLENA, V.; HEČKO, M.; HOLÍK, L.; LENGÁL, O.; HABERMEHL, P. Algebraic Reasoning Meets Automata in Solving Linear Integer Arithmetic. Proceedings of CAV'24. Lecture Notes in Computer Science. Montreal: Springer Verlag, 2024. p. 42-67. ISSN: 0302-9743.
Detail
HAVLENA, V.; CHOCHOLATÝ, D.; SÍČ, J.; HOLÍK, L.; LENGÁL, O.; CHEN, Y. Z3-Noodler: An Automata-based String Solver. Proceedings of TACAS'24. Lecture Notes in Computer Science. Lecture Notes. Luxembourgh: Springer Verlag, 2024. p. 24-33. ISSN: 0302-9743.
Detail
HOLÍK, L.; CHOCHOLATÝ, D.; FIEDOR, T.; HAVLENA, V.; HRUŠKA, M.; LENGÁL, O.; SÍČ, J. Mata: A Fast and Simple Finite Automata Library. Proceedings of TACAS'24. Lecture Notes in Computer Science. Luxembourgh: Springer Verlag, 2024. p. 130-151. ISSN: 0302-9743.
Detail
DACÍK, T.; ROGALEWICZ, A.; VOJNAR, T.; ZULEGER, F. Deciding Boolean Separation Logic via Small Models. In Tools and Algorithms for the Construction and Analysis of Systems (TACAS). Lecture Notes in Computer Science. Cham: Springer Nature Switzerland AG, 2024. p. 188-206. ISBN: 978-3-031-57245-6.
Detail
HAVLENA, V.; HOLÍK, L.; CHOCHOLATÝ, D.; LENGÁL, O.; SÍČ, J.; FIEDOR, T.; HRUŠKA, M.: mata; Mata: A Finite Automata Library. https://github.com/VeriFIT/mata. URL: https://github.com/VeriFIT/mata. (software)
Detail
HAVLENA, V.; HOLÍK, L.; CHOCHOLATÝ, D.; LENGÁL, O.; SÍČ, J.; CHEN, Y.: Z3-Noodler; Z3-Noodler: A String Solver. https://github.com/VeriFIT/z3-noodler. URL: https://github.com/VeriFIT/z3-noodler. (software)
Detail
CHEN, Y.; CHOCHOLATÝ, D.; HAVLENA, V.; HOLÍK, L.; LENGÁL, O.; SÍČ, J. Solving String Constraints with Lengths by Stabilization. Proceedings of the ACM on Programming Languages, 2023, vol. 7, no. 10, p. 2112-2141. ISSN: 2475-1421.
Detail
ANDRIUSHCHENKO, R.; BARTOCCI, E.; ČEŠKA, M.; FRANCESCO, P.; SARAH, S. Deductive Controller Synthesis for Probabilistic Hyperproperties. In Quantitative Evaluation of SysTems. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). Cham: Springer Verlag, 2023. p. 288-306. ISBN: 978-3-031-43834-9.
Detail
HOLÍK, L.; HRUŠKA, M.; SÍČ, J.; VARGOVČÍK, P.; FIEDOR, T.; ROGALEWICZ, A. Reasoning about Regular Properties: A Comparative Study. In Automated Deduction - CADE 29. Lecture Notes in Computer Science. Cham: Springer Nature Switzerland AG, 2023. p. 286-306. ISSN: 0302-9743.
Detail
LENGÁL, O.; CHEN, Y.; TSAI, W.; CHUNG, K.; LIN, J. AutoQ: An Automata-based Quantum Circuit Verifier. In Proceedings of 35th International Conference on Computer Aided Verification. Lecture Notes in Computer Science. Cham: Springer Verlag, 2023. p. 139-153. ISSN: 0302-9743.
Detail
LENGÁL, O.; CHEN, Y.; TSAI, W.; LIN, J.; CHUNG, K.; YEN, D. An Automata-Based Framework for Verification and Bug Hunting in Quantum Circuits. Proceedings of the ACM on Programming Languages, 2023, vol. 7, no. 6, p. 1218-1243. ISSN: 2475-1421.
Detail
HOLÍK, L.; HOLÍKOVÁ, L.; SÍČ, J.; VOJNAR, T. Fast Matching of Regular Patterns with Synchronizing Counting. In Foundations of Software Science and Computation Structures. Lecture Notes in Computer Science. Heidelberg: Springer Verlag, 2023. p. 392-412. ISSN: 0302-9743.
Detail
HAVLENA, V.; CHOCHOLATÝ, D.; LENGÁL, O.; HOLÍK, L.; SÍČ, J.; BLAHOUDEK, F.; CHEN, Y. Word Equations in Synergy with Regular Constraints. In Proceedings of FM'23. Lecture Notes in Computer Science. Lübeck: Springer Verlag, 2023. p. 403-423. ISSN: 0302-9743.
Detail
HAVLENA, V.; LENGÁL, O.; CHEN, Y.; TURRINI, A. A symbolic algorithm for the case-split rule in solving word constraints with extensions. JOURNAL OF SYSTEMS AND SOFTWARE, 2023, vol. 201, no. 201, p. 111673-111693. ISSN: 0164-1212.
Detail
HOLÍK, L.; ABDULLA, P.; ATIG, M.; BUI PHI, D.; CHEN, Y.; WU, Z. Solving Not-Substring Constraint with Flat Abstraction. In Programming Languages and Systems - 19th Asian Symposium, APLAS 2021, Chicago, IL, USA, October 17-18, 2021, Proceedings. 13008. Berlín: Springer International Publishing, 2021. p. 305-320. ISBN: 978-3-030-89051-3.
Detail
HAVLENA, V.; ŠMAHLÍKOVÁ, B.; LENGÁL, O.; LI, Y.; TURRINI, A. Modular Mix-and-Match Complementation of Büchi Automata (Technical Report). Ithaca: Cornell University Library, 2023. p. 1-37.
Detail
HAVLENA, V.; ŠMAHLÍKOVÁ, B.; LENGÁL, O.; LI, Y.; TURRINI, A. Modular Mix-and-Match Complementation of Büchi Automata. In Proceedings of TACAS'23. Lecture Notes in Computer Science. Paris: Springer Verlag, 2023. p. 249-270. ISSN: 0302-9743.
Detail
SÍČ, J.; GE-ERNST, A.; SCHOLL, C.; WIMMER, R. Solving dependency quantified Boolean formulas using quantifier localization. Theoretical Computer Science, 2022, vol. 2022, no. 925, p. 1-24. ISSN: 0304-3975.
Detail
Odpovědnost: Holík Lukáš, doc. Mgr., Ph.D.