Difference between revisions of "Generic Instantiation User Guide"

From Event-B
Jump to: navigation, search
m (Usage)
m (Usage)
Line 17: Line 17:
 
We use a small example to illustrate the usage of the Generic Instantiation plug-in. The archive of the example is available
 
We use a small example to illustrate the usage of the Generic Instantiation plug-in. The archive of the example is available
 
[http://www.example.com here], which can be imported into the Rodin platform. The archive contains to projects called ''Channel'' and ''Negotiation''. ''Channel'' is the abtract base project. ''Negotiation'' is the concrete target project: models of ''Channel'' will be instantiated within the contexts of ''Negotiation''.
 
[http://www.example.com here], which can be imported into the Rodin platform. The archive contains to projects called ''Channel'' and ''Negotiation''. ''Channel'' is the abtract base project. ''Negotiation'' is the concrete target project: models of ''Channel'' will be instantiated within the contexts of ''Negotiation''.
 +
 +
The ''Channel'' project contains the following components:
 +
* Context ''message_ctx'' contains carrier set ''MESSAGE''
 +
[[Image:GenInst-message_ctx.jpg|Context ''message_ctx'']]
 +
 +
* Machine ''channel'' sees ''message_ctx''
 +
 +
* Context ''size_ctx'' contains constant ''max_size''
 +
[[Image:GenInst-size_ctx.jpg|Context ''size_ctx'']]
  
 
== Additional features to be investigated/implemented ==
 
== Additional features to be investigated/implemented ==
 
* There is currently no sanity checking for the instantiation. Users need to make sure that their instantiated model can be analysed and proved by Rodin.
 
* There is currently no sanity checking for the instantiation. Users need to make sure that their instantiated model can be analysed and proved by Rodin.

Revision as of 17:00, 14 May 2012

User:Son at ETH Zurich is in charge of the plug-in.

Introduction

The Generic Instantiation plug-in provides supports for instantiating an Event-B Models by providing concrete values for carrier sets and constants.


Installing and Updating

The plug-in is available through the main Rodin Update Site under Composition and Decomposition category.

News

  • 11.05.2012: Version 0.2.2 released for Rodin 2.5.*

Technical References

Usage

We use a small example to illustrate the usage of the Generic Instantiation plug-in. The archive of the example is available here, which can be imported into the Rodin platform. The archive contains to projects called Channel and Negotiation. Channel is the abtract base project. Negotiation is the concrete target project: models of Channel will be instantiated within the contexts of Negotiation.

The Channel project contains the following components:

  • Context message_ctx contains carrier set MESSAGE
Error creating thumbnail: Unable to save thumbnail to destination
  • Machine channel sees message_ctx
  • Context size_ctx contains constant max_size
Error creating thumbnail: Unable to save thumbnail to destination

Additional features to be investigated/implemented

  • There is currently no sanity checking for the instantiation. Users need to make sure that their instantiated model can be analysed and proved by Rodin.