Exemplo n.º 1
0
        private Z3Expr MkCoercion(Z3Expr t, AppFreeCanUnn unn, RealEmbedding te)
        {
            var coercions = DefaultMember.Item2;

            foreach (var s in unn.NonRangeMembers)
            {
                Contract.Assert(s.IsNonVarConstant);
                coercions = t.Eq(Context, te.MkGround(s, null)).Ite(
                    Context,
                    MkGround(s, null),
                    coercions);
            }

            return(coercions);
        }
Exemplo n.º 2
0
 private Z3Expr MkCoercion(Z3Expr t, AppFreeCanUnn unn, RealEmbedding te)
 {
     return(BoxingFun.Apply(
                ((Z3IntExpr)Context.MkSub(Context.MkReal2Int((Z3RealExpr)t), Context.MkInt(Lower.ToString()))).Int2BV(Context, bvSort.Size)));
 }
Exemplo n.º 3
0
 private Z3Expr MkCoercion(Z3Expr t, AppFreeCanUnn unn, RealEmbedding te)
 {
     return(CreationFun.Apply());
 }
Exemplo n.º 4
0
 private Z3Expr MkCoercion(Z3Expr t, AppFreeCanUnn unn, RealEmbedding te)
 {
     return(MkPosCoercion(Context.MkReal2Int((Z3.RealExpr)t)));
 }