Rodin Platform 3.1 Release Notes
What's New in Rodin 3.1?
- Copy/Paste of components (machines/contexts/…) from Event-B Explorer.
- Show/Hide elements inherited from abstractions in Rodin Editor (abstract invariants/guards/…):
- This noticeably lightens model display in refinements.
- Better proving support for theories (improved sequent translation for external provers).
- Improved management of obsolete proofs: now, even a proof that contains rules from an invalid reasoner (old version or not installed) is properly displayed in the Proof Skeleton View.
In this case, an old version of 'simplification rewrites' has been used; running 'Proof Replay on Undischarged POs' will replay the old proof with the current version of the reasoner.
Changes for plug-in developers
Rodin 3.1 is built on top of Eclipse 4.4.1 (Luna).
Installing
Downloading
Upgrading from Rodin 3.0
Rodin 3.1 is based on Eclipse 4, whereas Rodin 3.0 was based on Eclipse 3. This change makes it impossible to upgrade from 3.0 to 3.1. Technically speaking, it's because of hidden package dependencies in Eclipse 4 that are not automatically discovered by the update manager. Thus, Rodin 3.1 must be downloaded.
Requirements - Compatibility
- Configurations supported (and for which binaries are provided)
- Linux 32-bit
- Linux 64-bit
- Windows 32-bit
- Windows 64-bit
- Mac OS X 64-bit
- You need to have a Java JRE (6.0 or later) installed on your computer. The Rodin product will not work with a previous version. To run Rodin 64-bit, you need a 64-bit JRE.
- To enhance your proving experience, the eclipse font settings (size, aspect...) are available from the preferences (General > Appearance > Colors and Fonts > Rodin). These settings allow you to modify the properties set on the Event-B Keyboard Text Font which is used in many views of the Proving UI. However, to enjoy these functionnalities, you need to install the Brave Sans Mono font on your system. You can download this font from the link here.
- Linux with GTK and old glibc:
- A crash or display issues may happen:
- glibc <= 2.13: SIGSEGV systematic at launch
- glibc 2.17: some actions have no effect, like right click actions in the Rodin Editor
- See [1].
- Solutions, one of:
- upgrade glibc >= 2.19
- export SWT_GTK3=0
- edit rodin.ini, in the program argument part (before vmargs), add
--launcher.GTK_version 2
- Linux 64-bit:
- package 'libc6-amd64:i386' must be installed, in particular in order to run external prover binaries
- depending on the distribution, you could instead need these packages: lib32z1 lib32ncurses5 lib32bz2-1.0
- Windows 64-bit:
- Atelier B provers work more slowly; it can cause ML to not automatically discharge some sequents that it discharges on windows 32-bit, due to its timeout. A workaround is to download a custom profile: DefaultAuto_ML800, then Window > Preferences > Event-B > Sequent Prover > Auto/Post Tactic > Profiles (tab) > Import..., point to the downloaded file, 'Select All' profiles (there are 2), OK. Then in 'Auto/Post Tactic' tab, select 'Default Auto Tactic Profile (ML 800)' profile for auto-tactics. It is the same as the 'Default Auto Tactic Profile', except ML has a longer timeout (800 ms). You can of course change this timeout by editing the 'ML (800)' profile.
- We have not noticed this problem for Linux 64-bit, nor for other platforms; however if you do, the same workaround applies.
External plug-ins
Rodin Update Site
http://rodin-b-sharp.sourceforge.net/updates
Plug-in name | Version | Status | MCV* | Release Date | Contact | Additional info | |
---|---|---|---|---|---|---|---|
Event-B Class Diagrams | 1.0.0 | available | 29th Jan 2015 | Class diagrams contained in Event-B Machines. | |||
Event-B State-machines | 3.1.0 | available | 22nd Dec 2014 | State-machines contained in Event-B Machines. | |||
Event-B State-machine Animation | 2.1.2 | available | 19th Dec 2014 | Compatible with Event-B statemachines 3.x.x and ProB 3.0.x. | |||
Project Diagram | 1.0.1 | available | 1st Feb. 2015 | Machine - Context relationship diagram | |||
UML-B | 2.3.0 | available | 18th Oct. 2014 | Original UML-B modelling environment | |||
UML-B Statemachine Animation | 1.3.0 | available | 18th Oct. 2014 | Compatible with UML-B 2.3 and ProB 3.0 | |||
Event-B EMF framework | 5.0.0 | available | 19th Dec 2014 | Provided for plug-in developers. End users should not need to install this framework. It will be installed automatically by other plug-ins as required. | |||
Event-B EMF support for extensions | 4.0.0 | available | 19th Dec 2014 | Provided for plug-in developers. End users should not need to install this framework. It will be installed automatically by other plug-ins as required. | |||
Event-B EMF support for diagrams | 5.1.0 | available | 22nd Dec 2014 | Provided for plug-in developers. End users should not need to install this framework. It will be installed automatically by other plug-ins as required. | |||
Rose | 1.6.0 | available | 22nd Dec 2014 | Mainly useful for Plug-in developers. Tree-structured editor for Event-B EMF that handles extensions without modification | |||
Shared Event Composition | 1.7.0 | not checked | 25th Nov. 2014 | Compatible with Rodin 3.0.x | |||
Refactory | 1.3.0 | not checked | 3.x.x | 6th May 2014 | Compatible with Rodin 3.0.x. | ||
Decomposition | 1.3.0 | not checked | 25th Nov. 2014 | Compatible with Rodin 3.0.x. | |||
Relevance Filter | 1.1.1 | not checked | 2.x.x | ||||
Isabelle for Rodin | not checked | 2.x.x | |||||
Theory Plug-in | 3.0.0 | available | 17th Dec 2014 | ||||
Code Generation | 0.2.5 | not checked | 29th Aug. 2013 | For Java, Ada, and OpenMP C code | |||
SMT Solvers | 1.2.1 | available | 14th March 2014 | Laurent Voisin | |||
Pattern | 0.9.0 | available | 3.x.x | 13th March 2015 | Thai Son Hoang | ||
Qualitative Probability | 0.2.2 | available | 3.x.x | 9th March 2015 | Thai Son Hoang | ||
B2Latex export | 0.5.4 | available | 2.5.x | 16th April 2012 | |||
Generic Instantiation (Soton) | 1.0.1 | not checked | 05th March 2013 | ||||
Records | 1.0.1 | not checked | 16th Oct. 2010 | No longer actively supported - please email if you wish to use this plugin | |||
Teamwork | 1.1.0 | not checked | 15th Oct. 2010 | No longer actively supported - please email if you wish to use this plugin |
B Method Update Site
http://methode-b.com/update_site/atelierb_provers
Plug-in name | Version | Status | MCV* | Release Date | Contact | Additional info | |
---|---|---|---|---|---|---|---|
Atelier-B provers | 2.1.0 | available | 3.x.x | 18th March 2014 | Read the instructions concerning 64-bit compatibility : here .
Some antiviruses are suspicious about krt.exe (the AtelierB prover executable): just authorize its execution. |
Other Update Sites
Plug-in name | Version | Status | MCV* | Release Date | Contact | Additional info | ||
---|---|---|---|---|---|---|---|---|
AnimB | not checked | Christophe Métayer | Use the update site http://www.animb.org/updatesite | |||||
Camille | 3.1.x | available | 3.1.0 | 28th January 2015 | Sebastian Krings | Use the Camille update site http://www.stups.uni-duesseldorf.de/camille_updates Make sure to install the Event-B EMF Framework version 5.0.0 or greater. | ||
Modularisation | not checked | 2.x.x | Use the update site http://www.iliasov.org/modplugin | |||||
Generic Instantiation | 1.1.0 | not checked | 3.0.x | 1 August 2014 | Thai Son Hoang | Use the update site http://gen-inst.sourceforge.net/updates | ||
Group refinement | not checked | 2.x.x | Use the update site http://iliasov.org/refplugin | |||||
Flows/Use case extension | not checked | 2.x.x | Use the update site http://iliasov.org/usecase | |||||
ProB | 3.0.x | available | 3.1.x | 15th January 2015 | Jens Bendisposto | Use the ProB update site. http://www.stups.uni-duesseldorf.de/prob_updates_rodin3 The Plug-in includes BMotion Studio For older Rodin versions use http://www.stups.uni-duesseldorf.de/prob_updates | ||
ProR | 0.12.0 | available | 3.1.x | 13th January 2015 | Lukas Ladenberger | Update site: http://update.formalmind.com/rodin Project web site: http://eclipse.org/rmf | ||
MBT plugin | 2.0 | not checked | 2.7.x | 5th of March 2012 | Alin Stefanescu | Use the update site http://fmi.upit.ro/mbt_plugin | ||
Mode/FT Views | 1.0.2 | not checked | 2.4.x | 4th July 2011 | Ilya Lopatkin | Update site: http://rodinmodeftview.sourceforge.net/ | ||
Transformation patterns | 1.0 | not checked | 2.x.x | 4th July 2011 | Ilya Lopatkin | Update site: http://rodinmodeftview.sourceforge.net/ | ||
VHDL code generator | 2.0.2 | not checked | 2.x.x | 12th March 2012 | Sergey Ostroumov | Update site: http://www.eventb-to-vhdl.tk/ |
*MCV stands for the Rodin's Maximum Compatible Version
Known plug-in incompatibilities
It unfortunately might exists some incompatibilities between plug-ins. This list might be non exhaustive and is updated accorded to user experiences. If you encounter some conflict while installing or using plug-ins, please send a mail to the Rodin User List or feel free to complete the following table.
Plug-in name | Incompatible with |
---|
Fixed Bugs and Implemented Features
Bugs
255 RODIN crash adding text to note or text box in class diagram 402 EB-Editor refuses to save 521 NewPP, PP, ML fail when datatype in type environment 571 useless missing hypotheses prevent replay 648 proving does not work with Ubuntu 64bit 652 Multiple exceptions in EventB Explorer when updating with Teamwork 706 No WD check building Partial function 710 Rodin unexpectedly empties content of a machine 712 Attempt to insert symbol into symbol table more than once 713 GenMP makes the prover loop 714 Abusive class cast in PRProofRule 715 Auto-completion partially broken in Proof Control 717 Exception when deserializing an old proof (Rodin 2.8) 718 Bug with "generalized MP" reasoner 720 No warning when quantifying an event parameter 721 Denormalized hypothesis not hidden 722 Incorrect proof skeleton 723 Replay less powerful than proving UI 726 Wrong factory after specialization 727 Type specialization incomplete 729 clicking on a proof rule for finite leads to "Parse error for expression"
Feature Requests
98 Copy & Paste 198 Copy/Paste in Event-B component context menu 306 Boolean attributes shall not change value at single click 313 Automatically discharge FINITE with inclusion 317 Add preference for SMT timeout 323 Refine PO for variant WD 326 Simplify PO for anticipated event 327 Smart focus in wizards 328 Allow rewriting based on equivalence 335 Allow ill-formed formulas in specialization 336 Add query methods to specializations 337 Sort tactic names alphabetically
Known Issues
See known bugs on SourceForge.
- Linux:
- A crash may occur when closing the Welcome page. After restarting Rodin, everything works fine.
- This is a known Webkit bug: [2]
Disclaimer
Since Rodin is continuously maintained, several unsoundness bugs which have been encountered were investigated and fixed. However, despite the total commitment of our teams to ensure the soundness of the platform, some unexpected and unknown soundness issues could remain. We would be grateful if you would report these issues to the development mailing list.
About
Rodin Platform with git commit: e1a03f3.
Developer Release date : 2014-11-28
User Release date : 2014-12-17.