本文整理汇总了C#中Microsoft.Z3.Probe类的典型用法代码示例。如果您正苦于以下问题:C# Probe类的具体用法?C# Probe怎么用?C# Probe使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Probe类属于Microsoft.Z3命名空间,在下文中一共展示了Probe类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Lt
/// <summary>
/// Create a probe that evaluates to "true" when the value returned by <paramref name="p1"/>
/// is less than the value returned by <paramref name="p2"/>
/// </summary>
public Probe Lt(Probe p1, Probe p2)
{
Contract.Requires(p1 != null);
Contract.Requires(p2 != null);
Contract.Ensures(Contract.Result<Probe>() != null);
CheckContextMatch(p1);
CheckContextMatch(p2);
return new Probe(this, Native.Z3_probe_lt(nCtx, p1.NativeObject, p2.NativeObject));
}
示例2: FailIf
/// <summary>
/// Create a tactic that fails if the probe <paramref name="p"/> evaluates to false.
/// </summary>
public Tactic FailIf(Probe p)
{
Contract.Requires(p != null);
Contract.Ensures(Contract.Result<Tactic>() != null);
CheckContextMatch(p);
return new Tactic(this, Native.Z3_tactic_fail_if(nCtx, p.NativeObject));
}
示例3: When
/// <summary>
/// Create a tactic that applies <paramref name="t"/> to a given goal if the probe
/// <paramref name="p"/> evaluates to true.
/// </summary>
/// <remarks>
/// If <paramref name="p"/> evaluates to false, then the new tactic behaves like the <c>skip</c> tactic.
/// </remarks>
public Tactic When(Probe p, Tactic t)
{
Contract.Requires(p != null);
Contract.Requires(t != null);
Contract.Ensures(Contract.Result<Tactic>() != null);
CheckContextMatch(t);
CheckContextMatch(p);
return new Tactic(this, Native.Z3_tactic_when(nCtx, p.NativeObject, t.NativeObject));
}
示例4: Cond
/// <summary>
/// Create a tactic that applies <paramref name="t1"/> to a given goal if the probe
/// <paramref name="p"/> evaluates to true and <paramref name="t2"/> otherwise.
/// </summary>
public Tactic Cond(Probe p, Tactic t1, Tactic t2)
{
Contract.Requires(p != null);
Contract.Requires(t1 != null);
Contract.Requires(t2 != null);
Contract.Ensures(Contract.Result<Tactic>() != null);
CheckContextMatch(p);
CheckContextMatch(t1);
CheckContextMatch(t2);
return new Tactic(this, Native.Z3_tactic_cond(nCtx, p.NativeObject, t1.NativeObject, t2.NativeObject));
}
示例5: Not
/// <summary>
/// Create a probe that evaluates to "true" when the value <paramref name="p"/>
/// does not evaluate to "true".
/// </summary>
public Probe Not(Probe p)
{
Contract.Requires(p != null);
Contract.Ensures(Contract.Result<Probe>() != null);
CheckContextMatch(p);
return new Probe(this, Native.Z3_probe_not(nCtx, p.NativeObject));
}