Linguagens Formais Automatos
Por: Felipe Portela • 23/6/2015 • Artigo • 1.547 Palavras (7 Páginas) • 1.034 Visualizações
[pic 1]
UNIÃO EDUCACIONAL DO PLANALTO CENTRAL
FACULDADES INTEGRADAS DA UNIÃO EDUCACIONAL DO PLANALTO CENTRAL
Linguagens Formais e
Autômatos
Weverson Garcia Medeiros
Professor: Leonardo Alves
GAMA-DF
27 Abril de 2015
Weverson Garcia Medeiros
linguagens Formais e autômatos:
trabalho apresentado pelo aluno Weverson Garcia Medeiros do curso de sistemas de informação do 5 semestre,
da matéria de: Linguagens formais e autômatos, sob a orientação do professor Leonardo Alves.
GAMA-DF
27 abril de 2015.
Conjuntos
Os Símbolos representam em um grupo de valores, em forma de letras separados por vírgulas dentro de um colchete. E para representar conjuntos vazios utilizamos ou colchetes ou símbolos vazios ø que é o mais comum.
Definições de conjuntos
Nos grupos existem finitos e infinitos podendo se representado dessa forma:
A={x/ x e R} A é x tal que x é real.
Operações em conjuntos
As operações em conjunto são bem simples: se um conjunto for subconjunto de outro ou vice versa usa – se a letra C maiúscula para definir que o conjunto em questão esta contido em outro.
Exemplo: A={1,2,3,4} B={2,3} concluímos então:
que B esta contido em A. Mas A não está contido em B.
Já a união representada pelo símbolo U significa que haverá a união dos dois conjuntos virando assim somente um conjunto mais sem repetição.
Exemplo: A={2,3,4,5} B={2,3,4,5,6,7} concluímos então:
AUB={2,3,4,5,6,7}.
Temos também a intercessão representada pelo símbolo ˆ prevalecendo assim só os símbolos em comum.
Exemplo: A={1,2,3} B={2,3,4} concluímos então:
AˆB={2,3}.
A potencialização é representada por 2 elevado a A , sendo A um conjunto. A potencialização e a combinação de todos os símbolos possíveis dentro do conjunto.
Exemplo: A={1,2} 2 ˆA ={(1),(2),(1,2)}.
Representados os valores 1 e 2 podemos chegar a esses 3 valores 1,2, 1,2 que são as combinações possíveis.
Funções
A função é a associação entre dois conjuntos , por isso todos os itens de um conjunto x devem possuir uma imagem em y.
Exemplo: os elementos do conjunto X devem ter somente uma Saída para cada elemento do conjunto Y.
Mas o conjunto X não pode ter duas saídas para os elementos de Y.
Um exemplo bem clássico:
Vamos supor que o conjunto X seja mulheres e o conjunto Y homem.
No conjunto das mulheres , uma mulher não pode ter dois homens , mais o inverso sim. O mesmo homem pode ter duas mulheres.
Grafos
Bom os grafos , são par ordenados que contem vértices e arcos. E que juntos forma associações bem definidas. Essa estrutura de grafos ela auxilia uma representação gráfica. Fazendo com que os nos são derrotados por círculos e os arcos por linhas que são unidos pares de vértice.
Se fossemos unir graficamente A1 por exemplo ficaria dessa forma:
A1= {(0,1),(0,2),(0,3),(1,3),(2,3)}
Para fazermos os grafos sem ser ordenados não precisamos de setas para apontar mais sim seguir a logica certa que levara aos pares ordenados na forma correta.
Já nos pares ordenados como o nome já diz precisamos de mostrar a ordem indicando a seta para o respectivo numero da sequencia.
Árvores
Arvores são formatos especiais de grafo , que possui vértice com NE=0.
Mas as arvores seguem uma sequencia de ancestralidade através do nó chamado pai apontando para próxima da sequencia. E como se fosse a genealogia de uma família vai vindo do mais velho para o mais novo.
Conceitos Básicos
As linguagens de programação conhecidas como linguagens artificiais, criadas a partir da teoria das linguagens formais, que foram desenvolvidas na década de 50 como o objetivo inicial de desenvolver teorias relacionadas a linguagens naturais.
Tendo assim a analise léxica. A analise ela serve para transformar sequencias de caracteres em sequencias de símbolos. Existem dois métodos para tal transformação: a primeira e utilizando de uma tabela de símbolos , onde são registrados os identificadores e as palavras chaves do texto fonte.
O segundo método e a descrição dos símbolos através de expressões regulares.
Já a analise sintática serve: para analisar uma sequencia de entrada por exemplo: a entrada de um arquivo de computador ou do teclado , essa analise faz parte de um compilador.
Sintaxe e semântica
As linguagens formais foram criadas para solucionar os problemas sintáticos das linguagens. A sintaxe foi tratada inicialmente e estudada antes da semântica, com tudo muitos acreditavam que a maior parte dos problemas estavam associados a ela, dando-se assim uma grande ênfase a sintaxe. A teoria da sintaxe possui construções matemáticas bem definidas e mundialmente relacionadas. Podemos ver que uma linguagem de programação, ou qualquer modelo matemático, pode ser visto como uma entidade:
...