Redukční automaty a syntaktické chyby
Reducing Automata and Syntactic Errors
rigorous thesis (RECOGNIZED)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/58317Identifiers
Study Information System: 130736
Collections
- Kvalifikační práce [11242]
Author
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Theoretical computer science
Department
Department of Theoretical Computer Science and Mathematical Logic
Date of defense
11. 2. 2013
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
Czech
Grade
Recognized
Keywords (Czech)
redukční automaty, robustní redukční analýza, lokalizace syntaktických chybKeywords (English)
reducing automata, robust analysis by reduction, localization of syntactic errorsTato práce se zabývá redukčními automaty, jejich normalizacemi a využitím pro (robustní) redukční analýzu a lokalizaci syntaktických chyb pro jazyky ze třídy DCFL. Redukční automat navazuje na restartovací automat, od kterého se odlišuje explicitním určením redukovaných symbolů (to umožňuje přesné určení místa chyby) a přesunem výhledového okna do stavu řídící jednotky (ten ho přibližuje zařízením studovaným klasickou teorií automatů a formálních jazyků). Pro redukční automat pak lze snadněji než pro automat restartovací přebírat pojmy a postupy klasické teorie, jako je např. prefixová korektnost nebo minimalizace množiny stavů. Pro libovolný neprázdný jazyk ze třídy DCFL zadaný monotónním redukčním automatem, navíc ještě prefixově korektním a stavově minimálním, navrhujeme metodu robustní redukční analýzy, která zaručuje lokalizaci formálně definovaných typů skutečných (nezavlečených) chyb, bezchybných podslov a míst redukčních konfliktů (podslov s nejednoznačnou syntaktickou strukturou redukovatelných v různých slovech různými způsoby). Navrhovanou metodu implementujeme novým typem zařízení (postprefixovým robustním analyzátorem) a stručně ukazujeme, jak jí implementovat deterministickým zásobníkovým převodníkem pracujícím v lineárním čase vzhledem k délce slova.
This thesis deals with reducing automata, their normalization, and their application for a (robust) reduction analysis and localization of syntactic errors for deterministic context-free languages (DCFL). A reducing automaton is similar to a restarting automaton with two subtle differences: an explicit marking of reduced symbols (which makes it possible to determine a position of an error accurately), and moving a lookahead window inside a control unit (which brings reducing automata closer to devices of classical automata and formal language theory). In case of reducing automata, it is easier to adopt and reuse notions and approaches developed within classical theory, e.g., prefix correctness or automata minimization. For any nonempty deterministic context-free language specified by a monotone reducing automaton, both prefix correct and minimal, we propose a method of robust analysis by reduction which ensures localization of formally defined types of (real) errors, correct subwords, and subwords causing reduction conflicts (i.e., subwords with ambiguous syntactic structure that can be reduced in different words in different ways). We implement the proposed method by a new type of device (called postprefix robust analyzer) and we briefly show how to implement this method by a deterministic pushdown...