Пример #1
0
    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);
    }
Пример #2
0
 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;
 }
Пример #3
0
        // 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;
        }
Пример #4
0
 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;
   }
 }
Пример #5
0
    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);

    }