Skip to content
Snippets Groups Projects
Commit 8c044b7b authored by Sebastian Krings's avatar Sebastian Krings
Browse files

submit all hypotheses back to rodin as used hypotheses to prevent false replay...

submit all hypotheses back to rodin as used hypotheses to prevent false replay of disprover proof rules
parent abd71630
Branches
Tags
No related merge requests found
...@@ -147,6 +147,13 @@ public class DisproverReasoner implements IReasoner { ...@@ -147,6 +147,13 @@ public class DisproverReasoner implements IReasoner {
Predicate goal = sequent.goal(); Predicate goal = sequent.goal();
// currently, we assume that all existing hypotheses have been used
// TODO: make ProB figure out which ones were actually used
Set<Predicate> usedHyps = new HashSet<Predicate>();
for (Predicate predicate : sequent.hypIterable()) {
usedHyps.add(predicate);
}
IAntecedent ante = ProverFactory.makeAntecedent(goal); IAntecedent ante = ProverFactory.makeAntecedent(goal);
if (counterExample == null) { if (counterExample == null) {
...@@ -163,7 +170,7 @@ public class DisproverReasoner implements IReasoner { ...@@ -163,7 +170,7 @@ public class DisproverReasoner implements IReasoner {
if (!counterExample.counterExampleFound() && counterExample.isProof()) { if (!counterExample.counterExampleFound() && counterExample.isProof()) {
System.out.println(sequent.toString() + ": Proof."); System.out.println(sequent.toString() + ": Proof.");
return ProverFactory.makeProofRule(this, input, sequent.goal(), return ProverFactory.makeProofRule(this, input, sequent.goal(),
null, IConfidence.DISCHARGED_MAX, usedHyps, IConfidence.DISCHARGED_MAX,
"ProB (no enumeration / all cases checked)"); "ProB (no enumeration / all cases checked)");
} }
...@@ -191,8 +198,8 @@ public class DisproverReasoner implements IReasoner { ...@@ -191,8 +198,8 @@ public class DisproverReasoner implements IReasoner {
} }
System.out.println(sequent.toString() + ": Counter-Example found."); System.out.println(sequent.toString() + ": Counter-Example found.");
return ProverFactory.makeProofRule(this, input, null, null, return ProverFactory.makeProofRule(this, input, sequent.goal(),
IConfidence.PENDING, counterExample.toString(), ante); usedHyps, IConfidence.PENDING, counterExample.toString(), ante);
} }
@Override @Override
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment