NIPS VM - New Implementation of Promela Semantics Virtual Machine
Copyright (C) 2005: Stefan Schuermans <stefan@schuermans.info>
                    Michael Weber <michaelw@i2.informatik.rwth-aachen.de>
                    Lehrstuhl fuer Informatik II, RWTH Aachen
Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html


very short description
======================

NIPS VM is a non-deterministic virtual machine
to be used for state space generation in model checkers.

For more information, see:
  Stefan Schuermans, Ein Compiler und eine Virtuelle Maschine
  zur Zustandsraumgenerierung, Dimplomarbeit, Lehrstuhl II fuer
  Informatik RWTH Aachen, Oktober 2005
  (available only in German)

For a description of the assembler and bytecode format, see:
  assembler_format.txt
  bytecode_format.txt


dependencies
============

GNU make 3.80
GNU C Compiler: gcc 3.3
C runtime library: libc 2.3 (at least libc 2.1)
perl 5.8.4
(NIPS C 1.2+)

versions given are known to work - other may work, too

getting started
===============

compilation
-----------
make

running an example
------------------
cd tests
make
make example

running some tests
------------------
make benchmark
cd ..

assembling own files
--------------------
./nips_asm.pl mycode.s

running interactive / random simulations
----------------------------------------
./nips_vm [-R] mycode.b

generating full state space with breadth first / depth first search
-------------------------------------------------------------------
./nips_vm {-B|-D 30} mycode.b

other features
--------------
./nips_vm --help

benchmarking against SPIN
-------------------------
# ensure that NIPS C is installed in ../nips_c/
cd tests/spin
./Benchmark

