src/Tools/isac/Knowledge/Isac.thy
author Walther Neuper <neuper@ist.tugraz.at>
Fri, 10 Sep 2010 12:15:18 +0200
branchisac-update-Isa09-2
changeset 38003 0c3e2329eb5f
parent 38002 10a171ce75d5
child 38015 67ba02dffacc
permissions -rw-r--r--
----- update of isac SYNTAX Isabelle2002 --> Isabelle2009-2 finished.

Semantic check is to be done. Known problems (see #974b):
# hierarchy of theory elements for IsacKnowledge seems empty
(no ouput befor *** insert: not found ... IS OK)
# copynamed ___ --> ''' in Interpreter
# Subproblem (Thy', ... instead of Thy_ in Interpreter
# theory' handled inconsistently: "Thy" | "Thy.thy"
# thm' handled inconsistently: "refl" | "Test.refl" | "Test.class.refl"
     1 (* theory collecting all knowledge defined so far
     2    WN.11.00
     3  *)
     4 
     5 theory Isac imports PolyMinus PolyEq Vect DiffApp Biegelinie AlgEin
     6        (*InsSort +*) Test begin
     7 
     8 text {* dependencies alternative to those defined by R.Lang during his thesis:
     9 
    10    Poly				Root
    11      |\__________		 |
    12      |		 \ 		 |
    13      |		Rational	 |
    14      |		  |		 |
    15    PolyEq	RatEq		RootEq
    16       \         /  \           /
    17        \       /    \         /
    18 	RatPolyEq    RatRootEq    etc.
    19 *}
    20 
    21 ML {*
    22 (**.set up a list for getting guh + theID for a thm (defined in isabelle).**)
    23 
    24 (*local*)
    25     val allthys = Theory.ancestors_of @{theory};            (*116*)
    26     val isabthys = Theory.ancestors_of first_isac_thy;      (* 86; isa02:58*)
    27     val isacthys = subtract Theory.eq_thy isabthys allthys; (* 30*)
    28 
    29     val isacrlsthms = ((map (apsnd prop_of)) o
    30                        (gen_distinct eq_thmI) o (map rep_thm_G') o flat o 
    31 		       (map (thms_of_rls o #2 o #2))) (!ruleset');
    32     val isacthms = 
    33               (flat o (map Theory.axioms_of)) isacthys : (thmID * term) list; 
    34 (*in*)
    35     val rlsthmsNOTisac = gen_diff eq_thmI' (isacrlsthms, isacthms); 
    36     (*length rlsthmsNOTisac;-->45*)
    37 (*end;*)
    38 
    39 (*.set up the list using 'val first_isac_thy' (see ListC.ML).*)
    40 isab_thm_thy := make_isab rlsthmsNOTisac isabthys;
    41 
    42 (*.create the hierarchy of theory elements from IsacKnowledge
    43    including thms from Isabelle used in rls;
    44    elements store_*d in any *.ML are not overwritten.*)
    45 
    46 thehier := the_hier (!thehier) (collect_thydata ());
    47 writeln("----------------------------------\n" ^
    48 	"*** insert: not found ... IS OK : \n" ^
    49 	"comes from fill_parents           \n" ^
    50 	"----------------------------------\n");
    51 *}
    52 
    53 end