Využití opakujících se podstruktur pro efektivní reprezentaci automatů

Loading...
Thumbnail Image

Date

Authors

Šedý, Michal

Mark

A

Journal Title

Journal ISSN

Volume Title

Publisher

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

ORCID

Abstract

Nedeterministické konečné automaty (NKA) jsou široce využívány napříč mnoha odvětvími počítačové vědy, například pro reprezentaci regulárních výrazů, při monitorování vysoko rychlostních sítí, v abstraktním regulárním model checkingu, k verifikaci programů, k rozhodování procedur logik WS1S a WS2S, lineární aritmetiky celých čísel, temporálních logik, nebo dokonce v bioinformatice při vyhledávání sekvencí nukleotidů v DNA. Automaty s velkým množstvím stavů mohou v řadě algoritmů vést k exponenciálnímu nárůstu stavového prostoru. Tento problém lze zmírnit použitím minimalizačních technik slučování stavů a prořezávání hran přechodů. Tyto metody však mohou i přes svou značnou efektivitu zanechat ve výsledných automatech duplicitní podstruktury s ekvivalentními přechody. Existují dokonce typy automatů, které nelze těmito standardními technikami minimalizovat vůbec. Tato práce představuje nový přístup k minimalizaci automatů založený na transformaci NKA na nedeterministický zásobníkový automat (NZA). Tato transformace identifikuje skupinu podobných podstruktur a nahradí ji jednou společnou strukturou (procedurou). Tímto způsobem jsme byli schopni zredukovat automaty až o dalších 67.3%. Myšlenka transformace NKA na NZA lze přirovnat k transformaci sekvenčního programu na program, který využívá funkce a zásobníkem volání.
Nondeterministic finite automata (NFAs) are widely used across almost every field of computer science, such as for the representation of regular expressions, monitoring high-speed networks, in abstract regular model checking, program verification, in decision procedures of WS1S and WS2S logics, linear integer arithmetic, temporal logics, or even in bioinformatics for searching sequences of nucleotides in DNA. Automata with a large number of states can lead to an exponential increase in the state space in many algorithms. To address this issue, minimization techniques, such as state merging and transition pruning, are used. Despite the strong minimization potential of these methods, the resulting automata can still contain duplicate substructures with equivalent transition sequences. There are even types of automata that cannot be minimized by these standard methods at all. This work presents a novel automata minimization approach based on a transformation of an NFA into a nondeterministic pushdown automaton (NPDA). The transformation identifies multiple similar substructures and replaces them with one common structure (called a procedure). By doing so, we were able to further reduce automata by up to 67.3%. The principle of transforming NFA into NPDA can be understood as a transformation of a purely sequential program into a program with functions and a call stack.

Description

Citation

ŠEDÝ, M. Využití opakujících se podstruktur pro efektivní reprezentaci automatů [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2024.

Document type

Document version

Date of access to the full text

Language of document

en

Study field

Matematické metody

Comittee

prof. Ing. Tomáš Vojnar, Ph.D. (předseda) Ing. Martin Hrubý, Ph.D. (člen) Ing. Aleš Smrčka, Ph.D. (člen) Dr. Ing. Petr Peringer (člen) Ing. Radek Hranický, Ph.D. (člen) Ing. Ondřej Lengál, Ph.D. (člen)

Date of acceptance

2024-06-20

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