agriesma@338
|
1 |
(* use"test-FE-KE.sml";
|
agriesma@338
|
2 |
W.N.16.4.00
|
agriesma@338
|
3 |
*)
|
agriesma@338
|
4 |
|
agriesma@338
|
5 |
Compiler.Control.Print.printDepth:=4; (*4 default*)
|
agriesma@338
|
6 |
|
agriesma@338
|
7 |
(*#########################################################*)
|
agriesma@338
|
8 |
" _________________ stdin: tutor active_________________ ";
|
agriesma@338
|
9 |
proofs:=[]; dials:=([],[],[]);
|
agriesma@338
|
10 |
(*dmts:= [(PutRuleRes, Tt, Skip),(PutRule, St, SkipNo)];*)
|
agriesma@338
|
11 |
|
agriesma@338
|
12 |
StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
13 |
StdinSML 1 0 0 0 New_Proof;
|
agriesma@338
|
14 |
val fmz = ["equality (sqrt(9+4*x)=sqrt x + sqrt(5+x))",
|
agriesma@338
|
15 |
"solveFor x","errorBound (eps=0)",
|
agriesma@338
|
16 |
"solutions L"];
|
agriesma@338
|
17 |
val (dI',pI',mI') =
|
agriesma@338
|
18 |
("Script.thy",["sqroot-test","univariate","equation"],
|
agriesma@338
|
19 |
("Script.thy","sqrt-equ-test"));
|
agriesma@338
|
20 |
"--- s1 ---";
|
agriesma@338
|
21 |
val (_,uI,pI,acI,cI,dats,_)=StdinSML 1 1 1 1 (*@@@@@begin !!!!!*)
|
agriesma@338
|
22 |
(RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
23 |
"--- s2 ---";
|
agriesma@338
|
24 |
StdinSML 1 1 ~1 ~1 (Command Accept);
|
agriesma@338
|
25 |
(*RuleFK (Add_Given "equality (sqrt (#9 + #4 * x) = sqrt x + sqrt (#5 + x))"*)
|
agriesma@338
|
26 |
"--- s3 ---";
|
agriesma@338
|
27 |
StdinSML 1 1 ~2 ~2 (Command Accept);
|
agriesma@338
|
28 |
(*RuleFK (Add_Given "solveFor x")*)
|
agriesma@338
|
29 |
"--- s4 ---";
|
agriesma@338
|
30 |
StdinSML 1 1 ~3 ~3 (Command Accept);
|
agriesma@338
|
31 |
(*RuleFK (Add_Given "errorBound (eps = #0)")*)
|
agriesma@338
|
32 |
"--- s5 ---";
|
agriesma@338
|
33 |
StdinSML 1 1 ~4 ~4 (Command Accept);
|
agriesma@338
|
34 |
(*RuleFK (Add_Find "solutions L")*)
|
agriesma@338
|
35 |
"--- s6 ---";
|
agriesma@338
|
36 |
StdinSML 1 1 ~5 ~5 (Command Accept);
|
agriesma@338
|
37 |
(*RuleFK (Specify_Domain "Script.thy")*)
|
agriesma@338
|
38 |
"--- s7 ---";
|
agriesma@338
|
39 |
StdinSML 1 1 ~6 ~6 (Command Accept);
|
agriesma@338
|
40 |
(*RuleFK (Specify_Problem ["sqroot-test","univariate","equation"])*)
|
agriesma@338
|
41 |
"--- s8 ---";
|
agriesma@338
|
42 |
StdinSML 1 1 ~7 ~7 (Command Accept);
|
agriesma@338
|
43 |
(*RuleFK (Specify_Method ("Script.thy","sqrt-equ-test"))*)
|
agriesma@338
|
44 |
"--- s9 ---";
|
agriesma@338
|
45 |
StdinSML 1 1 ~8 ~8 (Command Accept);
|
agriesma@338
|
46 |
(*RuleFK (Apply_Method ("Script.thy","sqrt-equ-test"))*)
|
agriesma@338
|
47 |
"--- 1 ---";
|
agriesma@338
|
48 |
StdinSML 1 1 ~9 ~9 (Command Accept);
|
agriesma@338
|
49 |
(*RuleFK (Rewrite ("square_equation_left",""))*)
|
agriesma@338
|
50 |
"--- 2 ---";
|
agriesma@338
|
51 |
StdinSML 1 1 ~10 ~10 (Command Accept);
|
agriesma@338
|
52 |
(*RuleFK (Rewrite_Set "SqRoot_simplify")*)
|
agriesma@338
|
53 |
"--- 3 ---";
|
agriesma@338
|
54 |
StdinSML 1 1 ~11 ~11 (Command Accept);
|
agriesma@338
|
55 |
(*RuleFK (Rewrite_Set "rearrange_assoc")*)
|
agriesma@338
|
56 |
"--- 4 ---";
|
agriesma@338
|
57 |
StdinSML 1 1 ~12 ~12 (Command Accept);
|
agriesma@338
|
58 |
(*RuleFK (Rewrite_Set "isolate_root")*)
|
agriesma@338
|
59 |
"--- 5 ---";
|
agriesma@338
|
60 |
StdinSML 1 1 ~13 ~13 (Command Accept);
|
agriesma@338
|
61 |
(*RuleFK (Rewrite_Set "SqRoot_simplify")*)
|
agriesma@338
|
62 |
"--- 6 ---";
|
agriesma@338
|
63 |
StdinSML 1 1 ~14 ~14 (Command Accept);
|
agriesma@338
|
64 |
(*RuleFK (Rewrite ("square_equation_left",""))*)
|
agriesma@338
|
65 |
"--- 7 ---";
|
agriesma@338
|
66 |
StdinSML 1 1 ~15 ~15 (Command Accept);
|
agriesma@338
|
67 |
(*RuleFK (Rewrite_Set "SqRoot_simplify")*)
|
agriesma@338
|
68 |
"--- 8 ---";
|
agriesma@338
|
69 |
StdinSML 1 1 ~16 ~16 (Command Accept);
|
agriesma@338
|
70 |
(*RuleFK (Rewrite_Set "norm_equation")*)
|
agriesma@338
|
71 |
"--- 9 ---";
|
agriesma@338
|
72 |
StdinSML 1 1 ~17 ~17 (Command Accept);
|
agriesma@338
|
73 |
(*RuleFK (Rewrite_Set "SqRoot_simplify")*)
|
agriesma@338
|
74 |
"--- 10 ---";
|
agriesma@338
|
75 |
StdinSML 1 1 ~18 ~18 (Command Accept);
|
agriesma@338
|
76 |
(*RuleFK (Rewrite_Set_Inst ([("bdv","x")],"isolate_bdv"))*)
|
agriesma@338
|
77 |
"--- 11 ---";
|
agriesma@338
|
78 |
StdinSML 1 1 ~19 ~19 (Command Accept);
|
agriesma@338
|
79 |
(*RuleFK (Rewrite_Set "SqRoot_simplify")*)
|
agriesma@338
|
80 |
"--- 12 ---";
|
agriesma@338
|
81 |
val (begin,uI,pI,acI,cI,dats,eend) =
|
agriesma@338
|
82 |
StdinSML 1 1 ~20 ~20 (Command Accept);
|
agriesma@338
|
83 |
(*RuleFK (Check_Postcond ("Script.thy","sqrt-equ-test"))*)
|
agriesma@338
|
84 |
|
agriesma@338
|
85 |
if (hd dats) <> (FormKF (~21,Protect,0,"[x = 4]"))
|
agriesma@338
|
86 |
then raise error "do_ + msteps input: not finished correctly"
|
agriesma@338
|
87 |
else "roo-equation, do_ + msteps input: OK";
|
agriesma@338
|
88 |
|
agriesma@338
|
89 |
"==========================================================";
|
agriesma@338
|
90 |
writeln (get_history 1 1);
|
agriesma@338
|
91 |
"==========================================================";
|
agriesma@338
|
92 |
|
agriesma@338
|
93 |
|
agriesma@338
|
94 |
|
agriesma@338
|
95 |
(*#########################################################*)
|
agriesma@338
|
96 |
" _________________ stdin: student active_________________ ";
|
agriesma@338
|
97 |
proofs:=[]; dials:=([],[],[]);
|
agriesma@338
|
98 |
(*dmts:= [(PutRuleRes, Tt, Skip),(PutRule, St, SkipNo)];*)
|
agriesma@338
|
99 |
|
agriesma@338
|
100 |
StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
101 |
StdinSML 1 0 0 0 New_Proof;
|
agriesma@338
|
102 |
val fmz = ["equality (sqrt(9+4*x)=sqrt x + sqrt(5+x))",
|
agriesma@338
|
103 |
"solveFor x","errorBound (eps=0)",
|
agriesma@338
|
104 |
"solutions L"];
|
agriesma@338
|
105 |
val (dI',pI',mI') =
|
agriesma@338
|
106 |
("Script.thy",["sqroot-test","univariate","equation"],
|
agriesma@338
|
107 |
("Script.thy","sqrt-equ-test"));
|
agriesma@338
|
108 |
"--- s1 ---";
|
agriesma@338
|
109 |
val (_,uI,pI,acI,cI,dats,_)=StdinSML 1 1 1 1
|
agriesma@338
|
110 |
(RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
111 |
"--- s2 ---";
|
agriesma@338
|
112 |
StdinSML 1 1 ~1 2 (RuleFK
|
agriesma@338
|
113 |
(Add_Given "equality (sqrt (9 + 4 * x) = sqrt x + sqrt (5 + x))"));
|
agriesma@338
|
114 |
"--- s3 ---";
|
agriesma@338
|
115 |
StdinSML 1 1 ~2 3 (RuleFK (Add_Given "solveFor x"));
|
agriesma@338
|
116 |
"--- s4 ---";
|
agriesma@338
|
117 |
StdinSML 1 1 ~3 4 (RuleFK (Add_Given "errorBound (eps = 0)"));
|
agriesma@338
|
118 |
"--- s5 ---";
|
agriesma@338
|
119 |
StdinSML 1 1 ~4 5 (RuleFK (Add_Find "solutions L"));
|
agriesma@338
|
120 |
"--- s6 ---";
|
agriesma@338
|
121 |
StdinSML 1 1 ~5 6 (RuleFK (Specify_Domain "Script.thy"));
|
agriesma@338
|
122 |
"--- s7 ---";
|
agriesma@338
|
123 |
StdinSML 1 1 ~6 7 (RuleFK
|
agriesma@338
|
124 |
(Specify_Problem ["sqroot-test","univariate","equation"]));
|
agriesma@338
|
125 |
"--- s8 ---";
|
agriesma@338
|
126 |
StdinSML 1 1 ~7 8 (RuleFK (Specify_Method ("Script.thy","sqrt-equ-test")));
|
agriesma@338
|
127 |
"--- s9 ---";
|
agriesma@338
|
128 |
StdinSML 1 1 ~8 9 (RuleFK (Apply_Method ("Script.thy","sqrt-equ-test")));
|
agriesma@338
|
129 |
"--- 1 ---";
|
agriesma@338
|
130 |
StdinSML 1 1 ~9 10 (RuleFK
|
agriesma@338
|
131 |
(Rewrite ("square_equation_left","")));
|
agriesma@338
|
132 |
"--- 2 ---";
|
agriesma@338
|
133 |
StdinSML 1 1 ~10 11 (RuleFK (Rewrite_Set "SqRoot_simplify"));
|
agriesma@338
|
134 |
"--- 3 ---";
|
agriesma@338
|
135 |
StdinSML 1 1 ~11 12 (RuleFK (Rewrite_Set "rearrange_assoc"));
|
agriesma@338
|
136 |
"--- 4 ---";
|
agriesma@338
|
137 |
StdinSML 1 1 ~12 13 (RuleFK (Rewrite_Set "isolate_root"));
|
agriesma@338
|
138 |
"--- 5 ---";
|
agriesma@338
|
139 |
StdinSML 1 1 ~13 14 (RuleFK (Rewrite_Set "SqRoot_simplify"));
|
agriesma@338
|
140 |
"--- 6 ---";
|
agriesma@338
|
141 |
StdinSML 1 1 ~14 15 (RuleFK
|
agriesma@338
|
142 |
(Rewrite ("square_equation_left","")));
|
agriesma@338
|
143 |
"--- 7 ---";
|
agriesma@338
|
144 |
StdinSML 1 1 ~15 16 (RuleFK (Rewrite_Set "SqRoot_simplify"));
|
agriesma@338
|
145 |
"--- 8 ---";
|
agriesma@338
|
146 |
StdinSML 1 1 ~16 17 (RuleFK (Rewrite_Set "norm_equation"));
|
agriesma@338
|
147 |
"--- 9 ---";
|
agriesma@338
|
148 |
StdinSML 1 1 ~17 18 (RuleFK (Rewrite_Set "SqRoot_simplify"));
|
agriesma@338
|
149 |
"--- 10 ---";
|
agriesma@338
|
150 |
StdinSML 1 1 ~18 19 (RuleFK
|
agriesma@338
|
151 |
(Rewrite_Set_Inst ([("bdv","x")],"isolate_bdv")));
|
agriesma@338
|
152 |
"--- 11 ---";
|
agriesma@338
|
153 |
StdinSML 1 1 ~19 20 (RuleFK (Rewrite_Set "SqRoot_simplify"));
|
agriesma@338
|
154 |
"--- 12 ---";
|
agriesma@338
|
155 |
val (begin,uI,pI,acI,cI,dats,eend) =
|
agriesma@338
|
156 |
StdinSML 1 1 ~20 21 (RuleFK
|
agriesma@338
|
157 |
(Check_Postcond ("Script.thy","sqrt-equ-test")));
|
agriesma@338
|
158 |
|
agriesma@338
|
159 |
if (hd dats) <> (FormKF (~21,Protect,0,"[x = 4]"))
|
agriesma@338
|
160 |
then raise error "do_ + msteps input: not finished correctly"
|
agriesma@338
|
161 |
else "roo-equation, do_ + msteps input: OK";
|
agriesma@338
|
162 |
|
agriesma@338
|
163 |
"==========================================================";
|
agriesma@338
|
164 |
writeln (get_history 1 1);
|
agriesma@338
|
165 |
"==========================================================";
|
agriesma@338
|
166 |
|
agriesma@338
|
167 |
|
agriesma@338
|
168 |
(*=========27.4.01===============================================*)
|
agriesma@338
|
169 |
proofs:= []; dials:=([],[],[]);
|
agriesma@338
|
170 |
" _________________ exampel [x=4]: Rules 4.2.01a________________ ";
|
agriesma@338
|
171 |
val (_,uI,0,0,[],[New_User],_) = StdinSML 0 0 0 0 New_User;
|
agriesma@338
|
172 |
val (_,_,pI,0,[],[New_Proof],_) = StdinSML uI 0 0 0 New_Proof;
|
agriesma@338
|
173 |
val fmz = ["equality (sqrt(9+4*x)=sqrt x + sqrt(5+x))",
|
agriesma@338
|
174 |
"solveFor x","errorBound (eps=0)",
|
agriesma@338
|
175 |
"solutions L"];
|
agriesma@338
|
176 |
val (dI',pI',mI') =
|
agriesma@338
|
177 |
("SqRoot.thy",["sqroot-test","univariate","equation"],
|
agriesma@338
|
178 |
("SqRoot.thy","squ-equ-test2"));
|
agriesma@338
|
179 |
StdinSML uI pI 1 1 (RuleFK (Init_Proof (fmz,(dI',pI',mI'))));
|
agriesma@338
|
180 |
|
agriesma@338
|
181 |
StdinSML uI pI ~1 ~1 (Command Accept);
|
agriesma@338
|
182 |
|
agriesma@338
|
183 |
StdinSML uI pI ~2 ~2 (RuleFK (Rewrite_Set "norm_equation"));
|