示例#1
0
        private void PushConjecture(VCExpr conjecture)
        {
            context.CreateBacktrackPoint();
            LineariserOptions linOptions = new Z3LineariserOptions(false, (Z3InstanceOptions)this.options, new List <VCExprVar>());

            context.AddConjecture(conjecture, linOptions);
        }
示例#2
0
        public void PushAxiom(VCExpr axiom)
        {
            context.CreateBacktrackPoint();
            LineariserOptions linOptions = new Z3LineariserOptions(false, (Z3InstanceOptions)this.options, new List <VCExprVar>());

            context.AddAxiom(axiom, linOptions);
        }
示例#3
0
 public override void Assert(VCExpr vc, bool polarity)
 {
     LineariserOptions linOptions = new Z3LineariserOptions(false, (Z3InstanceOptions)this.options, new List<VCExprVar>());
     if (polarity)
         context.AddAxiom(vc, linOptions);
     else
         context.AddConjecture(vc, linOptions);
 }
示例#4
0
 public override void BeginCheck(string descriptiveName, VCExpr vc, ErrorHandler handler)
 {
     LineariserOptions linOptions = new Z3LineariserOptions(false, (Z3InstanceOptions)this.options, new List<VCExprVar>());
     Push();
     context.AddAxiom(context.Axioms, linOptions);
     context.AddConjecture(vc, linOptions);
     outcome = context.Check(out z3LabelModels);
     Pop();
 }
示例#5
0
        public override void BeginCheck(string descriptiveName, VCExpr vc, ErrorHandler handler)
        {
            LineariserOptions linOptions = new Z3LineariserOptions(false, (Z3InstanceOptions)this.options, new List <VCExprVar>());

            Push();
            context.AddAxiom(context.Axioms, linOptions);
            context.AddConjecture(vc, linOptions);
            outcome = context.Check(out z3LabelModels);
            Pop();
        }
示例#6
0
        public override void Assert(VCExpr vc, bool polarity)
        {
            LineariserOptions linOptions = new Z3LineariserOptions(false, (Z3InstanceOptions)this.options, new List <VCExprVar>());

            if (polarity)
            {
                context.AddAxiom(vc, linOptions);
            }
            else
            {
                context.AddConjecture(vc, linOptions);
            }
        }
示例#7
0
        public override void AssertAxioms()
        {
            LineariserOptions linOptions = new Z3LineariserOptions(false, (Z3InstanceOptions)this.options, new List <VCExprVar>());

            context.AddAxiom(context.Axioms, linOptions);
        }
示例#8
0
        public override ProverInterface.Outcome CheckAssumptions(List <VCExpr> assumptions, out List <int> unsatCore, ErrorHandler handler)
        {
            LineariserOptions linOptions = new Z3LineariserOptions(false, (Z3InstanceOptions)this.options, new List <VCExprVar>());

            return(context.CheckAssumptions(assumptions, linOptions, out z3LabelModels, out unsatCore));
        }
示例#9
0
 public override void AssertAxioms()
 {
     LineariserOptions linOptions = new Z3LineariserOptions(false, (Z3InstanceOptions)this.options, new List<VCExprVar>());
     context.AddAxiom(context.Axioms, linOptions);
 }
示例#10
0
 public override ProverInterface.Outcome CheckAssumptions(List<VCExpr> assumptions, out List<int> unsatCore, ErrorHandler handler)
 {
     LineariserOptions linOptions = new Z3LineariserOptions(false, (Z3InstanceOptions)this.options, new List<VCExprVar>());
     return context.CheckAssumptions(assumptions, linOptions, out z3LabelModels, out unsatCore);
 }
示例#11
0
 private void PushConjecture(VCExpr conjecture)
 {
     context.CreateBacktrackPoint();
     LineariserOptions linOptions = new Z3LineariserOptions(false, (Z3InstanceOptions)this.options, new List<VCExprVar>());
     context.AddConjecture(conjecture, linOptions);
 }
示例#12
0
 public void PushAxiom(VCExpr axiom)
 {
     context.CreateBacktrackPoint();
     LineariserOptions linOptions = new Z3LineariserOptions(false, (Z3InstanceOptions)this.options, new List<VCExprVar>());
     context.AddAxiom(axiom, linOptions);
 }