Test GR: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Rogoda (dyskusja | edycje)
Nie podano opisu zmian
Rogoda (dyskusja | edycje)
Nie podano opisu zmian
Linia 7: Linia 7:
------------------------------
------------------------------


{theor}{TWIERDZENIE}[section]
{rem}{UWAGA}[section]
{corol}{WNIOSEK}[section]
{fact}{FAKT}[section]
{ex}{PRZYKŁAD}[section]
{cw}{PYTANIE}[section]
{defin}{DEFINICJA}[section]
{lem}{LEMAT}[section]


{prf}{DOWÓD}
{sol}{ROZWIĄZANIE}
{hint}{WSKAZÓWKA}
{Języki i gramatyki bezkontekstowe - Test}
{Test wielokrotnego wyboru}
{{cwiczenie|Języki bezkontekstowe nie będące regularnymi||
<br>
Wskaż języki bezkontekstowe, które nie są regularne:
; a.
:  <math>\displaystyle L_1=\{a^kb^l: k, l \in \mathds{N}\}</math>
; b.
:  <math>\displaystyle L_2=\{a^kb^k: k \in \mathds{N}\}</math>
; c.
:  <math>\displaystyle L_3=\{a^kcb^l: k, l \in \mathds{N}\}</math>
; d.
:  <math>\displaystyle L_4=\{a^kcb^k: k \in \mathds{N}\}</math>
; e.
:  <math>\displaystyle L_5=\{w \in \{a,b\}^*: w = \overleftarrow{w}\}</math>
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
b,d,e
</div></div>
{{cwiczenie|Języki Dycka i Łukasiewicza||
<br>
Wskaż zdania prawdziwe:
; a.
:  Istnieje gramatyka reularna generująca język Dycka.
; b.
:  Język Dycka jest bezkontekstowy i nie jest regularny.
; c.
:  Istnieje automat skończenie stanowy rozpoznający język
Łukasiewicza.
; d.
:  Język Łukasiewicza da się opisać wyrażeniem regularnym.
; e.
:  Istnieje gramatyka bezkontekstowa bez symboli
bezużytecznych generująca język Dycka.
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
b, e
</div></div>
{{cwiczenie|Lemat o pompowaniu||
<br>
Wskaż języki, które nie są bezkontekstowe:
; a.
:  <math>\displaystyle L_1=\{a^kb^l: k, l \in \mathds{N}\}</math>
; b.
:  <math>\displaystyle L_2=\{a^kb^nc^m: k < n < m\}</math>
; c.
:  <math>\displaystyle L_3=\{a^nb^n: n \in \mathds{N}\}</math>
; d.
:  <math>\displaystyle L_4=\{ca^nb^n: n \in \mathds{N}\}</math>
; e.
:  <math>\displaystyle L_5=\{w\overleftarrow{w}a^{|w|}: w \in \{a,b\}^*\}</math>
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
b
</div></div>
{{cwiczenie|Przynależnośc słowa do języka bezkontekstowego||
<br>
Dana niech będzie gramatyka (<math>\displaystyle v_0</math> jest symbolem początkowym):
<center><math>\displaystyle \aligned v_0 &\rightarrow  v_0v_1\ |\ v_3v_1 \\
v_1 &\rightarrow  v_1v_2\ |\ v_2v_3 \\
v_2 &\rightarrow  v_4v_1\ |\ v_3v_3\ |\ a \\
v_3 &\rightarrow  v_1v_2\ |\ v_4v_2\ |\ b \\
v_4 &\rightarrow  v_3v_4\ |\ v_0v_1\ |\ c.
\endaligned</math></center>
Wskaż, które z poniższych słów należą do języka generowanego tą
gramatyką:
; a.
:  <math>\displaystyle cab^2abab</math>
; b.
:  <math>\displaystyle 1</math>
; c.
:  <math>\displaystyle b^7</math>
; d.
:  <math>\displaystyle bca</math>
; e.
:  <math>\displaystyle bcabb</math>
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
a, c, e
</div></div>
{{cwiczenie|Gramatyki niejednoznaczne||
<br>
Wskaż gramatyki <math>\displaystyle G=(V, A, v_0, P)</math> niejednoznaczne:
; a.
:  <math>\displaystyle V=\{v_0,v_1,v_2,v_3\}</math>, <math>\displaystyle A=\{a,b\}</math>, <math>\displaystyle P=\{v_0 \rightarrow
v_2v_1\ |\ v_3</math>, <math>\displaystyle v_1 \rightarrow av_1\ |\ a</math>, <math>\displaystyle v_2 \rightarrow
v_2b\ |\ b</math>, <math>\displaystyle v_3 \rightarrow bv_3a\ |\ ba\}</math>
; b.
:  <math>\displaystyle V=\{v_0, v_1, v_2, v_3 \}</math>, <math>\displaystyle A=\{a,b\}</math>, <math>\displaystyle P=\{v_0 \rightarrow
v_3v_1</math>, <math>\displaystyle v_1 \rightarrow av_1b\ |\ b</math>, <math>\displaystyle v_2 \rightarrow bv_2a\ |\
b</math>, <math>\displaystyle v_3 \rightarrow bv_2c\}</math>
; c.
:  <math>\displaystyle V=\{v_0, v_1\}, A=\{a,b\}</math>, <math>\displaystyle P=\{v_0 \rightarrow v_0v_1\
|\ b</math>, <math>\displaystyle v_1 \rightarrow av_1b\ |\ b\}</math>
; d.
:  <math>\displaystyle V=\{v_0, ..., v_5\}</math>, <math>\displaystyle A=\{a\}</math>, <math>\displaystyle P=\{v_0 \rightarrow
av_1\ |\ av_3</math>, <math>\displaystyle v_1 \rightarrow av_2</math>, <math>\displaystyle v_2 \rightarrow av_1\ |\
1</math>, <math>\displaystyle v_3 \rightarrow av_4</math>, <math>\displaystyle v_4 \rightarrow av_5</math>, <math>\displaystyle v_5 \rightarrow
av_3\ |\ 1\}</math>
; e.
:  <math>\displaystyle V=\{v_0,v_1,v_2,v_3\}</math>, <math>\displaystyle A=\{a,b\}</math>, <math>\displaystyle P=\{v_0 \rightarrow
v_2v_1</math>, <math>\displaystyle v_1 \rightarrow av_1\ |\ a</math>, <math>\displaystyle v_2 \rightarrow v_2b\ |\
b\ |\ v_3</math>, <math>\displaystyle v_3 \rightarrow bv_3a\ |\ ba\ |\ b \}</math>
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
a, d, e
</div></div>
{{cwiczenie|Gramatyka bezkontekstowa||
<br>
Gramatyka <math>\displaystyle G=(V_N, V_T, v_0, P)</math>, gdzie <math>\displaystyle V_N=\{v_0,..., v_5\}</math>,
<math>\displaystyle V_T=\{a,b\}</math>, <math>\displaystyle P=\{v_0 \rightarrow av_1\ |\ av_3</math>, <math>\displaystyle v_1
\rightarrow av_2</math>, <math>\displaystyle v_2 \rightarrow av_1\ |\ 1</math>, <math>\displaystyle v_3 \rightarrow
av_4</math>, <math>\displaystyle v_4 \rightarrow av_5</math>, <math>\displaystyle v_5 \rightarrow av_3\ |\ 1\}</math>:
; a.
:  generuje język <math>\displaystyle (aa)^+(aaa)^+</math>
; b.
:  generuje język <math>\displaystyle (aa+aaa)^*</math>
; c.
:  jest równoważna gramatyce <math>\displaystyle G'=(V_N', V_T, v_0, P')</math>, gdzie
<math>\displaystyle V_N'=\{v_0, ..., v_6\}</math>, <math>\displaystyle P'=\{v_0 \rightarrow av_1</math>, <math>\displaystyle v_1
\rightarrow av_2</math>, <math>\displaystyle v_2 \rightarrow av_3\ |\ 1</math>, <math>\displaystyle v_3 \rightarrow
av_4\ |\ 1</math>, <math>\displaystyle v_4 \rightarrow av_5\ |\ 1</math>, <math>\displaystyle v_5 \rightarrow av_6</math>,
<math>\displaystyle v_6 \rightarrow av_1\ |\ 1</math>
; d.
:  jest jednoznaczna
; e.
:  generuje język <math>\displaystyle L(\mathcal{A})</math>, gdzie <math>\displaystyle \mathcal{A}=(S, A,
s_0, f, F)</math> jest automatem skończenie stanowym takim, że <math>\displaystyle S=\{s_0,
..., s_4\}</math>, <math>\displaystyle A=\{a\}</math>, <math>\displaystyle F=\{s_2, s_3, s_4\}</math>,
<math>\displaystyle f(s_0,a)=f(s_4,a)=s_1</math>, <math>\displaystyle f(s_1, a)=s_2</math>, <math>\displaystyle f(s_2, a)=s_3</math>, <math>\displaystyle f(s_3,
a)=s_4</math>.
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
a, c
</div></div>
{{cwiczenie|Jednoznaczność języków||
<br>
Wskaż zdania prawdziwe:
; a.
:  każda gramatyka regularna jest jednoznaczna
; b.
:  każdy język jednoznaczny jest deterministyczny
; c.
:  każdy język regularny jest jednoznaczny
; d.
:  każdy język deterministyczny jest jednoznaczny
; e.
:  język jest jednoznaczny wtw gdy jest deterministyczny
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
c, d
</div></div>
{{cwiczenie|Postać normalna Greibach i Chomsky'ego||
<br>
Wskaż zdania prawdziwe:
; a.
:  Każda gramatyka w postaci normalnej Chomsky'ego jest
bezkontekstowa.
; b.
:  Jeśli gramatyka bezkontekstowa <math>\displaystyle G</math> ma <math>\displaystyle n</math> produkcji, to
równoważna jej gramatyka <math>\displaystyle G'</math> w postaci normalnej Greibach ma co
najwyżej <math>\displaystyle 2n</math> produkcji.
; c.
:  Każdą gramatykę bezkontekstową można przekształcić do postaci normalnej
Greibach.
; d.
:  Żadna gramatyka w postaci normalnej Greibach nie jest
regularna.
; e.
:  Każda gramatyka w postaci normalnej Chomsky'ego jest
właściwa.
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
a,e
</div></div>
{{cwiczenie|Automat ze stosem||
<br>
Wskaż zdania prawdziwe:
; a.
:  Każdy automat ze stosem akceptujący przez pusty stos
posiada równoważny automat ze stosem akceptujący przez stany
końcowe.
; b.
:  Każdy język bezkontekstowy jest akceptowany przez pusty
stos przez jednostanowy automat ze stosem.
; c.
:  Każdy automat ze stosem, w którym wielkość stosu jest
ograniczona przez pewną stałą, jest równoważny pewnemu automatowi
skończenie stanowemu.
; d.
:  Każdy automat ze stosem posiada równoważny
deterministyczny automat ze stosem.
; e.
:  Każdy automat ze stosem akceptujący przez stany końcowe
posiada równoważny automat ze stosem akceptujący przez pusty stos.
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
a,b,c,e
</div></div>
{{cwiczenie|Zamkniętość rodziny języków bezkontekstowych||
<br>
Rodzina języków bezkontekstowych jest zamknięta ze względu na:
; a.
:  homomorfizm
; b.
:  iloczyn mnogościowy
; c.
:  uzupełnienie
; d.
:  gwiazdkę Kleene'ego
; e.
:  katenację
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
a,d,e
</div></div>
{{cwiczenie|Języki generowane gramatykami bezkontekstowymi||
<br>
Dane są dwie gramatyki: dla <math>\displaystyle i=1,2\displaystyle G_i=(\{v_0,v_1,v_2\},\{a,b,c\},v_0,P_i)</math>, gdzie <center><math>\displaystyle P_1=\{v_0
\rightarrow v_1v_2,\ v_1 \rightarrow av_1b,\ v_1 \rightarrow 1,\ v_2
\rightarrow cv_2,\ v_2 \rightarrow 1\},</math></center>
<center><math>\displaystyle P_2 = \{v_0 \rightarrow
v_1v_2,\ v_1 \rightarrow av_1,\ v_1 \rightarrow 1,\ v_2 \rightarrow
bv_2c,\ v_2 \rightarrow 1\}.</math></center>
Wówczas:
; a.
:  <math>\displaystyle L(G_1) \cap L(G_2) \not \in \mathcal{L}_2</math>
; b.
:  <math>\displaystyle L(G_1) \cap L(G_2)</math> jest językiem skończonym
; c.
:  <math>\displaystyle L(G_1)=L(G_2)</math>
; d.
:  <math>\displaystyle L(G_1) \subset L(G_2)</math>
; e.
:  <math>\displaystyle L(G_1) \cup L(G_2)\in \mathcal{L}_2</math>
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
a,e
</div></div>
{{cwiczenie|Problemy rozstrzygalne dla języków bezkontekstowych||
<br>
Niech <math>\displaystyle L</math> będzie językiem bezkontekstowym. Wskaż problemy rozstrzygalne:
; a.
:  <math>\displaystyle w \in L</math>
; b.
:  <math>\displaystyle L = \emptyset</math>
; c.
:  nieskończoność <math>\displaystyle L</math>
; d.
:  równoważność dwóch gramatyk bezkontekstowych
; e.
:  jednoznaczność gramatyki bezkontekstowej
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
a,b,c
</div></div>
{{cwiczenie|Klasy języków||
<br>
Niech <math>\displaystyle L \in \mathcal{L}_2</math>, <math>\displaystyle R \in \mathcal{L}_3</math>. Wówczas:
; a.
:  <math>\displaystyle L \cap R \in \mathcal{L}_2</math>
; b.
:  <math>\displaystyle L \backslash R \in \mathcal{L}_2</math>
; c.
:  <math>\displaystyle \overline{L} \in \mathcal{L}_2</math>
; d.
:  <math>\displaystyle L \cap \overline{R} \in \mathcal{L}_2</math>
; e.
:  <math>\displaystyle \overline{L} \cap R \in \mathcal{L}_2</math>
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
a,b,d
</div></div>
{{cwiczenie|Języki deterministyczne||
<br>
Wskaż języki deterministyczne:
; a.
:  <math>\displaystyle \{a^nb^n:\ n \geq 1\} \cup \{a^nb^{3n}:\ n \geq 1\}</math>
; b.
:  <math>\displaystyle \{a^{2n}:\ n \geq 1\} \cup \{a^{3n}:\ n \geq 1\}</math>
; c.
:  <math>\displaystyle \{a^nb^{n+m}c^m:\ m,n \geq 1\}</math>
; d.
:  <math>\displaystyle \{wx\overleftarrow{w}:\ w \in \{a,b\}^*,\ x \in \{a,b\}
\}</math>
; e.
:  <math>\displaystyle \{a^nb^na^mb^p:\ n,m,p \geq 1\} \cup \{a^nb^ma^pb^p:\
n,m,p \geq 1\}</math>
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
b,c,e
</div></div>
{{cwiczenie|Języki niejednoznaczne||
<br>
Wskaż języki niejednoznaczne:
; a.
:  <math>\displaystyle \{a^nb^nc^md^m:\ n,m \geq 1\} \cup \{a^nb^mc^md^n:\ n,m
\geq 1\}</math>
; b.
:  <math>\displaystyle \{a^nb^mc^nd^p:\ n,m,p \geq 1\} \cup \{a^nb^mc^pd^m:\
n,m,p \geq 1\}</math>
; c.
:  <math>\displaystyle \{a^nb^na^mb^p:\ n,m,p \geq 1\} \cup \{a^nb^ma^pb^p:\
n,m,p \geq 1\}</math>
; d.
:  <math>\displaystyle \{a^nb^mc^m:\ n,m \geq 1\} \cup \{a^nb^nc^m:\ n,m \geq
1\}</math>
; e.
:  <math>\displaystyle \{a^nb^mc^md^p:\ n,m,p \geq 1\} \cup \{a^nb^mc^pd^n:\
n,m,p \geq 1\}</math>
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
a,b,d
</div></div>
{{cwiczenie|Automat ze stosem -- rozpoznawanie języka||
<br>
Automat ze stosem <math>\displaystyle \mathcal{A}_S = (A_S, Q, \{a,b,c\}, z_0, q_0, P,
Q_F)</math>, gdzie <math>\displaystyle A_S=\{z_0,z,a,c\}</math>, <math>\displaystyle Q=\{q_0,q_1,q_2,q_3\}</math>,
<math>\displaystyle Q_F=\{q_2\}</math>, <math>\displaystyle P = \{z_0q_0a \rightarrow z_0zq_0</math>, <math>\displaystyle zq_0a
\rightarrow zaq_0</math>, <math>\displaystyle aq_0a \rightarrow a^2q_0</math>, <math>\displaystyle aq_0b \rightarrow
a^2q_1</math>, <math>\displaystyle zq_0b \rightarrow zaq_1</math>, <math>\displaystyle aq_1b \rightarrow a^2q_1</math>,
<math>\displaystyle aq_1c \rightarrow 1q_2</math>, <math>\displaystyle aq_2c \rightarrow 1q_2</math>, <math>\displaystyle zq_2c
\rightarrow cq_3</math>, <math>\displaystyle cq_2c \rightarrow cq_2</math>, <math>\displaystyle cq_3c \rightarrow
cq_2\}</math>:
; a.
:  rozpoznaje język <math>\displaystyle \{a^nb^mc^k:\ k,n,m > 0,\ k \not = n+m\}</math>
; b.
:  rozpoznaje język <math>\displaystyle \{a^nb^mc^k:\ k,n,m > 0,\ k > n+m\}</math>
; c.
:  rozpoznaje język <math>\displaystyle \{a^nb^mc^k:\ k,n,m > 0,\ k < n+m\}</math>
; d.
:  jest automatem deterministycznym
; e.
:  rozpoznaje język <math>\displaystyle \{a^nb^mc^k:\ k,n,m > 0,\ k = n+m\}</math>
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
a,d
</div></div>
{{cwiczenie|Problemy nierozstrzygalne w klasie <math>\displaystyle \mathcal{L}_2</math>||
<br>
Niech <math>\displaystyle L, L_1, L_2 \in \mathcal{L}_2</math>. Wskaż problemy
nierozstrzygalne w klasie <math>\displaystyle \mathcal{L}_2</math>:
; a.
:  <math>\displaystyle w \in L</math>
; b.
:  jednoznaczność <math>\displaystyle L</math>
; c.
:  <math>\displaystyle L_1=L_2</math>
; d.
:  <math>\displaystyle L = \emptyset</math>
; e.
:  nieskończoność <math>\displaystyle L</math>
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
b,c
</div></div>
{{cwiczenie|Automat ze stosem -- rozpoznawanie języka||
<br>
Automat ze stosem <math>\displaystyle \mathcal{A}_S = (A_S, Q, \{a,b\}, z_0, q_0, P,
Q_F)</math>, gdzie <math>\displaystyle A_S=\{z_0,a,b\}</math>, <math>\displaystyle Q=\{q_0,q_1\}</math>, <math>\displaystyle Q_F=\{q_0\}</math>, <math>\displaystyle P =
\{z_0q_0a \rightarrow z_0aq_0</math>, <math>\displaystyle aq_0a \rightarrow aaq_0</math>, <math>\displaystyle aq_0b
\rightarrow 1q_0</math>, <math>\displaystyle z_0q_0b \rightarrow z_0bq_1</math>, <math>\displaystyle bq_1b \rightarrow
bbq_1</math>, <math>\displaystyle bq_1a \rightarrow 1q_1</math>, <math>\displaystyle z_0q_1 \rightarrow z_0q_0\}</math>:
; a.
:  rozpoznaje język <math>\displaystyle \{w \in \{a,b\}^*:\ \sharp_aw \not = \sharp_bw\}</math>
; b.
:  rozpoznaje język <math>\displaystyle \{w \in \{a,b\}^*:\ \sharp_aw \leq \sharp_bw\}</math>
; c.
:  rozpoznaje język <math>\displaystyle \{w \in \{a,b\}^*:\ \sharp_aw \geq \sharp_bw\}</math>
; d.
:  jest automatem deterministycznym
; e.
:  rozpoznaje język <math>\displaystyle \{w \in \{a,b\}^*:\ \sharp_aw = \sharp_bw\}</math>
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
c,d
</div></div>
{{cwiczenie|Algorytm CYK||
<br>
Algorytm Cocke'a-Youngera-Kasamiego:
; a.
:  sprawdza, czy słowo należy do języka bezkontekstowego
; b.
:  działa w czasie <math>\displaystyle O(n^2\log n)</math>
; c.
:  jest niedeterministyczny
; d.
:  może dostać na wejście dowolną gramatykę bezkontekstową
; e.
:  działa w oparciu o zasadę programowania dynamicznego
}}
<div class="mw-collapsible mw-made=collapsible mw-collapsed"><span class="mw-collapsible-toogle mw-collapsible-toogle-default style="font-variant:small-caps">Rozwiązanie </span><div class="mw-collapsible-content" style="display:none"> 
a, e
</div></div>
8888888888888888888888888888888888888888888888888888888888
<quiz>
<quiz>
Wskaż, które z poniższych struktur są monoidami:
Wskaż, które z poniższych struktur są monoidami:

Wersja z 11:09, 21 wrz 2006




{theor}{TWIERDZENIE}[section] {rem}{UWAGA}[section] {corol}{WNIOSEK}[section] {fact}{FAKT}[section] {ex}{PRZYKŁAD}[section] {cw}{PYTANIE}[section] {defin}{DEFINICJA}[section] {lem}{LEMAT}[section]

{prf}{DOWÓD} {sol}{ROZWIĄZANIE} {hint}{WSKAZÓWKA}

{Języki i gramatyki bezkontekstowe - Test}

{Test wielokrotnego wyboru}

Ćwiczenie Języki bezkontekstowe nie będące regularnymi


Wskaż języki bezkontekstowe, które nie są regularne:

a.
Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle L_1=\{a^kb^l: k, l \in \mathds{N}\}}
b.
Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle L_2=\{a^kb^k: k \in \mathds{N}\}}
c.
Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle L_3=\{a^kcb^l: k, l \in \mathds{N}\}}
d.
Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle L_4=\{a^kcb^k: k \in \mathds{N}\}}
e.
L5={w{a,b}*:w=w}
Rozwiązanie

Ćwiczenie Języki Dycka i Łukasiewicza


Wskaż zdania prawdziwe:

a.
Istnieje gramatyka reularna generująca język Dycka.
b.
Język Dycka jest bezkontekstowy i nie jest regularny.
c.
Istnieje automat skończenie stanowy rozpoznający język

Łukasiewicza.

d.
Język Łukasiewicza da się opisać wyrażeniem regularnym.
e.
Istnieje gramatyka bezkontekstowa bez symboli

bezużytecznych generująca język Dycka.

Rozwiązanie

Ćwiczenie Lemat o pompowaniu


Wskaż języki, które nie są bezkontekstowe:

a.
Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle L_1=\{a^kb^l: k, l \in \mathds{N}\}}
b.
L2={akbncm:k<n<m}
c.
Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle L_3=\{a^nb^n: n \in \mathds{N}\}}
d.
Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle L_4=\{ca^nb^n: n \in \mathds{N}\}}
e.
L5={wwa|w|:w{a,b}*}
Rozwiązanie

Ćwiczenie Przynależnośc słowa do języka bezkontekstowego


Dana niech będzie gramatyka (v0 jest symbolem początkowym):

Parser nie mógł rozpoznać (nieznana funkcja „\aligned”): {\displaystyle \displaystyle \aligned v_0 &\rightarrow v_0v_1\ |\ v_3v_1 \\ v_1 &\rightarrow v_1v_2\ |\ v_2v_3 \\ v_2 &\rightarrow v_4v_1\ |\ v_3v_3\ |\ a \\ v_3 &\rightarrow v_1v_2\ |\ v_4v_2\ |\ b \\ v_4 &\rightarrow v_3v_4\ |\ v_0v_1\ |\ c. \endaligned}

Wskaż, które z poniższych słów należą do języka generowanego tą gramatyką:

a.
cab2abab
b.
1
c.
b7
d.
bca
e.
bcabb
Rozwiązanie

Ćwiczenie Gramatyki niejednoznaczne


Wskaż gramatyki G=(V,A,v0,P) niejednoznaczne:

a.
V={v0,v1,v2,v3}, A={a,b}, P={v0v2v1 | v3, v1av1 | a, v2v2b | b, v3bv3a | ba}
b.
V={v0,v1,v2,v3}, A={a,b}, P={v0v3v1, v1av1b | b, Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle v_2 \rightarrow bv_2a\ |\ b} , v3bv2c}
c.
V={v0,v1},A={a,b}, Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle P=\{v_0 \rightarrow v_0v_1\ |\ b} , v1av1b | b}
d.
V={v0,...,v5}, A={a}, P={v0av1 | av3, v1av2, Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle v_2 \rightarrow av_1\ |\ 1} , v3av4, v4av5, v5av3 | 1}
e.
V={v0,v1,v2,v3}, A={a,b}, P={v0v2v1, v1av1 | a, Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle v_2 \rightarrow v_2b\ |\ b\ |\ v_3} , v3bv3a | ba | b}
Rozwiązanie

Ćwiczenie Gramatyka bezkontekstowa


Gramatyka G=(VN,VT,v0,P), gdzie VN={v0,...,v5}, VT={a,b}, P={v0av1 | av3, v1av2, v2av1 | 1, v3av4, v4av5, v5av3 | 1}:

a.
generuje język (aa)+(aaa)+
b.
generuje język (aa+aaa)*
c.
jest równoważna gramatyce G=(VN,VT,v0,P), gdzie
VN={v0,...,v6}, P={v0av1, v1av2, v2av3 | 1, v3av4 | 1, v4av5 | 1, v5av6,

v6av1 | 1

d.
jest jednoznaczna
e.
generuje język L(𝒜), gdzie 𝒜=(S,A,s0,f,F) jest automatem skończenie stanowym takim, że S={s0,...,s4}, A={a}, F={s2,s3,s4},

f(s0,a)=f(s4,a)=s1, f(s1,a)=s2, f(s2,a)=s3, f(s3,a)=s4.

Rozwiązanie

Ćwiczenie Jednoznaczność języków


Wskaż zdania prawdziwe:

a.
każda gramatyka regularna jest jednoznaczna
b.
każdy język jednoznaczny jest deterministyczny
c.
każdy język regularny jest jednoznaczny
d.
każdy język deterministyczny jest jednoznaczny
e.
język jest jednoznaczny wtw gdy jest deterministyczny
Rozwiązanie

Ćwiczenie Postać normalna Greibach i Chomsky'ego


Wskaż zdania prawdziwe:

a.
Każda gramatyka w postaci normalnej Chomsky'ego jest

bezkontekstowa.

b.
Jeśli gramatyka bezkontekstowa G ma n produkcji, to

równoważna jej gramatyka G w postaci normalnej Greibach ma co najwyżej 2n produkcji.

c.
Każdą gramatykę bezkontekstową można przekształcić do postaci normalnej

Greibach.

d.
Żadna gramatyka w postaci normalnej Greibach nie jest

regularna.

e.
Każda gramatyka w postaci normalnej Chomsky'ego jest

właściwa.

Rozwiązanie

Ćwiczenie Automat ze stosem


Wskaż zdania prawdziwe:

a.
Każdy automat ze stosem akceptujący przez pusty stos

posiada równoważny automat ze stosem akceptujący przez stany końcowe.

b.
Każdy język bezkontekstowy jest akceptowany przez pusty

stos przez jednostanowy automat ze stosem.

c.
Każdy automat ze stosem, w którym wielkość stosu jest

ograniczona przez pewną stałą, jest równoważny pewnemu automatowi skończenie stanowemu.

d.
Każdy automat ze stosem posiada równoważny

deterministyczny automat ze stosem.

e.
Każdy automat ze stosem akceptujący przez stany końcowe

posiada równoważny automat ze stosem akceptujący przez pusty stos.

Rozwiązanie

Ćwiczenie Zamkniętość rodziny języków bezkontekstowych


Rodzina języków bezkontekstowych jest zamknięta ze względu na:

a.
homomorfizm
b.
iloczyn mnogościowy
c.
uzupełnienie
d.
gwiazdkę Kleene'ego
e.
katenację
Rozwiązanie

Ćwiczenie Języki generowane gramatykami bezkontekstowymi


Dane są dwie gramatyki: dla i=1,2Gi=({v0,v1,v2},{a,b,c},v0,Pi), gdzie
P1={v0v1v2, v1av1b, v11, v2cv2, v21},
P2={v0v1v2, v1av1, v11, v2bv2c, v21}.
Wówczas:

a.
L(G1)L(G2)∉2
b.
L(G1)L(G2) jest językiem skończonym
c.
L(G1)=L(G2)
d.
L(G1)L(G2)
e.
L(G1)L(G2)2
Rozwiązanie

Ćwiczenie Problemy rozstrzygalne dla języków bezkontekstowych


Niech L będzie językiem bezkontekstowym. Wskaż problemy rozstrzygalne:

a.
wL
b.
L=
c.
nieskończoność L
d.
równoważność dwóch gramatyk bezkontekstowych
e.
jednoznaczność gramatyki bezkontekstowej
Rozwiązanie

Ćwiczenie Klasy języków


Niech L2, R3. Wówczas:

a.
LR2
b.
LR2
c.
L2
d.
LR2
e.
LR2
Rozwiązanie

Ćwiczenie Języki deterministyczne


Wskaż języki deterministyczne:

a.
{anbn: n1}{anb3n: n1}
b.
{a2n: n1}{a3n: n1}
c.
{anbn+mcm: m,n1}
d.
{wxw: w{a,b}*, x{a,b}}
e.
Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle \{a^nb^na^mb^p:\ n,m,p \geq 1\} \cup \{a^nb^ma^pb^p:\ n,m,p \geq 1\}}
Rozwiązanie

Ćwiczenie Języki niejednoznaczne


Wskaż języki niejednoznaczne:

a.
{anbncmdm: n,m1}{anbmcmdn: n,m1}
b.
Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle \{a^nb^mc^nd^p:\ n,m,p \geq 1\} \cup \{a^nb^mc^pd^m:\ n,m,p \geq 1\}}
c.
Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle \{a^nb^na^mb^p:\ n,m,p \geq 1\} \cup \{a^nb^ma^pb^p:\ n,m,p \geq 1\}}
d.
{anbmcm: n,m1}{anbncm: n,m1}
e.
Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle \{a^nb^mc^md^p:\ n,m,p \geq 1\} \cup \{a^nb^mc^pd^n:\ n,m,p \geq 1\}}
Rozwiązanie

Ćwiczenie Automat ze stosem -- rozpoznawanie języka


Automat ze stosem 𝒜S=(AS,Q,{a,b,c},z0,q0,P,QF), gdzie AS={z0,z,a,c}, Q={q0,q1,q2,q3}, QF={q2}, P={z0q0az0zq0, zq0azaq0, aq0aa2q0, aq0ba2q1, zq0bzaq1, aq1ba2q1, aq1c1q2, aq2c1q2, zq2ccq3, cq2ccq2, cq3ccq2}:

a.
rozpoznaje język {anbmck: k,n,m>0, k=n+m}
b.
rozpoznaje język {anbmck: k,n,m>0, k>n+m}
c.
rozpoznaje język {anbmck: k,n,m>0, k<n+m}
d.
jest automatem deterministycznym
e.
rozpoznaje język {anbmck: k,n,m>0, k=n+m}
Rozwiązanie

Ćwiczenie Problemy nierozstrzygalne w klasie 2


Niech L,L1,L22. Wskaż problemy nierozstrzygalne w klasie 2:

a.
wL
b.
jednoznaczność L
c.
L1=L2
d.
L=
e.
nieskończoność L
Rozwiązanie

Ćwiczenie Automat ze stosem -- rozpoznawanie języka


Automat ze stosem 𝒜S=(AS,Q,{a,b},z0,q0,P,QF), gdzie AS={z0,a,b}, Q={q0,q1}, QF={q0}, P={z0q0az0aq0, aq0aaaq0, aq0b1q0, z0q0bz0bq1, bq1bbbq1, bq1a1q1, z0q1z0q0}:

a.
rozpoznaje język {w{a,b}*: aw=bw}
b.
rozpoznaje język {w{a,b}*: awbw}
c.
rozpoznaje język {w{a,b}*: awbw}
d.
jest automatem deterministycznym
e.
rozpoznaje język {w{a,b}*: aw=bw}
Rozwiązanie

Ćwiczenie Algorytm CYK


Algorytm Cocke'a-Youngera-Kasamiego:

a.
sprawdza, czy słowo należy do języka bezkontekstowego
b.
działa w czasie O(n2logn)
c.
jest niedeterministyczny
d.
może dostać na wejście dowolną gramatykę bezkontekstową
e.
działa w oparciu o zasadę programowania dynamicznego
Rozwiązanie






8888888888888888888888888888888888888888888888888888888888 Wskaż, które z poniższych struktur są monoidami:

Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle (\mathds{Z}_{mod\ 2}, \cdot)}

Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle (\mathds{N}_1, +)} , gdzie Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle \mathds{N}_1=\{1,2,3,...\}}

Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle (\mathds{N}_p,+)} , gdzie Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle \mathds{N}_p} jest zbiorem wszystkich liczb pierwszych

Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle (\mathds{R}, \cdot)}

Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle (\mathds{Z}, +)}


Wskaż stwierdzenia prawdziwe:

abbaaa{aa,bb}*

abbaaa{a,b}*

abbaaa{abb,a}*

abbaaa{ba,ab}*

abbaaa{aa,ab,ba}*


Wskaż, które z poniższych odwzorowań są homomorfizmami:

Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle h: (\mathds{R},+) \rightarrow (\mathds{Z},+)} , h(x)=3x

Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle h: (\mathds{R},+) \rightarrow (\mathds{R},+)} , h(x)=3x

Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle h: (\mathds{R}, \cdot) \rightarrow (\mathds{R}, \cdot)} , h(x)=3x

h:{a,b}*{a,b}*, h(a)=a2, h(b)=ab2

Parser nie mógł rozpoznać (nieznana funkcja „\mathds”): {\displaystyle \displaystyle h: \{a,b\}^* \rightarrow (\mathds{Z},+)} , h(a)=1, h(b)=1


Dany niech będzie system przepisujący RS=({a,b,c},{(a,b),(b,c),(b,a),(cc,b)) oraz niech I={ccb}. Wskaż stwierdzenia prawdziwe:

abcLgen(RS,I)

ccbLgen(RS,I)

bbLgen(RS,I)

aabLgen(RS,I)

aaLgen(RS,I)


Wyrażenie regularne

((aa+bb)*(ab+ba)(aa+bb)*(ab+ba))*(aa+bb)*

reprezentuje język:

{w{a,b}*: aw=2k, bw=2l, k,l>0}

{w{a,b}*: awbw=0(mod2)}

{w{a,b}*: aw=bw=2k,k0}

{w{a,b}*: awbw=1(mod2)}

{w{a,b}*:aw=4k, bw=4l, k,l0}


Niech A={a,b} oraz L=aA*a. Wskaż zdania prawdziwe:

minimalny automat akceptujący L ma 5 stanów

ilość klas równoważności prawej kongruencji syntaktycznej PLr wyznaczonej przez L jest równa 4

A*L=bA*b+b

A*L=bA*+aA*b+a+1

monoid przejśc minimalnego automatu akceptującego L ma 6 elementów


Niech L będzie dowolnym językiem regularnym. Wskaż zdania prawdziwe:

L jest rozpoznawany przez pewien niedeterministyczny automat skończenie stanowy z pustymi przejściami

L jest rozpoznawany przez automat deterministyczny skończenie stanowy

L jest rozpoznawany przez niedeterministyczny automat z pustymi przejściami o jednoelementowym zbiorze stanów początkowych

Nie istnieje automat niedeterministyczny z pustymi przejściami rozpoznający L i taki, że zbiór stanów początkowych jest jednoelementowy

Nie istnieje gramatyka lewoliniowa generująca L


Niech L1, L2 będą językami rozpoznawanymi odpowiednio przez automaty o n1 i n2 stanach. Aby stwierdzić, dla dowolnego słowa w, czy jest ono rozpoznawane przez oba automaty, wystarczy skonstruować odpowiedni automat mający

n1n2 stanów

O(n1+n2) stanów

n1 stanów

n2 stanów

3 stany


Język L składa się ze wszystkich słów nad alfabetem A={a,b} nie zawierających podsłowa a3. Wskaż wyrażenie regularne reprezentujące L:

(b*(1+a+aa)b*)*

(b*(1+a+aa)bb*)*

(b+ab+aab)*+(b+ab+aab)*a+(b+ab+aab)*aa

((1+a+aa)bb*)*(1+a+aa)

b*(a+aa)bb*)*(1+a+aa)


Wskaż warunki równoważne temu, by język L był akceptowany przez automat skończenie stanowy:

Istnieje liczba naturalna N1 taka, że każde słowo wL o długości |w|N można przedstawić jako katenację w=v1uv2, gdzie v1,v2A*, uA+ oraz v1u*v2L.

Istnieje skończony monoid M i homomorfizm ϕ:A*M taki, że ϕ1(ϕ(L))=L.

L jest sumą wybranych klas równoważności pewnej

kongruencji

ρ

na

A*

:

L=wL[w]ρ.

L𝒢(A*).

L jest akceptowany przez deterministyczny automat skończenie stanowy z jednym stanem końcowym.


Automat 𝒜=(S,A,s0,f,F), gdzie S={s0,s1,s2,s3}, A={a,b}, F={s1},

f s0 s1 s2

s3

a s1 s0 s3 s2
b s3 s2 s1 s0

jest automatem minimalnym

rozpoznaje język {w{a,b}*: aw=2k,bw=2l+1, k,l0}

rozpoznaje język {w{a,b}*: aw=2k,bw=2l, k,l0}

rozpoznaje język {w{a,b}*: aw=2k+1,bw=2l, k,l0}

rozpoznaje język {w{a,b}*: aw=2k+1,bw=2l+1, k,l0}


Które z poniższych równości dla wyrażeń regularnych są prawdziwe?

r*r*=r*

(r+s)*=r*+s*

(r*+s*)*=(r*s*)*

r+r=r

(rs)*r=r(sr)*


Wskaż języki regularne:

{w{a,b}*: aw=bw (mod 3)}

{w{a,b}*: aw=bw}

{w{a,b}*: |w|=2n,n>0}

{w{a,b}*: awbw=100}

{an: n=3k lub n=5k, k0}


Dany jest automat 𝒜=(S,A,s0,f,F), gdzie S={s0,s1,s2}, A={a,b}, F={s0,s1},


f s0 s1 s2
a s1 s0 s2
b s0 s2 s2

Wskaż zdania prawdziwe:

L(𝒜)=(a2+b)*(a+1).

Równoważny automat minimalny ma 2 stany.

Jeśli wL(𝒜), to dla każdych v,uA* takich, że w=vbu zachodzi av=2k dla pewnego k0.

a*b*L(𝒜).

Jeśli wL(𝒜), to a2b jest podsłowem słowa w.


Dany niech będzie automat niedeterministyczny 𝒜ND=(Q,A,{q0},f,F), gdzie Q={q0,q1,q2}, A={a,b}, F={q2},


f q0 q1 q2
a {q1} {q0,q2} {q2}
b {q1}

Wskaż zdania prawdziwe:

L(𝒜ND)=a2(a+ba)*.

L(𝒜ND)=a(aa*b)*aa*.

Równoważny automat deterministyczny posiada 3 stany.

L(𝒜ND)=a2(a*b)*aa*.

Równoważny minimalny automat deterministyczny posiada 4 stany.


Twierdzenie orzekające o równości zachodzącej pomiędzy rodziną języków regularnych a rodziną języków rozpoznawanych przez automaty o skończonej liczbie stanów znane jest jako:

twierdzenie Nerode'a

teza Churcha

lemat Ardena

lemat o pompowaniu

twierdzenie Kleene'ego


Wskaż monoid przejść automatu o następującej funkcji przejścia:

f s0 s1 s2 s3
a s1 s0 s3 s2
b s3 s2 s1 s0


({τ𝒜(1),τ𝒜(a),τ𝒜(b),τ𝒜(ab)},)

({τ𝒜(1),τ𝒜(a)},)

({τ𝒜(1),τ𝒜(a),τ𝒜(ab)},)

({τ𝒜(1),τ𝒜(a),τ𝒜(b)},)

({τ𝒜(a),τ𝒜(b),τ𝒜(ab),τ𝒜(ba)},)


Niech L1,L2 będą językami regularnymi. Wskaż problemy rozstrzygalne.

wL1

wL1L2

L1L2=

nieskończoność L1

L1=


Algorytm determinizacji automatu:

jest deterministyczny

działa w czasie wielomianowym

może się zapętlić

działa w czasie eksponencjalnym

kończy działanie błędem, jeśli na wejściu podany został automat deterministyczny


Wskaż zdania prawdziwe:

istnieje algorytm minimalizacji automatu działający w czasie nlogn

żaden algorytm minimalizacji nie może działać szybciej niż w czasie O(n2)

algorytm minimalizacji zawsze zwróci automat o mniejszej liczbie stanów niż automat podany na wejściu

algorytmy minimalizacji są algorytmami niedeterministycznymi

algorytmy minimalizacji nie działają dla automatów jednostanowych