-
Notifications
You must be signed in to change notification settings - Fork 43
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #75 from ftsrg/xsts
Add XSTS formalism
- Loading branch information
Showing
116 changed files
with
5,550 additions
and
60 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,10 @@ | ||
# Contributors to Theta | ||
* [Tamás Tóth](https://inf.mit.bme.hu/en/members/totht) [1] | ||
* [Ákos Hajdu](https://inf.mit.bme.hu/en/members/hajdua) [1] [2] | ||
* [Gábor Szárnyas](https://inf.mit.bme.hu/en/members/szarnyasg) [1] [2] | ||
* [Kristóf Marussy](https://inf.mit.bme.hu/en/members/marussyk) [1] [2] | ||
* Mihály Dobos-Kovács [1] | ||
|
||
|
||
1. [Fault Tolerant Systems Research Group](https://inf.mit.bme.hu/en), [Department of Measurement and Information Systems](http://www.mit.bme.hu/eng/), [Budapest University of Technology and Economics](http://www.bme.hu/?language=en) | ||
2. [MTA-BME Lendület Cyber-Physical Systems Research Group](http://lendulet.inf.mit.bme.hu/) | ||
Initial design and implementation by [Tamás Tóth](https://inf.mit.bme.hu/en/members/totht) and [Ákos Hajdu](https://hajduakos.github.io). | ||
|
||
Contributors: | ||
* [Gábor Szárnyas](https://inf.mit.bme.hu/en/members/szarnyasg) | ||
* [Kristóf Marussy](https://inf.mit.bme.hu/en/members/marussyk) | ||
* Levente Bajczi | ||
* Mihály Dobos-Kovács | ||
* Milán Mondok |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
#!/bin/bash | ||
|
||
set -Eeuxo pipefail | ||
|
||
DOCKER_RUN_OPTIONS="-i" | ||
|
||
# Only allocate tty if we detect one | ||
if [ -t 0 ] && [ -t 1 ]; then | ||
DOCKER_RUN_OPTIONS="$DOCKER_RUN_OPTIONS -t" | ||
fi | ||
|
||
ABSPATH=$(realpath "$1") | ||
DIR=$(dirname "$ABSPATH") | ||
FILE=/host/$(basename "$ABSPATH") | ||
shift | ||
|
||
docker run "$DOCKER_RUN_OPTIONS" --mount type=bind,source="$DIR",target=/host theta-xsts-cli:latest --model "$FILE" "$@" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
FROM openjdk:11.0.6-slim | ||
|
||
RUN apt-get update && \ | ||
apt-get install -y --no-install-recommends libgomp1 && \ | ||
apt-get clean && rm -rf /var/lib/apt/lists/* | ||
|
||
RUN mkdir theta | ||
COPY . theta | ||
WORKDIR /theta | ||
RUN ./gradlew clean && \ | ||
./gradlew theta-xsts-cli:build && \ | ||
mv subprojects/xsts-cli/build/libs/theta-xsts-cli-*-all.jar /theta-xsts-cli.jar | ||
WORKDIR / | ||
|
||
ENV LD_LIBRARY_PATH="$LD_LIBRARY_PATH:./theta/lib/" | ||
ENTRYPOINT ["java", "-jar", "theta-xsts-cli.jar"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
28 changes: 28 additions & 0 deletions
28
...alysis/src/main/java/hu/bme/mit/theta/analysis/prod2/DefaultPreStrengtheningOperator.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
package hu.bme.mit.theta.analysis.prod2; | ||
|
||
import hu.bme.mit.theta.analysis.State; | ||
|
||
import static com.google.common.base.Preconditions.checkNotNull; | ||
|
||
public class DefaultPreStrengtheningOperator<S1 extends State, S2 extends State> implements PreStrengtheningOperator<S1, S2> { | ||
|
||
private DefaultPreStrengtheningOperator(){} | ||
|
||
public static <S1 extends State, S2 extends State> PreStrengtheningOperator<S1, S2> create(){ | ||
return new DefaultPreStrengtheningOperator<>(); | ||
} | ||
|
||
@Override | ||
public S1 strengthenState1(Prod2State<S1, S2> state) { | ||
checkNotNull(state); | ||
|
||
return state.getState1(); | ||
} | ||
|
||
@Override | ||
public S2 strengthenState2(Prod2State<S1, S2> state) { | ||
checkNotNull(state); | ||
|
||
return state.getState2(); | ||
} | ||
} |
11 changes: 11 additions & 0 deletions
11
...ects/analysis/src/main/java/hu/bme/mit/theta/analysis/prod2/PreStrengtheningOperator.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
package hu.bme.mit.theta.analysis.prod2; | ||
|
||
import hu.bme.mit.theta.analysis.State; | ||
|
||
public interface PreStrengtheningOperator<S1 extends State, S2 extends State> { | ||
|
||
S1 strengthenState1(final Prod2State<S1, S2> state); | ||
|
||
S2 strengthenState2(final Prod2State<S1, S2> state); | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.