本文整理汇总了C#中Z3Provider.MkBvAnd方法的典型用法代码示例。如果您正苦于以下问题:C# Z3Provider.MkBvAnd方法的具体用法?C# Z3Provider.MkBvAnd怎么用?C# Z3Provider.MkBvAnd使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Z3Provider
的用法示例。
在下文中一共展示了Z3Provider.MkBvAnd方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: MintermBlowupTestHelperMoore
private static int MintermBlowupTestHelperMoore(int K)
{
var z3p = new Z3Provider(BitWidth.BV32);
var x = z3p.CharVar;
var zero = z3p.MkNumeral(0, z3p.CharSort);
Func<int, Expr> gamma = k =>
{
int kth = 1 << k;
Expr mask = z3p.MkNumeral(kth, z3p.CharSort);
Expr cond = z3p.MkNot(z3p.MkEq(z3p.MkBvAnd(x, mask), zero));
return cond;
};
var moves = new List<Move<Expr>>();
for (int i = 0; i < K; i++)
moves.Add(Move<Expr>.Create(i, i + 1, gamma(i)));
for (int i = 0; i < K; i++)
moves.Add(Move<Expr>.Create(i == 0 ? 0 : K + i, K + i + 1, i ==0 ? z3p.MkNot(gamma(i)) : gamma(i)));
var aut = Automaton<Expr>.Create(z3p, 0, new int[] { K, 2 * K }, moves);
var sfa = new SFA<FuncDecl, Expr, Sort>(z3p, z3p.CharSort, aut);
sfa.Automaton.CheckDeterminism(true);
int t = System.Environment.TickCount;
var autmin = sfa.Automaton.MinimizeMoore();
t = System.Environment.TickCount - t;
return t;
}