mona (1) - Linux Manuals

mona: a decision procedure for the logics WS1S and WS2S


mona - a decision procedure for the logics WS1S and WS2S


mona [ options ] mona-file


MONA is a tool that translates formulas in the logics WS1S or WS2S into finite-state automata represented by BDDs. The formulas may express search patterns, temporal properties of reactive systems, parse tree constraints, etc. MONA also analyses the automaton resulting from the compilation, and determines whether the formula is valid and, if the formula is not valid, generates a counter-example.

The MONA project is a research project at the BRICS Research Center at University of Aarhus, Denmark.

Full documentation, GPL source code, and related research papers are available from the MONA project home page at


Output whole automaton. Default is to only output its size.
Don't analyze automaton. Default is to analyze for validity and unsatisfiability and to generate a satisfying example and counter-example.
Print elapsed time for each phase. If -s is also used, the time for each automaton operation is also printed.
Print statistics. Prints information for each automaton operation and a summary.
Print intermediate automata (implies -s).
Dump AST, symboltable, and code DAG. Useful for debugging.
Quiet, don't print progress.
Enable separate compilation. (See the MONALIB environment variable below.)
Code optimization level N (0=none, 1=safe, 2=heuristic) (default 1).
Disable BDD index reordering, use order of declaration as index ordering. Default is to reorder BDD indices heuristically.
Force normal tree-mode output style. Only applicable for WSRT mode.
Alternative M2L-Str emulation (v1.3 style).
Enable inherited acceptance analysis.
Unrestrict output automata. Create conventional automata by converting "don't-care" states to "reject" states and minimizes.
Output whole automaton in Graphviz format (implies -n -q). (Graphviz is available at
Output satisfying example tree in Graphviz format (implies -q).
Output counter-example tree in Graphviz format (implies -q).
Dump code DAG in Graphviz format (implies -n -q).
Output whole automaton in external format (implies -n -q). "External format" is the format used by dfalib and gtalib, see the source package.


Defines the directory used for separate-compilation automata (default is current directory).


Please send bug reports to <mona [at]>


Anders Moeller <amoeller [at]>, Nils Klarlund, Jacob Elgaard, Theis Rauhe, and Morten Biehl.