You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: tex/RPQ.tex
+13-11Lines changed: 13 additions & 11 deletions
Original file line number
Diff line number
Diff line change
@@ -12,10 +12,10 @@ \section{Достижимость с несколькими источникам
12
12
13
13
Достижимость от нескольких стартовых вершин через обход в ширину, основанный на линейной алгебре~\cite{9286186}.
14
14
15
-
В классической версии обхода в ширину, основанного на линейной алгебре, используется вектор, куда записывается фронт обхода графа. Так, один раз перемножая этот вектор на матрицу смежности графа, можно совершать один шаг в обходе графа. Покажем на примере, как данный метод может быть использован, когда мы накладываем формальные ограничения на путь в графе.
15
+
В классической версии обхода в ширину, основанного на линейной алгебре, используется вектор, куда записывается фронт обхода графа. Так, один раз перемножая этот вектор на матрицу смежности графа, можно совершать один шаг в обходе графа. Покажем на примере, как данный метод может быть использован, когда мы накладываем дополнительные ограничения в виде регулярного языка на путь в графе.
@@ -42,7 +42,7 @@ \section{Достижимость с несколькими источникам
42
42
\end{pmatrix}
43
43
\]
44
44
45
-
Или, если представить её в булевом виде.
45
+
Её булева декомпозиция выглядит следующим образом.
46
46
\begin{alignat*}{7}
47
47
& &&G_{0\_A} &&= \begin{pmatrix}
48
48
0 & 1 & 0 & 0 \\
@@ -57,7 +57,7 @@ \section{Достижимость с несколькими источникам
57
57
\end{pmatrix}
58
58
\end{alignat*}
59
59
60
-
Зададим формальные ограничения с помощью регулярного выражения $ba$, которое представляется автоматом из трех последовательных состояний.
60
+
Зададим ограничения с помощью регулярного выражения $ba$, которое представляется автоматом из трех последовательных состояний.
61
61
62
62
\begin{center}
63
63
\begin{tikzpicture}[shorten >=1pt,on grid,auto]
@@ -71,20 +71,22 @@ \section{Достижимость с несколькими источникам
71
71
\end{center}
72
72
73
73
74
-
Нам хочется совершать обход по графу и автомату одновременно, поэтому также представим автомат в булевом виде.
74
+
Автомат может быть задан матрицей смежности (с дополнительно информацией о стартовых и финальных состояниях). Нам будет необходима булева декомпозиция этой матрицы и она выглядит следующим образом.
Для синхронизации обхода составим блочно---диагональную матрицу как прямую сумму матриц $R_{0\_A}$, $G_{0\_A}$ и $R_{0\_B}$, $G_{0\_B}$ соответственно.
88
+
Для синхронизации обхода составим набор блочно--диагональных матриц, каждая из которых --- это прямая сумма двух матриц: $D_{0\_A} = R_{0\_A} \oplus G_{0\_A}$ и $D_{0\_A} = R_{0\_B} \oplus G_{0\_B}$.
89
+
88
90
\begin{alignat*}{7}
89
91
& &&D_{0\_A} &&= \begin{pmatrix}
90
92
0 & 0 & 0 & 0 & 0 & 0 & 0 \\
@@ -165,8 +167,8 @@ \section{Достижимость с несколькими источникам
0 commit comments