20.08.2013 Views

1. Dadas as linguagens abaixo, marque V para as palavras aceitas ...

1. Dadas as linguagens abaixo, marque V para as palavras aceitas ...

1. Dadas as linguagens abaixo, marque V para as palavras aceitas ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Teoria da Computação – Exercícios sobre Máquina de Turing<br />

<strong>1.</strong> <strong>Dad<strong>as</strong></strong> <strong>as</strong> <strong>linguagens</strong> <strong>abaixo</strong>, <strong>marque</strong> V <strong>para</strong> <strong>as</strong> palavr<strong>as</strong> aceit<strong>as</strong> por uma máquina<br />

de Turing reconhecedora da linguagem ou F <strong>para</strong> <strong>as</strong> palavr<strong>as</strong> rejeitad<strong>as</strong>.<br />

a) L1=∅<br />

Tradução: O conjunto de palavr<strong>as</strong> que fazem parte da linguagem é vazio, ou seja, a<br />

linguagem não tem palavra alguma.<br />

( ) a ( ) b ( ) abababa<br />

( ) ab ( ) ba ( ) ε<br />

b) L2={ε}<br />

Tradução: O conjunto de palavr<strong>as</strong> que fazem parte da linguagem é ε, ou seja, a<br />

linguagem só tem a palavra vazia.<br />

( ) a ( ) b ( ) abababa<br />

( ) ab ( ) ba ( ) ε<br />

c) L3={w | w tem o mesmo número de símbolos de a e b}<br />

Tradução: O conjunto de palavr<strong>as</strong> que fazem parte da linguagem são tod<strong>as</strong> aquel<strong>as</strong> que<br />

possuem tantos símbolos a quantos b, em qualquer ordem. Se a palavra tem mais (ou<br />

menos) a’s do que b’s, a palavra não pertence a linguagem.<br />

( ) bbaa ( ) baba ( ) abababa<br />

( ) aabb ( ) abba ( ) ε<br />

d) L4={ w | o décimo símbolo da direita <strong>para</strong> esquerda é a}<br />

Tradução: O conjunto de palavr<strong>as</strong> que fazem parte da linguagem são tod<strong>as</strong> aquel<strong>as</strong> que<br />

possuem o símbolo a na décima posição da palavra, do final <strong>para</strong> o início. Se a palavra<br />

tem menos de 10 símbolos, a palavra não pertence a linguagem.<br />

( ) aaaaaaaaa ( ) bbbabbbbbbbbbb ( ) bbbabbbbbbbbb<br />

( ) b ( ) abbbbbbbb ( ) ε<br />

e) L5={waw | w é palavra de {a,b}* }<br />

Tradução: O conjunto de palavr<strong>as</strong> que fazem parte da linguagem são tod<strong>as</strong> aquel<strong>as</strong> que<br />

possuem o símbolo a no meio da palavra e a subpalavra do início (até um símbolo antes<br />

do a central) igual à subpalavra do final (a partir do símbolo seguinte ao a central). As<br />

palavr<strong>as</strong> dad<strong>as</strong> como entrada só tem os símbolos a e b.<br />

( ) a ( ) baab ( ) aa<br />

( ) bab ( ) aaa ( ) ε<br />

Ciência da Computação – ICEG – UPF – Prof. Marcelo Cezar Pinto


f) L6={ww | w é palavra de {a,b}* }<br />

Teoria da Computação – Exercícios sobre Máquina de Turing<br />

Tradução: O conjunto de palavr<strong>as</strong> que fazem parte da linguagem são tod<strong>as</strong> aquel<strong>as</strong> que<br />

possuem a subpalavra do início (a primeira metade da palavra) igual à subpalavra do<br />

final (a segunda metade). As palavr<strong>as</strong> dad<strong>as</strong> como entrada só tem os símbolos a e b.<br />

( ) ababa ( ) baab ( ) aa<br />

( ) bab ( ) aaa ( ) ε<br />

g) L7={ ww r | w é palavra de {a,b}* }<br />

Tradução: O conjunto de palavr<strong>as</strong> que fazem parte da linguagem são tod<strong>as</strong> aquel<strong>as</strong> que<br />

possuem a subpalavra do início (a primeira metade da palavra) igual à subpalavra do<br />

final em ordem reversa (a segunda metade), como se houvesse um espelho no meio da<br />

palavra. As palavr<strong>as</strong> dad<strong>as</strong> como entrada só tem os símbolos a e b.<br />

( ) abba ( ) baaab ( ) abbbbba<br />

( ) abab ( ) babbab ( ) ε<br />

h) L8 = {www | w é palavra de {a,b}*}<br />

Tradução: O conjunto de palavr<strong>as</strong> que fazem parte da linguagem são tod<strong>as</strong> aquel<strong>as</strong> que<br />

possuem uma subpalavra repetida 3 vezes em seqüência, ou seja, cada terço da palavra<br />

é igual. As palavr<strong>as</strong> dad<strong>as</strong> como entrada só tem os símbolos a e b.<br />

( ) aaa ( ) b ( ) abababa<br />

( ) abbaba ( ) abaaabaaabaa ( ) ε<br />

i) L9 = {w | w = a 1 b 2 a 3 b 4 … a n-1 b n e n é um número natural par}<br />

Tradução: O conjunto de palavr<strong>as</strong> que fazem parte da linguagem são tod<strong>as</strong> aquel<strong>as</strong> que<br />

possuem um número crescente de símbolos a’s e b’s, começando com 1 a e terminando<br />

com n b’s, sempre intercalando a’s e b’s. O crescimento é sempre aumentando um<br />

símbolo em relação ao número de símbolos anterior.<br />

( ) a ( ) abbaaaabbbbbb ( ) bbbbbb<br />

( ) abb ( ) bbaaabbbb ( ) ε<br />

j) L10 = {w | w = a n b n ou b n a n }<br />

Tradução: O conjunto de palavr<strong>as</strong> que fazem parte da linguagem são tod<strong>as</strong> aquel<strong>as</strong> que<br />

possuem o mesmo número de símbolos a’s e b’s, desde que os a’s estejam todos no<br />

início ou todos no final da palavra.<br />

( ) a ( ) ababab ( ) aaabbb<br />

( ) ab ( ) ba ( ) ε<br />

Ciência da Computação – ICEG – UPF – Prof. Marcelo Cezar Pinto


Teoria da Computação – Exercícios sobre Máquina de Turing<br />

k) L11 = {w | w = a i b j c k , onde i=j ou j=k}<br />

Tradução: O conjunto de palavr<strong>as</strong> que fazem parte da linguagem são tod<strong>as</strong> aquel<strong>as</strong> que<br />

possuem i símbolos a no início, j símbolos b no meio e k símbolos c no final, desde que<br />

ou o número de a’s seja igual ao de b’s ou o número de b’s seja igual ao de c’s. Os<br />

números i, j e k podem ser zero.<br />

( ) a ( ) b ( ) abab<br />

( ) c ( ) ab ( ) ac<br />

( ) bc ( ) abc ( ) abcc<br />

( ) aabbc ( ) aabcc ( ) ε<br />

l) L12 = {w | w = wew ou w = wouw ou w = v ou w = f e w ∈ {v, f, e, ou} },<br />

Tradução: O conjunto de palavr<strong>as</strong> que fazem parte da linguagem são tod<strong>as</strong> aquel<strong>as</strong> que<br />

possuem símbolos v e f na palavra se<strong>para</strong>dos por e ou ou. Nenhuma palavra da<br />

linguagem começa ou termina com e nem com ou.<br />

( ) evfou ( ) fouvevouf ( ) fouev<br />

( ) v ( ) f ( ) vf<br />

( ) veouf ( ) fouvouvefou ( ) ε<br />

2. Para cada função <strong>abaixo</strong>, escreva a fita da máquina de Turing processadora<br />

daquela função com <strong>as</strong> entrad<strong>as</strong> indicad<strong>as</strong> (no início e no final da computação):<br />

a) mult(a,b) = c, tal que c = a*b e a,b,c ∈ {1}*<br />

Tradução: A função tem 2 parâmetros (números naturais) e devolve a multiplicação<br />

dos dois. Os números estão em unário.<br />

i. mult(2,3) ii. mult(1,2) iii. mult(3,1) iv. mult(2,0) v. mult(1,0)<br />

b) primo(a) = b, tal que b é o a-ésimo número primo e a,b ∈ {1}*<br />

Tradução: A função tem 1 parâmetro (número natural) e devolve o número primo de<br />

acordo com sua ordem, por exemplo: o primo 1 é o número 2. Os números estão em<br />

unário.<br />

i. primo(1) ii. primo(2) iii. primo(3) iv. primo(4) v. primo(0)<br />

c) impar(a) = b, tal que b é 1 se a é ímpar, b é 0 se a é par e a,b ∈ {1}*<br />

Tradução: A função tem 1 parâmetro (número natural) e devolve 1 se o número é<br />

ímpar ou devolve zero se o número é par. Os números estão em unário.<br />

i. impar(1) ii. impar(2) iii. impar(3) iv. impar(4) v. impar(0)<br />

Ciência da Computação – ICEG – UPF – Prof. Marcelo Cezar Pinto

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!