Maude download and installation
Maude 3.1 runs on many Unix variants, including Linux.
In this section, we assume a Linux configuration. Please, substitute your platform name for 'linux' in what follows if you download for another platform. In any case, please consider subscribing to the Maude users mailing list, as this is also the mechanism by which we will make announcements about the system.
The Maude system download consists of three parts: Core Maude, Full Maude, and documentation and examples.
Core Maude 3.2
The Linux64 and macOS versions of Maude 3.2 are available at its GitHub site. Its sources are available from the same place. You can find instructions together with the sources.
To install from one of the above binaries, simply extract the downloaded zip file. This generates the folder with the following files in it:
file.maude linear.maude machine-int.maude maude.[linux64|darwin64] metaInterpreter.maude model-checker.maude prelude.maude process.maude socket.maude smt.maude term-order.maude
Depending on your system you can now run Maude by starting the appropriate executable file: maude.linux64 or maude.darwin64.
Full Maude 3.2
Full Maude is written in Maude, and is thus platform-independent. Download Full Maude 3.2 and save it into the Core Maude directory.
Maude manual and primer
Main changes from Maude 3.1 to 3.2
Given the following general classes of theories E:
- (1) Typed B-unification and B-matching for B any combination of associativity (A) and/or commutativity (C) and/or unit element (U) axioms.
- (2) Typed E U B-unification and matching in the user-definable infinite class of theories E U B with B as in (1), and E U B having the finite variant property
- (3) Typed E U B-unification for the infinite class of user-definable theories E U B with B as in (1), and E confluent, terminating, and coherent modulo B.
Maude 3.2 provides efficient support for:
- computing minimal complete sets of most general B- (resp. E U B-) unifiers for classes (1) and (2) except for the A-without-C case;
- a new E U B-matching algorithm for class (2); and
- a new symbolic reachability analysis for concurrent systems based on narrowing with transition rules modulo equations E U B in class (2) enjoying powerful state-space reduction capabilities based on the minimality and completeness feature (i) and on "folding" less general symbolic states into more general ones through subsumption.
Change list from Maude 3.0 to 3.1
- Support for unification modulo associativity-identity,
- Support for the generation of irredundant unifiers,
- Support for the filtering of variant unifiers using variant subsumption,
- Support for the generation of variant matchers,
- An implementation of Unix processes as Maude external objects,
- Several improvements in the presentation of results,
- Several improvements in the handling of control-c,
- Some bugs fixed, and
- Some improvements in syntax error detection and recovering.
(If you use XEmacs, then you might find the Maude mode for XEmacs written by Kai Brünnler or the Maude mode written by Ellef Gjelstad useful. Extract the mode using the command "gunzip -c maude-mode.tar.gz | tar -xvf -" and follow instructions in maude-mode/README. Note that the Maude mode does not run under GNU Emacs. If you are using Emacs 24 please consider to use the maude-mode written by Santiago Saavedra. Please see the README for details. There are also language packages for Atom, Visual Studio Code, and other editors.