Microsoft.Z3.InterpolationContext.GetInterpolant C# (CSharp) Méthode

GetInterpolant() private méthode

Computes an interpolant.
For more information on interpolation please refer too the function Z3_get_interpolant in the C/C++ API, which is well documented.
private GetInterpolant ( Expr pf, Expr pat, Params p ) : Microsoft.Z3.Expr[]
pf Expr
pat Expr
p Params
Résultat Microsoft.Z3.Expr[]
        Expr[] GetInterpolant(Expr pf, Expr pat, Params p)
        {
            Contract.Requires(pf != null);
            Contract.Requires(pat != null);
            Contract.Requires(p != null);
            Contract.Ensures(Contract.Result<Expr>() != null);

            CheckContextMatch(pf);
            CheckContextMatch(pat);
            CheckContextMatch(p);

            ASTVector seq = new ASTVector(this, Native.Z3_get_interpolant(nCtx, pf.NativeObject, pat.NativeObject, p.NativeObject));
            uint n = seq.Size;
            Expr[] res = new Expr[n];
            for (uint i = 0; i < n; i++)
                res[i] = Expr.Create(this, seq[i].NativeObject);
            return res;
        }