diff options
author | Ken McMillan <kenmcmil@microsoft.com> | 2012-06-05 15:22:45 -0700 |
---|---|---|
committer | Ken McMillan <kenmcmil@microsoft.com> | 2012-06-05 15:22:45 -0700 |
commit | b8388a79e8416d6326313965040903c6c6d15d70 (patch) | |
tree | 48bb354c750626005ab065bc60bd0db34b6c7d37 /Source/Provers/Z3api/VCExprVisitor.cs | |
parent | c793a5ea9bf33f9f7028af9920e569b5ec7fcc4f (diff) |
Some changes to support expanded use of z3api.
Should not affect function
of other provers. There is an option added in Check.cs to allow creation
of a Checker with a user-specified ProverContext. Also, some extension of
z3api prover context to support conversion of Z3 formulas back to VCExpr.
Finally, some experimental code, not enabled, to allow conversion of loops to
recursion with "head recursion" rather than "tail recursion" (i.e., recursive
call before loop body rather than after).
Diffstat (limited to 'Source/Provers/Z3api/VCExprVisitor.cs')
-rw-r--r-- | Source/Provers/Z3api/VCExprVisitor.cs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Source/Provers/Z3api/VCExprVisitor.cs b/Source/Provers/Z3api/VCExprVisitor.cs index 149a23f1..0605a854 100644 --- a/Source/Provers/Z3api/VCExprVisitor.cs +++ b/Source/Provers/Z3api/VCExprVisitor.cs @@ -188,7 +188,7 @@ namespace Microsoft.Boogie.Z3 else
{
string varName = namer.GetName(node, node.Name);
- return cm.GetConstant(varName, node.Type);
+ return cm.GetConstant(varName, node.Type,node);
}
}
@@ -252,7 +252,7 @@ namespace Microsoft.Boogie.Z3 private Term MakeQuantifier(bool isForall, uint weight, string qid, int skolemid, List<string> varNames, List<Type> boogieTypes, List<Pattern> patterns, List<Term> no_patterns, Term body) {
List<Term> bound = new List<Term>();
for (int i = 0; i < varNames.Count; i++) {
- Term t = cm.GetConstant(varNames[i], boogieTypes[i]);
+ Term t = cm.GetConstant(varNames[i], boogieTypes[i], null);
bound.Add(t);
}
|