Języki, automaty i obliczenia
Gramatyki deterministyczne i zupełne
Rzeszów 2012
Daną gramatykę regularną, niedeterministyczną i niezupełną przekształcić do postaci deterministycznej, a następnie do postaci zupełnej.
Dane:
Gramatyka G=<{S,K,L,M, 0, 1,2}, {0,1,2}, P, S > o następujących regułach produkcji:
S → 0K | 0L | 2S
K → 1M|1
L → 0M | 1L
M → 2K | 2M
Zamiana do postaci deterministycznej :
Krok pierwszy :
Dodaję nową regułę produkcji N → Λ i otrzymuję gramatykę postaci :
Gramatyka G’=<{ S,K,L,M,N, 0, 1,2}, {0, 1,2}, P’, S > o następujących regułach produkcji:
S → 0K | 0L | 2S
K → 1M|1N
L → 0M | 1L
M → 2K | 2M
N → Λ
Graf deterministyczny:
Gramatyka Deterministyczna :
Gramatyka G’’=<{S0, S1, S2, S3, S4, S5, S6,0, 1, 2}, {0, 1, 2}, P’’, S0 > o następujących regułach produkcji:
S0 → 0S1 |2S0
S1 → 0S2 | 1S3
S2 → 2S4
S3 →0S2| 1S5 |2S4| Λ
S4 → 1S6 | 2S4
S5 → 0S2 | 1S5
S6 → 2S4 | Λ
Graf zupełny:
Gramatyka deterministyczna zupełna:
Gramatyka G’’’=<{S0, S1, S2, S3, S4, S5, S6, P ,0, 1, 2}, {0, 1, 2}, P’’’, S0 > o następujących regułach produkcji:
S0 → 0S1|1P | 2S0
S1 → 0S2 | 1S3| 2P
S2 → 0P | 1P | 2S4
S3 → 0S2| 1S5 |2S4| Λ
S4 → 0P |1S6 | 2S4
S5 → 0S2 | 1S5| 2P
S6 → 0P |1P | 2S4 | Λ
P → 0P | 1P | 2P