示例#1
0
        private SimpleDisequalities(SimpleDisequalities <Variable, Expression> original)
            : base(original)
        {
            decoder = original.decoder;
            encoder = original.encoder;

            evalConstant = original.evalConstant;

            testTrueVisitor  = original.testTrueVisitor;
            testFalseVisitor = original.testFalseVisitor;

            checkIfHoldsVisitor = original.checkIfHoldsVisitor;
        }
示例#2
0
        /// <summary>
        ///   Construct a new domain
        /// </summary>
        public SimpleDisequalities(IExpressionDecoder <Variable, Expression> /*!*/ decoder,
                                   IExpressionEncoder <Variable, Expression> /*!*/ encoder)
        {
            this.decoder = decoder;
            this.encoder = encoder;

            evalConstant = new ConstantVisitor(decoder);

            testTrueVisitor  = new SimpleDisequalitiesTestTrueVisitor(this.decoder, evalConstant);
            testFalseVisitor = new SimpleDisequalitiesTestFalseVisitor(this.decoder);

            testTrueVisitor.FalseVisitor = testFalseVisitor;
            testFalseVisitor.TrueVisitor = testTrueVisitor;

            checkIfHoldsVisitor = new SimpleDisequalitiesCheckIfHoldsVisitor(this.decoder, evalConstant);
        }