internal TypeAxiomBuilderPremisses(TypeAxiomBuilderPremisses builder) : base(builder) { Contract.Requires(builder != null); TypeFunction = builder.TypeFunction; Typed2UntypedFunctions = new Dictionary<Function/*!*/, UntypedFunction>(builder.Typed2UntypedFunctions); MapTypeAbstracterAttr = builder.MapTypeAbstracterAttr == null ? null : new MapTypeAbstractionBuilderPremisses(this, builder.Gen, builder.MapTypeAbstracterAttr); }
public OpTypeEraserPremisses(TypeEraserPremisses eraser, TypeAxiomBuilderPremisses axBuilder, VCExpressionGenerator gen) : base(eraser, axBuilder, gen) { Contract.Requires(gen != null); Contract.Requires(axBuilder != null); Contract.Requires(eraser != null); this.AxBuilderPremisses = axBuilder; }
// constructor for cloning internal MapTypeAbstractionBuilderPremisses(TypeAxiomBuilderPremisses axBuilder, VCExpressionGenerator gen, MapTypeAbstractionBuilderPremisses builder) : base(axBuilder, gen, builder) { Contract.Requires(builder != null); Contract.Requires(gen != null); Contract.Requires(axBuilder != null); this.AxBuilderPremisses = axBuilder; }
private void SetupAxiomBuilder(VCExpressionGenerator gen) { switch (CommandLineOptions.Clo.TypeEncodingMethod) { case CommandLineOptions.TypeEncoding.Arguments: AxBuilder = new TypeAxiomBuilderArguments(gen); AxBuilder.Setup(); break; case CommandLineOptions.TypeEncoding.Monomorphic: AxBuilder = new TypeAxiomBuilderPremisses(gen); break; default: AxBuilder = new TypeAxiomBuilderPremisses(gen); AxBuilder.Setup(); break; } }
public TPTPProcessTheoremProver(ProverOptions options, VCExpressionGenerator gen, DeclFreeProverContext ctx) : base(options, "", "", "", "", gen) { Contract.Requires(options != null); Contract.Requires(gen != null); Contract.Requires(ctx != null); // No bg predicate at the moment // InitializeGlobalInformation("UnivBackPred.tptp"); this.ctx = ctx; this.Gen = gen; TypeAxiomBuilder axBuilder; switch (CommandLineOptions.Clo.TypeEncodingMethod) { case CommandLineOptions.TypeEncoding.Arguments: axBuilder = new TypeAxiomBuilderArguments(gen); axBuilder.Setup(); break; case CommandLineOptions.TypeEncoding.Monomorphic: axBuilder = new TypeAxiomBuilderPremisses(gen); break; default: axBuilder = new TypeAxiomBuilderPremisses(gen); axBuilder.Setup(); break; } AxBuilder = axBuilder; UniqueNamer namer = new UniqueNamer(); Namer = namer; Namer.Spacer = "__"; this.DeclCollector = new TypeDeclCollector(namer); }