Professional Documents
Culture Documents
Exercicis de Teoria de La Computacio
Exercicis de Teoria de La Computacio
Exercicis 1
1 Llenguatges i gramàtiques
Exercici 1.1. Sigui Σ un alfabet i L1 , L2 , L3 tres llenguatges qualsevol
sobre Σ. Indica si les afirmacions següents són sempre vertaderes o falses,
tot justificant les respostes:
i) L1 ⊆ L1 L2 .
iii) L1 L2 = L2 L1 .
viii) L1 ⊆ L∗1 .
xii) L1 L1 = L1 .
L = {w ∈ Σ∗ | ∃α ∈ Σ∗ ∃β ∈ Σ∗ (w = αα = βββ)}.
i) L1 = {w ∈ Σ∗ | w = wt }.
vi) El conjunt de les paraules sobre l’alfabet {(, )} que s’obtenen en eliminar
de les expressions aritmètiques correctes tots els sı́mbols excepte els
parèntesis; és a dir, les paraules formades per parèntesis ben encaixats,
com ara, per exemple, (()(())).
21710 - Teoria de la Computació. Exercicis 2
vii) El llenguatge de totes les paraules sobre {a, b} tals que tots els prefixos
tenen almenys tantes as com bes.
És aquesta gramàtica ambigua? En cas que ho sigui, cercau una gramàtica
inambigua que generi el mateix llenguatge.
Exercici 1.7. Considerau la gramàtica G donada per les produccions següents:
S → aS | aSb | λ
Demostrau que L(G) = {w ∈ {a, b}∗ | w = ai bj amb i > j}.
Exercici 1.8. Considerau la gramática G següent:
S → aaS | aSb | λ
Demostrau que L(G) = {w ∈ {a, b}∗ | w = ai bj amb i−j parell no negatiu}.
Exercici 1.9. Determinau el llenguatge generat per la gramàtica
S → aaA
A → aaA | B | aa | λ
B → bB | b
És aquesta gramàtica ambigua? En cas que ho sigui, cercau una gramàtica
inambigua que generi el mateix llenguatge.
21710 - Teoria de la Computació. Exercicis 3
S → aS | aaSb | λ
Exercici 1.13. Cercau una gramàtica que defineixi les expressions aritmètiques
ben formades sobre l’alfabet {0, 1, +, (, ), [, ]} que utilitzen dos tipus de parèntesis,
“(, )” i “[, ]”: aquests parèntesis han d’encaixar correctament i, a més, en to-
ta subexpressió entre una parella de parèntesis, els parèntesis de cada tipus
han d’aparèixer aparellats correctament.
2 Programes
Exercici 2.1. Construı̈u un programa que resti dos nombres naturals en
representació binària: si el resultat de la resta no és un nombre natural, el
programa no ha de donar cap resultat acceptador.
no és decidible. (Ajuda: provau amb un argument similar al que hem emprat
per a la propietat “P s’atura sempre”.)
3 Programes Indecidibles
Exercici 3.1. Construı̈u un programa (pot ser indeterminista) que accepti
el llenguatge
decidible?
Exercici 3.7. Sigui (Li )i>0 una successió de llenguatges sobre Σ. Suposem
que existeix un programa determinista p(x,y) tal que, per a cada i > 0 i w ∈
Σ∗ , accepta l’entrada (w,<i>) si i nomésSsi w ∈ Li . Descriviu un programa
(pot ser indeterminista) que reconegui ∞ i=0 Li , és a dir, les paraules que
pertanyen a qualcun dels Li .
L = {<P> ∈ {0, 1}∗ | P és un programa que s’atura sobre almenys 10 paraules}.
4 Complexitat
Exercici 4.1. Digueu si les funcions següents són computables polinòmicament
o no, justificant les vostres respostes:
2. g(m, n) = m mod n.
3. h(n) = 2n .
4. i(n) = x!.
5. j(n) = ni=1 i.
P
21710 - Teoria de la Computació. Exercicis 5
Pn i
6. k(m, n) = i=0 m .
2. g(A) = ni=1 Ai .
P
3. h(A, B) = AB.
programa P(n)
k,m,cte: vector
escriure(k,1)
escriure(m,1)
escriure(cte,0)
dreta(cte)
escriure(cte,1)
dreta(cte)
aparcar(cte)
majorigual(m,n)
mentre llegir(accepta) = 0 fer
succesor(k)
mult(m,cte)
majorigual(m,n)
fmentre
fi
programa F(n)
k,m: vector
escriure(k,1)
21710 - Teoria de la Computació. Exercicis 6
escriure(m,1)
majorigual(m,n)
mentre llegir(accepta) = 0 fer
succesor(k)
mult(m,k)
majorigual(m,n)
fmentre
fi
Exercici 5.2. Considerau l’AFD A = ({1, 2, 3}, {a, b}, δ, 1, {1, 2}), amb l’a-
plicació de transició δ donada per la taula següent:
a b
1 1 2
2 3 2
3 3 3
Exercici 5.4. Considerau el llenguatge Σ∗ aΣ3 format per les paraules sobre
{a, b} que tenen una a al quart lloc començant pel final. Cercau un AFD
que accepti aquest llenguatge.
H
j 1 -
q0 q1
1
6 6
0 0 0 0
? 1 -
?
q3 q2
1
i) Digau quins són els seus alfabet d’entrada, conjunt d’estats, estat inicial,
estats finals i aplicació de transició.
Exercici 5.6. Sigui L el llenguatge sobre {a, b, c} format per les paraules
tals que cada b s’hi troba seguida immediatament per una c. Donau un AFD
que accepti L.
21710 - Teoria de la Computació. Exercicis 8
ii) Demostrau que L(A) és un conjunt infinit si i només si conté qualque
paraula de longitud més gran que n.
Exercici 5.8. Podeu donar un AFD A on tots els estats siguin accessibles
però tal que L(A) = ∅?
Exercici 5.9. Per a cada un dels llenguatges següents sobre l’alfabet {0, 1},
donau un AFD que l’accepti:
Exercici 5.14. Descriviu el llenguatge acceptat per l’AFD ({q0 , q1 , q2 , q3 }, {0, 1}, δ, q0 , {q3 }),
amb l’aplicació de transició δ donada per la taula
0 1
q0 q0 q1
q1 q2 q1
q2 q0 q3
q3 q2 q1
b) Donau un AFD amb tots els estats accessibles que accepti aquest llen-
guatge.
Exercici 6.3. Donau un AFD amb tots els estats accessibles que reconegui
el mateix llenguatge que l’AFN donat per
0, 1 0, 1
n n
j 0
) )
H
q0 - q1 0, 1 - q 0 - q3
2
7 Construcció d’Autòmats
Exercici 7.1. Donat un alfabet Σ, siguin FΣ el conjunt dels llenguatges
finits sobre Σ, IΣ el conjunt dels llenguatges infinits sobre Σ, i Pw,Σ , amb
w ∈ Σ+ , el conjunt de tots els llenguatges sobre Σ que contenen la paraula
w. Per a cada un d’aquests conjunts, digau si cada una de les propietats
següents és vertadera o falsa, tot justificant les vostres respostes:
21710 - Teoria de la Computació. Exercicis 11
a a a, b
n n
H
) )
j
q0
b - q1 b - q2 b - q3
M
a
Repetiu la construcció partint d’autòmats deterministes correctes.
Demostrau que si L és regular, aleshores sufix(L) també és regular. és a dir,
cercau un procediment que canviı̈ l’estructura de l’autòmat per a L en una
estructura que reconegui el nou llenguatge.
Exercici 7.7. La classe dels llenguatges regulars, és tancada per reunions
de famı́lies infinites?
Exercici 7.8. Sigui N OREG el conjunt dels llenguatges sobre {a, b} que
no són regulars. Digau si les afirmacions següents són sempre vertaderes o
falses, tot justificant les vostres respostes:
8 Expressions Regulars
Exercici 8.1. Per a cada una de les expressions regulars següents, cercau
un AFN que n’accepti el llenguatge associat:
Exercici 8.2. Cercau un AFN que accepti el llenguatge sobre {a, b} format
per les paraules tals que entre dues as seguides mai no hi ha un nombre
múltiple de quatre de bes seguides (i en particular, entre dues as sempre hi
ha qualque b, ja que zero és múltiple de quatre).
Exercici 8.4. Donau una expressió regular per al llenguatge acceptat per
l’AFN següent:
a b a, b
n n n
H a
) ) )
j
q0 - q1 a - q2 a - q3
M
b
Exercici 8.5. Ídem per a l’autòmat
q3
6
a b
H
a
?
j a
q0 - q
1
- q
2
a
b
λφ ≡ φ, φλ ≡ φ, ∅φ ≡ ∅, φ∅ ≡ ∅,
∅ + φ ≡ φ, φ + ∅ ≡ φ, φ + φ ≡ φ, φ1 + φ2 ≡ φ2 + φ1 ,
(λ + φ)∗ ≡ φ∗ , (λ + φ)(λ + φ)∗ ≡ φ∗ .
X = X c1
Exercici 8.10. Sigui φ una expressió regular tal que L(φ) 6= ∅ i λ ∈ / L(φ).
Mostrau que, aleshores, es poden eliminar λ i ∅ de φ, en el sentit que existeix
qualque expressió regular φ0 equivalent a φ que no utilitza els sı́mbols λ o ∅.
b b b
a b
A D
a
b a F
a
B
b
E
b a b
a, b
C G
b
21710 - Teoria de la Computació. Exercicis 15
1 0
1 0
Exercici 9.5. Per al següent autòmat, donau els llenguatges amb els quals
s’arriba a cada estat en funció de la terminació de les paraules.