diff options
author | Ken McMillan <unknown> | 2013-05-29 14:24:16 -0700 |
---|---|---|
committer | Ken McMillan <unknown> | 2013-05-29 14:24:16 -0700 |
commit | 45fae1a54b2b08780945c7f18ce9b8c7f9a1f763 (patch) | |
tree | b16f05e667c486a9f7d5b253e05a2eb5ff088dfa /Source/Provers | |
parent | bb046513677de9b18941a2cd590558fababa37bf (diff) |
Getting fixed point backend to work with Corral.
Diffstat (limited to 'Source/Provers')
-rw-r--r-- | Source/Provers/SMTLib/ProverInterface.cs | 2 | ||||
-rw-r--r-- | Source/Provers/SMTLib/Z3.cs | 15 |
2 files changed, 15 insertions, 2 deletions
diff --git a/Source/Provers/SMTLib/ProverInterface.cs b/Source/Provers/SMTLib/ProverInterface.cs index f2628130..be98eb5b 100644 --- a/Source/Provers/SMTLib/ProverInterface.cs +++ b/Source/Provers/SMTLib/ProverInterface.cs @@ -560,6 +560,7 @@ namespace Microsoft.Boogie.SMTLib currentLogFile.Write(common.ToString());
}
+ SendThisVC("(fixedpoint-push)");
foreach (var node in rpfp.nodes)
{
DeclCollector.RegisterRelation((node.Name as VCExprBoogieFunctionOp).Func);
@@ -649,6 +650,7 @@ namespace Microsoft.Boogie.SMTLib }
#endif
}
+ SendThisVC("(fixedpoint-pop)");
return result;
}
diff --git a/Source/Provers/SMTLib/Z3.cs b/Source/Provers/SMTLib/Z3.cs index 8081603e..81d5d5d1 100644 --- a/Source/Provers/SMTLib/Z3.cs +++ b/Source/Provers/SMTLib/Z3.cs @@ -259,6 +259,12 @@ namespace Microsoft.Boogie.SMTLib if (options.Inspector != null)
options.AddWeakSmtOption("PROGRESS_SAMPLING_FREQ", "200");
+ if (CommandLineOptions.Clo.WeakArrayTheory)
+ {
+ // TODO: these options don't seem to exist in recent Z3
+ // options.AddWeakSmtOption("ARRAY_WEAK", "true");
+ // options.AddWeakSmtOption("ARRAY_EXTENSIONAL", "false");
+ }
}
else
{
@@ -320,8 +326,13 @@ namespace Microsoft.Boogie.SMTLib if (options.Inspector != null)
options.AddWeakSmtOption("PROGRESS_SAMPLING_FREQ", "200");
-
-
+
+ if (CommandLineOptions.Clo.WeakArrayTheory)
+ {
+ options.AddWeakSmtOption("ARRAY_WEAK", "true");
+ options.AddWeakSmtOption("ARRAY_EXTENSIONAL", "false");
+ }
+
}
// legacy option handling
|