neuper@52065
|
1 |
(* Title: All tests on isac (some outcommented since Isabelle2002-->2009-2)
|
neuper@41943
|
2 |
Author: Walther Neuper 101001
|
wneuper@59258
|
3 |
(c) copyright due to license terms.
|
neuper@41943
|
4 |
|
neuper@52101
|
5 |
Isac's tests are organised parallel to sources:
|
neuper@52101
|
6 |
"~~/test/Tools/isac" has same directory structure as "~~/src/Tools/isac"
|
neuper@52101
|
7 |
plus
|
neuper@52065
|
8 |
~~/test/Tools/isac/ADDTESTS
|
neuper@52101
|
9 |
~~/test/Tools/isac/Minisubpbl: the Lucas-Interpreter's core functionality
|
wneuper@59323
|
10 |
-------------------------------------------------------------------------------
|
neuper@52065
|
11 |
|
wneuper@59323
|
12 |
Prepare running tests: see below
|
wneuper@59323
|
13 |
Run tests:
|
neuper@52065
|
14 |
$ cd /usr/local/isabisac/
|
wneuper@59323
|
15 |
$ export ISABELLE_VERSION=2015 # for libisabelle
|
neuper@52065
|
16 |
$ ./bin/isabelle jedit -l Isac test/Tools/isac/Test_Isac.thy &
|
neuper@41943
|
17 |
*)
|
neuper@41943
|
18 |
|
wneuper@59258
|
19 |
section \<open>Prepare running tests\<close>
|
wneuper@59258
|
20 |
text \<open>
|
wneuper@59323
|
21 |
Isac encapsulates code as much as possible in structures without open. TODO ProgLang.
|
wneuper@59258
|
22 |
This policy conflicts with those tests, which go into functions to details
|
wneuper@59258
|
23 |
not declared in the signatures.
|
wneuper@59258
|
24 |
|
wneuper@59258
|
25 |
In order to maintain these tests without changes, this has to be done before running tests:
|
wneuper@59323
|
26 |
(1) Extend signatures for tests by
|
wneuper@59323
|
27 |
~~$ ./xcoding-to-test.sh
|
wneuper@59323
|
28 |
~~$ ./zcoding-to-test.sh # -"- + go back to Test_Isac.thy
|
wneuper@59323
|
29 |
Running Test_Isac.thy opens all structures, see code after "begin" below.
|
wneuper@59323
|
30 |
(2) Clean signatures for coding
|
wneuper@59323
|
31 |
~~$ ./xtest-to-coding.sh
|
wneuper@59323
|
32 |
~~$ ./xtest-to-coding.sh # -"- + go back to coding (!update thy!)
|
wneuper@59323
|
33 |
|
wneuper@59323
|
34 |
********************* don't forget (2) BEFORE pushing to repository *********************
|
wneuper@59323
|
35 |
|
wneuper@59323
|
36 |
The above bash files accomplish query replace in src/Tools/isac:
|
wneuper@59261
|
37 |
\<clubsuit>--- ! aktivate for Test_Isac BEGIN ---\* )\<clubsuit> \<longrightarrow> \<clubsuit>--- ! aktivate for Test_Isac BEGIN ---\*)\<clubsuit>
|
wneuper@59261
|
38 |
\<clubsuit>( *\--- ! aktivate for Test_Isac END ---\<clubsuit> \<longrightarrow> \<clubsuit>(*\--- ! aktivate for Test_Isac END ---\<clubsuit>
|
wneuper@59261
|
39 |
^^^ in signature outcommented, ^^^ NOT outcommented,
|
wneuper@59261
|
40 |
this is status for coding this is status for tests
|
wneuper@59258
|
41 |
\<close>
|
wneuper@59258
|
42 |
|
wneuper@59366
|
43 |
section \<open>code for copy & paste\<close>
|
wneuper@59366
|
44 |
text \<open>
|
wneuper@59366
|
45 |
"~~~~~ fun , args:"; val () = ();
|
wneuper@59366
|
46 |
"~~~~~ and , args:"; val () = ();
|
wneuper@59366
|
47 |
|
wneuper@59366
|
48 |
"~~~~~ to return val:"; val () = ();
|
wneuper@59366
|
49 |
|
wneuper@59366
|
50 |
\<close>
|
wneuper@59258
|
51 |
section \<open>Run the tests\<close>
|
wneuper@59258
|
52 |
text \<open>
|
wneuper@59258
|
53 |
* say "OK" to the popup asking for theories to be loaded
|
wneuper@59258
|
54 |
* watch the <Theories> window for errors in the "imports" below
|
wneuper@59258
|
55 |
\<close>
|
neuper@52073
|
56 |
|
wneuper@59410
|
57 |
theory Test_Isac imports Build_Thydata (* note that imports are WITHOUT open struct ..*)
|
wneuper@59364
|
58 |
(*/---------------------- do Minisubpbl before ADDTESTS/All_Ctxt ------------------------------\*)
|
neuper@52116
|
59 |
"ADDTESTS/accumulate-val/Thy_All"
|
neuper@41980
|
60 |
"ADDTESTS/Ctxt"
|
neuper@42048
|
61 |
"ADDTESTS/test-depend/Build_Test"
|
neuper@42023
|
62 |
"ADDTESTS/All_Ctxt"
|
wneuper@59202
|
63 |
"ADDTESTS/Test_Units"
|
neuper@42179
|
64 |
"ADDTESTS/course/phst11/T1_Basics"
|
neuper@42092
|
65 |
"ADDTESTS/course/phst11/T2_Rewriting"
|
neuper@42179
|
66 |
"ADDTESTS/course/phst11/T3_MathEngine"
|
neuper@52065
|
67 |
"ADDTESTS/file-depend/BuildC_Test"
|
neuper@52102
|
68 |
"ADDTESTS/session-get_theory/Foo"
|
wneuper@59144
|
69 |
(*"ADDTESTS/course/SignalProcess/Build_Inverse_Z_Transform"
|
wneuper@59144
|
70 |
ADDTESTS/------------------------------------------- see end of tests *)
|
wneuper@59194
|
71 |
(*"~~/test/Pure/Isar/Test_Parsers" dropped Isabelle2014-->2015 *)
|
neuper@52089
|
72 |
(*"~~/test/Pure/Isar/Pure/Isar/Struct_Deriv" lost at update 2009-2-->2011*)
|
neuper@52073
|
73 |
"~~/test/Pure/Isar/Test_Parse_Term"
|
wneuper@59364
|
74 |
(*/---------------------- do Minisubpbl before ADDTESTS/All_Ctxt ------------------------------\*)
|
neuper@55364
|
75 |
"~~/test/Tools/isac/Interpret/ptyps" (* setup for ptyps.sml *)
|
neuper@55366
|
76 |
"~~/test/Tools/isac/ProgLang/calculate" (* setup for calculate.sml*)
|
wneuper@59388
|
77 |
|
wneuper@59388
|
78 |
|
wneuper@59388
|
79 |
|
wneuper@59362
|
80 |
"~~/test/Tools/isac/ProgLang/scrtools" (* setup for scrtools.sml *)
|
s1210629013@55377
|
81 |
"~~/test/Tools/isac/Knowledge/integrate" (* setup for integrate.sml*)
|
wneuper@59364
|
82 |
(*\---------------------- do Minisubpbl before ADDTESTS/All_Ctxt ------------------------------/*)
|
neuper@52168
|
83 |
"~~/src/Tools/isac/Knowledge/GCD_Poly_OLD" (*not imported by Isac.thy*)
|
neuper@52168
|
84 |
"~~/src/Tools/isac/Knowledge/GCD_Poly_FP" (*not imported by Isac.thy*)
|
wneuper@59364
|
85 |
(*\---------------------- do Minisubpbl before ADDTESTS/All_Ctxt ------------------------------/*)
|
neuper@52168
|
86 |
|
neuper@41943
|
87 |
begin
|
s1210629013@55442
|
88 |
|
s1210629013@55446
|
89 |
ML {*
|
wneuper@59258
|
90 |
(*/-------------------------------------------------------- ! aktivate for Test_Isac BEGIN ---\*)
|
wneuper@59318
|
91 |
(* these vvv test, if funs are intermediately opened in structure
|
wneuper@59318
|
92 |
in case of errors here consider ~~/./xtest-to-coding.sh *)
|
wneuper@59261
|
93 |
open Kernel;
|
wneuper@59262
|
94 |
open Math_Engine; CalcTreeTEST;
|
wneuper@59262
|
95 |
open Lucin; appy;
|
wneuper@59262
|
96 |
open Inform; cas_input;
|
wneuper@59263
|
97 |
open Rtools; trtas2str;
|
wneuper@59265
|
98 |
open Chead; pt_extract;
|
wneuper@59316
|
99 |
open Generate; (* NONE *)
|
wneuper@59276
|
100 |
open Ctree; append_problem;
|
wneuper@59269
|
101 |
open Specify; show_ptyps;
|
wneuper@59316
|
102 |
open Applicable; mk_set;
|
wneuper@59316
|
103 |
open Solve; (* NONE *)
|
wneuper@59299
|
104 |
open Selem; e_fmz;
|
wneuper@59308
|
105 |
open Stool; transfer_asms_from_to;
|
wneuper@59316
|
106 |
open Tac; (* NONE *)
|
wneuper@59316
|
107 |
open Model; (* NONE *)
|
wneuper@59384
|
108 |
open LTool; rule2stac;
|
wneuper@59384
|
109 |
open Rewrite; mk_thm;
|
wneuper@59388
|
110 |
open Calc; get_pair;
|
wneuper@59410
|
111 |
open TermC; atomt;
|
wneuper@59410
|
112 |
open Celem; terms2strs;
|
wneuper@59258
|
113 |
(*\--- ! aktivate for Test_Isac END ----------------------------------------------------------/*)
|
wneuper@59258
|
114 |
*}
|
wneuper@59366
|
115 |
|
wneuper@59258
|
116 |
ML {*
|
wneuper@59366
|
117 |
"~~~~~ fun xxx, args:"; val () = ();
|
wneuper@59356
|
118 |
*} ML {*
|
wneuper@59356
|
119 |
*} ML {*
|
wneuper@59356
|
120 |
*}
|
wneuper@59356
|
121 |
|
wneuper@59356
|
122 |
ML {*
|
s1210629013@55446
|
123 |
KEStore_Elems.set_ref_thy @{theory};
|
wneuper@59248
|
124 |
(*fun autoCalculate' cI auto = autoCalculate cI auto (*|> Future.join*)*);
|
s1210629013@55446
|
125 |
*}
|
s1210629013@55442
|
126 |
|
wneuper@59372
|
127 |
(*---------------------- check test file by testfile -------------------------------------------
|
wneuper@59372
|
128 |
---------------------- check test file by testfile -------------------------------------------*)
|
neuper@52119
|
129 |
section {* trials with Isabelle's functions *}
|
neuper@52119
|
130 |
ML {*"%%%%%%%%%%%%%%%%% start Isabelle %%%%%%%%%%%%%%%%%%%%%%%";*}
|
neuper@52119
|
131 |
ML_file "~~/test/Pure/General/alist.ML"
|
neuper@52119
|
132 |
ML_file "~~/test/Pure/General/basics.ML"
|
neuper@52119
|
133 |
ML_file "~~/test/Pure/General/scan.ML"
|
wneuper@59115
|
134 |
ML_file "~~/test/Pure/PIDE/xml.ML"
|
neuper@52119
|
135 |
ML {*"%%%%%%%%%%%%%%%%% end Isabelle %%%%%%%%%%%%%%%%%%%%%%%%%";*}
|
neuper@52119
|
136 |
|
neuper@48895
|
137 |
section {* test ML Code of isac *}
|
neuper@48895
|
138 |
ML {*"%%%%%%%%%%%%%%%%% start ProgLang.thy %%%%%%%%%%%%%%%%%%%";*}
|
neuper@52065
|
139 |
ML_file "library.sml"
|
neuper@52065
|
140 |
ML_file "calcelems.sml"
|
wneuper@59356
|
141 |
(*---------------------- do Minisubpbl before ADDTESTS/All_Ctxt --------------------------------
|
wneuper@59388
|
142 |
---------------------- do Minisubpbl before ADDTESTS/All_Ctxt --------------------------------*)
|
wneuper@59356
|
143 |
ML_file "kestore.sml" (* setup in ADDTEST/accumulate-val/lucas_interpreter.sml*)
|
wneuper@59357
|
144 |
ML_file "ProgLang/termC.sml"
|
wneuper@59359
|
145 |
ML_file "ProgLang/calculate.sml" (* requires setup from calculate.thy *)
|
wneuper@59358
|
146 |
ML_file "ProgLang/rewrite.sml"
|
neuper@52148
|
147 |
ML_file "ProgLang/listC.sml"
|
neuper@52065
|
148 |
ML_file "ProgLang/scrtools.sml"
|
wneuper@59411
|
149 |
|
wneuper@59411
|
150 |
ML {*
|
wneuper@59411
|
151 |
"~~~~~ fun xxx, args:"; val () = ();
|
wneuper@59411
|
152 |
*} ML {*
|
wneuper@59411
|
153 |
"-------- test the same called by interSteps norm_Poly -----------";
|
wneuper@59411
|
154 |
"-------- test the same called by interSteps norm_Poly -----------";
|
wneuper@59411
|
155 |
"-------- test the same called by interSteps norm_Poly -----------";
|
wneuper@59411
|
156 |
val Seq {scr = Prog auto_script,...} = assoc_rls "norm_Poly";
|
wneuper@59411
|
157 |
writeln(term2str auto_script);
|
wneuper@59411
|
158 |
(*Script Stepwise t_t =
|
wneuper@59411
|
159 |
(Try (Rewrite_Set discard_minus False) @@
|
wneuper@59411
|
160 |
Try (Rewrite_Set expand_poly_ False) @@
|
wneuper@59411
|
161 |
Try (Repeat (Calculate TIMES)) @@
|
wneuper@59411
|
162 |
Try (Rewrite_Set order_mult_rls_ False) @@
|
wneuper@59411
|
163 |
Try (Rewrite_Set simplify_power_ False) @@
|
wneuper@59411
|
164 |
Try (Rewrite_Set calc_add_mult_pow_ False) @@
|
wneuper@59411
|
165 |
Try (Rewrite_Set reduce_012_mult_ False) @@
|
wneuper@59411
|
166 |
Try (Rewrite_Set order_add_rls_ False) @@
|
wneuper@59411
|
167 |
Try (Rewrite_Set collect_numerals_ False) @@
|
wneuper@59411
|
168 |
Try (Rewrite_Set reduce_012_ False) @@
|
wneuper@59411
|
169 |
Try (Rewrite_Set discard_parentheses1 False))
|
wneuper@59411
|
170 |
??.empty ..WORKS, NEVERTHELESS *)
|
wneuper@59411
|
171 |
atomty auto_script;
|
wneuper@59411
|
172 |
|
wneuper@59411
|
173 |
reset_states ();
|
wneuper@59411
|
174 |
CalcTree
|
wneuper@59411
|
175 |
[(["Term (b + a - b)", "normalform N"],
|
wneuper@59411
|
176 |
("Poly",["polynomial","simplification"],
|
wneuper@59411
|
177 |
["simplification","for_polynomials"]))];
|
wneuper@59411
|
178 |
Iterator 1;
|
wneuper@59411
|
179 |
moveActiveRoot 1;
|
wneuper@59411
|
180 |
autoCalculate 1 CompleteCalc;
|
wneuper@59411
|
181 |
|
wneuper@59411
|
182 |
val ((pt,p),_) = get_calc 1;
|
wneuper@59411
|
183 |
show_pt pt;
|
wneuper@59411
|
184 |
(* isabisac17 = 15 [
|
wneuper@59411
|
185 |
(([], Frm), Simplify (b + a - b)),
|
wneuper@59411
|
186 |
(([1], Frm), b + a - b),
|
wneuper@59411
|
187 |
(([1], Res), a),
|
wneuper@59411
|
188 |
(([], Res), a)] *)
|
wneuper@59411
|
189 |
|
wneuper@59411
|
190 |
interSteps 1 ([], Res);
|
wneuper@59411
|
191 |
val ((pt,p),_) = get_calc 1;
|
wneuper@59411
|
192 |
show_pt pt;
|
wneuper@59411
|
193 |
(* isabisac17 = 15 [
|
wneuper@59411
|
194 |
(([], Frm), Simplify (b + a - b)),
|
wneuper@59411
|
195 |
(([1], Frm), b + a - b),
|
wneuper@59411
|
196 |
(([1], Res), a),
|
wneuper@59411
|
197 |
(([], Res), a)] *)
|
wneuper@59411
|
198 |
|
wneuper@59411
|
199 |
interSteps 1 ([1], Res);
|
wneuper@59411
|
200 |
(*interSteps 1 ([1], Res)<SYSERROR><CALCID>1</CALCID><ERROR>error in kernel 8</ERROR></SYSERROR>*)
|
wneuper@59411
|
201 |
"~~~~~ fun interSteps, args:"; val (cI, ip) = (1, ([1], Res));
|
wneuper@59411
|
202 |
val ((pt, p), tacis) = get_calc cI;
|
wneuper@59411
|
203 |
(*if*) (not o is_interpos) ip = false;
|
wneuper@59411
|
204 |
val ip' = lev_pred' pt ip;
|
wneuper@59411
|
205 |
|
wneuper@59411
|
206 |
(*Math_Engine.detailstep pt ip ..ERROR interSteps>..>init_istate: "norm_Poly" has EmptyScr*)
|
wneuper@59411
|
207 |
"~~~~~ fun detailstep, args:"; val (pt, (pos as (p, _))) = (pt, ip);
|
wneuper@59411
|
208 |
val nd = Ctree.get_nd pt p
|
wneuper@59411
|
209 |
val cn = Ctree.children nd;
|
wneuper@59411
|
210 |
(*if*) null cn = true;
|
wneuper@59411
|
211 |
(*if*) (Tac.is_rewset o (Ctree.get_obj Ctree.g_tac nd)) [(*root of nd*)] = true;
|
wneuper@59411
|
212 |
|
wneuper@59411
|
213 |
(*Solve.detailrls pt pos ..ERROR interSteps>..>init_istate: "norm_Poly" has EmptyScr*)
|
wneuper@59411
|
214 |
"~~~~~ fun detailrls, args:"; val (pt, (pos as (p, _))) = (pt, pos);
|
wneuper@59411
|
215 |
val t = get_obj g_form pt p
|
wneuper@59411
|
216 |
val tac = get_obj g_tac pt p
|
wneuper@59411
|
217 |
val rls = (assoc_rls o Tac.rls_of) tac
|
wneuper@59411
|
218 |
val ctxt = get_ctxt pt pos
|
wneuper@59411
|
219 |
val Seq _ = (*case*) rls (*of*);
|
wneuper@59411
|
220 |
|
wneuper@59411
|
221 |
(* val is = Generate.init_istate tac t ..ERROR ,,>..>init_istate: "norm_Poly" has EmptyScr*)
|
wneuper@59411
|
222 |
"~~~~~ fun init_istate, args:"; val ((Tac.Rewrite_Set rls), t) = (tac, t);
|
wneuper@59411
|
223 |
val Celem.Seq {scr = Celem.Prog s,...} = (*case*) assoc_rls rls (*of*);
|
wneuper@59411
|
224 |
|
wneuper@59411
|
225 |
"~~~~~ to detailrls return val:"; val is = (Selem.ScrState ([(LTool.one_scr_arg s, t)], [], NONE, Celem.e_term, Selem.Sundef, true))
|
wneuper@59411
|
226 |
val tac_ = Tac.Apply_Method' (Celem.e_metID(*WN0402: see generate1 !?!*), SOME t, is, ctxt)
|
wneuper@59411
|
227 |
val pos' = ((lev_on o lev_dn) p, Ctree.Frm)
|
wneuper@59411
|
228 |
val thy = Celem.assoc_thy "Isac"
|
wneuper@59411
|
229 |
val (_, _, _, pt') = Generate.generate1 thy tac_ (is, ctxt) pos' pt (* implicit Take *)
|
wneuper@59411
|
230 |
val (_,_, (pt'', _)) = complete_solve CompleteSubpbl [] (pt', pos')
|
wneuper@59411
|
231 |
val newnds = children (get_nd pt'' p)
|
wneuper@59411
|
232 |
val pt''' = ins_chn newnds pt p (*complete_solve cuts branches after*);
|
wneuper@59411
|
233 |
|
wneuper@59411
|
234 |
"~~~~~ to detailstep return val:"; val xxx = ("detailrls", pt''', (p @ [length newnds], Res));
|
wneuper@59411
|
235 |
"~~~~~ to interSteps return val:"; val ("detailrls", pt, lastpos) = xxx;
|
wneuper@59411
|
236 |
show_pt pt;
|
wneuper@59411
|
237 |
(*[
|
wneuper@59411
|
238 |
(([], Frm), Simplify (b + a - b)),
|
wneuper@59411
|
239 |
(([1], Frm), b + a - b),
|
wneuper@59411
|
240 |
(([1,1], Frm), b + a - b),
|
wneuper@59411
|
241 |
(([1,1], Res), b + a + -1 * b),
|
wneuper@59411
|
242 |
(([1,2], Res), a + b + -1 * b),
|
wneuper@59411
|
243 |
(([1,3], Res), a + 0 * b),
|
wneuper@59411
|
244 |
(([1,4], Res), a),
|
wneuper@59411
|
245 |
(([1], Res), a),
|
wneuper@59411
|
246 |
(([], Res), a)]*)
|
wneuper@59411
|
247 |
if existpt' ([1,4], Res) pt then ()
|
wneuper@59411
|
248 |
else error "scrtools.sml: auto-generated norm_Poly doesnt work";
|
wneuper@59411
|
249 |
*} ML {*
|
wneuper@59411
|
250 |
*} ML {*
|
wneuper@59411
|
251 |
*} ML {*
|
wneuper@59411
|
252 |
*} ML {*
|
wneuper@59411
|
253 |
*} ML {*
|
wneuper@59411
|
254 |
"~~~~~ fun xxx, args:"; val () = ();
|
wneuper@59411
|
255 |
*}
|
wneuper@59411
|
256 |
|
neuper@52065
|
257 |
ML_file "ProgLang/tools.sml"
|
wneuper@59362
|
258 |
(*---------------------- do Minisubpbl before ADDTESTS/All_Ctxt --------------------------------
|
wneuper@59366
|
259 |
---------------------- do Minisubpbl before ADDTESTS/All_Ctxt --------------------------------*)
|
neuper@41943
|
260 |
ML {*"%%%%%%%%%%%%%%%%% end ProgLang.thy %%%%%%%%%%%%%%%%%%%%%";*}
|
neuper@41986
|
261 |
ML {*"%%%%%%%%%%%%%%%%% start Minisubpbl %%%%%%%%%%%%%%%%%%%%%";*}
|
neuper@52065
|
262 |
ML_file "Minisubpbl/000-comments.sml"
|
neuper@52065
|
263 |
ML_file "Minisubpbl/100-init-rootpbl.sml"
|
neuper@52065
|
264 |
ML_file "Minisubpbl/150-add-given.sml"
|
neuper@52065
|
265 |
ML_file "Minisubpbl/200-start-method.sml"
|
wneuper@59411
|
266 |
ML_file "Minisubpbl/250-Rewrite_Set-from-method.sml"
|
neuper@52065
|
267 |
ML_file "Minisubpbl/300-init-subpbl.sml"
|
neuper@52065
|
268 |
ML_file "Minisubpbl/400-start-meth-subpbl.sml"
|
neuper@52065
|
269 |
ML_file "Minisubpbl/490-nxt-Check_Postcond.sml"
|
neuper@52065
|
270 |
ML_file "Minisubpbl/500-met-sub-to-root.sml"
|
neuper@52065
|
271 |
ML_file "Minisubpbl/530-error-Check_Elementwise.sml"
|
neuper@52065
|
272 |
ML_file "Minisubpbl/600-postcond.sml"
|
akargl@42188
|
273 |
ML {*"%%%%%%%%%%%%%%%%% end Minisubpbl.thy %%%%%%%%%%%%%%%%%%%%%%%";*}
|
wneuper@59364
|
274 |
ML {*"%%%%%%%%%%%%%%%%% start Interpret.thy %%%%%%%%%%%%%%%%%%";*}
|
neuper@52065
|
275 |
ML_file "Interpret/mstools.sml"
|
neuper@52065
|
276 |
ML_file "Interpret/ctree.sml" (*!...!see(25)*)
|
neuper@55364
|
277 |
ML_file "Interpret/ptyps.sml" (* requires setup from ptyps.thy *)
|
neuper@48891
|
278 |
ML {* (*check_unsynchronized_ref (); ==== trick on error: CUT AND PASTE THIS LINE =========*) *}
|
neuper@48895
|
279 |
(*TRICK DOESN'T WORK: get_pbt not found: ["IsacKnowledge","Diff","Theorems","diff_sin_chain"]*)
|
neuper@52065
|
280 |
ML_file "Interpret/generate.sml"
|
neuper@48895
|
281 |
(*WITHOUT inhibit exn WN1130621 Isabelle2012-->13 !thehier! THIS ERROR OCCURS:
|
neuper@48895
|
282 |
... SAME ERROR HERE ON ISABELLE2012 AS IN ISAC ON ISABELLE2011*)
|
neuper@52065
|
283 |
ML_file "Interpret/calchead.sml"
|
wneuper@59252
|
284 |
ML_file "Interpret/appl.sml" (*complete "WEGEN INTERMED TESTCODE" *)
|
wneuper@55498
|
285 |
ML_file "Interpret/rewtools.sml"
|
neuper@52065
|
286 |
ML_file "Interpret/script.sml"
|
neuper@52065
|
287 |
ML_file "Interpret/solve.sml"
|
neuper@52065
|
288 |
ML_file "Interpret/inform.sml"
|
neuper@48895
|
289 |
(*WITHOUT inhibit exn WN1130621 Isabelle2012-->13 !thehier! THIS ERROR OCCURS:
|
neuper@48895
|
290 |
... SAME ERROR HERE ON ISABELLE2012 AS IN ISAC ON ISABELLE2011*)
|
neuper@52105
|
291 |
ML_file "Interpret/mathengine.sml" (*!part. WN130804: +check Interpret/me.sml*)
|
neuper@41943
|
292 |
ML {*"%%%%%%%%%%%%%%%%% end Interpret.thy %%%%%%%%%%%%%%%%%%%%";*}
|
neuper@41943
|
293 |
ML {*"%%%%%%%%%%%%%%%%% start xmlsrc.thy %%%%%%%%%%%%%%%%%%%%%";*}
|
neuper@52065
|
294 |
ML_file "xmlsrc/mathml.sml" (*part.*)
|
neuper@52065
|
295 |
ML_file "xmlsrc/datatypes.sml" (*TODO/part.*)
|
neuper@52065
|
296 |
ML_file "xmlsrc/pbl-met-hierarchy.sml"(*TODO after 2009-2/part.*)
|
neuper@55408
|
297 |
ML_file "xmlsrc/thy-hierarchy.sml"
|
neuper@52065
|
298 |
ML_file "xmlsrc/interface-xml.sml" (*TODO after 2009-2*)
|
neuper@41943
|
299 |
ML {*"%%%%%%%%%%%%%%%%% end xmlsrc.thy %%%%%%%%%%%%%%%%%%%%%%%";*}
|
neuper@41943
|
300 |
ML {*"%%%%%%%%%%%%%%%%% start Frontend.thy %%%%%%%%%%%%%%%%%%%";*}
|
neuper@52065
|
301 |
ML_file "Frontend/messages.sml"
|
neuper@52065
|
302 |
ML_file "Frontend/states.sml"
|
neuper@52065
|
303 |
ML_file "Frontend/interface.sml"
|
neuper@52112
|
304 |
ML_file "Frontend/use-cases.sml"
|
neuper@48895
|
305 |
(*WITHOUT inhibit exn WN1130621 Isabelle2012-->13 !thehier! THIS ERROR OCCURS:
|
neuper@48895
|
306 |
... SAME ERROR HERE ON ISABELLE2012 AS IN ISAC ON ISABELLE2011*)
|
neuper@52065
|
307 |
ML_file "print_exn_G.sml"
|
neuper@41943
|
308 |
ML {*"%%%%%%%%%%%%%%%%% end Frontend.thy %%%%%%%%%%%%%%%%%%%%%";*}
|
neuper@48895
|
309 |
ML {*"%%%%%%%%%%%%%%%%% start Knowledge %%%%%%%%%%%%%%%%%%%%%%";*}
|
neuper@52065
|
310 |
ML_file "Knowledge/delete.sml"
|
neuper@52065
|
311 |
ML_file "Knowledge/descript.sml"
|
neuper@52065
|
312 |
ML_file "Knowledge/atools.sml"
|
neuper@52065
|
313 |
ML_file "Knowledge/simplify.sml"
|
neuper@52065
|
314 |
ML_file "Knowledge/poly.sml"
|
wneuper@59370
|
315 |
ML_file "Knowledge/gcd_poly_ml.sml"
|
wneuper@59370
|
316 |
ML_file "Knowledge/gcd_poly_winkler.sml" (*must be after gcd_poly_ml.sml: redefines functions*)
|
wneuper@59370
|
317 |
ML_file "Knowledge/rational.sml"
|
wneuper@59370
|
318 |
ML_file "Knowledge/equation.sml"
|
wneuper@59370
|
319 |
ML_file "Knowledge/root.sml"
|
wneuper@59370
|
320 |
ML_file "Knowledge/lineq.sml"
|
wneuper@59370
|
321 |
(*ML_file "Knowledge/rooteq.sml" some complicated equations not recovered from 2002 *)
|
wneuper@59370
|
322 |
ML_file "Knowledge/rateq.sml" (*some complicated equations not recovered from 2002 *)
|
wneuper@59370
|
323 |
ML_file "Knowledge/rootrat.sml"
|
wneuper@59370
|
324 |
ML_file "Knowledge/rootrateq.sml"(*ome complicated equations not recovered from 2002 *)
|
neuper@52065
|
325 |
ML_file "Knowledge/partial_fractions.sml"
|
neuper@52105
|
326 |
ML_file "Knowledge/polyeq.sml"
|
neuper@52105
|
327 |
(*ML_file "Knowledge/rlang.sml" much to clean up, similar tests in other files *)
|
neuper@52065
|
328 |
ML_file "Knowledge/calculus.sml"
|
neuper@52065
|
329 |
ML_file "Knowledge/trig.sml"
|
neuper@52065
|
330 |
(*ML_file "Knowledge/logexp.sml" not included as stuff for presentation of authoring*)
|
neuper@52065
|
331 |
ML_file "Knowledge/diff.sml"
|
neuper@52065
|
332 |
ML_file "Knowledge/integrate.sml"
|
neuper@52065
|
333 |
ML_file "Knowledge/eqsystem.sml"
|
neuper@52065
|
334 |
ML_file "Knowledge/test.sml"
|
neuper@52065
|
335 |
ML_file "Knowledge/polyminus.sml"
|
neuper@52065
|
336 |
ML_file "Knowledge/vect.sml"
|
neuper@52065
|
337 |
ML_file "Knowledge/diffapp.sml" (* postponed to dev. specification | TP-prog. *)
|
wneuper@59372
|
338 |
ML_file "Knowledge/biegelinie-1.sml"
|
wneuper@59372
|
339 |
(*ML_file "Knowledge/biegelinie-2.sml" since Isabelle2017: exception Size raised *)
|
neuper@52065
|
340 |
ML_file "Knowledge/algein.sml"
|
neuper@52065
|
341 |
ML_file "Knowledge/diophanteq.sml"
|
neuper@52065
|
342 |
ML_file "Knowledge/Inverse_Z_Transform/inverse_z_transform.sml"
|
wneuper@59232
|
343 |
ML_file "Knowledge/inssort.sml"
|
neuper@52065
|
344 |
ML_file "Knowledge/isac.sml"
|
neuper@52065
|
345 |
ML_file "Knowledge/build_thydata.sml"
|
neuper@48895
|
346 |
ML {*"%%%%%%%%%%%%%%%%% end Knowledge %%%%%%%%%%%%%%%%%%%%%%%%";*}
|
wneuper@59144
|
347 |
ML {*"%%%%%%%%%%%%%%%%% start ADDTESTS %%%%%%%%%%%%%%%%%%%%%%%";*}
|
wneuper@59144
|
348 |
ML_file "~~/test/Tools/isac/ADDTESTS/libisabelle/mini-test.sml"
|
wneuper@59175
|
349 |
ML_file "~~/test/Tools/isac/ADDTESTS/libisabelle/protocol.sml"
|
wneuper@59144
|
350 |
ML {*"%%%%%%%%%%%%%%%%% end ADDTESTS %%%%%%%%%%%%%%%%%%%%%%%%%";*}
|
wneuper@59144
|
351 |
|
wneuper@59144
|
352 |
ML {*"%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%";*}
|
wneuper@59144
|
353 |
ML {*"%%%%%%%%%%%%%%%%% end Test_Isac %%%%%%%%%%%%%%%%%%%%%%%%";*}
|
neuper@41945
|
354 |
ML {*"%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%";*}
|
neuper@41943
|
355 |
|
neuper@48895
|
356 |
section {* history of tests *}
|
neuper@48895
|
357 |
text {*
|
neuper@48895
|
358 |
Systematic regression tests have been introduced to isac development in 2003.
|
neuper@52139
|
359 |
Sanity of the regression tests suffers from updates following Isabelle development,
|
neuper@48895
|
360 |
which mostly exceeded the resources available in isac's development.
|
neuper@48895
|
361 |
|
neuper@48895
|
362 |
The survey below shall support to efficiently use the tests for isac
|
neuper@48895
|
363 |
on different Isabelle versions. Conclusion in most cases will be:
|
neuper@48895
|
364 |
|
neuper@48895
|
365 |
!!! Use most recent tests or go back to the old notebook
|
neuper@48895
|
366 |
with isac on Isabelle2002. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
neuper@48895
|
367 |
*}
|
neuper@48895
|
368 |
|
wneuper@59323
|
369 |
|
wneuper@59323
|
370 |
subsection {* isac on Isabelle2015 *}
|
wneuper@59323
|
371 |
subsubsection {* Summary of development *}
|
wneuper@59323
|
372 |
text {*
|
wneuper@59373
|
373 |
* Add signatures from top of thy-hierarchy down to Interpret (not ProgLang).
|
wneuper@59323
|
374 |
This complicates Test_Isac, see "Prepare running tests" above.
|
wneuper@59323
|
375 |
* Remove TTY interface.
|
wneuper@59323
|
376 |
* Re-activate insertion sort.
|
wneuper@59323
|
377 |
*}
|
wneuper@59323
|
378 |
subsubsection {* State of tests: unchanged *}
|
wneuper@59323
|
379 |
subsubsection {* Changesets of begin and end *}
|
wneuper@59323
|
380 |
text {*
|
wneuper@59323
|
381 |
last changeset with Test_Isac 2f1b2854927a
|
wneuper@59323
|
382 |
first changeset with Test_Isac ???
|
wneuper@59323
|
383 |
*}
|
wneuper@59323
|
384 |
|
wneuper@59120
|
385 |
subsection {* isac on Isabelle2014 *}
|
wneuper@59120
|
386 |
subsubsection {* Summary of development *}
|
wneuper@59120
|
387 |
text {*
|
wneuper@59120
|
388 |
migration from "isabelle tty" --> libisabelle
|
wneuper@59120
|
389 |
*}
|
wneuper@59120
|
390 |
|
neuper@55319
|
391 |
subsection {* isac on Isabelle2013-2 *}
|
neuper@55319
|
392 |
subsubsection {* Summary of development *}
|
neuper@55319
|
393 |
text {*
|
wneuper@55500
|
394 |
reactivated context_thy
|
neuper@55319
|
395 |
*}
|
neuper@55319
|
396 |
subsubsection {* State of tests *}
|
neuper@55319
|
397 |
text {*
|
neuper@55319
|
398 |
TODO
|
neuper@55319
|
399 |
*}
|
neuper@55319
|
400 |
subsubsection {* Changesets of begin and end *}
|
neuper@55319
|
401 |
text {*
|
neuper@55319
|
402 |
TODO
|
neuper@55319
|
403 |
:
|
neuper@55319
|
404 |
: isac on Isablle2013-2
|
neuper@55319
|
405 |
:
|
neuper@55319
|
406 |
Changeset: 55318 (03826ceb24da) merged
|
neuper@55319
|
407 |
User: Walther Neuper <neuper@ist.tugraz.at>
|
neuper@55319
|
408 |
Date: 2013-12-12 14:27:37 +0100 (7 minutes)
|
neuper@55319
|
409 |
*}
|
neuper@55319
|
410 |
|
neuper@55284
|
411 |
subsection {* isac on Isabelle2013-1 *}
|
neuper@55284
|
412 |
subsubsection {* Summary of development *}
|
neuper@55284
|
413 |
text {*
|
neuper@55284
|
414 |
Isabelle2013-1 was replaced within a few weeks due to problems with the document model;
|
neuper@55284
|
415 |
no significant development steps for ISAC.
|
neuper@55284
|
416 |
*}
|
neuper@55284
|
417 |
subsubsection {* State of tests *}
|
neuper@55284
|
418 |
text {*
|
neuper@55284
|
419 |
See points in subsection "isac on Isabelle2011", "State of tests".
|
neuper@55284
|
420 |
*}
|
neuper@55284
|
421 |
subsubsection {* Changesets of begin and end *}
|
neuper@55284
|
422 |
text {*
|
neuper@55284
|
423 |
Changeset: 55283 (d6e9a34e7142) notes for resuming work on Polynomial.thy
|
neuper@55284
|
424 |
User: Walther Neuper <neuper@ist.tugraz.at>
|
neuper@55284
|
425 |
Date: 2013-12-03 18:13:31 +0100 (8 days)
|
neuper@55284
|
426 |
:
|
neuper@55284
|
427 |
: isac on Isablle2013-1
|
neuper@55284
|
428 |
:
|
neuper@55284
|
429 |
Changeset: 55279 (130688f277ba) Isabelle2013 --> 2013-1: Test_Isac perfect
|
neuper@55284
|
430 |
User: Walther Neuper <neuper@ist.tugraz.at>
|
neuper@55284
|
431 |
Date: 2013-11-21 18:12:17 +0100 (2 weeks)
|
neuper@55284
|
432 |
|
neuper@55284
|
433 |
*}
|
neuper@55284
|
434 |
|
neuper@48895
|
435 |
subsection {* isac on Isabelle2013 *}
|
neuper@48895
|
436 |
subsubsection {* Summary of development *}
|
neuper@48895
|
437 |
text {*
|
neuper@52150
|
438 |
# Oct.13: replaced "axioms" by "axiomatization"
|
neuper@52150
|
439 |
# Oct.13: Mathias Lehnfeld started removing Unsynchornized.ref
|
neuper@52106
|
440 |
# Sep.13: integrated gcd_poly (functional, without Unsychronized.ref) into
|
neuper@52106
|
441 |
simplification of multivariate rationals (without improving the rulesets involved).
|
neuper@48895
|
442 |
*}
|
neuper@48895
|
443 |
subsubsection {* Run tests *}
|
neuper@48895
|
444 |
text {*
|
neuper@52150
|
445 |
Is standard now; this subsection will be discontinued under Isabelle2013-1
|
neuper@48895
|
446 |
*}
|
neuper@48895
|
447 |
subsubsection {* State of tests *}
|
neuper@48895
|
448 |
text {*
|
neuper@52150
|
449 |
See points in subsection "isac on Isabelle2011", "State of tests".
|
neuper@52150
|
450 |
# re-activated listC.sml
|
neuper@48895
|
451 |
*}
|
neuper@48895
|
452 |
subsubsection {* Changesets of begin and end *}
|
neuper@48895
|
453 |
text {*
|
neuper@52175
|
454 |
changeset 52174:8b055b17bd84 --- removed all code concerned with "castab = Unsynchronized.ref"
|
neuper@52175
|
455 |
User: Mathias Lehnfeld <s1210629013@students.fh-hagenberg.at>
|
neuper@52175
|
456 |
Date: Tue Nov 19 22:23:30 2013 +0000
|
neuper@52079
|
457 |
:
|
neuper@52079
|
458 |
: isac on Isablle2013
|
neuper@52079
|
459 |
:
|
neuper@52079
|
460 |
Changeset: 52061 (4ecea2fcdc2c) --- Build_Isac.thy runs on Isabelle2013
|
neuper@52079
|
461 |
User: Walther Neuper <neuper@ist.tugraz.at>
|
neuper@52079
|
462 |
Date: 2013-07-15 08:28:50 +0200 (4 weeks)
|
neuper@48895
|
463 |
*}
|
neuper@48895
|
464 |
|
neuper@48895
|
465 |
subsection {* isac on Isabelle2012 *}
|
neuper@48895
|
466 |
subsubsection {* Summary of development *}
|
neuper@48895
|
467 |
text {*
|
neuper@48895
|
468 |
isac on Isabelle2012 is considered just a transitional stage
|
neuper@48895
|
469 |
within the update from Isabelle2011 to Isabelle2013; thus no further development of isac;
|
neuper@48895
|
470 |
For considerations on the transition see
|
neuper@48895
|
471 |
~~/src/Tools/isac/Knowledge/Build_Thydata/thy, section "updating isac..".
|
neuper@48895
|
472 |
*}
|
neuper@48895
|
473 |
subsubsection {* Run tests *}
|
neuper@48895
|
474 |
text {*
|
neuper@48895
|
475 |
$ cd /usr/local/isabisac12/
|
neuper@48895
|
476 |
$ ./bin/isabelle jedit -l HOL src/Tools/isac/Build_Isac.thy
|
neuper@48895
|
477 |
$ ./bin/isabelle jedit -l Isac test/Tools/isac/Test_Isac.thy
|
neuper@48895
|
478 |
*}
|
neuper@48895
|
479 |
subsubsection {* State of tests *}
|
neuper@48895
|
480 |
text {*
|
neuper@48895
|
481 |
At least the tests from isac on Isabelle2011 run again.
|
neuper@48895
|
482 |
However, Test_Isac.thy shows erratic behaviour; no errors are obtained when scrolling
|
neuper@48895
|
483 |
in parallel with evaluation.
|
neuper@48895
|
484 |
|
neuper@48895
|
485 |
Counting "error in kernel" for Frontend/interface.sml (the tests considered most significant)
|
neuper@48895
|
486 |
yields 69 hits, some of which were already present before Isabelle2002-->2009-2
|
neuper@48895
|
487 |
(i.e. on the old notebook from 2002).
|
neuper@48895
|
488 |
|
neuper@48895
|
489 |
Now many tests with (*...=== inhibit exn ...*) give a reason or at least the origin:
|
neuper@48895
|
490 |
# === inhibit exn WN1130621 Isabelle2012-->13 !thehier! === ...see Build_Thydata.thy
|
neuper@48895
|
491 |
# === inhibit exn AK110726 === ...reliable work by Alexander Kargl, most likely go back to 2002
|
neuper@48895
|
492 |
# === inhibit exn WN1130701 broken at Isabelle2002 --> 2009-2 === , most likely go back to 2002
|
neuper@48895
|
493 |
Reasons for outcommented tests are also found in Test_Isac.thy near the respective file.sml.
|
neuper@48895
|
494 |
|
neuper@48895
|
495 |
Some tests have been re-activated (e.g. error patterns, fill patterns).
|
neuper@48895
|
496 |
*}
|
neuper@48895
|
497 |
subsubsection {* Changesets of begin and end *}
|
neuper@52079
|
498 |
text {*
|
neuper@52079
|
499 |
Changeset: 52051 (35751d90365e) end of improving tests for isac on Isabelle2012
|
neuper@52079
|
500 |
User: Walther Neuper <neuper@ist.tugraz.at>
|
neuper@52079
|
501 |
Date: 2013-07-11 16:58:31 +0200 (4 weeks)
|
neuper@48895
|
502 |
:
|
neuper@48895
|
503 |
: isac on Isablle2012
|
neuper@48895
|
504 |
:
|
neuper@48895
|
505 |
Changeset: 48757 (74eb3dfc33cc) updated src from Isabelle2011 to Isabelle2012
|
neuper@48895
|
506 |
User: Walther Neuper <neuper@ist.tugraz.at>
|
neuper@48895
|
507 |
Date: 2012-09-24 18:35:13 +0200 (8 months)
|
neuper@48895
|
508 |
------------------------------------------------------------------------------
|
neuper@48895
|
509 |
Changeset: 48756 (7443906996a8) merged
|
neuper@48895
|
510 |
User: Walther Neuper <neuper@ist.tugraz.at>
|
neuper@48895
|
511 |
Date: 2012-09-24 18:15:49 +0200 (8 months)
|
neuper@48895
|
512 |
*}
|
neuper@48895
|
513 |
|
neuper@48895
|
514 |
subsection {* isac on Isabelle2011 *}
|
neuper@48895
|
515 |
subsubsection {* Summary of development *}
|
neuper@48895
|
516 |
text {*
|
neuper@48895
|
517 |
isac's mathematics engine has been extended by two developments:
|
neuper@48895
|
518 |
(1) Isabelle's contexts were introduced by Mathias Lehnfeld
|
neuper@52150
|
519 |
(2) Z_Transform was introduced by Jan Rocnik, which revealed
|
neuper@52150
|
520 |
further errors introduced by (1).
|
neuper@52150
|
521 |
(3) "error patterns" were introduced by Gabriella Daroczy
|
neuper@52150
|
522 |
Regressions tests have been added for all of these.
|
neuper@48895
|
523 |
*}
|
neuper@48895
|
524 |
subsubsection {* Run tests *}
|
neuper@48895
|
525 |
text {*
|
neuper@48895
|
526 |
$ cd /usr/local/isabisac11/
|
neuper@48895
|
527 |
$ ./bin/isabelle jedit -l HOL src/Tools/isac/Build_Isac.thy
|
neuper@48895
|
528 |
$ ./bin/isabelle jedit -l Isac test/Tools/isac/Test_Isac.thy
|
neuper@48895
|
529 |
*}
|
neuper@48895
|
530 |
subsubsection {* State of tests *}
|
neuper@48895
|
531 |
text {*
|
neuper@48895
|
532 |
Systematic efforts outcommented less significant tests by (*...=== inhibit exn ...*)
|
neuper@48895
|
533 |
and sometimes give reasons for failing tests.
|
neuper@48895
|
534 |
(*...=== inhibit exn AK...*) was done by Alexander Kargl; this is reliable
|
neuper@48895
|
535 |
work, some of which couldn't be revised (and renamed) by WN and thus survived some time.
|
neuper@48895
|
536 |
|
neuper@48895
|
537 |
The most signification tests (in particular Frontend/interface.sml) run,
|
neuper@48895
|
538 |
however, many "error in kernel" are not caught by an exception.
|
neuper@48895
|
539 |
------------------------------------------------------------------------------
|
neuper@48895
|
540 |
After the changeset below Test_Isac worked with check_unsynchronized_ref ():
|
neuper@48895
|
541 |
------------------------------------------------------------------------------
|
neuper@48895
|
542 |
Changeset: 42457 (ca691a84b81a) PROVISIONALLY MADE TESTS RUN with Unsynchronized.ref
|
neuper@48895
|
543 |
User: Walther Neuper <neuper@ist.tugraz.at>
|
neuper@48895
|
544 |
Date: 2012-08-06 10:38:11 +0200 (11 months)
|
neuper@52150
|
545 |
|
neuper@52150
|
546 |
|
neuper@52150
|
547 |
The list below records TODOs while producing an ISAC kernel for
|
neuper@52150
|
548 |
gdaroczy and jrocnik, wich could NOT be done before all tests are RUNNING
|
neuper@52150
|
549 |
(so to be resumed with Isabelle2013-1):
|
neuper@52150
|
550 |
############## WNxxxxxx.TODO can be found in sources ##############
|
neuper@52150
|
551 |
--------------------------------------------------------------------------------
|
neuper@52150
|
552 |
WN111013.TODO: lots of cleanup/removal in test/../Test.thy
|
neuper@52150
|
553 |
--------------------------------------------------------------------------------
|
neuper@52150
|
554 |
WN111013.TODO: remove concept around "fun init_form", lots of troubles with
|
neuper@52150
|
555 |
this special case (see) --- why not nxt = Model_Problem here ? ---
|
neuper@52150
|
556 |
--------------------------------------------------------------------------------
|
neuper@52150
|
557 |
WN111014.TODO calculate_Poly < calculate_Rational < calculate_RootRat, see test/
|
neuper@52150
|
558 |
... FIRST redesign
|
neuper@52150
|
559 |
# simplify_* , *_simp_*
|
neuper@52150
|
560 |
# norm_*
|
neuper@52150
|
561 |
# calc_* , calculate_* ... require iteration over all rls ...
|
neuper@52150
|
562 |
... see --- val rls = calculate_RootRat > calculate_Rational --- CONTINUE !
|
neuper@52150
|
563 |
--------------------------------------------------------------------------------
|
neuper@52150
|
564 |
WN111014.TODO fun prep_rls | !!!use this function in ruleset' := !!!
|
neuper@52150
|
565 |
--------------------------------------------------------------------------------
|
neuper@52150
|
566 |
WN120314 changeset a393bb9f5e9f drops root equations.
|
neuper@52150
|
567 |
see test/Tools/isac/Knowledge/rootrateq.sml
|
neuper@52150
|
568 |
--------------------------------------------------------------------------------
|
neuper@52150
|
569 |
WN120317.TODO changeset 977788dfed26 dropped rateq:
|
neuper@52150
|
570 |
# test --- repair NO asms from rls RatEq_eliminate --- shows error from 2002
|
neuper@52150
|
571 |
# test --- solve (1/x = 5, x) by me --- and --- x / (x ^ 2 - 6 * x + 9) - ...:
|
neuper@52150
|
572 |
investigation Check_elementwise stopped due to too much effort finding out,
|
neuper@52150
|
573 |
why Check_elementwise worked in 2002 in spite of the error.
|
neuper@52150
|
574 |
--------------------------------------------------------------------------------
|
neuper@52150
|
575 |
WN120317.TODO postponed test/../ratinal,ratinal2.sml to joint work with dmeindl
|
neuper@52150
|
576 |
--------------------------------------------------------------------------------
|
neuper@52150
|
577 |
WN120317.TODO found by test --- interSteps for Schalk 299a --- that
|
neuper@52150
|
578 |
NO test with 'interSteps' is checked properly (with exn on changed behaviour)
|
neuper@52150
|
579 |
--------------------------------------------------------------------------------
|
neuper@52150
|
580 |
WN120317.TODO test --- Matthias Goldgruber 2003 rewrite orders --- has
|
neuper@52150
|
581 |
a newly outcommented test where rewrite_set_ make_polynomial --> NONE
|
neuper@52150
|
582 |
--------------------------------------------------------------------------------
|
neuper@52150
|
583 |
WN120320.TODO check-improve rlsthmsNOTisac:
|
neuper@52150
|
584 |
DONE make test --- old compute rlsthmsNOTisac by eq_thmI'
|
neuper@52150
|
585 |
DONE compare rlsthmsNOTisac in thms-survey-Isa02-Isa09-2.sml .. Isac.thy
|
neuper@52150
|
586 |
FOUND 120321: Theory.axioms_of doesnt find LENGTH_CONS etc, thus are in Isab
|
neuper@52150
|
587 |
# mark twice thms (in isac + (later) in Isabelle) in Isac.thy
|
neuper@52150
|
588 |
--------------------------------------------------------------------------------
|
neuper@52150
|
589 |
WN120320.TODO rlsthmsNOTisac: replace twice thms ^
|
neuper@52150
|
590 |
--------------------------------------------------------------------------------
|
neuper@52150
|
591 |
WN120320.TODO rlsthmsNOTisac: reconsider design of sym_* thms, see test
|
neuper@52150
|
592 |
--- OLD compute rlsthmsNOTisac by eq_thmID ---: some are in isab, some in isac.
|
neuper@52150
|
593 |
--------------------------------------------------------------------------------
|
neuper@52150
|
594 |
WN120321.TODO rearrange theories:
|
neuper@52150
|
595 |
Knowledge
|
neuper@52150
|
596 |
:
|
neuper@52150
|
597 |
Atools.thy
|
neuper@52150
|
598 |
///Descript.thy --> ProgLang
|
neuper@52150
|
599 |
Delete.thy <--- first_Knowledge_thy (*mv to Atools.thy*)
|
neuper@52150
|
600 |
ProgLang: restructure Build_Isac.thy such that no xmlsrc.thy, ProgLang.thy
|
neuper@52150
|
601 |
Interpret.thy are generated (simplifies xml structure for theories)
|
neuper@52150
|
602 |
Script.thy
|
neuper@52150
|
603 |
Tools.thy
|
neuper@52150
|
604 |
ListC.thy <--- first_Proglang_thy
|
neuper@52150
|
605 |
--------------------------------------------------------------------------------
|
neuper@52150
|
606 |
WN120321.TODO reanimate test/../simplify.sml: CAS-command Simplify
|
neuper@52150
|
607 |
EXN "simplify.sml: diff.behav. CAScmd: Simplify (2*a + 3*a)"
|
neuper@52150
|
608 |
broken during work on thy-hierarchy
|
neuper@52150
|
609 |
--------------------------------------------------------------------------------
|
neuper@52150
|
610 |
WN120321.TODO LAST in IsacScripts + in IsacKnowledge, see
|
neuper@55421
|
611 |
test --- the_hier (get_thes ()) (collect_thydata ())---
|
neuper@52150
|
612 |
--------------------------------------------------------------------------------
|
neuper@52150
|
613 |
WN120405a.TODO src/../pbl-met-hierarchy.sml: fun pbl2term--> Isac' instead Isac_
|
neuper@52150
|
614 |
!!add mutual crossreferences to ?fun headline??? where the same has to be done:
|
neuper@52150
|
615 |
!!OR BETTER: use only 2 functions for adding/removing "'" to/from thy!!
|
neuper@52150
|
616 |
--------------------------------------------------------------------------------
|
neuper@52150
|
617 |
WN120409.TODO replace "op mem" (2002) with member (2011) ...
|
neuper@52150
|
618 |
... an exercise interesting for beginners !
|
neuper@52150
|
619 |
--------------------------------------------------------------------------------
|
neuper@52150
|
620 |
WN120411 scanning html representation of newly generated knowledge:
|
neuper@52150
|
621 |
* thy:
|
neuper@52150
|
622 |
** Theorems: only "Proof of the theorem" (correct!)
|
neuper@52150
|
623 |
and "(c) isac-team (math-autor)"
|
neuper@52150
|
624 |
** Rulesets: only "Identifier:///"
|
neuper@52150
|
625 |
and "(c) isac-team (math-autor)"
|
neuper@52150
|
626 |
** IsacKnowledge: link to dependency graph (which needs to be created first)
|
neuper@52150
|
627 |
** IsacScripts --> ProgramLanguage
|
neuper@52150
|
628 |
*** Tools: Theorems: arity_type_cp, arity_type_nam, ... wegnehmen
|
neuper@52150
|
629 |
|
neuper@52150
|
630 |
* pbl: OK !?!
|
neuper@52150
|
631 |
* met: OK !?!
|
neuper@52150
|
632 |
* exp:
|
neuper@52150
|
633 |
** Z-Transform is missing !!!
|
neuper@52150
|
634 |
** type-constraints !!!
|
neuper@52150
|
635 |
--------------------------------------------------------------------------------
|
neuper@52150
|
636 |
WN120417: merging xmldata revealed:
|
neuper@52150
|
637 |
..............NEWLY generated:........................................
|
neuper@52150
|
638 |
<THEOREMDATA>
|
neuper@52150
|
639 |
<GUH> thy_isab_Fun-thm-o_apply </GUH>
|
neuper@52150
|
640 |
<STRINGLIST>
|
neuper@52150
|
641 |
<STRING> Isabelle </STRING>
|
neuper@52150
|
642 |
<STRING> Fun </STRING>
|
neuper@52150
|
643 |
<STRING> Theorems </STRING>
|
neuper@52150
|
644 |
<STRING> o_apply </STRING>
|
neuper@52150
|
645 |
</STRINGLIST>
|
neuper@52150
|
646 |
<MATHML>
|
neuper@52150
|
647 |
<ISA> (?f o ?g) ?x = ?f (?g ?x) </ISA>
|
neuper@52150
|
648 |
</MATHML> <PROOF>
|
neuper@52150
|
649 |
<EXTREF>
|
neuper@52150
|
650 |
<TEXT> Proof of the theorem </TEXT>
|
neuper@52150
|
651 |
<URL> http://www.ist.tugraz.at/projects/isac/www/kbase/thy/browser_info/HOL/HOL-Real/Isac/Fun.html </URL>
|
neuper@52150
|
652 |
</EXTREF>
|
neuper@52150
|
653 |
</PROOF>
|
neuper@52150
|
654 |
<EXPLANATIONS> </EXPLANATIONS>
|
neuper@52150
|
655 |
<MATHAUTHORS>
|
neuper@52150
|
656 |
<STRING> Isabelle team, TU Munich </STRING>
|
neuper@52150
|
657 |
</MATHAUTHORS>
|
neuper@52150
|
658 |
<COURSEDESIGNS>
|
neuper@52150
|
659 |
</COURSEDESIGNS>
|
neuper@52150
|
660 |
</THEOREMDATA>
|
neuper@52150
|
661 |
..............OLD FORMAT:.............................................
|
neuper@52150
|
662 |
<THEOREMDATA>
|
neuper@52150
|
663 |
<GUH> thy_isab_Fun-thm-o_apply </GUH>
|
neuper@52150
|
664 |
<STRINGLIST>
|
neuper@52150
|
665 |
<STRING> Isabelle </STRING>
|
neuper@52150
|
666 |
<STRING> Fun </STRING>
|
neuper@52150
|
667 |
<STRING> Theorems </STRING>
|
neuper@52150
|
668 |
<STRING> o_apply </STRING>
|
neuper@52150
|
669 |
</STRINGLIST>
|
neuper@52150
|
670 |
<THEOREM>
|
neuper@52150
|
671 |
<ID> o_apply </ID>
|
neuper@52150
|
672 |
<MATHML>
|
neuper@52150
|
673 |
<ISA> (?f o ?g) ?x = ?f (?g ?x) </ISA>
|
neuper@52150
|
674 |
</MATHML>
|
neuper@52150
|
675 |
</THEOREM>
|
neuper@52150
|
676 |
<PROOF>
|
neuper@52150
|
677 |
<EXTREF>
|
neuper@52150
|
678 |
<TEXT> Proof of the theorem </TEXT>
|
neuper@52150
|
679 |
<URL> http://www.ist.tugraz.at/projects/isac/www/kbase/thy/browser_info/HOL/HOL-Real/Isac/Fun.html </URL>
|
neuper@52150
|
680 |
</EXTREF>
|
neuper@52150
|
681 |
</PROOF>
|
neuper@52150
|
682 |
<EXPLANATIONS> </EXPLANATIONS>
|
neuper@52150
|
683 |
<MATHAUTHORS>
|
neuper@52150
|
684 |
<STRING> Isabelle team, TU Munich </STRING>
|
neuper@52150
|
685 |
</MATHAUTHORS>
|
neuper@52150
|
686 |
<COURSEDESIGNS>
|
neuper@52150
|
687 |
</COURSEDESIGNS>
|
neuper@52150
|
688 |
</THEOREMDATA>
|
neuper@52150
|
689 |
--------------------------------------------------------------------------------
|
neuper@48895
|
690 |
*}
|
neuper@48895
|
691 |
subsubsection {* Changesets of begin and end *}
|
neuper@48895
|
692 |
text {*
|
neuper@48895
|
693 |
isac development was done between these changesets:
|
neuper@48895
|
694 |
------------------------------------------------------------------------------
|
neuper@48895
|
695 |
Changeset: 42519 (1f3b4270363e) meeting dmeindl: added missing files
|
neuper@48895
|
696 |
User: Walther Neuper <neuper@ist.tugraz.at>
|
neuper@48895
|
697 |
Date: 2012-09-24 16:39:30 +0200 (8 months)
|
neuper@48895
|
698 |
:
|
neuper@48895
|
699 |
: isac on Isablle2011
|
neuper@48895
|
700 |
:
|
neuper@48895
|
701 |
Changeset:41897 (355be7f60389) merged isabisac with Isabelle2011
|
neuper@48895
|
702 |
Branch: decompose-isar
|
neuper@48895
|
703 |
User: Walther Neuper <neuper@ist.tugraz.at>
|
neuper@48895
|
704 |
Date: 2011-02-25 13:04:56 +0100 (2011-02-25)
|
neuper@48895
|
705 |
------------------------------------------------------------------------------
|
neuper@48895
|
706 |
*}
|
neuper@48895
|
707 |
|
neuper@48895
|
708 |
subsection {* isac on Isabelle2009-2 *}
|
neuper@48895
|
709 |
subsubsection {* Summary of development *}
|
neuper@48895
|
710 |
text {*
|
neuper@48895
|
711 |
In 2009 the update of isac from Isabelle2002 started with switching from CVS to hg.
|
neuper@48895
|
712 |
The update was painful (bridging 7 years of Isabelle development) and cut short
|
neuper@48895
|
713 |
due to the start of introducing Isabelle's contexts (Mathias Lehnfeld) and
|
neuper@48895
|
714 |
going on to Isabelle2011 although most of the tests did not run.
|
neuper@48895
|
715 |
*}
|
neuper@48895
|
716 |
subsubsection {* Run tests *}
|
neuper@48895
|
717 |
text {*
|
neuper@52150
|
718 |
WN131021 this is broken by installation of Isabelle2011/12/13,
|
neuper@52150
|
719 |
because all these write their binaries to ~/.isabelle/heaps/..
|
neuper@52150
|
720 |
|
neuper@48895
|
721 |
$ cd /usr/local/isabisac09-2/
|
neuper@48895
|
722 |
$ ./bin/isabelle emacs -l HOL src/Tools/isac/Build_Isac.thy
|
neuper@48895
|
723 |
$ ./bin/isabelle emacs -l Isac src/Tools/isac/Test_Isac.thy
|
neuper@48895
|
724 |
NOT THE RIGHT VERSION..... test/Tools/isac/Test_Isac.thy !!!
|
neuper@48895
|
725 |
*}
|
neuper@48895
|
726 |
subsubsection {* State of tests *}
|
neuper@48895
|
727 |
text {*
|
neuper@48895
|
728 |
Most tests are broken by the update from Isabelle2002 to Isabelle2009-2.
|
neuper@48895
|
729 |
*}
|
neuper@48895
|
730 |
subsubsection {* Changesets of begin and end *}
|
neuper@48895
|
731 |
text {*
|
neuper@48895
|
732 |
isac development was done between these changesets:
|
neuper@48895
|
733 |
------------------------------------------------------------------------------
|
neuper@48895
|
734 |
Changeset: 38115 (940a5feea094) Little improvements of isac-plugin
|
neuper@48895
|
735 |
Branch: decompose-isar
|
neuper@48895
|
736 |
User: Marco Steger <m.steger@student.tugraz.at>
|
neuper@48895
|
737 |
Date: 2011-02-06 18:30:28 +0100 (2011-02-06)
|
neuper@48895
|
738 |
:
|
neuper@48895
|
739 |
: isac on Isablle2009-2
|
neuper@48895
|
740 |
:
|
neuper@48895
|
741 |
Changeset: 37870 (5100a9c3abf8) created branch isac-from-Isabelle2009-2
|
neuper@48895
|
742 |
Branch: isac-from-Isabelle2009-2
|
neuper@48895
|
743 |
User: Walther Neuper <neuper@ist.tugraz.at>
|
neuper@48895
|
744 |
Date: 2010-07-21 09:59:35 +0200 (2010-07-21)
|
neuper@48895
|
745 |
------------------------------------------------------------------------------
|
neuper@48895
|
746 |
*}
|
neuper@48895
|
747 |
|
neuper@48895
|
748 |
subsection {* isac on Isabelle2002 *}
|
neuper@48895
|
749 |
subsubsection {* Summary of development *}
|
neuper@48895
|
750 |
text {*
|
neuper@48895
|
751 |
From 1999 to 2010 all the basic functionality (except "ctxt" and "error pattern")
|
neuper@48895
|
752 |
of isac's mathematics engine has been implemented.
|
neuper@48895
|
753 |
*}
|
neuper@48895
|
754 |
subsubsection {* Run tests *}
|
neuper@48895
|
755 |
subsubsection {* State of tests *}
|
neuper@48895
|
756 |
text {*
|
neuper@48895
|
757 |
All tests work on an old notebook (the right PolyML coudn't be upgraded to more
|
neuper@48895
|
758 |
recent Linux versions)
|
neuper@48895
|
759 |
*}
|
neuper@48895
|
760 |
subsubsection {* Changesets of begin and end *}
|
neuper@48895
|
761 |
text {*
|
neuper@48895
|
762 |
Up to the above Mercurial changeset 5100a9c3abf8 isac used CVS;
|
neuper@48895
|
763 |
see https://intra.ist.tugraz.at/hg/isac containing a conversion to Mercurial.
|
neuper@48895
|
764 |
*}
|
neuper@48895
|
765 |
|
neuper@41943
|
766 |
end
|
neuper@52065
|
767 |
(*========== inhibit exn 130719 Isabelle2013 ===================================
|
neuper@52065
|
768 |
============ inhibit exn 130719 Isabelle2013 =================================*)
|
neuper@41943
|
769 |
|
neuper@41943
|
770 |
(*-.-.-.-.-.-isolate response.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
|
neuper@48895
|
771 |
-.-.-.-.-.-.-isolate response.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.*)
|
neuper@41975
|
772 |
|