PROVADORES DE TEOREMAS:
Visão Geral
André Luiz de Lacerda
Ricardo Trizzolini Piekarski
1
Introdução - Objetivo
• O que são provadores de teoremas?
• Exemplos
• Aplicações
• Peculiaridades
2
"Fonte: SXC. Xadrez. Disponível em: <http://www.sxc.hu/browse.phtml?f=view&id=739384>. Acesso em: 7 maio 2009."
Introdução - Conceito
• Ferramentas
• Programas de computador
• Conjunto de sentenças → Consequência lógica
• Não restrito às exatas
• Automated Theorem Provers (ou ATPs)
• CASC
3
Tipos de provadores
Baseados em métodos
• Resolução
• Tableaux Analíticos
• Tableaux KE
4
"Fonte: SXC. Tarefa de Lógica. Disponível em: <http://www.sxc.hu/browse.phtml?f=view&id=860172>. Acesso em: 7 maio 2009."
Baseados no método da Resolução
EQP (Equational Theorem Prover)
Lógica equacionais de primeira ordem
↑ Boas implementações de unificação
↑ Correspondência associativo-comutativa
↑ Estratégias para raciocínio equacional
↑ Buscas rápidas
5
Baseados no método da Resolução
EQP (Equational Theorem Prover)
↓ Estabilidade
↓ Aparência
↓ Sem garantias
↓ Execução por linhas de comando
6
"Fonte: SXC. Labirinto. Disponível em: <http://www.sxc.hu/browse.phtml?f=view&id=1008265>. Acesso em: 7 maio 2009."
Baseados no método da Resolução
Otter / Mace2
Organized Techniques for Theorem-proving and Effective Research
• Lógicas equacionais de primeira ordem
• Otter → provador de teoremas
• Mace2 → buscador de modelos finitos e
contra-exemplos
7
Baseados no método da Resolução
Otter / Mace2
Organized Techniques for Theorem-proving and Effective Research
↑ 1° de sua categoria a ser amplamente distribuído
↑ Pioneiro em diversas técnicas de implantação
↑ Domínio público
↓ Execução por linhas de comando
↓ Não tem mais sido desenvolvido
8
Baseados no método da Resolução
Prover9 / Mace4
Sucessor do Otter
↑ Constante desenvolvimento
↑ Interface Gráfica
9
"Fonte: Prover9-Mace4 v05. Disponível em: <http://www.cs.unm.edu/~mccune/prover9/gui/v05.html>. Acesso em: 5 maio 2009."
Baseados em Tableaux Analíticos
jTAP – A Tableau Prover in Java
Lógicas equacionais de primeira ordem
↑ Pode ser adaptável a outras lógicas
↑ Implementado em Java
↑ Roda em forma de Applet direto do website
10
Baseados em Tableaux Analíticos
WDTP – Wagner Dias Tableau Prover
•
Estrutura orientada a objetos (Object-oriented
framework) implementada em C++
•
Batizado por Adolfo Neto
•
Adolfo também fez algumas modificações:
–
–
Provas mais curtas em Tableaux KE
Adaptações para Windows XP e Linux
11
Baseados em Tableaux Analíticos
WDTP – Wagner Dias Tableau Prover
↑ Base para implementação de métodos:
‒ Tableaux Analíticos de Smullyan
‒ Tableaux KE de Mondadori e D'Agostino's
‒ Tableaux KE-S3 de Finger e Wasserman
↑ Adaptado ao Windows e Linux
↑ Permite imprimir a árvore de prova completa
↓ Execução em linhas de comando
12
Baseados em Tableaux KE
KEMS (KE-based Multi-Strategy theorem prover)
• Implementado em Java e AspectJ
↑ Multi-estratégia
↑ Interface gráfica
13
"Fonte: SXC. Jogo de Damas. Disponível em: <http://www.sxc.hu/browse.phtml?f=view&id=919928>. Acesso em: 7 maio 2009."
Outros
• Tarski’s World
• Vampire
• PLLIC
• Isabelle
"Fonte: Usando Tarski’s World. Disponível em: <http://www.mat.uc.pt/~picado/ediscretas/apontamentos/Tarski.pdf >. Acesso em: 6 maio 2009. 8 p"
"Fonte: MARQUES, Everton G. Estudo e estado da arte dos provadores automáticos de teoremas: Trabalho de graduação. Disponível em:
<http://www.cin.ufpe.br/~tg/2007-2/egm2.pdf>. Acesso em: 5 maio 2009. Recife, 2008. 65 p"
14
Expectativas
• Cooperatividade
• Um ATP seguindo
padrão internacional
• Divisão de tarefas
• Implementação de
lógicas mais complexas
"Fonte: SXC. Quebra-cabeças. Disponível em: <http://www.sxc.hu/browse.phtml?f=view&id=796887>. Acesso em: 7 maio 2009."
15
Download

PROVADORES DE TEOREMAS: