src/Tools/isac/ROOT.ML
author Walther Neuper <neuper@ist.tugraz.at>
Thu, 19 Aug 2010 12:08:42 +0200
branchisac-update-Isa09-2
changeset 37929 862f35fdb091
parent 37926 e6fc98fbcb85
permissions -rw-r--r--
reduced ctxt_Isac and ctxt_HOL to fun thy2ctxt', thy2ctxt
neuper@37906
     1
(*.evaluate isac (all the code of the kernel) and isactest
neuper@37906
     2
   (c) Walther Neuper 1997
neuper@37906
     3
neuper@37906
     4
--------------------------------------------------------old heap on new nb
neuper@37906
     5
  polyisac /home/neuper/devel/isac-10/heap/HOL-Real-Isac 
neuper@37906
     6
--------------------------------------------------------old heap on new nb
neuper@37906
     7
neuper@37906
     8
  poly /usr/local/Isabelle2002/heaps/polyml-4.1.3_x86-linux/HOL-Real
neuper@37906
     9
  cd"/home/neuper/proto2/isac/src/sml"; use"ROOT.ML";
neuper@37906
    10
neuper@37906
    11
############################# nb-setup 080917 broke the isabelle configuration; thus HOL-Real CANNOT BE RECOMPUTED todo !
neuper@37906
    12
neuper@37906
    13
  /usr/local/Isabelle2002/bin/isabelle HOL-Real
neuper@37906
    14
  cd"/home/neuper/proto2/isac/src/sml"; use"ROOT.ML";
neuper@37906
    15
neuper@37906
    16
############################# Rational-SK070730.ML #############
neuper@37906
    17
neuper@37906
    18
  cd"/home/neuper/proto2/isac/src/sml"; use"RCODE-root.sml";
neuper@37906
    19
  cd"/home/neuper/proto2/isac/src/sml"; use"RTEST-root.sml";
neuper@37906
    20
.*)
neuper@37906
    21
neuper@37906
    22
(*.please change HERE and in RCODE-root accordingly, 
neuper@37906
    23
   if you store a new heap ...*)
neuper@37906
    24
val version_isac = "WN071206-applyTacticTW";
neuper@37906
    25
neuper@37906
    26
print_depth 1;(*reduces verbosity of stdout*)
neuper@37906
    27
neuper@37906
    28
(*.these functions from Isabelle2002/src/Pure/library.ML are overwritten
neuper@37906
    29
  by some Isabelle2002 theory file; thus reestablished for isac.*)
neuper@37926
    30
fun find_first _ [] = NONE
neuper@37906
    31
  | find_first pred (x :: xs) =
neuper@37926
    32
    if pred x then SOME x else find_first pred xs;
neuper@37906
    33
fun swap (x, y) = (y, x);
neuper@37906
    34
(*HACK.WN080107*) val sstr = str;
neuper@37906
    35
  
neuper@37906
    36
"**** build the isac kernel = math-engine + IsacKnowledge ";
neuper@37906
    37
"**** build the math-engine ******************************";
neuper@37906
    38
use"library.sml";
neuper@37906
    39
use"calcelems.sml";
neuper@37906
    40
check_guhs_unique := true;
neuper@37906
    41
cd "Scripts";
neuper@37906
    42
 	use"term_G.sml";
neuper@37906
    43
 	use"calculate.sml";
neuper@37906
    44
 	use"rewrite.sml";
neuper@37906
    45
 	use_thy"Script";
neuper@37906
    46
(*      remove_thy"ListG";
neuper@37906
    47
 	use_thy"~/proto2/isac/src/sml/Scripts/Script";
neuper@37906
    48
 	*)
neuper@37906
    49
 	use"scrtools.sml";
neuper@37906
    50
 	cd ".."; 
neuper@37906
    51
cd "ME";
neuper@37906
    52
 	use"mstools.sml";
neuper@37906
    53
 	use"ctree.sml";
neuper@37906
    54
 	use"ptyps.sml"; 
neuper@37906
    55
 	use"generate.sml";
neuper@37906
    56
 	use"calchead.sml";
neuper@37906
    57
 	use"appl.sml";
neuper@37906
    58
 	use"rewtools.sml";
neuper@37906
    59
 	use"script.sml";
neuper@37906
    60
 	use"solve.sml";
neuper@37906
    61
	use"inform.sml"; 
neuper@37906
    62
 	use"mathengine.sml";
neuper@37906
    63
 	cd ".."; 
neuper@37906
    64
cd "xmlsrc";
neuper@37906
    65
 	use"mathml.sml";
neuper@37906
    66
 	use"datatypes.sml";        
neuper@37906
    67
 	use"pbl-met-hierarchy.sml";    
neuper@37906
    68
 	use"thy-hierarchy.sml";    
neuper@37906
    69
 	use"interface-xml.sml";
neuper@37906
    70
 	cd "..";
neuper@37906
    71
cd"FE-interface";
neuper@37906
    72
 	use"messages.sml";
neuper@37906
    73
	use"states.sml";
neuper@37906
    74
	use"interface.sml";
neuper@37906
    75
 	cd "..";
neuper@37906
    76
use"print_exn_G.sml";
neuper@37906
    77
"**** build math-engine complete *************************";
neuper@37906
    78
 
neuper@37906
    79
"**** build the IsacKnowledge ****************************";
neuper@37906
    80
 cd "IsacKnowledge";
neuper@37906
    81
 	use_thy"Isac"; (*evaluates ALL thys depending on the root 'Isac'*)
neuper@37906
    82
neuper@37906
    83
 (*     remove_thy"Typefix";
neuper@37906
    84
 	use_thy"~/proto2/isac/src/sml/IsacKnowledge/Isac";
neuper@37906
    85
        *)
neuper@37906
    86
 	cd "..";
neuper@37906
    87
"**** build IsacKnowledge complete ***********************";
neuper@37906
    88
"**** build isac kernel complete *************************";
neuper@37906
    89
check_guhs_unique := false;
neuper@37906
    90
 
neuper@37906
    91
"**** run the tests **************************************";
neuper@37906
    92
cd "systest";
neuper@37906
    93
(*+ check kbtest/diffapp.sml for additional items in met-model*)
neuper@37906
    94
       	use"root-equ.sml"; 
neuper@37906
    95
       	use"script.sml";   
neuper@37906
    96
	(* use"script_if.sml"; WN03 missing: is_rootequation_in*)
neuper@37906
    97
       	use"scriptnew.sml";     
neuper@37906
    98
       	use"subp-rooteq.sml";   
neuper@37906
    99
	use"tacis.sml";
neuper@37906
   100
	use"interface-xml.sml";
neuper@37906
   101
	(* use"testdaten.sml"; no update after dropping 'errorBound'*)    
neuper@37906
   102
 	cd "../..";
neuper@37906
   103
"**** run systests complete ******************************";
neuper@37906
   104
(*TODO copy the whole filestructure from sml to smltest*)
neuper@37906
   105
neuper@37906
   106
cd"smltest/Scripts";
neuper@37906
   107
 	use"calculate-float.sml";
neuper@37906
   108
 	use"calculate.sml";
neuper@37906
   109
	use"listg.sml";
neuper@37906
   110
	use"rewrite.sml";
neuper@37906
   111
 	use"scrtools.sml";
neuper@37906
   112
 	use"term_G.sml";
neuper@37906
   113
 	use"tools.sml";
neuper@37906
   114
 	cd "../.."; 
neuper@37906
   115
cd"smltest/ME";
neuper@37906
   116
        use"ctree.sml";
neuper@37906
   117
       	use"calchead.sml";
neuper@37906
   118
	use"rewtools.sml";
neuper@37906
   119
        use"solve.sml"; (*detailrls can notyet ackn. 'Rewrite_Set "cancel"' *);
neuper@37906
   120
        use"inform.sml";
neuper@37906
   121
	use"me.sml";
neuper@37906
   122
       	use"ptyps.sml"; 
neuper@37906
   123
 	cd "../.."; 
neuper@37906
   124
cd"smltest/xmlsrc";
neuper@37906
   125
 	use"datatypes.sml";        
neuper@37906
   126
       	use"pbl-met-hierarchy.sml"; 
neuper@37906
   127
       	use"thy-hierarchy.sml";
neuper@37906
   128
 	cd "../.."; 
neuper@37906
   129
cd"smltest/FE-interface";
neuper@37906
   130
      	use"interface.sml";
neuper@37906
   131
 	cd "../.."; 
neuper@37906
   132
"**** run tests on math-engine complete ******************";
neuper@37906
   133
cd"smltest/IsacKnowledge";
neuper@37906
   134
        use"atools.sml";
neuper@37906
   135
 	use"complex.sml";
neuper@37906
   136
 	use"diff.sml";
neuper@37906
   137
 	use"diffapp.sml";
neuper@37906
   138
	use"integrate.sml";
neuper@37906
   139
	use"equation.sml";
neuper@37906
   140
	(*use"inssort.sml"; problems with recdef in Isabelle2002*)
neuper@37906
   141
 	use"logexp.sml";
neuper@37906
   142
 	use"poly.sml";
neuper@37906
   143
 	use"polyminus.sml";
neuper@37906
   144
 	use"polyeq.sml";  (*TODO 31.b, n1., 44.a, 1.a~, 1.b (all'expanded')WN
neuper@37906
   145
 			     ? also check others without check 'diff.behav.'*);
neuper@37906
   146
 	use"rateq.sml";
neuper@37906
   147
 	use"rational.sml" (*TODO add_fractions_p throws overflow-exn      WN*);
neuper@37906
   148
 	use"rlang.sml";    (*WN.12.6.03: for TODOs search 'writeln', 
neuper@37906
   149
 			     for simplification search MG 
neuper@37906
   150
 		 erls:       98a(1) 104a(1) 104a(2) 68a *);
neuper@37906
   151
 	use"root.sml";
neuper@37906
   152
 	use"rooteq.sml";
neuper@37906
   153
 	use"rootrateq.sml";
neuper@37906
   154
 	use"termorder.sml";
neuper@37906
   155
 	use"trig.sml";
neuper@37906
   156
 	use"vect.sml";  
neuper@37906
   157
	use"wn.sml";
neuper@37906
   158
	use"eqsystem.sml";
neuper@37906
   159
	use"biegelinie.sml";
neuper@37906
   160
	use"algein.sml";
neuper@37906
   161
 	cd "../.."; 
neuper@37906
   162
"**** run tests on IsacKnowledge complete ****************";
neuper@37906
   163
neuper@37906
   164
val path = "/home/neuper/proto2/testsml2xml/"; 
neuper@37906
   165
pbl_hierarchy2file (path ^ "pbl/");
neuper@37906
   166
pbls2file          (path ^ "pbl/");
neuper@37906
   167
met_hierarchy2file (path ^ "met/");
neuper@37906
   168
mets2file          (path ^ "met/");
neuper@37906
   169
thy_hierarchy2file (path ^ "thy/");
neuper@37906
   170
thes2file          (path ^ "thy/");
neuper@37906
   171
"**** tested creation of xmldata *************************";
neuper@37906
   172
neuper@37906
   173
cd"sml";
neuper@37906
   174
states:=[];
neuper@37906
   175
print_depth 3;
neuper@37906
   176
"=========================================================";
neuper@37906
   177
neuper@37906
   178
"**** build math-engine complete *************************";
neuper@37906
   179
"**** build IsacKnowledge complete ***********************";
neuper@37906
   180
"**** run systests complete ***************** re-organize!";
neuper@37906
   181
"**** run tests on math-engine complete ******************";
neuper@37906
   182
"**** run tests on IsacKnowledge complete ****************";
neuper@37906
   183
"**** tested creation of xmldata *************************";
neuper@37906
   184
"**** build isac kernel + run tests complete *************";
neuper@37906
   185
neuper@37906
   186
neuper@37906
   187
neuper@37906
   188
(****************************************************************************
neuper@37906
   189
WN.notebook: SMLNJ
neuper@37906
   190
-----------------------------------------------------------------------------
neuper@37906
   191
  cd ~/isabelle-smlnj/heaps/smlnj-110_x86-linux/
neuper@37906
   192
  sml @SMLload=02-HOL-Real-isac
neuper@37906
   193
  cd"~/develop/sml/";
neuper@37906
   194
  use"ROOT.ML";
neuper@37906
   195
neuper@37906
   196
*****************************************************************************
neuper@37906
   197
WN.notebook: create HTML representation for theory files für Isac
neuper@37906
   198
-----------------------------------------------------------------------------
neuper@37906
   199
su
neuper@37906
   200
cd /home/neuper/proto2/isac/src/
neuper@37906
   201
mv sml Isac
neuper@37906
   202
mv Isac/ROOT.ML Isac/ROOT.ML-save
neuper@37906
   203
cp Isac/RCODE-root.sml Isac/ROOT.ML
neuper@37906
   204
(*!!!cd"sml";!!! in ROOT.ML-save causes SysErr ("chdir failed", SOME ENOENT)*)
neuper@37906
   205
neuper@37906
   206
/usr/local/Isabelle2002/bin/isatool usedir -i true HOL-Real /home/neuper/proto2/isac/src/Isac/
neuper@37906
   207
(*^^^ does not create a new heap and writes only NEW files ...
neuper@37906
   208
      ... to isab-installation vvv*)
neuper@37906
   209
cd /usr/local/Isabelle2002/browser_info/HOL/HOL-Real/
neuper@37906
   210
cp -r Isac/  /home/neuper/proto2/www/kbase/thy/browser_info/HOL/HOL-Real/
neuper@37906
   211
neuper@37906
   212
cd /home/neuper/proto2/isac/src/
neuper@37906
   213
mv Isac sml
neuper@37906
   214
mv sml/ROOT.ML-save sml/ROOT.ML
neuper@37906
   215
exit
neuper@37906
   216
neuper@37906
   217
*****************************************************************************
neuper@37906
   218
save and restore contents in *.xml-files; @ stands for thy | pbl | met
neuper@37906
   219
-----------------------------------------------------------------------------
neuper@37906
   220
@> grep EXPLANATIONS *.xml > saveecex/EXPLANATIONS.tex
neuper@37906
   221
@> emacs saveexec/EXPLANATIONS.tex &
neuper@37906
   222
## there search with "<EXPLANATIONS> </EXPLANATIONS>" for missing lines ...
neuper@37906
   223
@> cd saveexec
neuper@37906
   224
## ... and check with ls -l file.xml
neuper@37906
   225
@> cd ..
neuper@37906
   226
@> rm *.xml
neuper@37906
   227
-----------------------------------------------------------------------------
neuper@37906
   228
export of problems and methods from sml to xml ... see below ***
neuper@37906
   229
restore contents in *.xml-files:
neuper@37906
   230
-----------------------------------------------------------------------------
neuper@37906
   231
neuper@37906
   232
neuper@37906
   233
neuper@37906
   234
*****************************************************************************
neuper@37906
   235
export of problems and methods from sml to xml
neuper@37906
   236
-----------------------------------------------------------------------------
neuper@37906
   237
> val path = "/home/neuper/proto2/isac/xmldata/"; 
neuper@37906
   238
 
neuper@37906
   239
> pbl_hierarchy2file (path ^ "pbl/");
neuper@37906
   240
> pbls2file          (path ^ "pbl/");
neuper@37906
   241
neuper@37906
   242
> met_hierarchy2file (path ^ "met/");
neuper@37906
   243
> mets2file          (path ^ "met/");
neuper@37906
   244
neuper@37906
   245
> thy_hierarchy2file (path ^ "thy/");
neuper@37906
   246
> thes2file          (path ^ "thy/");
neuper@37906
   247
neuper@37906
   248
*****************************************************************************
neuper@37906
   249
WN.notebook: create a new heap (which is used by java in eclipse)
neuper@37906
   250
(PolyML overwrites HOL-Real-Isac !)
neuper@37906
   251
-----------------------------------------------------------------------------
neuper@37906
   252
  su
neuper@37906
   253
  cd /usr/local/Isabelle2002/heaps/polyml-4.1.3_x86-linux
neuper@37906
   254
  rm HOL-Real-Isac
neuper@37906
   255
  cp HOL-Real HOL-Real-Isac
neuper@37906
   256
  poly /usr/local/Isabelle2002/heaps/polyml-4.1.3_x86-linux/HOL-Real-Isac
neuper@37906
   257
  cd"/home/neuper/proto2/isac/src/sml"; use"RCODE-root.sml";
neuper@37906
   258
  <ctrl><d>
neuper@37906
   259
  exit
neuper@37906
   260
neuper@37906
   261
*****************************************************************************;
neuper@37906
   262
IST has another linux + polyml: create another new heap 
neuper@37906
   263
-----------------------------------------------------------------------------
neuper@37906
   264
notebook:sml> scp -r ../sml wneuper@pear.ist.intra:del_graz/
neuper@37906
   265
neuper@37906
   266
 ssh ist
neuper@37906
   267
 cd /usr/local/Isabelle2002/heaps/polyml-4.1.3_x86-linux/
neuper@37906
   268
 rm HOL-Real-Isac
neuper@37906
   269
		          TYPE 'yes' !!!
neuper@37906
   270
 cp HOL-Real HOL-Real-Isac
neuper@37906
   271
			  chmod u+w HOL-Real-Isac
neuper@37906
   272
 cd ~/del_graz/sml
neuper@37906
   273
 /usr/local/Isabelle2002/bin/isabelle HOL-Real-Isac
neuper@37906
   274
 use"RCODE-root.sml";
neuper@37906
   275
 <ctrl><d>
neuper@37906
   276
 cd /usr/local/Isabelle2002/heaps/polyml-4.1.3_x86-linux/
neuper@37906
   277
			  chmod u-w HOL-Real-Isac
neuper@37906
   278
neuper@37906
   279
 logout
neuper@37906
   280
-----------------------------------------------------------------------------
neuper@37906
   281
test ist> /usr/local/Isabelle2002/bin/isabelle HOL-Real-Isac
neuper@37906
   282
*****************************************************************************);