Você está na página 1de 2

Ficha de Exerccios sobre DFAs

Resolues/solues para os exerccios selecionados: 1, 2, 3a), 5, 4


1.
a)
q0
q1
q2

A
q0
q0
q0

B
q1
q1
q1

C
q2
q2
q2

0
q0
q0
q0

1
q1
q1
q1

2
q2
q2
q2

b) Cada estado representa o andar em que o elevador se encontra.


2.
q0
q1
q2
q3
q4
q5
q6
q7
q8
* q9
* q10
d

09
q1
q2
q3
q4
d
q6
q7
d
q9
q10
d
d

3a)
q0
q1
* q2

5.
a)

0
q1
q2
q2

1
q0
q0
q0

d
q5
q5
q5
q5
d
q8
q8
d
d
d
d

5 estados: um para cada valor possvel do


resto:
0
1
* q0 q0 q1
q1 q2 q3
q2 q4 q0
q3 q1 q2
q4 q3 q4

s
* q0
q1
q2
q3
q4
d

0
d
q0
q2
q4
q1
q3
d

1
q1
q1
q3
q0
q2
q4
d

b)
Observaes:
q0

q1

q2

q3

q4

Forar comeo com 1: acrescentar estado


inicial que liga a estado morto caso
comece por 0:

Basta inverter todas as ligaes!

O estado de partida anterior passa a ser o


nico estado de aceitao (como j o era,
mantm-se).

Os estados de aceitao anteriores passam


a ser pontos de partida possveis (como o
nico estado de aceitao j era ponto de
partida, mantm-se).
0
1
* q0 q0 q2
q1 q3 q0
q2 q1 q3
q3 q4 q1
q4 q2 q4

4)
Hiptese: ^(q, xy) = ^(^(q, x), y)
Caso base: y =

^(q, x) = ^(^(q, x), )


Da base da definio de ^:
Podemos tomar ^(q, x) = p, e sabemos que ^(p, ) = p
Passo indutivo: dado |y| = n, assumir as strings de comprimento n+1 originadas pela concatenao de
uma letra (identificada por a) com y: |ya| = n+1

^(q, xya) = ^(^(q, x), ya)


Passos da demonstrao:
Expresso
^(^(q, x), ya)
^ (^(^(q, x), y), a)
^ (^(q, xy), a)
^(q, xya)

Razo
partida
pela definio de ^, considerando ^(q, x) como um estado
por hiptese
pela definio de ^

Obtemos assim ^(q, xya) qed

2/2

Você também pode gostar