ADVANCE D3.3 Improvement of automated proof

From Event-B
Revision as of 17:18, 26 August 2013 by imported>Laurent (→‎Overview)
Jump to navigationJump to search

Overview

In an Event-B development, more than 60% of the time is spent on proofs. That explains why all users are naturally keen for the proofs to be as automatic as possible and why the automated prover enhancement was a continuous task since the inception of the Rodin platform. Enhancing the automated prover can be achieved by core platform refactorings and additions to it, such as the addition of integrated reasoners and tactics, but also by the integration of some external reasoning ability such as external provers (e.g., SMT solvers).
Within the second period of ADVANCE, it consisted into two tasks: the addition of rewriting and inference rules, and the release of a stable version of SMT solvers plug-in, which increases the rate of automatically discharged proof obligations.

Motivations / Decisions

Integrated provers
The proportion of automatically discharged proof obligations heavily depends on Auto-Tactic configuration. Sometimes, the automatic prover fails because the tactics are applied in an unappropriate order. Since Rodin 3.0, plug-ins can contribute their own default profiles (through extension points, for conveniency) to make it easier to provide users with enhanced automatic proving capabilities.

SMT Solvers
SMT plug-in version 1.0.0 has been released. This version fixes stability issues of the previous releases. TODO

Available Documentation

A page[1] concerning tactic profiles is available in the user manual.
A page[2] is dedicated to the SMT Solver integration plug-in on the Event-B wiki.

Planning

Enhancement to automated proof will continue during the ADVANCE project. Notably, the remaining missing rewriting[3] and inference rules[4], that have already been documented, will be implemented together with new rules.

Maintenance of the SMT solver integration plug-in will be ensured within the time frame of ADVANCE. In particular, the translation to SMT-LIB will be completed by adding some support for mathematical extensions.

Finally, connecting other provers (such as Super Zenon and iProver) to the platform will be investigated.

References