RODIN ----- We provide Rodin installations containing required plugins for the major OS You need Java - see note below about Java versions. N.B. THE PROVIDED OSX RODIN IS CURRENTLY CONFIGURED FOR JAVA 9 For licence reasons we cannot install the AtelierB provers. Therefore, if you want to do any proofs, after downloading and opening Rodin please go to Help=install new software & select the AtelirB provers update site and install them. Alternatively you can create a new Rodin installation for your platform as follows: download Rodin from sourceforge https://sourceforge.net/projects/rodin-b-sharp/ (we used Rodin 3.4 but you may be able to use a later version if available) unzip and Start Rodin and from inside Rodin, Install the plugins listed in the image - installedPlugins.png (you will need to add the prototypes update site provided, as this contains unreleased versions of some of the plug-ins - the University of Southampton ones with a long qualifier in the version number). Other plugins are available on the following pre-configured update sites: AtelierB, ProB, Rodin update site) in preferences - Event-B - Sequent prover:- 1) change the Meta Prover to remove newPP and add ML above PP 2) import the profile proverProfile and set it as the tactic profile to be used for Auto-tactics JAVA ----- NOTE: Rodin 3.4 is based on Eclipse 4.7 A java JVM is needed to run Rodin. A late release of Java 1.8 (i.e. service number greater than 130) is preferable and should run Rodin without any changes to configuration Java 1.9 can work if you change the configuration file rodin.ini to add the following -vmargs --add-modules=ALL-SYSTEM Other Java versions may work but you may need to web-search for other config settings. MODEL _____ The model is in an archived Rodin project HL3.zip Set up a workspace from within Rodin (it will create one by default when you first start it) and then rt-click in the Event-B navigator and Import existing project into your workspace. (you click 'existing project' first, then select archive). The most abstract model is ENV_M00 and refinements continue as indicated by the integer numbers in the name. ENV indicates Environment model, VBD indicates controller model. The most concrete model discussed in the paper is VBD_M9 For validation we refined VBDM9 to VBD_M9_Anim which uses a special context ProBCtxt which contains the instantiation of track layout that is used for scenarios in the specification. The BMotion Studio visualisation M9_Vis should be opened before animating BD_M9_Anim. To start the animation, right click on BD_M9_Anim and select UML-B Simulation - Scenario checker The scenario checker shows only 'external events' and when they are selected (or double click) any subsequent internal events are automatically executed until there are none enabled. (n.b. click restart if the intialisation event is not shown when first starting) VBD_M10 (with associated animation files) is a later refinement that was produced for use with a Model based test generation tool (MoMuT). In this refinement some parameters are changed to make it more tractable for MoMuT. We have left it in this dataset because there are more pre-recorded scenarios relevant to VBD_M10_Anim. It is discussed in another paper at ICCECCS 2019. NOTE: Please restart Rodin before switching between the two BMotionStudio visualisations (for M9 and M10). This is a bug in the prototype simulator. Problems ------- If things don't work try this: restart Rodin refresh workspace (select project then press F5) project-clean - wait for building workspace to finish (bottom right corner) this may take a long time if it is re-proving everything (up to an hour).