Skip to content

MoonLightSuite/moonlight

Repository files navigation

MoonLight Build Status Security Rating codecov

MoonLight is a light-weight Java-tool for monitoring temporal, spatial and spatio-temporal properties of distributed complex systems, as Cyber-Physical Systems and Collective Adaptive Systems.

It supports the specification of properties written with the Reach and Escape Logic (STREL). STREL is a linear time temporal logic, in particular, it extends the Signal Temporal Logic (STL) with a number of spatial operators that permit to described complex spatial behaviors as beeing surround, reaching target locations and escaping from specific regions.

Prerequisites

It requires Java 21+ in the running environment

Usage as Maven package

To use it as a maven package, just include the following line in your build.gradle.kts:

implementation("io.github.moonlightsuite:moonlight-engine:0.3.0")

Check on Maven Central for alternative build tools ( e.g. Maven).

For more information, please visit our Wiki

Usage as Python Package

You can install MoonLight as a Python package using pip:

pip install moonlight