Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-01 12:52:01 -0800 (Tue, 01 Nov 2005)
Revision: 8071
Log message:

      Proved the induction principle on derivations.
      

Changes  Path
+146 -7 metaprl/theories/itt/reflection/experimental/itt_hoas_sequent_native.ml
+5 -1 metaprl/theories/itt/reflection/experimental/itt_hoas_sequent_native.mli
+5651 -988 metaprl/theories/itt/reflection/experimental/itt_hoas_sequent_native.prla

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-01 20:01:07 -0800 (Tue, 01 Nov 2005)
Revision: 8075
Log message:

      Rebuilt the FSub languages directly from BTerm.
      I think this is the way to go, the theories are much smaller.
      

Changes  Path
+10 -0 metaprl/theories/itt/core/itt_decidable.mli
+27 -0 metaprl/theories/itt/reflection/core/itt_hoas_operator.ml
+2 -0 metaprl/theories/itt/reflection/core/itt_hoas_operator.mli
+1 -0 metaprl/theories/poplmark/naive/OMakefile
+40 -0 metaprl/theories/poplmark/naive/pmn_core_judgments.ml
+149 -736 metaprl/theories/poplmark/naive/pmn_core_terms.ml
+1 -6 metaprl/theories/poplmark/naive/pmn_core_terms.mli
+5581 -9009 metaprl/theories/poplmark/naive/pmn_core_terms.prla
Copied metaprl/theories/poplmark/naive/pmn_core_terms_old.ml
Copied metaprl/theories/poplmark/naive/pmn_core_terms_old.mli
Copied metaprl/theories/poplmark/naive/pmn_core_terms_old.prla

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-01 20:33:50 -0800 (Tue, 01 Nov 2005)
Revision: 8076
Log message:

      Separate the judgments from the rules.
      

Changes  Path
+1 -1 metaprl/theories/poplmark/naive/OMakefile
+27 -32 metaprl/theories/poplmark/naive/pmn_core_judgments.ml
+24 -2 metaprl/theories/poplmark/naive/pmn_core_judgments.mli
Added metaprl/theories/poplmark/naive/pmn_core_subtype.ml
Properties metaprl/theories/poplmark/naive/pmn_core_subtype.ml
Added metaprl/theories/poplmark/naive/pmn_core_subtype.mli
Properties metaprl/theories/poplmark/naive/pmn_core_subtype.mli
+9 -10 metaprl/theories/poplmark/naive/pmn_core_terms.ml
+3 -1 metaprl/theories/poplmark/naive/pmn_core_terms.mli

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-02 16:35:41 -0800 (Wed, 02 Nov 2005)
Revision: 8080
Log message:

      I am working on rewriting and simplifying MetaPRL core IO - I want to change
      it so that the "role" of .cmoz/.prlb/.prla files is better established.
      
      In particular. my goals are
      
       - In the editor, the module is always taken from the .cmoz. (Optionally: if
         .prlb or .prla is newer, then the proofs are read and _merged_)
       - The .prlb is a "cache" for the .prla. If the .prla have changed since the
         .prlb was generated, the old .prlb is discarded (even if it happens to be
         newer).
       - Optionally: refuse to load .cmoz into toploop, if it was compiled against a
         version of MetaPRL that is different from the one currently running.
       - Longer term: only store proofs (and other items created or modified from
         the toploop) in .prlb/.prla. This way the .prla are much smaller, the
         locations are not stored in .prlb, the items created from the toploop are
         not discarded at repompile.
      

Changes  Path
Copied metaprl-branches/new_binary_io

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-02 16:43:10 -0800 (Wed, 02 Nov 2005)
Revision: 8081
Log message:

      Working on the new IO. This commit mostly just rips apart the old code,
      without yet contributing much new.
      
      Not even close to compiling.
      

Changes  Path
+3 -4 metaprl-branches/new_binary_io/filter/base/Files
Deleted metaprl-branches/new_binary_io/filter/base/filter_cache.ml
Deleted metaprl-branches/new_binary_io/filter/base/filter_cache.mli
+32 -23 metaprl-branches/new_binary_io/filter/base/filter_exn.ml
Added metaprl-branches/new_binary_io/filter/base/filter_io.ml
Properties metaprl-branches/new_binary_io/filter/base/filter_io.ml
Added metaprl-branches/new_binary_io/filter/base/filter_io.mli
Properties metaprl-branches/new_binary_io/filter/base/filter_io.mli
+19 -68 metaprl-branches/new_binary_io/filter/base/filter_magic.ml
+15 -16 metaprl-branches/new_binary_io/filter/base/filter_magic.mli
+3 -2 metaprl-branches/new_binary_io/filter/base/filter_ocaml.mli
Deleted metaprl-branches/new_binary_io/filter/base/filter_summary_io.ml
Deleted metaprl-branches/new_binary_io/filter/base/filter_summary_io.mli
+14 -50 metaprl-branches/new_binary_io/filter/base/filter_summary_type.ml
+1 -1 metaprl-branches/new_binary_io/filter/filter/filter_bin.ml
+7 -8 metaprl-branches/new_binary_io/filter/filter/filter_parse.ml
+1 -1 metaprl-branches/new_binary_io/filter/filter/filter_prog.ml
+3 -3 metaprl-branches/new_binary_io/filter/filter/filter_prog.mli
+11 -15 metaprl-branches/new_binary_io/library/library_type_base.ml
+1 -2 metaprl-branches/new_binary_io/library/library_type_base.mli
+2 -3 metaprl-branches/new_binary_io/mllib/OMakefile
Deleted metaprl-branches/new_binary_io/mllib/file_base.ml
Deleted metaprl-branches/new_binary_io/mllib/file_base.mli
Deleted metaprl-branches/new_binary_io/mllib/file_base_type.ml
Added metaprl-branches/new_binary_io/mllib/file_io.ml
Properties metaprl-branches/new_binary_io/mllib/file_io.ml
Added metaprl-branches/new_binary_io/mllib/file_io.mli
Properties metaprl-branches/new_binary_io/mllib/file_io.mli
Added metaprl-branches/new_binary_io/mllib/file_io_sig.ml
Properties metaprl-branches/new_binary_io/mllib/file_io_sig.ml
Deleted metaprl-branches/new_binary_io/mllib/file_type_base.ml
Deleted metaprl-branches/new_binary_io/mllib/file_type_base.mli
+4 -32 metaprl-branches/new_binary_io/support/shell/package_info.mli

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-02 21:13:35 -0800 (Wed, 02 Nov 2005)
Revision: 8082
Log message:

      Added string options.  These are like selT, but you need to use
      addOptionT or withOptionT.
      
      The differences with selT:
         1. The option is a string (perhaps it should be an opname?)
         2. A rule annotation can have multiple options using the
            [StringOption "foo"; StringOption "bar"] intro/elim
            argument.
      
      The addOptionT adds the option for the entire rest of the proof tree.
      The withOptionT adds it for a single tactic.
      The removeOptionT removes it for the rest of the proof tree.
      The withoutOptionT removes it for a single tactic.
      
      Unfortunately, the addOptionT isn't currently working.  Somewhere,
      it looks like proof annotations are getting cleared.  Looking
      into it.
      

Changes  Path
+123 -81 metaprl/support/tactics/dtactic.ml
+2 -1 metaprl/support/tactics/dtactic.mli
+23 -1 metaprl/support/tactics/top_tacticals.ml
+24 -6 metaprl/support/tactics/top_tacticals.mli
+2 -0 metaprl/tactics/proof/sequent_boot.ml
+69 -1 metaprl/tactics/proof/tactic_boot.ml
+64 -3 metaprl/tactics/proof/tactic_boot_sig.ml
+51 -19 metaprl/tactics/proof/tacticals_boot.ml
+1 -1 metaprl/theories/itt/applications/algebra/itt_group.ml
+2 -2 metaprl/theories/itt/core/itt_esquash.ml
+74 -60 metaprl/theories/itt/core/itt_logic.ml
+2 -2 metaprl/theories/itt/core/itt_quotient.ml
+1 -1 metaprl/theories/itt/core/itt_subtype.ml
+4 -0 metaprl/theories/itt/reflection/experimental/itt_hoas_sequent_native.mli
+40 -0 metaprl/theories/poplmark/naive/pmn_core_subtype.ml

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-03 10:38:21 -0800 (Thu, 03 Nov 2005)
Revision: 8084
Log message:

      Commented the code in Proof_boot that was removing all annotations
      from IO proofs.
      
      If I understand correctly, this code was added to clean up old proofs
      where annotations were mistakenly lying around.  That is, it was added
      for backwards compatibility.
      
      The best solution is probably just to re-export those broken proofs
      to fix the problem.  Alternately, and less satisfying, we could add
      another annotation that says "I really want to keep my annotations."
      
      We may want to add an annotation check to the subgoal/cache matcher
      so that subgoals are considered to be equal only if the annotations
      match.  This is probably good enough, or we could add an explicit
      annotation transformation rulebox before pulling in a subgoal with
      different annotations.
      

Changes  Path
+6 -10 metaprl/refiner/reflib/jall.ml
+62 -39 metaprl/tactics/proof/proof_boot.ml
+33 -27 metaprl/tactics/proof/tactic_boot.ml
+1 -3 metaprl/theories/itt/core/itt_logic.ml
+2 -2 metaprl/theories/poplmark/naive/pmn_core_terms.ml
+2176 -3037 metaprl/theories/poplmark/naive/pmn_core_terms.prla

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-03 16:47:41 -0800 (Thu, 03 Nov 2005)
Revision: 8085
Log message:

      Updated with Itt_dfun axioms instead of the Itt_rfun ones and Itt_pairwise
      axioms instead of Itt_pointwise ones.
      

Changes  Path
+39 -90 metaprl/theories/itt/extensions/pairwise-verification.ml

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-03 18:29:13 -0800 (Thu, 03 Nov 2005)
Revision: 8088
Log message:

      - Proved the nilSqequal rule (it used to be primitive).
      - Some more progress verifying ITT Core under the pairwise functionality.
      

Changes  Path
+2 -3 metaprl/theories/itt/core/itt_list.ml
+5862 -5988 metaprl/theories/itt/core/itt_list.prla
+44 -21 metaprl/theories/itt/extensions/pairwise-verification.ml

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-03 21:01:47 -0800 (Thu, 03 Nov 2005)
Revision: 8089
Log message:

      Defined the IO module for .cmiz
      

Changes  Path
+0 -1 metaprl-branches/new_binary_io/filter/base/Files
+6 -6 metaprl-branches/new_binary_io/filter/base/OMakefile
+104 -0 metaprl-branches/new_binary_io/filter/base/filter_io.ml
Deleted metaprl-branches/new_binary_io/filter/base/filter_magic.ml
Deleted metaprl-branches/new_binary_io/filter/base/filter_magic.mli
+0 -2 metaprl-branches/new_binary_io/filter/filter/filter_parse.ml
+2 -6 metaprl-branches/new_binary_io/filter/filter/filter_prog.ml
+1 -6 metaprl-branches/new_binary_io/filter/filter/filter_prog.mli
+3 -0 metaprl-branches/new_binary_io/mllib/file_io.ml
+4 -0 metaprl-branches/new_binary_io/mllib/file_io.mli
+0 -1 metaprl-branches/new_binary_io/tactics/proof/OMakefile
Deleted metaprl-branches/new_binary_io/tactics/proof/proof_convert.ml
Deleted metaprl-branches/new_binary_io/tactics/proof/proof_convert.mli

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-03 21:08:10 -0800 (Thu, 03 Nov 2005)
Revision: 8090
Log message:

      - Proof steps match only if the annotations match.
      - Removed annotation removal during IO squashing.
      - Expanded all proofs that produce warning messages,
        and re-exported them.
      
      Note, I believe I hit the weak-memo bug, or something like it
      during proof expansion, and I got crazy terms appearing in
      unrelated theorems:(  I believe I have re-fixed all those
      broken proofs.  check-status reports that all is well.
      

Changes  Path
+12 -32 metaprl/tactics/proof/proof_boot.ml
+44 -0 metaprl/tactics/proof/tactic_boot.ml
+1 -0 metaprl/tactics/proof/tactic_boot_sig.ml
+1 -0 metaprl/theories/czf/OMakefile
+2125 -2882 metaprl/theories/czf/czf_itt_abel_group.prla
+1313 -2325 metaprl/theories/czf/czf_itt_all.prla
+1038 -1842 metaprl/theories/czf/czf_itt_and.prla
+3808 -5404 metaprl/theories/czf/czf_itt_cyclic_group.prla
+3083 -4182 metaprl/theories/czf/czf_itt_cyclic_subgroup.prla
+1861 -2376 metaprl/theories/czf/czf_itt_empty.prla
+9610 -13455 metaprl/theories/czf/czf_itt_equiv.prla
+1290 -2199 metaprl/theories/czf/czf_itt_exists.prla
+757 -1211 metaprl/theories/czf/czf_itt_false.prla
+4865 -6086 metaprl/theories/czf/czf_itt_group.prla
+3211 -4490 metaprl/theories/czf/czf_itt_group_bvd.prla
+1192 -2036 metaprl/theories/czf/czf_itt_implies.prla
+2567 -3464 metaprl/theories/czf/czf_itt_inv_image.prla
+3195 -4163 metaprl/theories/czf/czf_itt_isect.prla
+8163 -9689 metaprl/theories/czf/czf_itt_kleingroup.prla
+1083 -1830 metaprl/theories/czf/czf_itt_or.prla
+2739 -3321 metaprl/theories/czf/czf_itt_rel.prla
+2321 -3047 metaprl/theories/czf/czf_itt_sall.prla
+5143 -7874 metaprl/theories/czf/czf_itt_set_ind.prla
+1668 -2663 metaprl/theories/czf/czf_itt_setdiff.prla
+2398 -3102 metaprl/theories/czf/czf_itt_sexists.prla
+2565 -3401 metaprl/theories/czf/czf_itt_singleton.prla
+3830 -5422 metaprl/theories/czf/czf_itt_subgroup.prla
+2246 -2873 metaprl/theories/czf/czf_itt_subset.prla
+758 -1211 metaprl/theories/czf/czf_itt_true.prla
+1678 -2429 metaprl/theories/fol/cfol_itt_base.prla
+668 -1030 metaprl/theories/fol/fol_itt_false.prla
+1081 -1504 metaprl/theories/fol/fol_itt_implies.prla
+646 -992 metaprl/theories/fol/fol_itt_true.prla
+5703 -6472 metaprl/theories/itt/applications/algebra/itt_intdomain.prla
+2837 -2701 metaprl/theories/itt/applications/algebra/itt_intdomain_e.prla
+5012 -6144 metaprl/theories/itt/applications/datatypes/itt_collection.prla
+584 -858 metaprl/theories/itt/core/itt_pointwise.prla
+1932 -2489 metaprl/theories/itt/core/itt_singleton.prla
+2129 -3820 metaprl/theories/itt/core/itt_well_founded.prla
+1038 -825 metaprl/theories/itt/extensions/itt_pairwise.prla
+7145 -6474 metaprl/theories/s4lp/s4_logic.prla
+2862 -3197 metaprl/theories/tptp/tptp_derive.prla

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-03 21:35:59 -0800 (Thu, 03 Nov 2005)
Revision: 8091
Log message:

      Added ty_exp_elim_slow for testing purposes.
      

Changes  Path
+10 -0 metaprl/theories/poplmark/naive/pmn_core_terms.ml
+574 -463 metaprl/theories/poplmark/naive/pmn_core_terms.prla

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-03 22:00:17 -0800 (Thu, 03 Nov 2005)
Revision: 8092
Log message:

      Moving the closed branches out of the way.
      

Changes  Path
Copied metaprl-branches/closed/CS101_branch
Copied metaprl-branches/closed/S4-jprover
Copied metaprl-branches/closed/WeakMemoGCexpr
Copied metaprl-branches/closed/abstract_vars
Copied metaprl-branches/closed/bound_contexts
Copied metaprl-branches/closed/bound_contexts2
Copied metaprl-branches/closed/cic
Copied metaprl-branches/closed/fast_parser
Copied metaprl-branches/closed/filter_phobos
Copied metaprl-branches/closed/jprover-rule-based-unif
Copied metaprl-branches/closed/lm_libmojave
Copied metaprl-branches/closed/nasslli_branch
Copied metaprl-branches/closed/new-then_Lab_T-implementation
Copied metaprl-branches/closed/new_match_table
Copied metaprl-branches/closed/new_parser
Copied metaprl-branches/closed/new_parser2
Copied metaprl-branches/closed/new_parser3
Copied metaprl-branches/closed/new_scanner2
Copied metaprl-branches/closed/ocaml_3_02
Copied metaprl-branches/closed/ocaml_3_04
Copied metaprl-branches/closed/ocaml_3_07
Copied metaprl-branches/closed/omake_0_9_7_pre6
Copied metaprl-branches/closed/opname_class3
Copied metaprl-branches/closed/opname_classes
Copied metaprl-branches/closed/opname_classes2
Copied metaprl-branches/closed/opname_classes3
Copied metaprl-branches/closed/opname_classes4
Copied metaprl-branches/closed/quote_param
Copied metaprl-branches/closed/recursive_sequents
Copied metaprl-branches/closed/recursive_sequents2
Copied metaprl-branches/closed/sequent_args_in_rewrites
Copied metaprl-branches/closed/shell_begin
Copied metaprl-branches/closed/unify_mm

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-03 22:14:06 -0800 (Thu, 03 Nov 2005)
Revision: 8093
Log message:

      Adding lm_set.ml to the list of files to be included in the "magic" digest
      calculation.
      

Changes  Path
+10 -7 metaprl/filter/base/OMakefile
+1 -1 metaprl/filter/base/filter_magic.ml

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-03 22:16:24 -0800 (Thu, 03 Nov 2005)
Revision: 8094
Log message:

      Exploring the "this takes too long" example further. Simply running jproverT
      in /poplmark_naive/pmn_core_terms/ty_exp_elim_slow/1/1/1/1/1/2/2/1/1/1/1/2
      seems to take too long.
      

Changes  Path
+175 -145 metaprl/theories/poplmark/naive/pmn_core_terms.prla

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-04 09:27:20 -0800 (Fri, 04 Nov 2005)
Revision: 8095
Log message:

      Relaxed a bit the test for "may be patterns". If all occurrences of a second
      variable in the redex are "pattern-like" occurrences inside another second
      order variable (which means that in the actual match in may not occur at all
      if that other SO variable does not depend on its argument), the rewriter used
      to complain. I've changed it so that if that SO variable does not occur in the
      contractum, then rewriter accepts such rewrite.
      
      Example:
      
      interactive tunionHyp {| nth_hyp |} 'H :
         sequent { <H>; x: 'B['a]; <J['x]> >- 'x in Union x:'A. 'B['x]  }
         
      Here the rewriter used to complain that 'a does not have a pattern and needs
      to be passed in as an argument, which is clearly unnecessary in this case.
      

Changes  Path
+1 -1 metaprl/filter/base/filter_magic.ml
+2 -0 metaprl/refiner/rewrite/rewrite.ml
+1 -1 metaprl/refiner/rewrite/rewrite_compile_contractum.ml
+7 -5 metaprl/refiner/rewrite/rewrite_compile_redex.ml
+2 -0 metaprl/refiner/rewrite/rewrite_debug.ml
+3 -0 metaprl/refiner/rewrite/rewrite_types.ml
+28 -2 metaprl/refiner/rewrite/rewrite_util.ml
+2 -1 metaprl/refiner/rewrite/rewrite_util_sig.ml

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-04 10:05:14 -0800 (Fri, 04 Nov 2005)
Revision: 8096
Log message:

      - Updated the elimination rules for Union so that they better preserve binding
        names.
      
      - Fixed the proof of tunionElimination_disjoint
      

Changes  Path
+844 -866 metaprl/theories/itt/core/itt_list2.prla
+10 -10 metaprl/theories/itt/core/itt_tunion.ml
+1018 -894 metaprl/theories/itt/core/itt_tunion.prla

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-04 14:07:15 -0800 (Fri, 04 Nov 2005)
Revision: 8097
Log message:

      Apparently we had forgotten to save string attributes to the IO proof
      terms.
      

Changes  Path
+18 -17 metaprl/tactics/proof/proof_boot.ml
+4 -0 metaprl/tactics/proof/tactic_boot.ml
+1 -0 metaprl/theories/poplmark/naive/OMakefile
+0 -10 metaprl/theories/poplmark/naive/pmn_core_terms.ml
+1658 -1869 metaprl/theories/poplmark/naive/pmn_core_terms.prla
Deleted metaprl/theories/poplmark/naive/pmn_core_terms_old.ml
Deleted metaprl/theories/poplmark/naive/pmn_core_terms_old.mli
Deleted metaprl/theories/poplmark/naive/pmn_core_terms_old.prla
Copied metaprl/theories/poplmark/naive/pmn_core_terms_test.ml
Copied metaprl/theories/poplmark/naive/pmn_core_terms_test.mli
Copied metaprl/theories/poplmark/naive/pmn_core_terms_test.prla

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-04 20:36:28 -0800 (Fri, 04 Nov 2005)
Revision: 8100
Log message:

      Added the (Annotate of tactic_arg * tactic_arg) proof step.  This
      addresses the problem with proof annotations being dropped.
      
      Proof files (.prlb and .prla) are defined to be backwards-compatible,
      but not forwards-compatible.
      

Changes  Path
+2 -0 metaprl/filter/base/OMakefile
+6 -4 metaprl/filter/base/filter_magic.ml
+4 -0 metaprl/support/shell/proof_edit.ml
+100 -57 metaprl/tactics/proof/proof_boot.ml
+19 -0 metaprl/tactics/proof/proof_term_boot.ml
+17 -10 metaprl/tactics/proof/tactic_boot.ml
+2 -0 metaprl/tactics/proof/tactic_boot_sig.ml
+124 -93 metaprl/theories/poplmark/naive/pmn_core_terms_test.prla

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-05 13:20:43 -0800 (Sat, 05 Nov 2005)
Revision: 8109
Log message:

      Save the current version with structural induction while I
      try the pure BTerm approach.
      

Changes  Path
Copied metaprl-branches/jyh/naive-take3
Copied metaprl-branches/jyh/naive-take3/itt_hoas_sequent_native.ml
Copied metaprl-branches/jyh/naive-take3/itt_hoas_sequent_native.mli
Copied metaprl-branches/jyh/naive-take3/itt_hoas_sequent_native.prla
Deleted metaprl-branches/jyh/naive-take3/pmn_core_terms_test.prla
Copied metaprl-branches/jyh/naive-take3/pmn_core_terms_test.prla

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-05 15:50:05 -0800 (Sat, 05 Nov 2005)
Revision: 8110
Log message:

      Trying out the "well-formedness"-based Fsub logic.
      

Changes  Path
+11 -0 metaprl/theories/base/base_grammar.mli
+54 -70 metaprl/theories/itt/reflection/experimental/itt_hoas_sequent_native.ml
+3 -3 metaprl/theories/itt/reflection/experimental/itt_hoas_sequent_native.mli
+1922 -2567 metaprl/theories/itt/reflection/experimental/itt_hoas_sequent_native.prla
+2 -3 metaprl/theories/poplmark/naive/OMakefile
Deleted metaprl/theories/poplmark/naive/pmn_core_judgments.ml
Deleted metaprl/theories/poplmark/naive/pmn_core_judgments.mli
Added metaprl/theories/poplmark/naive/pmn_core_logic.ml
Properties metaprl/theories/poplmark/naive/pmn_core_logic.ml
Added metaprl/theories/poplmark/naive/pmn_core_logic.mli
Properties metaprl/theories/poplmark/naive/pmn_core_logic.mli
Deleted metaprl/theories/poplmark/naive/pmn_core_subtype.ml
Deleted metaprl/theories/poplmark/naive/pmn_core_subtype.mli
+7 -215 metaprl/theories/poplmark/naive/pmn_core_terms.ml
+29 -37 metaprl/theories/poplmark/naive/pmn_core_terms.mli

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-05 20:40:58 -0800 (Sat, 05 Nov 2005)
Revision: 8111
Log message:

      Added the "reflected_logic" block, see Pmn_core_logic for an example.
      Currently working out the rule arguments, so the final few
      rules are disabled.
      
      The main goal is, for a rule
      
         interactive foo : <mt>
      
      Do 3 things:
         1. Define unfold_foo : foo <--> <mt>
         2. Add a wf rule, <H> >- foo IN ProofRule
         3. Add the provability rule (one direction of reflection):
      
            If <mt> == <t1> --> ... -> <tn>
            Add the real rule:
      
               <H> -> Provable{t1} -->
               ...
               <H> -> Provable{tn}
      

Changes  Path
+1 -0 metaprl/filter/base/Files
+1 -412 metaprl/filter/base/filter_grammar.ml
+1 -8 metaprl/filter/base/filter_grammar.mli
Added metaprl/filter/base/filter_reflection.ml
Properties metaprl/filter/base/filter_reflection.ml
Added metaprl/filter/base/filter_reflection.mli
Properties metaprl/filter/base/filter_reflection.mli
+1 -1 metaprl/filter/base/filter_summary_type.ml
+9 -3 metaprl/filter/base/filter_type.ml
+7 -1 metaprl/filter/base/filter_util.ml
+1 -0 metaprl/filter/base/filter_util.mli
+115 -16 metaprl/filter/filter/filter_parse.ml
+15 -4 metaprl/filter/filter/term_grammar.ml
+1 -1 metaprl/theories/itt/applications/datatypes/itt_rbtree.ml
+35 -0 metaprl/theories/itt/reflection/experimental/itt_hoas_sequent_native.ml
+9 -1 metaprl/theories/itt/reflection/experimental/itt_hoas_sequent_native.mli
+74 -78 metaprl/theories/poplmark/naive/pmn_core_logic.ml
+6 -3 metaprl/theories/poplmark/naive/pmn_core_logic.mli

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-05 23:48:24 -0800 (Sat, 05 Nov 2005)
Revision: 8112
Log message:

      Further "autoT is taking too long" investagation - in 
      /poplmark_naive/pmn_core_terms_test/ty_exp_elim_slow/1/1/1/1/1/2/2/1/1/1/2/1
      even the simple_jproverT tactic is taking forever.
      

Changes  Path
+288 -190 metaprl/theories/poplmark/naive/pmn_core_terms_test.prla

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-11-06 18:03:10 -0800 (Sun, 06 Nov 2005)
Revision: 8116
Log message:

      Returned to requiring wf of sequents, so that we don't need wf-subgoals
      in the object logic.
      
      This mostly completes the initial phase of the Filter_parse reflection.
      You can define a logic of syntax, or a logic of rules, or any mixture.
      
         reflected_logic foo_logic =
         struct
            declare typeclass AExp
            declare typeclass BExp
      
            declare A : AExp
            declare B{'e : AExp} : AExp
            declare C{a: AExp. 'e['a] : BExp} : BExp
      
            interactive c_intro :
               sequent { <H>; a: A >- 'e['a] } -->
               sequent { <H> >- C{a. 'e['a]} }
         end
      
      Declarations are processed as normal in this block, plus 3 new parts
      are added.  Only the reflected rule makes sense.
      
      Each declaration/rule produces 3 parts:
         1. A definition (unfold_X : X <--> <definition>)
         2. A wf-goal (interactive X_wf : X in ProofRule)
         3. An ITT rule:
            interactive X_itt :
               <H1> >- Provable{$`(<H>; a: A >- e[a])} -->
               <H1> >- Provable{$`(<H> >- C{a. e[a]})}
      
      Plus you get the complete logic, containing all the rules
      that were defined (an no others).
      
         define foo_logic <--> [A; B; C; c_intro]
         define Provable{'e} <-->
            Itt_hoas_sequent_native!Provable{Sequent; foo_logic; 'e}
      
      I haven't proved any theorems, so we'll see how that goes.
      

Changes  Path
+218 -75 metaprl/filter/base/filter_reflection.ml
+9 -0 metaprl/filter/base/filter_reflection.mli
+238 -32 metaprl/filter/filter/filter_parse.ml
+7 -0 metaprl/refiner/refiner/refiner_debug.ml
+2 -2 metaprl/refiner/reflib/term_ty_infer.ml
+1 -0 metaprl/refiner/refsig/term_op_sig.ml
+5 -0 metaprl/refiner/term_ds/term_op_ds.ml
+5 -0 metaprl/refiner/term_std/term_op_std.ml
+1 -1 metaprl/support/display/perv.mli
+5 -0 metaprl/theories/itt/core/itt_list2.ml
+4 -0 metaprl/theories/itt/core/itt_list2.mli
+1 -1 metaprl/theories/itt/reflection/core/itt_hoas_base.ml
+4 -4 metaprl/theories/itt/reflection/core/itt_hoas_vector.ml
+2 -2 metaprl/theories/itt/reflection/experimental/OMakefile
Added metaprl/theories/itt/reflection/experimental/itt_hoas_meta_types.ml
Properties metaprl/theories/itt/reflection/experimental/itt_hoas_meta_types.ml
Added metaprl/theories/itt/reflection/experimental/itt_hoas_meta_types.mli
Properties metaprl/theories/itt/reflection/experimental/itt_hoas_meta_types.mli
+53 -0 metaprl/theories/itt/reflection/experimental/itt_hoas_sequent_native.ml
Added metaprl/theories/itt/reflection/experimental/itt_hoas_theory.ml
Properties metaprl/theories/itt/reflection/experimental/itt_hoas_theory.ml
Added metaprl/theories/itt/reflection/experimental/itt_hoas_theory.mli
Properties metaprl/theories/itt/reflection/experimental/itt_hoas_theory.mli
+23 -32 metaprl/theories/poplmark/naive/pmn_core_logic.ml
+12 -10 metaprl/theories/poplmark/naive/pmn_core_logic.mli
+58 -2 metaprl/theories/poplmark/naive/pmn_core_terms.ml
+40 -17 metaprl/theories/poplmark/naive/pmn_core_terms.mli

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-06 18:18:30 -0800 (Sun, 06 Nov 2005)
Revision: 8117
Log message:

      OMake should be checked out from the 0.9.6.x branch.
      

Changes  Path
+2 -2 metaprl/doc/htmlman/mp-install.html

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-06 22:35:45 -0800 (Sun, 06 Nov 2005)
Revision: 8119
Log message:

      Minor fixes in the IO code. Still a long way to go.
      

Changes  Path
+8 -4 metaprl-branches/new_binary_io/filter/base/filter_io.ml
+1 -16 metaprl-branches/new_binary_io/tactics/proof/tactic_boot_sig.ml

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-07 01:14:46 -0800 (Mon, 07 Nov 2005)
Revision: 8123
Log message:

      - env_arg.mli: use self-documentary type names (e.g. "Arg.usage_msg" instead
        of "string")
      
      - removed a little bit of unused code.
      

Changes  Path
+0 -2 metaprl/filter/base/filter_cache_fun.ml
+0 -1 metaprl/filter/base/filter_summary_io.ml
+0 -2 metaprl/filter/base/filter_summary_type.ml
+1 -0 metaprl/mllib/env_arg.ml
+8 -7 metaprl/mllib/env_arg.mli
+1 -3 metaprl/mllib/file_base.ml
+0 -1 metaprl/mllib/file_base_type.ml

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-11-07 01:22:48 -0800 (Mon, 07 Nov 2005)
Revision: 8124
Log message:

      Merged in the trunk changes (revisions 8080:8123):
         svn merge -r 8080:8123 svn+ssh://svn.metaprl.org/svnroot/mojave/metaprl
      

Changes  Path
+2 -2 metaprl-branches/new_binary_io/doc/htmlman/mp-install.html
+1 -0 metaprl-branches/new_binary_io/filter/base/Files
+12 -7 metaprl-branches/new_binary_io/filter/base/OMakefile
+0 -2 metaprl-branches/new_binary_io/filter/base/filter_cache_fun.ml
+1 -412 metaprl-branches/new_binary_io/filter/base/filter_grammar.ml
+1 -8 metaprl-branches/new_binary_io/filter/base/filter_grammar.mli
+3 -2 metaprl-branches/new_binary_io/filter/base/filter_io.ml
Copied metaprl-branches/new_binary_io/filter/base/filter_reflection.ml
Properties metaprl-branches/new_binary_io/filter/base/filter_reflection.ml
Copied metaprl-branches/new_binary_io/filter/base/filter_reflection.mli
Properties metaprl-branches/new_binary_io/filter/base/filter_reflection.mli
+1 -2 metaprl-branches/new_binary_io/filter/base/filter_summary_type.ml
+9 -3 metaprl-branches/new_binary_io/filter/base/filter_type.ml
+7 -1 metaprl-branches/new_binary_io/filter/base/filter_util.ml
+1 -0 metaprl-branches/new_binary_io/filter/base/filter_util.mli
+321 -16 metaprl-branches/new_binary_io/filter/filter/filter_parse.ml
+15 -4 metaprl-branches/new_binary_io/filter/filter/term_grammar.ml
+1 -0 metaprl-branches/new_binary_io/mllib/env_arg.ml
+8 -7 metaprl-branches/new_binary_io/mllib/env_arg.mli
+7 -0 metaprl-branches/new_binary_io/refiner/refiner/refiner_debug.ml
+6 -10 metaprl-branches/new_binary_io/refiner/reflib/jall.ml
+2 -2 metaprl-branches/new_binary_io/refiner/reflib/term_ty_infer.ml
+1 -0 metaprl-branches/new_binary_io/refiner/refsig/term_op_sig.ml
+2 -0 metaprl-branches/new_binary_io/refiner/rewrite/rewrite.ml
+1 -1 metaprl-branches/new_binary_io/refiner/rewrite/rewrite_compile_contractum.ml
+7 -5 metaprl-branches/new_binary_io/refiner/rewrite/rewrite_compile_redex.ml
+2 -0 metaprl-branches/new_binary_io/refiner/rewrite/rewrite_debug.ml
+3 -0 metaprl-branches/new_binary_io/refiner/rewrite/rewrite_types.ml
+28 -2 metaprl-branches/new_binary_io/refiner/rewrite/rewrite_util.ml
+2 -1 metaprl-branches/new_binary_io/refiner/rewrite/rewrite_util_sig.ml
+5 -0 metaprl-branches/new_binary_io/refiner/term_ds/term_op_ds.ml
+5 -0 metaprl-branches/new_binary_io/refiner/term_std/term_op_std.ml
+1 -1 metaprl-branches/new_binary_io/support/display/perv.mli
+4 -0 metaprl-branches/new_binary_io/support/shell/proof_edit.ml
+123 -81 metaprl-branches/new_binary_io/support/tactics/dtactic.ml
+2 -1 metaprl-branches/new_binary_io/support/tactics/dtactic.mli
+23 -1 metaprl-branches/new_binary_io/support/tactics/top_tacticals.ml
+24 -6 metaprl-branches/new_binary_io/support/tactics/top_tacticals.mli
+170 -123 metaprl-branches/new_binary_io/tactics/proof/proof_boot.ml
+19 -0 metaprl-branches/new_binary_io/tactics/proof/proof_term_boot.ml
+2 -0 metaprl-branches/new_binary_io/tactics/proof/sequent_boot.ml
+157 -28 metaprl-branches/new_binary_io/tactics/proof/tactic_boot.ml
+67 -3 metaprl-branches/new_binary_io/tactics/proof/tactic_boot_sig.ml
+51 -19 metaprl-branches/new_binary_io/tactics/proof/tacticals_boot.ml
+11 -0