Exemple #1
0
 public VCExpr add_lets(VCExpr e)
 {
     foreach (var let in lets)
     {
         e = gen.Let(e, let);
     }
     return(e);
 }
        private VCExpr LetConvert(VCExpr vcExpr)
        {
            var bindings = BindingCollector.CollectBindings(this, vcExpr).ToList();

            if (bindings.Count == 0)
            {
                return(vcExpr);
            }
            var rhss = new List <VCExprLetBinding>();

            foreach (var binding in bindings)
            {
                rhss.Add(new VCExprLetBinding(binding, LetConvert(this.AugmentWithInstances(quantifierBinding[binding]))));
            }
            return(vcExprGen.Let(rhss, vcExpr));
        }