42 research outputs found
Twee: An Equational Theorem Prover
Twee is an automated theorem prover for equational logic. It implements unfailing Knuth-Bendix completion with ground joinability testing and a connectedness-based redundancy criterion. It came second in the UEQ division of CASC-J10, solving some problems that no other system solved. This paper describes Twee’s design and implementation
Larry Wos - Visions of automated reasoning
This paper celebrates the scientific discoveries and the service to the automated reasoning community of Lawrence (Larry) T. Wos, who passed away in August 2020. The narrative covers Larry's most long-lasting ideas about inference rules and search strategies for theorem proving, his work on applications of theorem proving, and a collection of personal memories and anecdotes that let readers appreciate Larry's personality and enthusiasm for automated reasoning
Proving Type Class Laws for Haskell
Type classes in Haskell are used to implement ad-hoc polymorphism, i.e. a way
to ensure both to the programmer and the compiler that a set of functions are
defined for a specific data type. All instances of such type classes are
expected to behave in a certain way and satisfy laws associated with the
respective class. These are however typically just stated in comments and as
such, there is no real way to enforce that they hold. In this paper we describe
a system which allows the user to write down type class laws which are then
automatically instantiated and sent to an inductive theorem prover when
declaring a new instance of a type class.Comment: Presented at the Symposium for Trends in Functional Programming, 201
Set of support, demodulation, paramodulation: a historical perspective
This article is a tribute to the scientific legacy of automated reasoning pioneer and JAR founder Lawrence T. (Larry) Wos. Larry's main technical contributions were the set-of-support strategy for resolution theorem proving, and the demodulation and paramodulation inference rules for building equality into resolution. Starting from the original definitions of these concepts in Larry's papers, this survey traces their evolution, unearthing the often forgotten trails that connect Larry's original definitions to those that became standard in the field
ProverX: rewriting and extending prover9
O propósito principal deste projecto é tornar o demonstrador automático de teoremas Prover9
programável e, por conseguinte, extensĂvel.
Este propĂłsito foi conseguido acrescentando um interpretador de Python, uma linha de comandos e
uma biblioteca de módulos, objectos e funções escritos em Python para interagir com ficheiros de
Prover9 e Mace4. Foi também criada uma “interface” gráfica de utilizador (GUI) sob a forma de uma
aplicação web para trazer aos utilizadores um meio mais eficiente e rápido de trabalhar com
demonstrações automáticas de teoremas.
A nova biblioteca de “scripting” oferece aos utilizadores novas funcionalidades tais como correr
várias sessões simultâneas de Prover9 parando automaticamente quando uma demonstração (ou um
contraexemplo) é encontrada, elaborar estratégias para aumentar a velocidade com que as
demonstrações são encontradas ou diminuir o tamanho das mesmas. Outro módulo permite interagir
com o sistema de álgebra GAP.
Sobre esta biblioteca, muitas outras funcionalidades podem ser facilmente acrescentadas pois o
objectivo principal Ă© dar aos utilizadores a capacidade de acrescentar novas funcionalidades ao
Prover9.
Resumindo, o objectivo deste projecto é oferecer à comunidade matemática um ambiente integrado
para trabalhar com demonstração automática de teoremas.The primary purpose of this project is to extend Prover9 with a scripting language.
This was achieved by adding a Python interpreter, an interactive command line and a special
scripting library to interact with Prover9 and Mace4 files. A user interface in the form of a web
application was also created to help users achieve a more rapid and efficient way of working with
automated theorem proving.
The new scripting library offers utilities that allows a user to run several Prover9 sessions
concurrently and to create strategies for increasing the effectiveness of the proof search or to search
for shorter proofs. Another module allows to interact with the algebra system GAP.
Based on the library, many more functionalities can be easily added, as the main goal is to give users
the ability to extend the functionality of Prover9 the way they see fit.
In conclusion, the aim of this project is to offer to the mathematical community an integrated
environment for working with automated reasonin
05431 Abstracts Collection -- Deduction and Applications
From 23.10.05 to 28.10.05, the Dagstuhl Seminar 05431 ``Deduction and Applications\u27\u27 was held
in the International Conference and Research Center (IBFI),
Schloss Dagstuhl.
During the seminar, several participants presented their current
research, and ongoing work and open problems were discussed. Abstracts of
the presentations given during the seminar as well as abstracts of
seminar results and ideas are put together in this paper. The first section
describes the seminar topics and goals in general.
Links to extended abstracts or full papers are provided, if available