summaryrefslogtreecommitdiff
path: root/Source/Provers/SMTLib/ProverInterface.cs
diff options
context:
space:
mode:
authorGravatar qadeer <qadeer@microsoft.com>2012-04-03 09:22:05 -0700
committerGravatar qadeer <qadeer@microsoft.com>2012-04-03 09:22:05 -0700
commit36c96118667c326eb687bb05bc1be42ce8f78509 (patch)
tree0281e7e7915188b0ff8ea8b9ef1d81755afc1e5a /Source/Provers/SMTLib/ProverInterface.cs
parent7119f6238657fe4c419c6366e801ff067ffb8506 (diff)
added nonUniformUnfolding option
Diffstat (limited to 'Source/Provers/SMTLib/ProverInterface.cs')
-rw-r--r--Source/Provers/SMTLib/ProverInterface.cs4
1 files changed, 3 insertions, 1 deletions
diff --git a/Source/Provers/SMTLib/ProverInterface.cs b/Source/Provers/SMTLib/ProverInterface.cs
index 9987e6f4..5667429a 100644
--- a/Source/Provers/SMTLib/ProverInterface.cs
+++ b/Source/Provers/SMTLib/ProverInterface.cs
@@ -864,9 +864,9 @@ namespace Microsoft.Boogie.SMTLib
}
Check();
outcome = CheckOutcomeCore(handler);
- Pop();
if (outcome != Outcome.Valid)
break;
+ Pop();
string relaxVar = "relax_" + k;
relaxVars.Add(relaxVar);
SendThisVC("(declare-fun " + relaxVar + " () Int)");
@@ -882,6 +882,7 @@ namespace Microsoft.Boogie.SMTLib
if (outcome == Outcome.Invalid) {
foreach (var relaxVar in relaxVars) {
SendThisVC("(get-value (" + relaxVar + "))");
+ FlushLogFile();
var resp = Process.GetProverResponse();
if (resp == null) break;
if (!(resp.Name == "" && resp.ArgCount == 1)) break;
@@ -896,6 +897,7 @@ namespace Microsoft.Boogie.SMTLib
else
break;
}
+ Pop();
}
Pop();