Applications of Finite State Machines (Алексей Чеусов, LVEE-2019) — различия между версиями
Материал из 0x1.tv
StasFomin (обсуждение | вклад) |
StasFomin (обсуждение | вклад) (Batch edit: replace PCRE (\n\n)+(\n) with \2) |
||
(не показано 18 промежуточных версий этого же участника) | |||
;{{SpeakerInfo}}: {{Speaker|Алексей Чеусов}} <blockquote> In this presentation we define the finite state automata (FSA), Moore and Mealy machines, and Finite State Transducers. We\-ightedWeighted and stochastic finite state machines are described. Also, a few well-known and custom algorithms based on finite state machines, are described. </blockquote> {{VideoSection}} {{vimeoembed|366010077|800|450}} <!-- {{youtubelink|}} --> |Yuxqg35Zjhg}} {{SlidesSection}} [[File:Applications of Finite State Machines (Алексей Чеусов, LVEE-2019).pdf|left|page=-|300px]] {{----}} == Thesis == формализмы, то есть, для любого КА существует эквивалентный ему регулярный язык и наоборот. \item Конечные автоматы замкнуты относительно операций объединения, вычитания, пересечения, дополнения и звезды Клини. \end{itemize} </latex> ----- <latex> \textbf{Алгоритм} построения ДКА из НКА представлен ниже. \begin{algorithm}[h!] \DontPrintSemicolon \SetKwInOut{Input}{input} \SetKwInOut{Output}{output} \Input{NFA = $<I,S,Q,F,\delta>$} \Output{DFA = $<I,S^{\prime},q^\prime,F^{\prime},\delta^{\prime}>$} \SetAlgoLined % \SetAlgoNoEnd $\delta^\prime := \emptyset, q^\prime := \{s | s \in Q\}, S^\prime := \{q^\prime\}$\; $seen := \{q^\prime\}, queue := [q^\prime]$\; \While{$queue \neq \emptyset$}{ $src\_states \leftarrow queue$\; \For{$i \in I$}{ $trg\_states := \{s^{trg} | (s^{src},i,s^{trg}) \in \delta, s^{src} \in src\_states\}$\; \If{$trg\_states \neq \emptyset$}{ $\delta^\prime \leftarrow (src\_states, i, trg\_states)$\; $S^\prime \leftarrow trg\_states$\; \If{$trg\_states \notin seen$}{ $queue \leftarrow trg\_states$\; $seen \leftarrow trg\_states$\; } } } } $F^\prime := \{state\_set \in S^\prime | \exists s \in state\_set, s \in F\}$ \caption{nfa2dfa algorithm AKA <<Subset construction>>} \end{algorithm} </latex> ---- <latex> Введем два дополнительных оператора: \begin{itemize} \item R -- оператор инвертирования. $L(R(KA)) = \{inverse(w) | w \in L(KA)\}$ \item D -- оператор построения ДКА по НКА. \end{itemize} \textbf{Алгоритм} Бжозовского построения минимального ДКА по \linebreak НКА:\\ $MinDFA = (D \circ R \circ D \circ R) KA$ \textbf{Замечание:} В отличие от большинства других алгоритмов построения минимального ДКА, алгоритм Бжозовского строит минимальный ДКА по НКА! Алгоритм проверки, входит ли строка в язык ДКА. </latex> <latex> \begin{algorithm}[h!] \DontPrintSemicolon \SetKwInOut{Input}{input} \SetKwInOut{Output}{output} \Input{DFA = $<I,S,q,F,\delta>, Text=[t_1, t_2 \dots t_n], t_i \in I$} \Output{$true$ \textbf{or} $false$} \SetAlgoLined % \SetAlgoNoEnd $state := q$\; \For{$i$ from $1$ to $n$}{ воспользоваться информацией о том, из каких состояний исходного НКА <<сформировано>> состояние ДКА. Эта информация используется для формирования символа выходного алфавита, соответствующего <<конечному>> состоянию, которое соответствует любому набору исходных регулярных выражений. Потенциально выходной алфавит может содержать $2^n$ элементов, где $n$ -- количество исходных регулярных выражений. \end{itemize} </latex> {{----}} [[File:{{#setmainimage:Applications of Finite State Machines (Алексей Чеусов, LVEE-2019)!.jpg}}|center|640px]] {{LinksSection}} * Прежде всего хочется сказать, что данная статья является дополнением к презентации, доступной по ссылке ~ http://www.mova.org/~cheusov/pub/lvee/2019/fsa_presentation.pdf * [ Talks page] <!-- <blockquote>[©]</blockquote> --> {{fblink|2427332600853080}} {{vklink|1456}} <references/> {{stats|disqus_comments=1|refresh_time=2021-08-31T16:13:00.591899|vimeo_plays=11|youtube_comments=0|youtube_plays=61}} [[Категория:LVEE-2019]] [[Категория:Draft]]Finite State Machines]] |
Текущая версия на 12:18, 4 сентября 2021
- Докладчик
- Алексей Чеусов
In this presentation we define the finite state automata (FSA), Moore and Mealy machines, and Finite State Transducers. Weighted and stochastic finite state machines are described. Also, a few well-known and custom algorithms based on finite state machines, are described.
Содержание
Видео
Презентация
Thesis
Примечания и ссылки
- Прежде всего хочется сказать, что данная статья является дополнением к презентации, доступной по ссылке ~
http://www.mova.org/~cheusov/pub/lvee/2019/fsa_presentation.pdf
- [ Talks page]
- Discuss on Facebook
- Discuss on VK
Plays:72
Comments:1