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)); }