Skip to content
Snippets Groups Projects
Commit 7b6c193c authored by Jens Bendisposto's avatar Jens Bendisposto
Browse files

Merge branch 'develop' of github.com:bendisposto/prob into develop

parents b8fce742 f441e987
No related branches found
No related tags found
No related merge requests found
language: java language: java
script: gradle createPoms downloadCli collectDependencies && mvn -f de.prob.parent/pom.xml install && gradle collectArtifacts sudo: true
before_install:
- sudo rm -f /etc/mavenrc
- wget http://www.us.apache.org/dist/maven/maven-3/3.0.5/binaries/apache-maven-3.0.5-bin.tar.gz
- tar -zxvf apache-maven-3.0.5-bin.tar.gz
- export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=192m"
- export M2_HOME=$PWD/apache-maven-3.0.5
- export PATH=$M2_HOME/bin:$PATH
- mvn --version
script:
- gradle createPoms
- gradle downloadCli
- gradle collectDependencies
- ant -f de.bmotionstudio.help/customBuild.xml generate-help
- mvn -f de.prob.parent/pom.xml install
- gradle collectArtifacts
branches: branches:
only: only:
- develop - develop
......
<img src="https://github.com/bendisposto/prob/raw/develop/logo.png" width="500" align="center"> <img src="https://github.com/bendisposto/prob/raw/develop/logo.png" width="500" align="center">
[![Build Status](https://travis-ci.org/bendisposto/prob.svg?branch=develop)](https://travis-ci.org/bendisposto/prob)
# The ProB Model Checker and Animator # The ProB Model Checker and Animator
[![Build Status](https://travis-ci.org/bendisposto/prob.svg?branch=develop)](https://travis-ci.org/bendisposto/prob) [![Build Status](https://travis-ci.org/bendisposto/prob.svg?branch=develop)](https://travis-ci.org/bendisposto/prob)
......
...@@ -28,24 +28,21 @@ completeInstall.dependsOn bMotionStudioHelpCustumBuild ...@@ -28,24 +28,21 @@ completeInstall.dependsOn bMotionStudioHelpCustumBuild
project(':de.prob.core') { project(':de.prob.core') {
repositories { repositories {
maven { mavenCentral()
name "cobra"
url "http://cobra.cs.uni-duesseldorf.de/artifactory/repo"
}
} }
def parser_version = '2.4.33-SNAPSHOT' def parser_version = '2.4.40'
dependencies { dependencies {
compile group: "de.prob", name: "answerparser", version: parser_version , changing: true compile group: "de.hhu.stups", name: "answerparser", version: parser_version , changing: true
compile group: "de.prob", name: "bparser", version: parser_version , changing: true compile group: "de.hhu.stups", name: "bparser", version: parser_version , changing: true
compile group: "de.prob", name: "cliparser", version: parser_version , changing: true compile group: "de.hhu.stups", name: "cliparser", version: parser_version , changing: true
compile group: "de.prob", name: "ltlparser", version: parser_version , changing: true compile group: "de.hhu.stups", name: "ltlparser", version: parser_version , changing: true
compile group: "de.prob", name: "parserbase", version: parser_version , changing: true compile group: "de.hhu.stups", name: "parserbase", version: parser_version , changing: true
compile group: "de.prob", name: "prologlib", version: parser_version , changing: true compile group: "de.hhu.stups", name: "prologlib", version: parser_version , changing: true
compile group: "de.prob", name: "unicode", version: parser_version , changing: true compile group: "de.hhu.stups", name: "unicode", version: parser_version , changing: true
compile group: "de.prob", name: "theorymapping", version: parser_version , changing: true compile group: "de.hhu.stups", name: "theorymapping", version: parser_version , changing: true
compile 'commons-lang:commons-lang:2.6' compile 'commons-lang:commons-lang:2.6'
} }
...@@ -53,10 +50,7 @@ project(':de.prob.core') { ...@@ -53,10 +50,7 @@ project(':de.prob.core') {
project(':de.prob.ui') { project(':de.prob.ui') {
repositories { repositories {
maven { mavenCentral()
name "cobra"
url "http://cobra.cs.uni-duesseldorf.de/artifactory/repo"
}
} }
dependencies { dependencies {
compile 'commons-codec:commons-codec:1.6' compile 'commons-codec:commons-codec:1.6'
......
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde version="3.8"?><target name="prob_target" sequenceNumber="41"> <?pde version="3.8"?><target name="prob_target" sequenceNumber="42">
<locations> <locations>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit"> <location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.gef.sdk.feature.group" version="3.9.101.201408150207"/> <unit id="org.eclipse.gef.sdk.feature.group" version="3.9.101.201408150207"/>
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<repository location="http://rodin-b-sharp.sourceforge.net/updates/"/> <repository location="http://rodin-b-sharp.sourceforge.net/updates/"/>
</location> </location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit"> <location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.rodinp.platform.product" version="3.1.0.201412171041-e1a03f3"/> <unit id="org.rodinp.platform.product" version="3.2.0.201506220911-ecacdcb"/>
<repository location="http://rodin-b-sharp.sourceforge.net/core-updates/"/> <repository location="http://rodin-b-sharp.sourceforge.net/core-updates/"/>
</location> </location>
</locations> </locations>
......
...@@ -81,6 +81,9 @@ public class DisproverCommand implements IComposableCommand { ...@@ -81,6 +81,9 @@ public class DisproverCommand implements IComposableCommand {
Boolean.toString(prefNode.getBoolean("chr", true))); Boolean.toString(prefNode.getBoolean("chr", true)));
final SetPreferenceCommand setCSE = new SetPreferenceCommand("CSE", final SetPreferenceCommand setCSE = new SetPreferenceCommand("CSE",
Boolean.toString(prefNode.getBoolean("cse", false))); Boolean.toString(prefNode.getBoolean("cse", false)));
final SetPreferenceCommand setSMT = new SetPreferenceCommand(
"SMT_SUPPORTED_INTERPRETER", Boolean.toString(prefNode
.getBoolean("smt", false)));
final SetPreferenceCommand setCSEPred = new SetPreferenceCommand( final SetPreferenceCommand setCSEPred = new SetPreferenceCommand(
"CSE_PRED", Boolean.toString(prefNode.getBoolean("cse", false))); "CSE_PRED", Boolean.toString(prefNode.getBoolean("cse", false)));
final SetPreferenceCommand setDoubleEval = new SetPreferenceCommand( final SetPreferenceCommand setDoubleEval = new SetPreferenceCommand(
...@@ -96,7 +99,8 @@ public class DisproverCommand implements IComposableCommand { ...@@ -96,7 +99,8 @@ public class DisproverCommand implements IComposableCommand {
* prefNode.getInt("timeout", 1000)); * prefNode.getInt("timeout", 1000));
composed = new ComposedCommand(clear, setPrefs, setCLPFD, setCHR, composed = new ComposedCommand(clear, setPrefs, setCLPFD, setCHR,
setCSE, setCSEPred, setDoubleEval, load, start, disprove); setSMT, setCSE, setCSEPred, setDoubleEval, load, start,
disprove);
final Job job = new ProBCommandJob("Disproving", animator, composed); final Job job = new ProBCommandJob("Disproving", animator, composed);
job.setUser(true); job.setUser(true);
...@@ -135,6 +139,8 @@ public class DisproverCommand implements IComposableCommand { ...@@ -135,6 +139,8 @@ public class DisproverCommand implements IComposableCommand {
} }
pto.closeList(); pto.closeList();
pto.printNumber(timeout); pto.printNumber(timeout);
pto.emptyList(); // do not submit extra options because we set the
// preference above
pto.printVariable(RESULT); pto.printVariable(RESULT);
pto.closeTerm(); pto.closeTerm();
} }
......
package de.prob.eventb.disprover.ui; package de.prob.eventb.disprover.ui;
import java.util.*; import java.util.Collections;
import java.util.List;
import org.eclipse.swt.graphics.Image;
import org.eventb.core.ast.Predicate; import org.eventb.core.ast.Predicate;
import org.eventb.core.seqprover.*; import org.eventb.core.seqprover.IProofTreeNode;
import org.eventb.core.seqprover.IReasonerInput;
import org.eventb.core.seqprover.ITactic;
import org.eventb.core.seqprover.tactics.BasicTactics; import org.eventb.core.seqprover.tactics.BasicTactics;
import org.eventb.ui.prover.*; import org.eventb.ui.prover.DefaultTacticProvider;
import org.eventb.ui.prover.IPredicateApplication;
import org.eventb.ui.prover.ITacticApplication;
import de.prob.eventb.disprover.core.*; import de.prob.eventb.disprover.core.Disprover;
import de.prob.eventb.disprover.core.DisproverReasonerInput;
public class DisproverExtendedTimeoutTacticProvider extends public class DisproverExtendedTimeoutTacticProvider extends
DefaultTacticProvider { DefaultTacticProvider {
protected static class MyPredicateApplication implements
protected boolean useContexts() { IPredicateApplication {
return false;
}
protected static class MyPredicateApplication implements ITacticApplication {
private final IProofTreeNode node;
public MyPredicateApplication(IProofTreeNode node) {
this.node = node;
}
@Override @Override
public ITactic getTactic(String[] inputs, String globalInput) { public ITactic getTactic(String[] inputs, String globalInput) {
return getTactic(node, globalInput, inputs);
}
public ITactic getTactic(IProofTreeNode node, String globalInput,
String[] inputs) {
IReasonerInput reasonerInput = new DisproverReasonerInput(); IReasonerInput reasonerInput = new DisproverReasonerInput();
return BasicTactics.reasonerTac( return BasicTactics.reasonerTac(
Disprover.createDisproverReasoner(), reasonerInput); Disprover.createExtendedTimeoutDisproverReasoner(10),
reasonerInput);
} }
@Override @Override
...@@ -42,6 +33,18 @@ public class DisproverExtendedTimeoutTacticProvider extends ...@@ -42,6 +33,18 @@ public class DisproverExtendedTimeoutTacticProvider extends
return "de.prob.eventb.disprover.ui.disproverTactic"; return "de.prob.eventb.disprover.ui.disproverTactic";
} }
@Override
public Image getIcon() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getTooltip() {
// TODO Auto-generated method stub
return null;
}
} }
public DisproverExtendedTimeoutTacticProvider() { public DisproverExtendedTimeoutTacticProvider() {
...@@ -53,7 +56,7 @@ public class DisproverExtendedTimeoutTacticProvider extends ...@@ -53,7 +56,7 @@ public class DisproverExtendedTimeoutTacticProvider extends
IProofTreeNode node, Predicate hyp, String globalInput) { IProofTreeNode node, Predicate hyp, String globalInput) {
if (node != null && node.isOpen()) { if (node != null && node.isOpen()) {
ITacticApplication application = new MyPredicateApplication(node); ITacticApplication application = new MyPredicateApplication();
return Collections.singletonList(application); return Collections.singletonList(application);
} }
return Collections.<ITacticApplication> emptyList(); return Collections.<ITacticApplication> emptyList();
......
...@@ -52,6 +52,7 @@ public class DisproverPreferences extends PreferencePage implements ...@@ -52,6 +52,7 @@ public class DisproverPreferences extends PreferencePage implements
private Button checkCLPFD; private Button checkCLPFD;
private Button checkCHR; private Button checkCHR;
private Button checkCSE; private Button checkCSE;
private Button checkSMT;
private Button checkDoubleEval; private Button checkDoubleEval;
public DisproverPreferences() { public DisproverPreferences() {
...@@ -149,6 +150,11 @@ public class DisproverPreferences extends PreferencePage implements ...@@ -149,6 +150,11 @@ public class DisproverPreferences extends PreferencePage implements
checkCSE = new Button(pageComponent, SWT.CHECK); checkCSE = new Button(pageComponent, SWT.CHECK);
checkCSE.setSelection(prefNode.getBoolean("cse", false)); checkCSE.setSelection(prefNode.getBoolean("cse", false));
new Label(pageComponent, SWT.NONE)
.setText("Enable SMT Solver Support in Interpreter:");
checkSMT = new Button(pageComponent, SWT.CHECK);
checkSMT.setSelection(prefNode.getBoolean("smt", false));
new Label(pageComponent, SWT.NONE) new Label(pageComponent, SWT.NONE)
.setText("Check (Hypotheses ^ Goal) in addition to (Hypotheses ^ not Goal) to identify contradiction in hypotheses :"); .setText("Check (Hypotheses ^ Goal) in addition to (Hypotheses ^ not Goal) to identify contradiction in hypotheses :");
checkDoubleEval = new Button(pageComponent, SWT.CHECK); checkDoubleEval = new Button(pageComponent, SWT.CHECK);
...@@ -163,6 +169,7 @@ public class DisproverPreferences extends PreferencePage implements ...@@ -163,6 +169,7 @@ public class DisproverPreferences extends PreferencePage implements
prefNode.putBoolean("clpfd", checkCLPFD.getSelection()); prefNode.putBoolean("clpfd", checkCLPFD.getSelection());
prefNode.putBoolean("chr", checkCHR.getSelection()); prefNode.putBoolean("chr", checkCHR.getSelection());
prefNode.putBoolean("cse", checkCSE.getSelection()); prefNode.putBoolean("cse", checkCSE.getSelection());
prefNode.putBoolean("smt", checkSMT.getSelection());
prefNode.putBoolean("doubleeval", checkDoubleEval.getSelection()); prefNode.putBoolean("doubleeval", checkDoubleEval.getSelection());
try { try {
prefNode.flush(); prefNode.flush();
......
...@@ -17,11 +17,6 @@ import de.prob.eventb.disprover.core.Disprover; ...@@ -17,11 +17,6 @@ import de.prob.eventb.disprover.core.Disprover;
import de.prob.eventb.disprover.core.DisproverReasonerInput; import de.prob.eventb.disprover.core.DisproverReasonerInput;
public class DisproverTacticProvider extends DefaultTacticProvider { public class DisproverTacticProvider extends DefaultTacticProvider {
protected boolean useContexts() {
return false;
}
protected static class MyPredicateApplication implements protected static class MyPredicateApplication implements
IPredicateApplication { IPredicateApplication {
@Override @Override
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment