Sie sind auf Seite 1von 11

Teoria das Linguagens Formais

Conceitos Fundamentais
Profa Jerusa Marchi

Departamento de Informática e Estatística


Universidade Federal de Santa Catarina
e-mail: jerusa@inf.ufsc.br

Teoria das Linguagens FormaisConceitos Fundamentais – p. 1/1


Alfabetos e Linguagens: Definições
um alfabeto (Σ) é um conjunto finito e não vazio de símbolos.
Σ = {0, 1} ⇒ alfabeto binário
Σ = {a, b, ..., z} ⇒ alfabeto latino (letras minúsculas)
Σ = {α, β, γ, δ, ..., ω} ⇒ alfabeto grego

Teoria das Linguagens FormaisConceitos Fundamentais – p. 2/1


Alfabetos e Linguagens: Definições
uma palavra ou cadeia sobre um alfabeto Σ é uma sequência finita de
símbolos desse alfabeto.
w = 010101111, w = 0001, w = 10011100
w = auladelinguagensf ormais
w = γαιθσ
uma cadeia vazia (denotada por ε) é uma cadeia que não contém
nenhum símbolo.
a cadeia vazia é palavra de quarquer alfabeto.

Teoria das Linguagens FormaisConceitos Fundamentais – p. 3/1


Alfabetos e Linguagens: Definições
O comprimento de uma cadeia w é notado por |w| e é igual ao número
de símbolos da sequência.
|010101111| = 9
|auladelinguagensf ormais| = 23
|ε| = 0

Teoria das Linguagens FormaisConceitos Fundamentais – p. 4/1


Alfabetos e Linguagens: Definições
O conjunto de todas as cadeias sobre um alfabeto Σ com
comprimento k é notado Σk
{0, 1}1 = {0, 1}
Σ0 = {ε}
O conjunto de todas as cadeias sobre um alfabeto Σ, incluindo a
cadeia vazia ε, é denotado por Σ⋆

Σ⋆ = Σ0 ∪ Σ1 ∪ Σ2 ∪ ...

O conjunto de todas as cadeias sobre um alfabeto Σ, sem a cadeia


vazia ε, é denotado por Σ+

Σ+ = Σ1 ∪ Σ2 ∪ Σ3 ∪ ...

Teoria das Linguagens FormaisConceitos Fundamentais – p. 5/1


Alfabetos e Linguagens: Definições
A operação de concatenação combina duas cadeias para formar uma
terceira (notado por w.v ou wv)
ε.w = w.ε = w
w = 011, v = 110, wv = 011110, vw = 110011
Uma cadeia v é uma subcadeia de w sse houver cadeias x e y tais
que w = xvy onde, tanto x quanto y podem ser ε
ε é subcadeia de qualquer cadeia
a cadeia é subcadeia de si própria
sufixo e prefixo de cadeias

Teoria das Linguagens FormaisConceitos Fundamentais – p. 6/1


Alfabetos e Linguagens: Definições
Para cada cadeia w e para cada número natural i, a cadeia wi é
definida como:
w0 = ε

wi+1 = wi .w

w = a, w2 = aa
w = do, w3 = dododo

Teoria das Linguagens FormaisConceitos Fundamentais – p. 7/1


Alfabetos e Linguagens: Definições
O reverso de uma cadeia w, denotado por wR , é a cadeia w “escrita
às avessas”
reverseR = esrever
Curiosidade: palavras ou frases que podem ser lidas tanto da direita
para a esquerda quanto da esquerda para a direita são chamadas
palíndromos
ana
ah livre era papai noel, leon ia papar é ervilha
a mala nada na lama

Teoria das Linguagens FormaisConceitos Fundamentais – p. 8/1


Alfabetos e Linguagens: Definições
Uma linguagem é qualquer conjunto de cadeias sobre um alfabeto Σ,
ou seja, qualquer subconjunto de Σ⋆
São exemplos de linguagens:
a linguagem formada por todas as palavras consistindo de
n 0’s seguidos por n 1’s, para algum
n ≥ 0 : {ε, 01, 0011, 000111, ...}
o conjunto de palavras com o mesmo número de 0’s e 1’s:
{ε, 01, 10, 0011, 1100, 0101, 1010, 0110, 1001, ...}
O conjunto de números binários cujo valor decimal é um
primo: {10, 11, 101, 111, 1011, ...}
Σ⋆ é uma linguagem para qualquer alfabeto Σ
∅, a linguagem vazia, é uma linguagem sobre qualquer
alfabeto
{ε}, a linguagem consistindo da palavra vazia, é uma
linguagem sobre qualquer alfabeto. Note que: ∅ = 6 {ε}

Teoria das Linguagens FormaisConceitos Fundamentais – p. 9/1


Alfabetos e Linguagens: Definições
A maioria das linguagens de interesse é infinita, assim, descrevemos
linguagens infinitas por meio do esquema:

L = {w | w ∈ Σ⋆ e w tem a propriedade P }

Se Σ é um alfabeto finito, então Σ⋆ é certamente infinito, porém


contável

Teoria das Linguagens FormaisConceitos Fundamentais – p. 10/1


Alfabetos e Linguagens: Definições
Como as linguagens são conjuntos, aplicam-se sobre elas as
mesmas operações: união, intersecção e diferença, além da
concatenação e do fechamento.
Concatenação de linguagens:
se L1 e L2 são linguagens sobre o
alfabeto Σ, sua concatenação é L1 .L2 em que:

L = {w ∈ Σ⋆ | w = xy para algum x ∈ L1 e y ∈ L2 }

∅.L = L.∅ = ∅ e ε.L = L.ε = L


(L⋆ ): compreende todas as cadeias obtidas pela
Fechamento de Kleene
concatenação de zero ou mais cadeias de L.

L⋆ = {w ∈ Σ⋆ | w = w1 . · · · .wk para algum k ≥ 0, com w1 , · · · , wk ∈ L}

Teoria das Linguagens FormaisConceitos Fundamentais – p. 11/1

Das könnte Ihnen auch gefallen