Linguagens Formais e Autômatos (Tutoria)

Unilasalle - 2023/2

Objetivos

Apresenta modelos matemáticos para formalização, especificação e reconhecimento de linguagens computacionais, capacitando para a compreensão e/ou desenvolvimento de software básico incluindo compiladores e linguagens de programação; estuda os principais fundamentos da teoria da computação associados à computabilidade e solucionabilidade de problemas, bem como formalização de programas, máquinas, computação e formalismos que os definem.

Pré-requisitos

Embora os pré-requisitos não sejam obrigatórios, o seu domínio auxiliará muito na evolução do aprendizado:

Competências trabalhadas

As competências trabalhadas na disciplina são:

Unidades de aprendizagem

Estratégias metodológicas

Elaboração de artigos e trabalhos práticos relacionados às unidades de aprendizagem

Cronograma

Grau Descrição Peso na nota final
G1 Implementação de um programa para simulação de autômatos finitos determinísticos. 2,0
G1 Implementação de um programa para a conversão de autômatos finitos não-determinísticos em autômatos finitos determinísticos. 2,0
G1 Resolução de exercícios de prova matemática para autômatos finitos. 1,0
G2 Elaboração de artigo sobre a definição de uma linguagem de programação utilizando gramáticas livres de contexto. 2,0
G2 Elaboração de artigo e apresentação sobre decidibilidade e a Máquina de Turing. 2,0
G2 Implementação de um simulador de Máquina de Turing. 1,0

Procedimentos e Critérios de Avaliação

A nota final será composta por trabalhos práticos de implementação, e será calculada com a média (M) dada pela regra M = (G1 + G2) / 2, sendo G1 e G2 graus parciais formados totalmente por trabalhos práticos.

Para obter a aprovação, o aluno deve obter uma média (M) igual ou superior a 6, com frequência mínima de 8 encontros presenciais.

Material Complementar

Bibilografia