Beispiel #1
0
 public MultiLattice(IPropExprFactory /*!*/ propExprFactory, IValueExprFactory /*!*/ valueExprFactory)
     : base(valueExprFactory)
 {
     Contract.Requires(valueExprFactory != null);
     Contract.Requires(propExprFactory != null);
     this.propExprFactory = propExprFactory;
     // base(valueExprFactory);
 }
Beispiel #2
0
 public VariableMapLattice(IPropExprFactory /*!*/ propExprFactory, IValueExprFactory /*!*/ valueExprFactory, MicroLattice /*!*/ microLattice, /*maybe null*/ IComparer variableComparer)
     : base(valueExprFactory)
 {
     Contract.Requires(microLattice != null);
     Contract.Requires(valueExprFactory != null);
     Contract.Requires(propExprFactory != null);
     this.propExprFactory  = propExprFactory;
     this.microLattice     = microLattice;
     this.variableComparer = variableComparer;
     // base(valueExprFactory);
 }
 public VariableMapLattice(IPropExprFactory/*!*/ propExprFactory, IValueExprFactory/*!*/ valueExprFactory, MicroLattice/*!*/ microLattice, /*maybe null*/IComparer variableComparer)
   : base(valueExprFactory) {
   Contract.Requires(microLattice != null);
   Contract.Requires(valueExprFactory != null);
   Contract.Requires(propExprFactory != null);
   this.propExprFactory = propExprFactory;
   this.microLattice = microLattice;
   this.variableComparer = variableComparer;
   // base(valueExprFactory);
 }
Beispiel #4
0
 /// <summary>
 ///  A default implementation of the <see cref="CheckVariableDisequality"/> given
 ///  the appropriate expression factories by calling CheckPredicate.
 /// </summary>
 protected Answer DefaultCheckVariableDisequality(IPropExprFactory/*!*/ propExprFactory, IValueExprFactory/*!*/ valExprFactory, Element/*!*/ e, IVariable/*!*/ var1, IVariable/*!*/ var2) {
   Contract.Requires(propExprFactory != null);
   Contract.Requires(valExprFactory != null);
   Contract.Requires(e != null);
   Contract.Requires(var1 != null);
   Contract.Requires(var2 != null);
   return this.CheckPredicate(e, propExprFactory.Not(valExprFactory.Eq(var1, var2)));
 }
Beispiel #5
0
 public Lattice(IValueExprFactory/*!*/ valueExprFactory) {
   Contract.Requires(valueExprFactory != null);
   this.valueExprFactory = valueExprFactory;
   // base();
 }
Beispiel #6
0
 /// <summary>
 ///  A default implementation of the <see cref="CheckVariableDisequality"/> given
 ///  the appropriate expression factories by calling CheckPredicate.
 /// </summary>
 protected Answer DefaultCheckVariableDisequality(IPropExprFactory /*!*/ propExprFactory, IValueExprFactory /*!*/ valExprFactory, Element /*!*/ e, IVariable /*!*/ var1, IVariable /*!*/ var2)
 {
     Contract.Requires(propExprFactory != null);
     Contract.Requires(valExprFactory != null);
     Contract.Requires(e != null);
     Contract.Requires(var1 != null);
     Contract.Requires(var2 != null);
     return(this.CheckPredicate(e, propExprFactory.Not(valExprFactory.Eq(var1, var2))));
 }
Beispiel #7
0
 public Lattice(IValueExprFactory /*!*/ valueExprFactory)
 {
     Contract.Requires(valueExprFactory != null);
     this.valueExprFactory = valueExprFactory;
     // base();
 }
Beispiel #8
0
 public MultiLattice(IPropExprFactory/*!*/ propExprFactory, IValueExprFactory/*!*/ valueExprFactory)
   : base(valueExprFactory) {
   Contract.Requires(valueExprFactory != null);
   Contract.Requires(propExprFactory != null);
   this.propExprFactory = propExprFactory;
   // base(valueExprFactory);
 }