What does this Repo hold?
This repository holds the server that is used to validate the DSML code gerenated by the "DSML 4 Kidz" modelling language. It works by combining a server written in Flask with a reachability analysis tool called dReach. The dReach code is generated in Python and then run on the host machine. The result is then returned in a JSON object to the client.
dReal/dReach 3 Installation for dReal/dReach is pretty self-explanitory. The only hiccup is that gcc-4.9 is not avaliable on the latest LTS Ubnutu. So I just compiled it with the gcc/g++ that comes with Ubuntu 18.04. Installation instructions here
This should come pre-installed on most linux machines. To test if Python 3 is installed run
python3in the terminal. If it is not installed you can download it from the Python Website
Python 3 Virtual Env
Python 3 does not come preloaded with the virtual environment. To install this on Debian or Debian-derivatives
Running the Server (Development)
- Create a virtual env in this folder by running
python3 -m venv ./venv
- Activate the virtual env by running
- Install the packages by running
pip install -r requirements.txt
- Export the flask environment to tell flask what to run
- Run flask
flask run --reloadif you are developing the server)