agriesma@338
|
1 |
(* testdaten f"ur isac demo0
|
agriesma@338
|
2 |
WN 31.10.00, .., 18.1.01
|
agriesma@338
|
3 |
use"tests/testdaten.sml";
|
agriesma@338
|
4 |
use"testdaten.sml";
|
agriesma@338
|
5 |
|
agriesma@338
|
6 |
proofs:= []; dials:=([],[],[]);
|
agriesma@338
|
7 |
*)
|
agriesma@338
|
8 |
" _________________ exampel [x=4]: Rules 4.2.01a________________ ";
|
agriesma@338
|
9 |
" _________________ exampel [x=4]: Rules 4.2.01b________________ ";
|
agriesma@338
|
10 |
" _________________ exampel [x=4]: tutor active ________________ ";
|
agriesma@338
|
11 |
" _________________ exampel [x=4] ________________ ";
|
agriesma@338
|
12 |
" _________________ exampel [x =(-12)/5] ________________ ";
|
agriesma@338
|
13 |
" _________________ exampel [x =(-12)/5] Auto ________________ ";
|
agriesma@338
|
14 |
" ----------------- d_d x (x ^^^ 2 + 3 * x + 4) ----------------- ";
|
agriesma@338
|
15 |
" ----------------- d_d x (x ^^^ 2 + x + 1 / x ^^^ 2) ----------------- ";
|
agriesma@338
|
16 |
" ----------------- Schalk III S.62 Nr. 51a) --------- ";
|
agriesma@338
|
17 |
" ----------------- Schalk III S.144 Nr. 408b) --------- ";
|
agriesma@338
|
18 |
" ----------------- Schalk III S.137 Nr. 359g) --------- ";
|
agriesma@338
|
19 |
|
agriesma@338
|
20 |
|
agriesma@338
|
21 |
|
agriesma@338
|
22 |
|
agriesma@338
|
23 |
|
agriesma@338
|
24 |
" _________________ exampel [x=4]: Rules 4.2.01a________________ ";
|
agriesma@338
|
25 |
" _________________ exampel [x=4]: Rules 4.2.01a________________ ";
|
agriesma@338
|
26 |
val (_,uI,0,0,[],[New_User],_) = StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
27 |
val (_,_,pI,0,[],[New_Proof],_) = StdinSML uI 0 0 0 New_Proof;
|
agriesma@338
|
28 |
val fmz = ["equality (sqrt(9+4*x)=sqrt x + sqrt(5+x))",
|
agriesma@338
|
29 |
"solveFor x","errorBound (eps=0)",
|
agriesma@338
|
30 |
"solutions L"];
|
agriesma@338
|
31 |
val (dI',pI',mI') =
|
agriesma@338
|
32 |
("Test.thy",["squareroot","univariate","equation","test"],
|
agriesma@338
|
33 |
("Test.thy","sqrt-equ-test"));
|
agriesma@338
|
34 |
"--- 0 ---";
|
agriesma@338
|
35 |
StdinSML uI pI 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
36 |
"--- 1 ---";
|
agriesma@338
|
37 |
StdinSML uI pI ~1 ~1 (Command Accept);
|
agriesma@338
|
38 |
(* square_equation_left
|
agriesma@338
|
39 |
"#9 + #4 * x = (sqrt x + sqrt (#5 + x)) ^^^ #2"*)
|
agriesma@338
|
40 |
"--- 2 ---";
|
agriesma@338
|
41 |
StdinSML uI pI ~2 ~2 (Command Rules);
|
agriesma@338
|
42 |
"--- 3 ---";
|
agriesma@338
|
43 |
StdinSML uI pI ~2 ~2 (RuleFK (Rewrite_Set "Test_simplify"));
|
agriesma@338
|
44 |
"--- 4 ---";
|
agriesma@338
|
45 |
val (_,_,_,_,_,[Error_ _ (*"Error_ Test_simplify not applicable to ..*),
|
agriesma@338
|
46 |
Request "apply a rule !"],_) =
|
agriesma@338
|
47 |
StdinSML uI pI ~3 ~3 (RuleFK (Rewrite_Set "Test_simplify"));
|
agriesma@338
|
48 |
|
agriesma@338
|
49 |
|
agriesma@338
|
50 |
" _________________ exampel [x=4]: Rules 4.2.01b________________ ";
|
agriesma@338
|
51 |
" _________________ exampel [x=4]: Rules 4.2.01b________________ ";
|
agriesma@338
|
52 |
val (_,uI,0,0,[],[New_User],_) = StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
53 |
val (_,_,pI,0,[],[New_Proof],_) = StdinSML uI 0 0 0 New_Proof;
|
agriesma@338
|
54 |
val fmz = ["equality (sqrt(9+4*x)=sqrt x + sqrt(5+x))",
|
agriesma@338
|
55 |
"solveFor x","errorBound (eps=0)",
|
agriesma@338
|
56 |
"solutions L"];
|
agriesma@338
|
57 |
val (dI',pI',mI') =
|
agriesma@338
|
58 |
("Test.thy",["squareroot","univariate","equation","test"],
|
agriesma@338
|
59 |
("Test.thy","sqrt-equ-test"));
|
agriesma@338
|
60 |
"--- 0 ---";
|
agriesma@338
|
61 |
StdinSML uI pI 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
62 |
"--- 1 ---";
|
agriesma@338
|
63 |
StdinSML uI pI ~1 ~1 (Command Accept);
|
agriesma@338
|
64 |
(* square_equation_left
|
agriesma@338
|
65 |
"#9 + #4 * x = (sqrt x + sqrt (#5 + x)) ^^^ #2"*)
|
agriesma@338
|
66 |
"--- 2 ---";
|
agriesma@338
|
67 |
StdinSML uI pI ~2 ~2 (Command Rules);
|
agriesma@338
|
68 |
"--- 3 ---";
|
agriesma@338
|
69 |
val (_,_,_,_,_,
|
agriesma@338
|
70 |
[Error_ _ (*"Error_ 'square_equation_left' not applicable to: #9 *),
|
agriesma@338
|
71 |
Select _, Request "select a rule !"],_) =
|
agriesma@338
|
72 |
StdinSML uI pI ~2 ~2 (RuleFK (Rewrite ("square_equation_left","")));
|
agriesma@338
|
73 |
|
agriesma@338
|
74 |
|
agriesma@338
|
75 |
" _________________ exampel [x=4]: tutor active ________________ ";
|
agriesma@338
|
76 |
" _________________ exampel [x=4]: tutor active ________________ ";
|
agriesma@338
|
77 |
val (_,uI,0,0,[],[New_User],_) = StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
78 |
val (_,_,pI,0,[],[New_Proof],_) = StdinSML uI 0 0 0 New_Proof;
|
agriesma@338
|
79 |
val fmz = ["equality (sqrt(9+4*x)=sqrt x + sqrt(5+x))",
|
agriesma@338
|
80 |
"solveFor x","errorBound (eps=0)",
|
agriesma@338
|
81 |
"solutions L"];
|
agriesma@338
|
82 |
val (dI',pI',mI') =
|
agriesma@338
|
83 |
("Test.thy",["squareroot","univariate","equation","test"],
|
agriesma@338
|
84 |
("Test.thy","sqrt-equ-test"));
|
agriesma@338
|
85 |
"--- s1 ---";
|
agriesma@338
|
86 |
StdinSML uI pI 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
87 |
"--- 1 ---";
|
agriesma@338
|
88 |
StdinSML uI pI ~1 ~1 (Command Accept);
|
agriesma@338
|
89 |
(* square_equation_left
|
agriesma@338
|
90 |
"#9 + #4 * x = (sqrt x + sqrt (#5 + x)) ^^^ #2"*)
|
agriesma@338
|
91 |
"--- 2 ---";
|
agriesma@338
|
92 |
StdinSML uI pI ~2 ~2 (Command Accept);
|
agriesma@338
|
93 |
(* Test_simplify
|
agriesma@338
|
94 |
"#9 + #4 * x = #5 + (#2 * x + #2 * sqrt (x ^^^ #2 + #5 * x))"*)
|
agriesma@338
|
95 |
"--- 3 ---";
|
agriesma@338
|
96 |
StdinSML uI pI ~3 ~3 (Command Accept);
|
agriesma@338
|
97 |
(* rearrange_assoc
|
agriesma@338
|
98 |
"#9 + #4 * x = #5 + #2 * x + #2 * sqrt (x ^^^ #2 + #5 * x)"*)
|
agriesma@338
|
99 |
"--- 4 ---";
|
agriesma@338
|
100 |
StdinSML uI pI ~4 ~4 (Command Accept);
|
agriesma@338
|
101 |
(* isolate_root
|
agriesma@338
|
102 |
"sqrt (x ^^^ #2 + #5 * x) = (#5 + #2 * x + #-1 * (#9 + #4 * x)) // (#-1 *#2)"*)
|
agriesma@338
|
103 |
"--- 5 ---";
|
agriesma@338
|
104 |
StdinSML uI pI ~5 ~5 (Command Accept);
|
agriesma@338
|
105 |
(* Test_simplify
|
agriesma@338
|
106 |
"sqrt (x ^^^ #2 + #5 * x) = #2 + x"*)
|
agriesma@338
|
107 |
"--- 6 ---";
|
agriesma@338
|
108 |
StdinSML uI pI ~6 ~6 (Command Accept);
|
agriesma@338
|
109 |
(* square_equation_left
|
agriesma@338
|
110 |
"x ^^^ #2 + #5 * x = (#2 + x) ^^^ #2"*)
|
agriesma@338
|
111 |
"--- 7 ---";
|
agriesma@338
|
112 |
StdinSML uI pI ~7 ~7 (Command Accept);
|
agriesma@338
|
113 |
(* Test_simplify
|
agriesma@338
|
114 |
"x ^^^ #2 + #5 * x = #4 + (x ^^^ #2 + #4 * x)"*)
|
agriesma@338
|
115 |
"--- 8 ---";
|
agriesma@338
|
116 |
StdinSML uI pI ~8 ~8 (Command Accept);
|
agriesma@338
|
117 |
(* rearrange_assoc
|
agriesma@338
|
118 |
"x ^^^ #2 + #5 * x = #4 + x ^^^ #2 + #4 * x"*)
|
agriesma@338
|
119 |
"--- 9 ---";
|
agriesma@338
|
120 |
StdinSML uI pI ~9 ~9 (Command Accept);
|
agriesma@338
|
121 |
(* Test_simplify
|
agriesma@338
|
122 |
"x ^^^ #2 + #5 * x = #4 + (x ^^^ #2 + #4 * x)"*)
|
agriesma@338
|
123 |
"--- 10 ---";
|
agriesma@338
|
124 |
StdinSML uI pI ~10 ~10 (Command Accept);
|
agriesma@338
|
125 |
(* norm_equation
|
agriesma@338
|
126 |
"x ^^^ #2 + #5 * x + #-1 * (#4 + (x ^^^ #2 + #4 * x)) = #0"*)
|
agriesma@338
|
127 |
"--- 11 ---";
|
agriesma@338
|
128 |
StdinSML uI pI ~11 ~11 (Command Accept);
|
agriesma@338
|
129 |
(* Test_simplify
|
agriesma@338
|
130 |
"#-4 + x = #0"*)
|
agriesma@338
|
131 |
"--- 12 ---";
|
agriesma@338
|
132 |
StdinSML uI pI ~12 ~12 (Command Accept);
|
agriesma@338
|
133 |
(* isolate_bdv
|
agriesma@338
|
134 |
"x = #0 + #-1 * #-4" *)
|
agriesma@338
|
135 |
"--- 13 ---";
|
agriesma@338
|
136 |
StdinSML uI pI ~13 ~13 (Command Accept);
|
agriesma@338
|
137 |
(* Test_simplify
|
agriesma@338
|
138 |
"x = #4" *)
|
agriesma@338
|
139 |
"--- 14 ---";
|
agriesma@338
|
140 |
StdinSML uI pI ~14 ~14 (Command Accept);
|
agriesma@338
|
141 |
val (_,_,1,~14,[],[RuleKF (_,m),FormKF (_,_,_,_,f),Request "Accept ?"],_) = it;
|
agriesma@338
|
142 |
if m = Check_Postcond ["squareroot","univariate","equation","test"]
|
agriesma@338
|
143 |
andalso f = "[x = 4]" then ()
|
agriesma@338
|
144 |
else raise error "new behaviour in: exampel [x=4]: tutor active";
|
agriesma@338
|
145 |
"--- 15 ---";
|
agriesma@338
|
146 |
StdinSML uI pI ~15 ~15 (Command Accept);
|
agriesma@338
|
147 |
(* Request "start another example"*)
|
agriesma@338
|
148 |
|
agriesma@338
|
149 |
(*---- after restruct. kb 18.9.02 ---- (same is in test-FE...)
|
agriesma@338
|
150 |
" _________________ exampel [x=4] ________________ ";
|
agriesma@338
|
151 |
" _________________ exampel [x=4] ________________ ";
|
agriesma@338
|
152 |
proofs:= []; dials:=([],[],[]);
|
agriesma@338
|
153 |
StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
154 |
StdinSML 1 0 0 0 New_Proof;
|
agriesma@338
|
155 |
val fmz = ["equality (sqrt(9+4*x)=sqrt x + sqrt(5+x))",
|
agriesma@338
|
156 |
"solveFor x","errorBound (eps=0)",
|
agriesma@338
|
157 |
"solutions L"];
|
agriesma@338
|
158 |
val (dI',pI',mI') =
|
agriesma@338
|
159 |
("Test.thy",["squareroot","univariate","equation","test"],
|
agriesma@338
|
160 |
("Test.thy","sqrt-equ-test"));
|
agriesma@338
|
161 |
"--- s1 ---";
|
agriesma@338
|
162 |
val (_,1,1,1,[],[_,_,FormKF (_,_,_,_,f),req],_) =
|
agriesma@338
|
163 |
StdinSML 1 1 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
164 |
|
agriesma@338
|
165 |
StdinSML 1 1 ~1 ~1 (Command ActivePlus);
|
agriesma@338
|
166 |
StdinSML 1 1 ~1 ~1 (Command ActivePlus);
|
agriesma@338
|
167 |
StdinSML 1 1 ~1 ~1 (Command ActivePlus);
|
agriesma@338
|
168 |
StdinSML 1 1 ~1 ~1 (Command ActivePlus);(*acti=4..SelRule*)
|
agriesma@338
|
169 |
|
agriesma@338
|
170 |
"--- !!! x1 --- strange choice"; (* hier nochmals spec !*)
|
agriesma@338
|
171 |
StdinSML 1 1 ~1 ~1 (RuleFK (Rewrite_Set "norm_equation"));
|
agriesma@338
|
172 |
"--- !!! x2 --- ME knows nxt_step";
|
agriesma@338
|
173 |
StdinSML 1 1 ~2 ~2 (RuleFK (Rewrite_Set "Test_simplify"));
|
agriesma@338
|
174 |
"--- !!! x3 --- helpless !!!";
|
agriesma@338
|
175 |
val (_,_,_,_,_,[FormKF (_,_,_,_,res),_,requ],_) =
|
agriesma@338
|
176 |
StdinSML 1 1 ~3 ~3 (RuleFK (Rewrite_Set "rearrange_assoc"));
|
agriesma@338
|
177 |
"--- !!! x4 ---";
|
agriesma@338
|
178 |
val (_,_,_,_,_,[FormKF (_,_,_,_,res),_,requ],_) =
|
agriesma@338
|
179 |
StdinSML 1 1 ~4 ~4 (RuleFK (Rewrite_Set "isolate_root"));
|
agriesma@338
|
180 |
"--- !!! x5 --- back at original equation !!!";
|
agriesma@338
|
181 |
val (_,_,_,_,_,[FormKF (_,_,_,_,res),_,requ],_) =
|
agriesma@338
|
182 |
StdinSML 1 1 ~5 ~5 (RuleFK (Rewrite_Set "Test_simplify"));
|
agriesma@338
|
183 |
if res="sqrt (9 + 4 * x) = sqrt x + sqrt (5 + x)"
|
agriesma@338
|
184 |
then () else raise error "new behaviour in test-example";
|
agriesma@338
|
185 |
"--- !!! x6 --- not applicable";
|
agriesma@338
|
186 |
val (_,_,_,_,_,[Error_ err,_,requ],_) =
|
agriesma@338
|
187 |
StdinSML 1 1 ~6 ~6 (RuleFK (Rewrite_Set "Test_simplify"));
|
agriesma@338
|
188 |
(*val (_,_,_,_,_,[RuleKF r,requ],_) =*)
|
agriesma@338
|
189 |
val (_,_,_,_,_,ios,_) =
|
agriesma@338
|
190 |
StdinSML 1 1 ~6 ~6 (Command YourTurn);
|
agriesma@338
|
191 |
StdinSML 1 1 ~7 ~7 (Command Accept);
|
agriesma@338
|
192 |
StdinSML 1 1 ~8 ~8 (Command Accept);
|
agriesma@338
|
193 |
StdinSML 1 1 ~9 ~9 (Command Accept);
|
agriesma@338
|
194 |
StdinSML 1 1 ~10 ~10 (Command Accept);
|
agriesma@338
|
195 |
StdinSML 1 1 ~11 ~11 (Command Accept);
|
agriesma@338
|
196 |
StdinSML 1 1 ~12 ~12 (Command Accept);
|
agriesma@338
|
197 |
StdinSML 1 1 ~13 ~13 (Command Accept);
|
agriesma@338
|
198 |
StdinSML 1 1 ~14 ~14 (Command Accept);
|
agriesma@338
|
199 |
StdinSML 1 1 ~15 ~15 (Command Accept);
|
agriesma@338
|
200 |
StdinSML 1 1 ~16 ~16 (Command Accept);
|
agriesma@338
|
201 |
StdinSML 1 1 ~17 ~17 (Command Accept);
|
agriesma@338
|
202 |
StdinSML 1 1 ~18 ~18 (Command Accept);
|
agriesma@338
|
203 |
StdinSML 1 1 ~19 ~19 (Command Accept);
|
agriesma@338
|
204 |
val (_,1,1,_,[],[FormKF (_,_,_,_,f),Request "Accept ?"],_) = it;
|
agriesma@338
|
205 |
if f="[x = 4]" then () else raise error "new behaviour in test-example[x=4]";
|
agriesma@338
|
206 |
|
agriesma@338
|
207 |
val (_,1,1,~20,[],[Request "start another example",End_Proof],_) =
|
agriesma@338
|
208 |
StdinSML 1 1 ~20 ~20 (Command Accept);
|
agriesma@338
|
209 |
-------------------------------------------------------------------*)
|
agriesma@338
|
210 |
|
agriesma@338
|
211 |
|
agriesma@338
|
212 |
|
agriesma@338
|
213 |
" _________________ exampel [x =(-12)/5] ________________ ";
|
agriesma@338
|
214 |
" _________________ exampel [x =(-12)/5] ________________ ";
|
agriesma@338
|
215 |
proofs:= []; dials:=([],[],[]);
|
agriesma@338
|
216 |
StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
217 |
StdinSML 1 0 0 0 New_Proof;
|
agriesma@338
|
218 |
val fmz = ["equality (sqrt(9+4*x)=sqrt x + sqrt(-3+x))",
|
agriesma@338
|
219 |
"solveFor x","errorBound (eps=0)",
|
agriesma@338
|
220 |
"solutions L"];
|
agriesma@338
|
221 |
val (dI',pI',mI') =
|
agriesma@338
|
222 |
("Test.thy",["squareroot","univariate","equation","test"],
|
agriesma@338
|
223 |
("Test.thy","sqrt-equ-test"));
|
agriesma@338
|
224 |
"--- s1 ---";
|
agriesma@338
|
225 |
val (_,1,1,1,[],[_,_,FormKF (_,_,_,_,f),req],_) =
|
agriesma@338
|
226 |
StdinSML 1 1 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
227 |
|
agriesma@338
|
228 |
StdinSML 1 1 ~1 ~1 (Command SpeedMinus);
|
agriesma@338
|
229 |
StdinSML 1 1 ~1 ~1 (Command SpeedMinus);
|
agriesma@338
|
230 |
StdinSML 1 1 ~1 ~1 (Command Accept);(*->rule*)
|
agriesma@338
|
231 |
StdinSML 1 1 ~1 ~1 (Command Accept);(*->form*)
|
agriesma@338
|
232 |
val (_,_,_,_,_,dats,_) =
|
agriesma@338
|
233 |
StdinSML 1 1 ~2 ~2 (Command Accept);(*->rule*)
|
agriesma@338
|
234 |
StdinSML 1 1 ~2 ~2 (Command Accept);(*->form*)
|
agriesma@338
|
235 |
|
agriesma@338
|
236 |
|
agriesma@338
|
237 |
StdinSML 1 1 ~3 ~3 (Command ActivePlus);
|
agriesma@338
|
238 |
StdinSML 1 1 ~3 ~3 (Command ActivePlus);(*act=2: SelRule..PutRuleRes,Tt*)
|
agriesma@338
|
239 |
StdinSML 1 1 ~3 ~3 (RuleFK (Rewrite_Set "rearrange_assoc"));
|
agriesma@338
|
240 |
StdinSML 1 1 ~4 ~4 (Command Accept);
|
agriesma@338
|
241 |
StdinSML 1 1 ~4 ~4 (RuleFK (Rewrite_Set "isolate_root"));
|
agriesma@338
|
242 |
StdinSML 1 1 ~5 ~5 (Command Accept);
|
agriesma@338
|
243 |
StdinSML 1 1 ~5 ~5 (RuleFK (Rewrite_Set "Test_simplify"));
|
agriesma@338
|
244 |
StdinSML 1 1 ~6 ~6 (Command Accept);
|
agriesma@338
|
245 |
|
agriesma@338
|
246 |
|
agriesma@338
|
247 |
StdinSML 1 1 ~6 ~6 (Command SpeedPlus);
|
agriesma@338
|
248 |
StdinSML 1 1 ~6 ~6 (Command SpeedPlus);(*act=2: SelRule..SelRule*)
|
agriesma@338
|
249 |
StdinSML 1 1 ~6 ~6 (RuleFK (Rewrite ("square_equation_left","")));
|
agriesma@338
|
250 |
StdinSML 1 1 ~7 ~7 (RuleFK (Rewrite_Set "Test_simplify"));
|
agriesma@338
|
251 |
StdinSML 1 1 ~8 ~8 (RuleFK (Rewrite_Set "rearrange_assoc"));
|
agriesma@338
|
252 |
|
agriesma@338
|
253 |
|
agriesma@338
|
254 |
StdinSML 1 1 ~9 ~9 (Command YourTurn);
|
agriesma@338
|
255 |
StdinSML 1 1 ~10 ~10 (Command Accept);
|
agriesma@338
|
256 |
StdinSML 1 1 ~11 ~11 (Command Accept);
|
agriesma@338
|
257 |
StdinSML 1 1 ~12 ~12 (Command Accept);
|
agriesma@338
|
258 |
StdinSML 1 1 ~13 ~13 (Command Accept);
|
agriesma@338
|
259 |
StdinSML 1 1 ~14 ~14 (Command Accept);
|
agriesma@338
|
260 |
val (_,_,_,_,_,dats,_) =
|
agriesma@338
|
261 |
StdinSML 1 1 ~15 ~15 (Command Accept);
|
agriesma@338
|
262 |
if dats=[Request "start another example",End_Proof] then ()
|
agriesma@338
|
263 |
else raise error "new behaviour in test-example 1: [x =(-12)/5]";
|
agriesma@338
|
264 |
|
agriesma@338
|
265 |
|
agriesma@338
|
266 |
" _________________ exampel [x =(-12)/5] Auto ________________ ";
|
agriesma@338
|
267 |
" _________________ exampel [x =(-12)/5] Auto ________________ ";
|
agriesma@338
|
268 |
proofs:= []; dials:=([],[],[]);
|
agriesma@338
|
269 |
StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
270 |
StdinSML 1 0 0 0 New_Proof;
|
agriesma@338
|
271 |
val fmz = ["equality (sqrt(9+4*x)=sqrt x + sqrt(-3+x))",
|
agriesma@338
|
272 |
"solveFor x","errorBound (eps=0)",
|
agriesma@338
|
273 |
"solutions L"];
|
agriesma@338
|
274 |
val (dI',pI',mI') =
|
agriesma@338
|
275 |
("Test.thy",["squareroot","univariate","equation","test"],
|
agriesma@338
|
276 |
("Test.thy","sqrt-equ-test"));
|
agriesma@338
|
277 |
val Script sc = (#scr o get_met) ("Test.thy","sqrt-equ-test");
|
agriesma@338
|
278 |
writeln(term2str sc);
|
agriesma@338
|
279 |
"--- s1 ---";
|
agriesma@338
|
280 |
val (_,1,1,1,[],[_,_,FormKF (_,_,_,_,f),req],_) =
|
agriesma@338
|
281 |
StdinSML 1 1 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
282 |
|
agriesma@338
|
283 |
val (_,_,_,_,_,dats,_) = StdinSML 1 1 ~1 ~1 (Command Auto);
|
agriesma@338
|
284 |
val FormKF (~16,Protect,0,Nundef,res) =
|
agriesma@338
|
285 |
(last_elem o drop_last o drop_last) dats;
|
agriesma@338
|
286 |
if res=(*"[]"*)"[x = -12 / 5]" then ()
|
agriesma@338
|
287 |
else raise error "new behaviour in test-example 2: [x =(-12)/5]";
|
agriesma@338
|
288 |
|
agriesma@338
|
289 |
|
agriesma@338
|
290 |
|
agriesma@338
|
291 |
" ----------------- differentiate ----------------- ";
|
agriesma@338
|
292 |
" ----------------- d_d x (x ^^^ 2 + 3 * x + 4) ----------------- ";
|
agriesma@338
|
293 |
proofs:= []; dials:=([],[],[]);
|
agriesma@338
|
294 |
StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
295 |
StdinSML 1 0 0 0 New_Proof;
|
agriesma@338
|
296 |
val fmz = ["functionTerm (d_d x (x ^^^ 2 + 3 * x + 4))",
|
agriesma@338
|
297 |
"differentiateFor x","derivative f_'_"];
|
agriesma@338
|
298 |
val (dI',pI',mI') =
|
agriesma@338
|
299 |
("Diff.thy",["derivative_of","function"],
|
agriesma@338
|
300 |
("Diff.thy","differentiate_on_R"));
|
agriesma@338
|
301 |
StdinSML 1 1 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
302 |
(*FormKF (~10,Protect,0,Nundef,"#3 + #2 * x")*)
|
agriesma@338
|
303 |
(* 25.4.01: remove Error with NotAppl
|
agriesma@338
|
304 |
StdinSML 1 1 ~1 ~1 (RuleFK (Rewrite_Set "Test_simplify"));
|
agriesma@338
|
305 |
StdinSML 1 1 ~2 ~2 (RuleFK (Rewrite_Inst (["(bdv,x)"],("diff_sum",""))));
|
agriesma@338
|
306 |
StdinSML 1 1 ~3 ~3 (RuleFK (Rewrite_Inst (["(bdv,x)"],("diff_const",""))));
|
agriesma@338
|
307 |
uncaught exception TYPE ...
|
agriesma@338
|
308 |
|
agriesma@338
|
309 |
val uI=1;val pI=1;val acI= ~3;val cI= ~3;
|
agriesma@338
|
310 |
val dat=(RuleFK (Rewrite_Inst (["(bdv,x)"],("diff_const",""))));;
|
agriesma@338
|
311 |
*)
|
agriesma@338
|
312 |
|
agriesma@338
|
313 |
|
agriesma@338
|
314 |
(*18.4.01 tests mit speed*)
|
agriesma@338
|
315 |
|
agriesma@338
|
316 |
StdinSML 1 1 ~1 ~1 (Command Accept);
|
agriesma@338
|
317 |
|
agriesma@338
|
318 |
StdinSML 1 1 ~2 ~2 (Command SpeedPlus);
|
agriesma@338
|
319 |
StdinSML 1 1 ~2 ~2 (Command Accept);
|
agriesma@338
|
320 |
|
agriesma@338
|
321 |
StdinSML 1 1 ~4 ~4 (Command SpeedMinus);
|
agriesma@338
|
322 |
StdinSML 1 1 ~4 ~4 (Command Accept);
|
agriesma@338
|
323 |
|
agriesma@338
|
324 |
StdinSML 1 1 ~5 ~5 (Command Accept);
|
agriesma@338
|
325 |
(**)
|
agriesma@338
|
326 |
val xxx = StdinSML 1 1 ~6 ~6 (Command Auto);
|
agriesma@338
|
327 |
if xxx = ("@@@@@begin@@@@@",1,1,~6,[],
|
agriesma@338
|
328 |
[FormKF (~7,Protect,1,Nundef,"2 * x ^^^ (2 - 1) + 3 * d_d x x + 0"),
|
agriesma@338
|
329 |
FormKF (~8,Protect,1,Nundef,"2 * x ^^^ (2 - 1) + 3 * 1 + 0"),
|
agriesma@338
|
330 |
FormKF (~9,Protect,1,Nundef,"3 + 2 * x"),
|
agriesma@338
|
331 |
FormKF (~10,Protect,0,Nundef,"3 + 2 * x"),
|
agriesma@338
|
332 |
Request "start another example",End_Proof],"@@@@@end@@@@@")
|
agriesma@338
|
333 |
then () else writeln "new behaviour in example d_d x (x ^^^ 2 + 3 * x + 4), SpeedPlus/Minus";
|
agriesma@338
|
334 |
|
agriesma@338
|
335 |
|
agriesma@338
|
336 |
" ----------------- d_d x (x ^^^ 2 + x + 1 / x ^^^ 2) ----------------- ";
|
agriesma@338
|
337 |
proofs:= []; dials:=([],[],[]);
|
agriesma@338
|
338 |
StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
339 |
StdinSML 1 0 0 0 New_Proof;
|
agriesma@338
|
340 |
val fmz = ["functionTerm (d_d x (x ^^^ 2 + x + 1 / x ^^^ 2))",
|
agriesma@338
|
341 |
"differentiateFor x","derivative f_'_"];
|
agriesma@338
|
342 |
val (dI',pI',mI') =
|
agriesma@338
|
343 |
("Diff.thy",["derivative_of","function"],
|
agriesma@338
|
344 |
("Diff.thy","differentiate_on_R"));
|
agriesma@338
|
345 |
StdinSML 1 1 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
346 |
StdinSML 1 1 ~1 ~1 (Command Auto);
|
agriesma@338
|
347 |
(*FormKF (~12,Protect,0,Nundef,"#1 + (#2 * x + #-2 * x ^^^ #-3)")*)
|
agriesma@338
|
348 |
|
agriesma@338
|
349 |
" ----------------- Schalk III S.62 Nr. 34a) --------- ";
|
agriesma@338
|
350 |
proofs:= []; dials:=([],[],[]);
|
agriesma@338
|
351 |
StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
352 |
StdinSML 1 0 0 0 New_Proof;
|
agriesma@338
|
353 |
val fmz = ["functionTerm (d_d x ((5 * x ^^^ 2 - 2) * (7 * x + 1)))",
|
agriesma@338
|
354 |
"differentiateFor x","derivative f_'_"];
|
agriesma@338
|
355 |
val (dI',pI',mI') =
|
agriesma@338
|
356 |
("Diff.thy",["derivative_of","function"],
|
agriesma@338
|
357 |
("Diff.thy","differentiate_on_R"));
|
agriesma@338
|
358 |
StdinSML 1 1 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
359 |
StdinSML 1 1 ~1 ~1 (Command Auto);
|
agriesma@338
|
360 |
|
agriesma@338
|
361 |
|
agriesma@338
|
362 |
" ----------------- Schalk III S.62 Nr. 51a) --------- ";
|
agriesma@338
|
363 |
proofs:= []; dials:=([],[],[]);
|
agriesma@338
|
364 |
StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
365 |
StdinSML 1 0 0 0 New_Proof;
|
agriesma@338
|
366 |
val fmz = ["functionTerm (d_d x ((x+1)/(x- 1)))",
|
agriesma@338
|
367 |
"differentiateFor x","derivative f_'_"];
|
agriesma@338
|
368 |
val (dI',pI',mI') =
|
agriesma@338
|
369 |
("Diff.thy",["derivative_of","function"],
|
agriesma@338
|
370 |
("Diff.thy","differentiate_on_R"));
|
agriesma@338
|
371 |
StdinSML 1 1 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
372 |
StdinSML 1 1 ~1 ~1 (Command Auto);
|
agriesma@338
|
373 |
(*"#-1 // (#1 + (x ^^^ #2 + #-2 * x)) +\n(x // (#1 + (x ^^^ #2 + #-2 * x)) +\n (#1 + x) * (#-1 // (#1 + (x ^^^ #2 + #-2 * x))))" ----- simplification !?!*)
|
agriesma@338
|
374 |
|
agriesma@338
|
375 |
|
agriesma@338
|
376 |
" ----------------- Schalk III S.144 Nr. 408b) --------- ";
|
agriesma@338
|
377 |
proofs:= []; dials:=([],[],[]);
|
agriesma@338
|
378 |
StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
379 |
StdinSML 1 0 0 0 New_Proof;
|
agriesma@338
|
380 |
val fmz = ["functionTerm (d_d x (x ^^^ 2 * (ln ((sin x) ^^^ 2))))",
|
agriesma@338
|
381 |
"differentiateFor x","derivative f_'_"];
|
agriesma@338
|
382 |
val (dI',pI',mI') =
|
agriesma@338
|
383 |
("Diff.thy",["derivative_of","function"],
|
agriesma@338
|
384 |
("Diff.thy","differentiate_on_R"));
|
agriesma@338
|
385 |
StdinSML 1 1 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
386 |
StdinSML 1 1 ~1 ~1 (Command Auto);
|
agriesma@338
|
387 |
(*"#2 * (x * ln (sin x ^^^ #2)) +\ncos x * (sin x * (x ^^^ #2 * (#2 // sin x ^^^ #2)))"---- cancel sin x !!!*)
|
agriesma@338
|
388 |
|
agriesma@338
|
389 |
|
agriesma@338
|
390 |
" ----------------- Schalk III S.137 Nr. 359g) --------- ";
|
agriesma@338
|
391 |
proofs:= []; dials:=([],[],[]);
|
agriesma@338
|
392 |
StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
393 |
StdinSML 1 0 0 0 New_Proof;
|
agriesma@338
|
394 |
val fmz = ["functionTerm (d_d x (sqrt (cos (3*x))))",
|
agriesma@338
|
395 |
"differentiateFor x","derivative f_'_"];
|
agriesma@338
|
396 |
val (dI',pI',mI') =
|
agriesma@338
|
397 |
("Diff.thy",["derivative_of","function"],
|
agriesma@338
|
398 |
("Diff.thy","differentiate_on_R"));
|
agriesma@338
|
399 |
StdinSML 1 1 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
400 |
StdinSML 1 1 ~1 ~1 (Command Auto);
|