Generic Instantiation Plug-in User Guide
Introduction
The Generic Instantiation (GI) Feature plug-in allows to instantiate and reuse generic developments in other formal developments..
See the Generic Instantiation page for technical details.
Installing and Updating
Setup
The following steps will guide you through the setup process:
- Download Rodin for your platform.
- Extract the downloaded zip file.
- Start Rodin from the folder where you extracted the zip file in the previous step.
- Install the Generic Instantiation Feature plug-in:
- In the menu choose Help -> Install New Software...
- In the Work with dropdown list, choose the location URL: Rodin
- Select the Generic Instantiation Feature feature under the Utilities category, then click the check box
- Click Next, after some time, the Install Details page appears
- Click Next and accept the license
- Click Finish
- A Security Warning window may appear: click OK
- Restart Rodin as suggested.
Now you are ready to use the Generic Instantiation Feature plug-in.
Update
The following steps will guide you through the update process:
- In Rodin open the preferences (Window -> Preferences or for Mac: Rodin -> Preferences)
- Find Install/Update -> Automatic Updates
- Select Automatically find new updates and notify me
As soon as Rodin finds a new update it will ask you if you would like to install it.
Release Notes
See the Generic Instantiation Feature Release History.
Instantiating
The example followed here to demonstrate the GI plug-in is from File:Supporting Reuse of Event-B Developments through Generic Instantiation.pdf
Running the Instantiate Action
The Instantiate action launches the instantiation wizard, which will perform the generic instantiation according to the preferences. It is available:
1. Either from the toolbar of the Event-B explorer. | 2. Or from the contextual menu, when right-clicking on a machine. |
Selecting the Pattern Machine and Problem Machine
- Pattern machine is the machine to be instantiated and reuse.
- Problem machine (optional) is the machine to be refined by the instantiating machine. In other words, the instantiating machine is a refinement of the problem machine.