Esempio n. 1
0
 public override bool Equals(object that)
 {
     if (that is ExprPair)
     {
         ExprPair thatPair = (ExprPair)that;
         return(this.Expr0.Equals(thatPair.Expr0) &&
                this.Expr1.Equals(thatPair.Expr1));
     }
     return(false);
 }
Esempio n. 2
0
    ////////////////////////////////////////////////////////////////////////////

    private VCExprVar AbstractWithVariable(VCExpr s, VCExpr t)
    {
      Contract.Requires(t != null);
      Contract.Requires(s != null);
      Contract.Requires((s.Type.Equals(t.Type)));
      Contract.Ensures(Contract.Result<VCExprVar>() != null);

      ExprPair pair = new ExprPair(s, t);
      if (!Representation.TryGetValue(pair, out var repr))
      {
        repr = Gen.Variable("abs" + Representation.Count, s.Type);
        Representation.Add(pair, repr);
      }

      return cce.NonNull(repr);
    }