ADVANCE D3.3 Improvement of automated proof: Difference between revisions
imported>Laurent |
imported>Nicolas m Fix title levels |
||
Line 1: | Line 1: | ||
= Overview = | == 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. | 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).<br> | 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).<br> | ||
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. | 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 = | == Motivations / Decisions == | ||
'''Integrated provers'''<br/> | '''Integrated provers'''<br/> | ||
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 convenience) to make it easier to provide users with enhanced automatic proving capabilities. | 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 convenience) to make it easier to provide users with enhanced automatic proving capabilities. | ||
Line 12: | Line 12: | ||
{{TODO}} | {{TODO}} | ||
= Available Documentation = | == Available Documentation == | ||
A page<ref>http://handbook.event-b.org/current/html/preferences.html#ref_01_preferences_auto_post_tactic</ref> concerning tactic profiles is available in the user manual.<br> | A page<ref>http://handbook.event-b.org/current/html/preferences.html#ref_01_preferences_auto_post_tactic</ref> concerning tactic profiles is available in the user manual.<br> | ||
A page<ref>http://wiki.event-b.org/index.php/SMT_Solvers_Plug-in</ref> is dedicated to the SMT Solver integration plug-in on the Event-B wiki. | A page<ref>http://wiki.event-b.org/index.php/SMT_Solvers_Plug-in</ref> is dedicated to the SMT Solver integration plug-in on the Event-B wiki. | ||
= Planning = | == Planning == | ||
Enhancement to automated proof will continue during the ADVANCE project. Notably, the remaining missing rewriting<ref>http://wiki.event-b.org/index.php/All_Rewrite_Rules</ref> and inference rules<ref>http://wiki.event-b.org/index.php/Inference_Rules</ref>, that have already been documented, will be implemented together with new rules. | Enhancement to automated proof will continue during the ADVANCE project. Notably, the remaining missing rewriting<ref>http://wiki.event-b.org/index.php/All_Rewrite_Rules</ref> and inference rules<ref>http://wiki.event-b.org/index.php/Inference_Rules</ref>, that have already been documented, will be implemented together with new rules. | ||
Line 23: | Line 23: | ||
Finally, connecting other provers (such as Super Zenon and iProver) to the platform will be investigated. | Finally, connecting other provers (such as Super Zenon and iProver) to the platform will be investigated. | ||
= References = | == References == | ||
<references/> | <references/> | ||
[[Category:ADVANCE D3.3 Deliverable]] | [[Category:ADVANCE D3.3 Deliverable]] |
Revision as of 12:33, 27 August 2013
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 convenience) 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.