Вы находитесь на странице: 1из 23

Linguagens Formais

Profa. Andreia Gentil Bonfante Material 1 Parte 2

04/12/2012

Cadeias e Linguagens
Cadeias de caracteres so blocos bsicos na Cincia da Computao Definies
Alfabeto: conjunto finito de smbolos
ou indicam o alfabeto = {0, 1}; = {a, b, c, d}; = {0, 1, a, b, c}

04/12/2012

TLFAC

Cadeias e Linguagens
Cadeia sobre o alfabeto: seqncia finita de smbolos do alfabeto, escritos lado a lado, sem vrgulas
01010; bacaba; b1c0a

04/12/2012

TLFAC

Cadeias e Linguagens
Definies
Se uma cadeia sobre , o tamanho de , indicado por || o nmero de smbolos Tamanho zero cadeia vazia ()

04/12/2012

TLFAC

Cadeias e Linguagens
Se tem um tamanho
= 123... | i Reverso de (R) -1... 1 Cadeia z subcadeia de , se e somente se, z aparacer consecutivamente em
caba subcadeia de bacaba
5
04/12/2012

TLFAC

Cadeias e Linguagens
Definies
Concatenao de cadeias
Concatenando x e y, com |x| = n e |y| = m x1x2...xny1y2...ym

Concatenando a prpria cadeia x


xxxx...x (k vezes)
6
04/12/2012

xk
TLFAC

Cadeias e Linguagens
Definies
Ordenao lexicogrfica
Ordenao convencional
as cadeias menores acontecem antes

Todas as cadeias sobre {0,1} ordenadas


(, 0, 1, 00, 01, 10, 11, 000, ...)

04/12/2012

TLFAC

Cadeias e Linguagens
Definies LINGUAGEM
Ordenao lexicogrfica
Ordenao convencional E as CONJUNTO DE CADEIAS menores acontecem antes Todas as cadeias sobre {0,1} ordenadas
(, 0, 1, 00, 01, 10, 11, 000, ...)
8
04/12/2012

TLFAC

Gramtica
um mecanismo que nos permite definir formalmente uma linguagem Atravs dela pode-se gerar todas as sentenas daquela linguagem

04/12/2012

TLFAC

Gramtica
Formalmente, uma qudrupla ordenada G = (V, T, P, S), onde:
V um conjunto finito de smbolos no-terminais (ou variveis); T um conjunto finito de smbolos terminais disjunto de V; P um conjunto finito de pares, denominados regras de produo tal que a primeira componente palavra de (VT)+ e a segunda componente palavra de (VT)*; S um elemento de V, denominado smbolo inicial (ou smbolo de partida).
10
04/12/2012

TLFAC

Regras de Produo
Definem as condies de gerao das sentenas;
Uma regra de produo (, ) representada por ; pode ser substitudo por

A aplicao de uma regra de produo denominada derivao


11
04/12/2012

TLFAC

Regras de Produo O smbolo inicial inicia o processo de derivao de uma sentena; Observaes: VT =
12
04/12/2012

TLFAC

Gramticas - Exemplo
G1 = ({S, A, B}, {a, b}, P, S) onde:

P = { 1) S AB 2) A a 3) B b }
Qual(is) as cadeias terminais geradas por esta gramtica?
13
04/12/2012

TLFAC

rvore de Derivao Sinttica


<sentena> <sn> <artigo> o <substantivo> peixe <sv> <verbo> <complemento> mordeu <artigo> <substantivo> a
14
04/12/2012

isca
TLFAC

Gramtica
Gerao direta ():

Considere , , , (V T)* Uma cadeia gera diretamente () uma cadeia sse:


P
15
04/12/2012

TLFAC

Gramtica
Gerao (*):

Considere , , , (V T)* Uma cadeia gera (*) uma cadeia sse:


1, 2, ..., n tal que 1 2 ... n n0
16
04/12/2012

TLFAC

Gramtica
Assim, em G1 temos: S * ab S * aB AB * ab

17

04/12/2012

TLFAC

Forma Sentencial
uma cadeia (VT)* uma forma sentencial de uma gramtica sse S , ou seja, um embrio para alguma sentena gerada pela gramtica, ou a prpria sentena
18
04/12/2012

TLFAC

Sentena
uma forma sentencial , uma sentena de G sse T*. Portanto, as cadeias geradas pela gramtica so as sentenas de G.

19

04/12/2012

TLFAC

Exemplo
Exemplo: dada a gramtica
G1 = ({A, B}, {a, b, c}, P, A) onde:

P = { 1) A aB 2) B bB 3) B c }
20
04/12/2012

TLFAC

Exemplo Indique se as seguintes cadeias so sentenas ou formas sentenciais produzidas por G1:

21

04/12/2012

TLFAC

cont..
Sentena Forma sentencial abc A a abB abbbB abbbc
22
04/12/2012

TLFAC

Descrio de Linguagens
G1 = ({A, B}, {a, b, c}, P, A) onde: P = { 1) A aB 2)B bB 3)B c }

A linguagem gerada pela gramtica G1 descrita acima, poderia ser expressa da seguinte forma: L(G1)={abnc, n 0}
23
04/12/2012

TLFAC

Вам также может понравиться