Sitemap Go Back Wiki Home Go Forward Search Wiki Toggle Dark Mode
Close Navbar

Installing STAMINA/PRISM

STAMINA/PRISM is written in Java and depends on the PRISM Model Checker. Multiple methods of auto-installing STAMINA/STORM have been created. Unfortunately, we have not yet migrated STAMINA/PRISM to gradle, like we have with the imsam package.

Regardless of the method you use, you will need to install the dependencies first. The following command will install them on Debian 11+/Ubuntu 22+:

sudo apt-get update && sudo apt-get -y install openjdk-11-jre openjdk-11-jdk git build-essential

Method 1: The Shell Script (Recommended)

Simply clone the GitHub repository and run the provided install script:
git clone https://github.com/fluentverification/stamina-prism stamina-prism
cd stamina-prism
chmod +x install.sh && install.sh

Method 2: The Perl Script (Legacy)

The Perl script clones both STAMINA and PRISM, so it should be directly passed into the Perl executable from curl or wget.
Using curl:
perl -e "$(curl https://raw.githubusercontent.com/fluentverification/stamina-prism/master/install.pl)"
Using wget:
wget https://raw.githubusercontent.com/fluentverification/stamina-prism/master/install.pl && perl install.pl && rm install.pl

Method 3: Installing Manually

First, you will need to install PRISM. STAMINA requires the installed version of PRISM to be version 4.5.
git clone https://github.com/prismmodelchecker/prism prism
cd prism/prism
git checkout v4.5
make -j$(nproc --all)
make install
export PRISM_HOME=$(pwd)
After you have installed PRISM, you are ready to install STAMINA:
git clone https://github.com/fluentverification/stamina-prism stamina-prism
cd stamina-prism/stamina
make PRISM_HOME=$PRISM_HOME
Finally, you must create a .staminarc file in your home directory so STAMINA knows where to find classes:
touch ~/.staminarc
echo "export_JAVA_OPTIONS=-Xmx12288m" >> ~/.staminarc
echo "export PRISM_HOME=$PRISM_HOME" >> ~/.staminarc
echo "export STAMINA_HOME=$(pwd)/stamina" >> ~/.staminarc