Académique Documents
Professionnel Documents
Culture Documents
Linguagens Formais
Palmas 2015
Linguagens Formais
Segundo MENEZES (1997), os estudos sobre linguagens formais iniciaram-se na dcada
de 50 com o objetivo de definir matematicamente as estruturas das linguagens naturais. No
entanto, verificou-se que a teoria desenvolvida aplicava-se ao estudo das linguagens de
programao.
A teoria das linguagens formais o estudo matemtico que possibilita o reconhecimento
de linguagens, consequentemente suas classificaes, estrutura, caractersticas, propriedades e
inter-relacionamentos.
importante estudar Linguagens Formais, pois atravs dela podemos apoiar aspectos
tericos da Cincia da Computao e fundamentar outras diversas aplicaes computacionais.
A linguagem formal te ajuda a expressar formalmente uma linguagem computacional, por
possuir um enfoque terico em problemas da sintaxe, o ajuda a declarar como pode estar bem
formalizada a linguagem.
A sintaxe um conjunto de regras que define a forma de uma linguagem, estabelecendo a
forma de como feita as suas linguagens e suas estruturas bsicas, que so as palavras. Ao
identificar que possui algum erro entre operadores, chaves, etc. Denomina-se erro de sintaxe.
Figura 1: Diagramas Sintticos da Sintaxe
sero executadas pelo programa. atravs da semntica que conseguimos utilizar melhor e
validar uma linguagem. (PEREIRA; CAMILA; SANTIAGO, 2009).
Em linguagens formais temos um conceito de hierarquia, e a mais estudada a
Hierarquia de Chomsky, que consiste nas classes bsicas de linguagens e suas incluses. As
classes bsicas so as seguintes: Linguagens Regulares, Livres de Contexto, Sensveis ao
Contexto e Enumerveis Recursivamente. Elas sero tratadas a seguir. Noam Chomsky definiu
essas classes como potenciais modelos para linguagens naturais.
Figura 2: Relao dos tipos de linguagem
A hierarquia se deve ao fato de que cada linguagem possui uma relevncia de regras restries,
deste modo as linguagens regulares possuem mais restries perante as outras, e as linguagens livres do
contexto possuem mais restries do que as linguagens sensveis ao contexto, e assim por diante. Devido
a esse fato toda LR uma LLC, toda LLC um LSC, e toda LSC uma LRE.
A imagem a cima representa como realmente pode ser representada uma expresso regular, para
que possa ser interpretada.
Uma gramtica G regular se todas suas formas podem se colocadas de certa forma:
A a
A aB
A
Do lado esquerdo da regra h somente um no terminal ( No-terminal representado por apenas
uma letra maiscula do alfabeto portugus). Do lado direito h um terminal (representado por apenas uma
letra minscula ou dgito), sozinho, acompanhando ou no de somente um no terminal, ou h somente a
palavra vazia ().
Agora que j temos uma pequena noo do que a Mquina de Turing e Linguagens
Recursivas, podemos falar tambm sobre as Linguagens Sensveis ao Contexto (LSC).
As LSC so aquelas que podem ser aceitas por uma Mquina de Turing com Fita
Limitada (MTFL), que basicamente uma Mquina de Turing com a fita limitada ao tamanho da
entrada mais duas clulas contendo os identificadores de inicio e fim. MTFL um Autmato
Limitado Linearmente.
A classe das LSC est contida propriamente na classe das Linguagens Recursivas.
Na LSC, assim como nas demais linguagens, temos uma gramtica que gera a linguagem,
neste caso temos a Gramtica Sensvel ao Contexto (GSC), sendo que, G= (V, T, P, S), desde
|.
pode ser representada atravs de uma gramtica sensvel ao contexto. Logo, trata-se de uma linguagem
sensvel ao contexto, no livre de contexto, e sua simples existncia demonstra o teorema.
Teorema 3.15 (Pumping Lemma para linguagens regulares)
Seja L um conjunto regular infinito. Ento existe uma constante n, dependente apenas de L, tal que, para
quaisquer sentenas w L, com |w| n, w pode ser subdividida em trs subcadeias x, y e z, de tal forma
que w = xyz , 1 |y|, |xy| n, ou seja, 1 |y| n, e, alm disso, xyi z L, i 0.
Referncias
PEREIRA, Crston. Linguagens de programao: Sintaxe e Semntica. 2009. Univasf. Disponvel em:
<http://www.univasf.edu.br/~criston.souza/algoritmos/arquivos/aula02.3.pdf>. Acesso em: 18 fev. 2015.
PEREIRA, Mirin; CAMILA, Priscilla; SANTIAGO, Suzy. Sintaxe e Semntica de Linguagens de Programao.
2009. Disponvel em: <http://sibetim.blogspot.com.br/2009/03/sintaxe-e-semantica-de-linguagens-de.html>. Acesso
em: 18 fev. 2015.
SILVA FILHO, Manoel Ferraz. Uma anlise sobre a importncia da disciplina linguagens formais e autmatos
na opinio dos alunos de licenciatura em computao da UEFB, Campus VII - Patos. 2012. Disponvel em:
<http://dspace.bc.uepb.edu.br:8080/jspui/bitstream/123456789/3706/1/PDF%20%20Manoel%20Ferraz%20da%20Silva%20Filho.pdf>. Acesso em: 19 fev. 2015.
PRADO, Simone Domingos. Teoria da computao e Linguagens formais,
em:<http://wwwp.fc.unesp.br/~simonedp/zipados/TC03.pdf>. Acesso em: 18/02/2015.
2008.
Disponvel