Test GR2: Różnice pomiędzy wersjami
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 2: | Linia 2: | ||
wykorzystujący stabilizujący się ciąg relacji|algorytm minimalizacji automatu wykorzystujący stabilizujący się ciąg relacji| | wykorzystujący stabilizujący się ciąg relacji|algorytm minimalizacji automatu wykorzystujący stabilizujący się ciąg relacji| | ||
1 Wejście: <math>\displaystyle \mathcal{A}=(S, A, f, s_0, T)</math> | 1 Wejście: <math>\displaystyle \mathcal{A}=(S, A, f, s_0, T)</math> - automat taki, że <math>\displaystyle L=L(\mathcal{A})</math>. | ||
<math>\displaystyle L=L(\mathcal{A})</math>. | |||
2 Wyjście: automat minimalny <math>\displaystyle \mathcal{A}'=(S',A',f', s_0', | 2 Wyjście: automat minimalny <math>\displaystyle \mathcal{A}'=(S',A',f', s_0', | ||
T')</math> dla <math>\displaystyle \mathcal{A}</math>. | T')</math> dla <math>\displaystyle \mathcal{A}</math>. | ||
Linia 9: | Linia 8: | ||
4 <math>\displaystyle i \leftarrow 1</math>; | 4 <math>\displaystyle i \leftarrow 1</math>; | ||
5 '''repeat''' | 5 '''repeat''' | ||
6 | 6 <math>\displaystyle \slash \slash</math> oblicz <math>\displaystyle \overline{\rho}_i</math>: <math>\displaystyle s_1 | ||
\overline{\rho}_i s_2 \Leftrightarrow (s_1 \overline{\rho}_{i-1} | \overline{\rho}_i s_2 \Leftrightarrow (s_1 \overline{\rho}_{i-1} | ||
s_2) \wedge (\forall a \in A\ f(s_1, a) \overline{\rho}_{i-1} | s_2) \wedge (\forall a \in A\ f(s_1, a) \overline{\rho}_{i-1} | ||
f(s_2,a))</math>; | f(s_2,a))</math>; | ||
7 <math>\displaystyle i \leftarrow i+1</math>; | |||
7 | 8 '''empty'''<math>\displaystyle (\overline{\rho}_i)</math> | ||
8 | 9 '''for''' '''each''' <math>\displaystyle (s_1,s_2)\in S\times S</math> | ||
9 | 10 flag<math>\displaystyle \leftarrow</math>'''true'''; | ||
10 | 11 '''for''' '''each''' <math>\displaystyle a\in A</math> | ||
11 | 12 '''if''' '''not''' <math>\displaystyle f(s_1, a) \overline{\rho}_{i-1} f(s_2,a)</math> | ||
12 | 13 flag<math>\displaystyle \leftarrow</math>'''false'''; | ||
13 | 14 '''end''' '''if''' | ||
14 | 15 '''end''' '''for''' | ||
15 | 16 '''if''' flag<nowiki>=</nowiki>'''true''' '''and''' <math>\displaystyle s_1 \overline{\rho}_{i-1} s_2</math> '''then''' | ||
16 | 17 <math>\displaystyle \overline{\rho}_{i} \leftarrow \overline{\rho}_{i} \cup \{(s_1,s_2)\}</math>; | ||
17 | 18 '''end''' '''if''' | ||
18 | 19 '''end''' '''for''' | ||
19 | |||
20 '''until''' <math>\displaystyle \overline{\rho}_i = \overline{\rho}_{i-1}</math>} | 20 '''until''' <math>\displaystyle \overline{\rho}_i = \overline{\rho}_{i-1}</math>} | ||
21 <math>\displaystyle S' \leftarrow S \slash \overline{\rho}_i</math>; | 21 <math>\displaystyle S' \leftarrow S \slash \overline{\rho}_i</math>; | ||
22 '''for''' '''each''' <math>\displaystyle [s]_{\overline{\rho}_i} \in S \slash \overline{\rho}_i</math> '''do''' | 22 '''for''' '''each''' <math>\displaystyle [s]_{\overline{\rho}_i} \in S \slash \overline{\rho}_i</math> '''do''' | ||
23 | 23 '''for''' '''each''' <math>\displaystyle a \in A</math> '''do''' | ||
24 | 24 <math>\displaystyle f'([s]_{\overline{\rho}_i},a) \leftarrow | ||
[f(s,a)]_{\overline{\rho}_i}</math>; | [f(s,a)]_{\overline{\rho}_i}</math>; | ||
25 | 25 '''end''' '''for''' | ||
26 '''end''' '''for''' | 26 '''end''' '''for''' | ||
27 <math>\displaystyle s_0' \leftarrow [s_0]_{\overline{\rho}_i}</math>; | 27 <math>\displaystyle s_0' \leftarrow [s_0]_{\overline{\rho}_i}</math>; |
Wersja z 09:36, 24 sie 2006
Algorytm Minimalizuj2 - algorytm minimalizacji automatu wykorzystujący stabilizujący się ciąg relacji
1 Wejście: - automat taki, że . 2 Wyjście: automat minimalny dla . 3 ; 4 ; 5 repeat 6 Parser nie mógł rozpoznać (nieznana funkcja „\slash”): {\displaystyle \displaystyle \slash \slash} oblicz : ; 7 ; 8 empty 9 for each 10 flagtrue; 11 for each 12 if not 13 flagfalse; 14 end if 15 end for 16 if flag=true and then 17 ; 18 end if 19 end for 20 until } 21 Parser nie mógł rozpoznać (nieznana funkcja „\slash”): {\displaystyle \displaystyle S' \leftarrow S \slash \overline{\rho}_i} ; 22 for each Parser nie mógł rozpoznać (nieznana funkcja „\slash”): {\displaystyle \displaystyle [s]_{\overline{\rho}_i} \in S \slash \overline{\rho}_i} do 23 for each do 24 ; 25 end for 26 end for 27 ; 28 ; 29 return ;
|| || | |
|| || || | |
|| || || | |
|| || || | |
|| || || | |
|| || || | |
|| || || | |
|| || || | |
|| || || | |
... || ... || ... || ... | |
alalalalaa
alala
Złożoność czasowa | Złożoność pamięciowa | |
---|---|---|
Maszyna dodająca | ||
Maszyna rozpoznająca |
0 | 1 | ... | ... | |
---|---|---|---|---|
Cell1 | Cell2 |
0 | 1 | ||
---|---|---|---|
0 | 1 | 1 | |
1 | 0 | 1 |
0 | 1 | |
1 | 0 |
0 | 1 | ||
---|---|---|---|
0 | 0 | 0 | |
1 | 0 | 1 |
0 | 1 | ||
---|---|---|---|
0 | 0 | 1 | |
1 | 1 | 1 |
Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{p}} | Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{q}} | Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{p} \wedge \textnormal{q}} | ||||
---|---|---|---|---|---|---|
0 | 0 | 0 | 1 | 1 | 1 | 1 |
0 | 1 | 0 | 1 | 1 | 0 | 1 |
1 | 0 | 0 | 1 | 0 | 1 | 1 |
1 | 1 | 1 | 0 | 0 | 0 | 0 |
Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{p}} | Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{q}} | Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{r}} | Parser nie mógł rozpoznać (błąd składni): {\displaystyle (\textnormal{p} \wedge \textnormal{q})} | ||||
---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 |
0 | 1 | 0 | 0 | 0 | 1 | 1 | 1 |
0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
1 | 0 | 1 | 0 | 1 | 0 | 1 | 1 |
1 | 1 | 0 | 1 | 0 | 1 | 1 | 1 |
1 | 1 | 1 | 1 | 1 | 0 | 1 | 1 |
Numer funkcji |
||||||
---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0 | ||
1 | 0 | 0 | 0 | 1 | ||
2 | 0 | 0 | 1 | 0 | ||
3 | 0 | 0 | 1 | 1 | Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{p}} | |
4 | 0 | 1 | 0 | 0 | ||
5 | 0 | 1 | 0 | 1 | Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{q}} | |
6 | 0 | 1 | 1 | 0 | ||
7 | 0 | 1 | 1 | 1 | ||
8 | 1 | 0 | 0 | 0 | ||
9 | 1 | 0 | 0 | 1 | ||
10 | 1 | 0 | 1 | 0 | ||
11 | 1 | 0 | 1 | 1 | ||
12 | 1 | 1 | 0 | 0 | ||
13 | 1 | 1 | 0 | 1 | ||
14 | 1 | 1 | 1 | 0 | ||
15 | 1 | 1 | 1 | 1 |
Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{p}} | Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{q}} | Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{r}} | ||||
---|---|---|---|---|---|---|
0 | 0 | 0 | 1 | 0 | 1 | 0 |
0 | 0 | 1 | 1 | 1 | 0 | 1 |
0 | 1 | 0 | 0 | 1 | 0 | 1 |
0 | 1 | 1 | 0 | 0 | 1 | 0 |
1 | 0 | 0 | 0 | 1 | 1 | 1 |
1 | 0 | 1 | 0 | 0 | 0 | 0 |
1 | 1 | 0 | 1 | 0 | 0 | 0 |
1 | 1 | 1 | 1 | 1 | 1 | 1 |
Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{p}} | Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{q}} | Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{r}} | |
---|---|---|---|
0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 |
0 | 1 | 0 | 1 |
0 | 1 | 1 | 0 |
1 | 0 | 0 | 1 |
1 | 0 | 1 | 0 |
1 | 1 | 0 | 0 |
1 | 1 | 1 | 1 |
Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{p}} | Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{q}} | Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{r}} | |
---|---|---|---|
0 | 0 | 0 | 1 |
0 | 0 | 1 | 1 |
0 | 1 | 0 | 1 |
0 | 1 | 1 | 1 |
1 | 0 | 0 | 1 |
1 | 0 | 1 | 1 |
1 | 1 | 0 | 0 |
1 | 1 | 1 | 1 |
0 | 1 | 2 | ||
---|---|---|---|---|
0 | 2 | 2 | 2 | |
1 | 0 | 2 | 2 | |
2 | 0 | 1 | 2 |
Nagroda Goedla
Zobacz Nagroda Goedla]]
Nagroda Turinga
Zobacz Nagroda Turinga
Nagroda Knutha
Zobacz Nagroda Knutha
Parser nie mógł rozpoznać (nieznana funkcja „\aligned”): {\displaystyle \displaystyle g(C)=\left\{\aligned C\cup \{f(C')\}\\C\endaligned \right}
Parser nie mógł rozpoznać (nieznana funkcja „\aligned”): {\displaystyle \displaystyle c\forall d\; c\in C \land d\in C \land c\sqsubseteq d\implies c\sqsubseteq' d, (C,\sqsubseteq) \preccurlyeq (C',\sqsubseteq') \iff C\subset C' \land \left\{\aligned \forall c \forall d\; &(c\in C\land d\in C) \implies (c\sqsubseteq d \iff c\sqsubseteq' d) \textrm{ oraz }\\ \forall c \forall d\; &(c\in C\land d\in C'\setminus C) \implies c\sqsubseteq' d \endaligned \right}
dla każdego Parser nie mógł rozpoznać (błąd składni): {\displaystyle a \in A \\h(n', a) = g(h(n, a), n, a)}
dla każdego i
dla każdego Parser nie mógł rozpoznać (błąd składni): {\displaystyle a \in A \\ e(g(n, a), n, a)}
dla każdego i