Adding Automatic Inference Reasoners
From Event-B
Beside the input sequent, reasoners of this type does not have any extra input and automatically applies an inference rule to the input sequent. As an example, consider the following inference rule (called IMP_R).
IMP_R |
Create the Reasoner
- Create a new plug-in project, e.g. org.eventb.contributors.seqprover.implinference. Deselect the plug-in options for "Generating an activator" and "Contribution to the UI".
- Add dependency on the project org.eventb.core.seqprover
- Add an extension for org.eventb.core.seqprover.reasoners for our implication rewrite reasoner, e.g.
<extension point="org.eventb.core.seqprover.reasoners"> <reasoner class="org.eventb.internal.contributors.seqprover.implinference.AutoInference" id="autoInference" name="%autoInferenceName"/> </extension>
(add the key autoInferenceName to the plugin.properties accordingly).
- We will use Tom to implement the reasoner class itself.