PDF e-Pub

## Section: New Results

### Structuring a refinement engine using logic programming

Participants : Dale Miller, Claudio Sacerdoti Coen [University of Bologna] , Enrico Tassi [MSR Inria Joint Lab] .

The Matita theorem prover is an implementation of the Calculus of Inductive Constructions that is meant to be more accessible (as an implementation) than the Coq system. In an effort to make the Matita kernel more accessible and more flexible, the implementers of that system are experimenting with using a logic programming language similar to $\lambda$Prolog as the control system of the refinement mechanism. In order to use such a logic programming language in this capacity, the notion of flexible goal suspension and when declarations are needed. Such a $\lambda$Prolog re-implementation has been written and some experiments in deploying such a system are underway. Formal aspects of $\lambda$Prolog specifications have also been performed using the Abella theorem prover.