Você está na página 1de 13

ISCIM

Linguagens Formais e Autômatos

CONCEITOS BÁSICOS DE
LINGUAGENS
Introducao
Para respondermos esta questão precisamos primeiro responder o que é
Linguagem Formal, e para isto precisamos antes responder o que é Linguagem.
Inicialmente, de maneira informal, podemos definir uma linguagem como
sendo uma forma de comunicação.
Elaborando um pouco mais esta definição, podemos definir uma linguagem
como sendo “um conjunto de elementos (símbolos) e um conjunto de métodos
(regras) para combinar estes elementos, usado e entendido por uma
determinada comunidade”.
Exemplos:
1 - Linguagens Naturais (ou idiomáticas)
2 - Linguagens de Programação, de Controle, de Consulta
3 – Protocolos de Comunicação
Introducao
Contudo, apesar de intuitiva, esta definição não nos permite responder
satisfatoriamente as duas primeiras questões; precisamos antes dar um
sentido formal para a definição de linguagem. Faremos isto a seguir:
Conceitos Basicos
Os símbolos, também denominados átomos, são representações gráficas,
indivisíveis, empregadas na construção de cadeias. Estas são formadas
através da justaposição de um número finito de símbolos, obtidos de
algum conjunto finito não-vazio, denominado alfabeto.
Ex: a, 5, if, begin

Perceba que não há uma definição formal para “símbolo”.


Conceitos basicos
Alfabeto (ou vocabulário): É um conjunto finito, não vazio, de símbolos
(elementos).
Representaremos um alfabeto por letras minúsculas do final do alfabeto
romano (w,x,y,z.), ou letras minúsculas do alfabeto grego (α,β,δ ...).
Ex; w={a, b, c,...,z}

Sentenças ou Cadeias: Uma sentença sobre um alfabeto w, é uma


sequência (ou cadeia) finita de símbolos do alfabeto.

Exemplo de sentenças sobre w = { a , b }: a, b, aa, ab, bb, aaa, aab, aba,


baa, ...
Conceitos Basicos
Tamanho de uma sentença: Seja w uma sentença ∀.
O tamanho da sentença w, denotado por |w|, é definido pelo número de
símbolos (elementos do alfabeto) que compõem w.

Exemplos: Seja w = { a , b , c }
se x = aba, então |x| = 3
se x = c, então |x| = 1

Sentença vazia: É uma sentença constituída de nenhum símbolo; isto é, uma


sentença de tamanho 0 (zero).
Observações: - Representaremos a sentença vazia por ε (épsolon).
- Por definição, |ε| = 0
Potência de uma sentença:

Seja w uma sentença ∀. A n-ésima potência de w,


representada por wn, significa w repetido n vezes.

Exemplos: se x = ab, então x3 = ababab


Para ∀ x, x0 = ε
Concatenacao de Sentencas
Duas cadeias, sejam elas elementares ou não, podem ser anexadas,
formando uma só cadeia, através da operação de concatenação.
Essa operação fornece como resultado uma nova cadeia, formada pela
justaposição ordenada dos símbolos que compõem os seus operandos
separadamente.
Observe-se que a operação de concatenação entre uma cadeia e um
símbolo é realizada através da concatenação da cadeia em questão com a
cadeia elementar correspondente ao símbolo.

Denota-se a concatenação de duas cadeias α e β como α.β ou,


simplesmente, αβ .
EXEMPLOS
Considere o alfabeto w = {a,b,c,d}, e as cadeias α= abc, β= dbaca e Ω = a.

A concatenação da cadeia α com a cadeia β é assim obtida:


α · β = αβ = abcdbaca, e | αβ | = | α|+| β | = 3+5 = 8

Da mesma forma, obtém-se a concatenação de β com α :


β·α = β α = dbacaabc, e, | βα | = | β |+| α| = 5+3 = 8

Note-se que, neste exemplo, αβ ≠ β α.

A concatenação da cadeia α com a cadeia elementar Ω é dada por:


α · Ω = α Ω = abca, e | α Ω | = | α |+| Ω | = 3+1 = 4

Finalmente, a concatenação da cadeia elementar Ω com a cadeia β é obtida como:


Ω·β = Ωβ = adbaca, e | Ω β | = |Ω |+| β | = 1+5 = 6
PROPRIEDADES DA CONCATENAÇÃO
DE CADEIAS
Como se pode perceber, a operação de concatenação, embora
associativa, não é comutativa.

Dadas três cadeias α,β, δ quaisquer, pode-se sempre afirmar que (αβ) δ = α(βδ
).
Por outro lado, dependendo dos particulares α e β considerados, pode ser que
ou αβ≠βα ou αβ = βα (por exemplo, se α e/ou β forem cadeias vazias ou,
ainda, se α = β).
No caso da cadeia vazia e (elemento neutro em relação ao operador de
concatenação) são válidas as seguintes relações:
αε =εα= α
| αε | = |εα| = |α|
PREFIXOS E SUFIXOS

Diz-se que uma cadeia α é um prefixo de outra cadeia β se for possível


escrever β como αδ . A cadeia α é dita sufixo de β se β puder ser escrita
como δ α.

Em ambos os casos, admite-se a possibilidade de δ = ε. Nos casos em


que δ ≠ε , diz-se que α é, respectivamente, prefixo próprio ou sufixo
próprio da cadeia β .

Note que a cadeia vazia ε pode ser considerada simultaneamente prefixo


ou sufixo de qualquer cadeia.
CADEIA REVERSA

Uma cadeia α é dita o reverso de uma cadeia β , denotando-se o fato por


α = β𝑅, se α contiver os mesmos símbolos que β , porém justapostos no
sentido inverso, ou seja:
se α =a1a2...an−1an então b =anan−1...a2a1

Por definição, ε𝑅 = ε .

Exemplo 1.4
Considerem-se as cadeias α = 123abc e β = d. Então, α𝑅 = cba321 e β
𝑅= d.
Fechamento de um Alfabeto
Seja w um alfabeto ∀.
- O fechamento reflexivo (ou simplesmente fechamento) de w,
representado por w*, é dado pelo conjunto de todas as possíveis
sequências que podem ser formadas a partir de w inclusive a sentença
vazia.
- O fechamento transitivo (ou fechamento positivo) de w, representado
por w+, é dado por w* - { ε }.

Exemplos:
Seja w = { 0, 1 }, temos que:
w* = {ε, 0, 1, 00, 01, 11, 000,...}
w+ = {0, 1, 00 ,01, 11, 000,...}

Você também pode gostar