Utilize este link para identificar ou citar este item: https://bdm.unb.br/handle/10483/31230
Arquivos neste item:
Arquivo Descrição TamanhoFormato 
2021_CaioAlbuquerqueBrandao_tcc.pdf337,53 kBAdobe PDFver/abrir
Título: Sobre a confluência do cálculo λx na representação nominal
Autor(es): Brandão, Caio Albuquerque
Orientador(es): Moura, Flávio Leonardo Cavalcanti de
Assunto: Cálculo lambda
Representação matemática
Provador de teoremas interativo
Data de apresentação: 9-Nov-2021
Data de publicação: 27-Jun-2022
Referência: BRANDÃO, Caio Albuquerque. Sobre a confluência do cálculo λx na representação nominal. 2021. 40 f., il. Trabalho de conclusão de curso (Bacharelado em Ciência da Computação) — Universidade de Brasília, Brasília, 2021.
Resumo: O cálculo lambda é um modelo teórico do início da década de 1930 e é a base do paradigma de programação funcional utilizado por linguagens como Ocaml, Haskell e Lisp. Com o desenvolvimento de software assistentes de prova ao longo dos anos, diversas formas de representação do cálculo lambda em ambiente formal foram propostas, dentre elas a que mais se assemelha à representação em papel e lápis é a representação nominal. A principal operação do cálculo lambda, o conceito da β-redução, que associa uma aplicação de uma abstração a uma operação de substituição, pode ser entendida como um passo de computação. Com a necessidade de um formalismo que trouxesse a operação de substituição ao nível da linguagem objeto foram criados os cálculos com substituições explícitas, dentre eles o abordado por esse trabalho, o cálculo λx. A confluência é uma propriedade que afirma que qualquer divergência converge. No cálculo λx essas reduções são representadas pela regra B e pelo conjunto de regras x. Uma forma de provar que o cálculo lambda é confluente é através da propriedade Z composicional. Nesse trabalho introduzimos o cálculo lambda e algumas das suas representações em assistentes de prova, depois introduzimos o software usado nesse trabalho, o Coq, e depois passamos pelas contribuições desse trabalho para a infraestrutura da prova da confluência de λx.
Abstract: The lambda calculus is a computational model from the 1930s and it is the base of the functional programming paradigm used in languages such as Ocaml, Haskell and Lisp. Through the years with the development of proof assistant software, several ways of representing the lambda calculus were proposed, among them the one which is the most similar with paper and pencil reasoning is the nominal representation. The main operation of lambda calculus, the concept of β-reduction, which associates an application of an abstraction with a substitution operation can be understood as a computational step. In the need of a formalism that brings the substitution to the object level, the lambda calculi with explicit substitution were created, among them the one which was considered in this project, λx. Confluence is a property that says all divergence can be joined. In λx, the reduction steps are the rules B and the set of rules x. A way to prove that the lambda calculus is confluent is using the compositional Z property. In this project we introduce the lambda calculus and some of its representations in proof assistant software, then we introduce the software used in this project, Coq, and then we talk about some of the contributions of this project to the infrastructure of the proof of confluence of λx.
Informações adicionais: Trabalho de conclusão de curso (graduação) — Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2021.
Licença: A concessão da licença deste item refere-se ao termo de autorização impresso assinado pelo autor que autoriza a Biblioteca Digital da Produção Intelectual Discente da Universidade de Brasília (BDM) a disponibilizar o trabalho de conclusão de curso por meio do sítio bdm.unb.br, com as seguintes condições: disponível sob Licença Creative Commons 4.0 International, que permite copiar, distribuir e transmitir o trabalho, desde que seja citado o autor e licenciante. Não permite o uso para fins comerciais nem a adaptação desta.
Aparece na Coleção:Ciência da Computação



Todos os itens na BDM estão protegidos por copyright. Todos os direitos reservados.