Sei sulla pagina 1di 25

FTC

Teoria da Computao
Introduo

Lucilia Figueiredo
Universidade Federal de Ouro Preto

DECOM-UFOP 2008

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Alfabeto, String.
Alfabeto Conjunto nito de smbolos Exemplos: {0, 1}, {a}, {a . . . z} String s sobre um alfabeto Seqncia nita de smbolos de Exemplos: 00101, abracadabra representa o string vazio conjunto de todos os strings sobre |s| representa o comprimento do string s s w representa a concatenao de s com w sn representa s . . . s .
n vezes
Universidade Federal de Ouro Preto www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Alfabeto, String.
Alfabeto Conjunto nito de smbolos Exemplos: {0, 1}, {a}, {a . . . z} String s sobre um alfabeto Seqncia nita de smbolos de Exemplos: 00101, abracadabra representa o string vazio conjunto de todos os strings sobre |s| representa o comprimento do string s s w representa a concatenao de s com w sn representa s . . . s .
n vezes
Universidade Federal de Ouro Preto www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Linguagem.
Linguagem L sobre um alfabeto L Exemplos: L1 = {00, 01, 10, 11} L2 = {x | x contm pelo menos dois 0s} L3 = {w | |w| par } L4 = {w | w palndromo } L5 = {0n 1n | n N} L6 = {1n | n primo} L7 = L8 = { }

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Operaes sobre Linguagens (sobre ).

Unio: L1 L2 = {w | w L1 ou w L2 } Interseo: L1 L2 = {w | w L1 e w L2 } Diferena: L1 L2 = {w | w L1 e w L2 } Complemento: L = L Concatenao L1 L2 = {w s | w L1 , s L2 }

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Operaes sobre Linguagens (sobre ).

Unio: L1 L2 = {w | w L1 ou w L2 } Interseo: L1 L2 = {w | w L1 e w L2 } Diferena: L1 L2 = {w | w L1 e w L2 } Complemento: L = L Concatenao L1 L2 = {w s | w L1 , s L2 }

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Operaes sobre Linguagens - Exerccios


Seja = {0, 1} e L = {w | |w| par }.
1 2 3 4 5 6 7 8 9

L= L{ }= L= L{ }= L= L{ }= L= L= L{ }=

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Operaes sobre Linguagens - Exerccios


Seja = {0, 1} e L = {w | |w| par }.
1 2 3 4 5 6 7 8 9

L=L L{ }= L= L{ }= L= L{ }= L= L= L{ }=

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Operaes sobre Linguagens - Exerccios


Seja = {0, 1} e L = {w | |w| par }.
1 2 3 4 5 6 7 8 9

L=L L{ }=L L= L{ }= L= L{ }= L= L= L{ }=

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Operaes sobre Linguagens - Exerccios


Seja = {0, 1} e L = {w | |w| par }.
1 2 3 4 5 6 7 8 9

L=L L{ }=L L= L{ }= L= L{ }= L= L= L{ }=

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Operaes sobre Linguagens - Exerccios


Seja = {0, 1} e L = {w | |w| par }.
1 2 3 4 5 6 7 8 9

L=L L{ }=L L= L{ }={ } L= L{ }= L= L= L{ }=

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Operaes sobre Linguagens - Exerccios


Seja = {0, 1} e L = {w | |w| par }.
1 2 3 4 5 6 7 8 9

L=L L{ }=L L= L{ }={ } L=L L{ }= L= L= L{ }=

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Operaes sobre Linguagens - Exerccios


Seja = {0, 1} e L = {w | |w| par }.
1 2 3 4 5 6 7 8 9

L=L L{ }=L L= L{ }={ } L=L L { } = {w | |w| par e |w| > 0 } L= L= L{ }=

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Operaes sobre Linguagens - Exerccios


Seja = {0, 1} e L = {w | |w| par }.
1 2 3 4 5 6 7 8 9

L=L L{ }=L L= L{ }={ } L=L L { } = {w | |w| par e |w| > 0 } L = {w | |w| impar } L= L{ }=

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Operaes sobre Linguagens - Exerccios


Seja = {0, 1} e L = {w | |w| par }.
1 2 3 4 5 6 7 8 9

L=L L{ }=L L= L{ }={ } L=L L { } = {w | |w| par e |w| > 0 } L = {w | |w| impar } L= L{ }=

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Operaes sobre Linguagens - Exerccios


Seja = {0, 1} e L = {w | |w| par }.
1 2 3 4 5 6 7 8 9

L=L L{ }=L L= L{ }={ } L=L L { } = {w | |w| par e |w| > 0 } L = {w | |w| impar } L= L{ }=L

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Notao

L0 = { } L1 = L L2 = L L . . . Ln = L . . . L
n vezes

L = Ln n=0

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Denies recursivas de linguagens

Qual a linguagem L sobre {0, 1} denida por: i L ii se x L, ento 0x L e x1 L iii nenhum outro string pertence a L

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Denies recursivas de linguagens - Exerccios

Dena recursivamente cada uma das seguintes linguagens: a {w {0, 1} | |w| par } b {w {0, 1} | w um palndromo } c {w {0, 1} | w contm 00 } d {w {0, 1} | w no contm 00 } e {0n | n N}
2

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Gramticas
Formalismo para gerar palavras de uma linguagem Constituda de regras da forma u v onde u e v so sequncias de smbolos de variveis, ou no-terminais, e smbolos terminais, isto , smbolos da linguagem. Exemplo de regra: aAB baA Como esta regra usada? aABBaAB baABaAB bbaAaAB bbaAbaA Uma varivel especial a varivel inicial

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Gramticas
Exemplo 1) 2) 3) 4) 5) P A A Cb Cc aAbc aAbC bC cc

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Gramticas
Exemplo 1) 2) 3) 4) 5)
P aAbc aaAbCbc aaaAbCbCbc aaabCbCbc aaabbCCbc aaabbCbCc aaabbCbcc aaabbbCcc aaabbbccc

P A A Cb Cc

aAbc aAbC bC cc

(regra 1) (regra 2) (regra 2) (regra 3) (regra 4) (regra 4) (regra 5) (regra 4) (regra 5)


www.dcc.ufmg.br/~lucilia/cursos/ftc

Universidade Federal de Ouro Preto

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Gramticas
Exemplo 1) 2) 3) 4) 5)
P aAbc aaAbCbc aaaAbCbCbc aaabCbCbc aaabbCCbc aaabbCbCc aaabbCbcc aaabbbCcc aaabbbccc

P A A Cb Cc

aAbc aAbC bC cc

(regra 1) (regra 2) (regra 2) (regra 3) (regra 4) (regra 4) (regra 5) (regra 4) (regra 5)

Qual a linguagem L(G)?

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Gramticas
Exemplo 1) 2) 3) 4) 5)
P aAbc aaAbCbc aaaAbCbCbc aaabCbCbc aaabbCCbc aaabbCbCc aaabbCbcc aaabbbCcc aaabbbccc

P A A Cb Cc

aAbc aAbC bC cc

(regra 1) (regra 2) (regra 2) (regra 3) (regra 4) (regra 4) (regra 5) (regra 4) (regra 5)

Qual a linguagem L(G)? L(G) = {an bn c n | n 1}

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

FTC > Alfabetos, Strings, Linguagens e Gramaticas

Gramticas - Exerccios

Dena uma gramtica para cada uma das seguintes linguagens: a {w {0, 1} | |w| par } b {w {0, 1} | w um palndromo } c {w {0, 1} | w contm 00 } d {w {0, 1} | w no contm 00 } e {0n 1n | n N} f {0n 12n+1 | n N}

Universidade Federal de Ouro Preto

www.dcc.ufmg.br/~lucilia/cursos/ftc

Potrebbero piacerti anche