예제 #1
0
 public TPTPExprLineariser(TextWriter wr, UniqueNamer namer, TPTPProverOptions opts)
 {
     Contract.Requires(wr != null); Contract.Requires(namer != null);
     this.wr      = wr;
     this.Namer   = namer;
     this.Options = opts;
 }
예제 #2
0
        public static string ToString(VCExpr e, UniqueNamer namer, TPTPProverOptions opts)
        {
            Contract.Requires(e != null);
            Contract.Requires(namer != null);
            Contract.Ensures(Contract.Result <string>() != null);

            StringWriter       sw  = new StringWriter();
            TPTPExprLineariser lin = new TPTPExprLineariser(sw, namer, opts);

            Contract.Assert(lin != null);
            lin.Linearise(e, LineariserOptions.Default);
            return(cce.NonNull(sw.ToString()));
        }