neuper@37906
|
1 |
(* tests on systems of equations over the reals
|
neuper@37906
|
2 |
author: Walther Neuper 050905
|
neuper@37906
|
3 |
(c) due to copyright terms
|
neuper@37906
|
4 |
|
neuper@37906
|
5 |
use"../smltest/IsacKnowledge/system.sml";
|
neuper@37906
|
6 |
*)
|
neuper@37906
|
7 |
val thy = EqSystem.thy;
|
neuper@37906
|
8 |
|
neuper@37906
|
9 |
"-----------------------------------------------------------------";
|
neuper@37906
|
10 |
"table of contents -----------------------------------------------";
|
neuper@37906
|
11 |
"-----------------------------------------------------------------";
|
neuper@37906
|
12 |
"----------- normalize system ------------------------------------";
|
neuper@37906
|
13 |
"----------- me --------------------------------------------------";
|
neuper@37906
|
14 |
"-----------------------------------------------------------------";
|
neuper@37906
|
15 |
"-----------------------------------------------------------------";
|
neuper@37906
|
16 |
"-----------------------------------------------------------------";
|
neuper@37906
|
17 |
|
neuper@37906
|
18 |
|
neuper@37906
|
19 |
"----------- normalize system ------------------------------------";
|
neuper@37906
|
20 |
"----------- normalize system ------------------------------------";
|
neuper@37906
|
21 |
"----------- normalize system ------------------------------------";
|
neuper@37906
|
22 |
val t = str2term "[0 = c*0 + -1*q_0*(0^^^2 / 2) + c_2,\
|
neuper@37906
|
23 |
\ 0 = c*L + -1*q_0*(L^^^2 / 2) + c_2]";
|
neuper@37926
|
24 |
val SOME (t,_) = rewrite_set_ thy false norm_Poly t;
|
neuper@37906
|
25 |
if term2str t =
|
neuper@37906
|
26 |
"[0 = -1 * q_0 * (0 / 2) + c_2, 0 = L * c + -1 * q_0 * (L ^^^ 2 / 2) + c_2]"
|
neuper@38031
|
27 |
then () else error "system.sml, diff.behav. in norm_Poly";
|
neuper@37906
|
28 |
|
neuper@37906
|
29 |
val t = str2term "[0 = c*0 + -1*q_0*(0^^^2 / 2) + c_2,\
|
neuper@37906
|
30 |
\ 0 = c*L + -1*q_0*(L^^^2 / 2) + c_2]";
|
neuper@37926
|
31 |
val SOME (t,_) = rewrite_set_ thy false norm_Rational t;
|
neuper@37906
|
32 |
if term2str t =
|
neuper@37906
|
33 |
"[0 = c_2, 0 = (2 * c_2 + 2 * L * c + -1 * L ^^^ 2 * q_0) / 2]"
|
neuper@38031
|
34 |
then () else error "system.sml, diff.behav. in norm_Rational";
|
neuper@37906
|
35 |
|
neuper@37906
|
36 |
|
neuper@37906
|
37 |
val t = str2term "nth_ 1 [0 = c*0 + -1*q_0*(0^^^2 / 2) + c_2,\
|
neuper@37906
|
38 |
\ 0 = c*L + -1*q_0*(L^^^2 / 2) + c_2]";
|
neuper@37926
|
39 |
val SOME (t,_) = rewrite_set_ thy false list_rls t;
|
neuper@37906
|
40 |
if term2str t = "0 = c * 0 + -1 * q_0 * (0 ^^^ 2 / 2) + c_2"
|
neuper@38031
|
41 |
then () else error "system.sml, list_rls";
|
neuper@37906
|
42 |
|
neuper@37906
|
43 |
|
neuper@37906
|
44 |
"----------- me --------------------------------------------------";
|
neuper@37906
|
45 |
"----------- me --------------------------------------------------";
|
neuper@37906
|
46 |
"----------- me --------------------------------------------------";
|
neuper@37906
|
47 |
val fmz = ["equalities [0 = c_2 + c * 0 + -1 * q_0 / 2 * 0 ^^^ 2, 0 = c_2 + c * L + -1 * q_0 / 2 * L ^^^ 2]",
|
neuper@37906
|
48 |
"solveForVars [c, c_2]", "solution ss___"];
|
neuper@37906
|
49 |
val (dI',pI',mI') =
|
neuper@37991
|
50 |
("Biegelinie",["normalize","2x2","linear","system"],
|
neuper@37906
|
51 |
["EqSystem","normalize","2x2"]);
|
neuper@37906
|
52 |
val p = e_pos'; val c = [];
|
neuper@37906
|
53 |
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
|
neuper@37906
|
54 |
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
|
neuper@37906
|
55 |
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
|
neuper@37906
|
56 |
val (p,_,f,nxt,_,pt) = me nxt p c pt;
|
neuper@37991
|
57 |
case nxt of (_, Specify_Theory "Biegelinie") => ()
|
neuper@38031
|
58 |
| _ => error "system.sml diff.behav.in me --1";
|
neuper@37906
|
59 |
val (p,_,f,nxt,_,pt) = me nxt p c pt;
|
neuper@37906
|
60 |
val (p,_,f,nxt,_,pt) = me nxt p c pt;
|
neuper@37906
|
61 |
val (p,_,f,nxt,_,pt) = me nxt p c pt;
|
neuper@37906
|
62 |
case nxt of (_, Apply_Method ["EqSystem", "normalize", "2x2"]) => ()
|
neuper@38031
|
63 |
| _ => error "system.sml diff.behav.in me --2";
|
neuper@37906
|
64 |
val (p,_,f,nxt,_,pt) = me nxt p c pt; f2str f;
|
neuper@37906
|
65 |
val (p,_,f,nxt,_,pt) = me nxt p c pt; f2str f;
|
neuper@37906
|
66 |
val (p,_,f,nxt,_,pt) = me nxt p c pt; f2str f;
|
neuper@37906
|
67 |
val (p,_,f,nxt,_,pt) = me nxt p c pt; f2str f;
|
neuper@37906
|
68 |
val (p,_,f,nxt,_,pt) = me nxt p c pt; f2str f;
|
neuper@37906
|
69 |
|
neuper@37991
|
70 |
case nxt of (_, Subproblem ("Biegelinie", ["triangular", "2x2",
|
neuper@37906
|
71 |
"linear", "system"])) => ()
|
neuper@38031
|
72 |
| _ => error "system.sml diff.behav.in me --3";
|
neuper@37906
|
73 |
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
|
neuper@37906
|
74 |
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
|
neuper@37906
|
75 |
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
|
neuper@37906
|
76 |
val (p,_,f,nxt,_,pt) = me nxt p c pt;
|
neuper@37991
|
77 |
case nxt of (_, Specify_Theory "Biegelinie") => ()
|
neuper@38031
|
78 |
| _ => error "system.sml diff.behav.in me --1";
|
neuper@37906
|
79 |
val (p,_,f,nxt,_,pt) = me nxt p c pt;
|
neuper@37906
|
80 |
val (p,_,f,nxt,_,pt) = me nxt p c pt;
|
neuper@37906
|
81 |
val (p,_,f,nxt,_,pt) = me nxt p c pt;
|
neuper@37906
|
82 |
case nxt of (_, Apply_Method ["EqSystem", "normalize", "2x2"]) => ()
|
neuper@38031
|
83 |
| _ => error "system.sml diff.behav.in me --2";
|
neuper@37906
|
84 |
val (p,_,f,nxt,_,pt) = me nxt p c pt; f2str f;
|
neuper@37906
|
85 |
val (p,_,f,nxt,_,pt) = me nxt p c pt; f2str f;
|
neuper@37906
|
86 |
val (p,_,f,nxt,_,pt) = me nxt p c pt; f2str f;
|
neuper@37906
|
87 |
val (p,_,f,nxt,_,pt) = me nxt p c pt; f2str f;
|
neuper@37906
|
88 |
val (p,_,f,nxt,_,pt) = me nxt p c pt; f2str f;
|
neuper@37906
|
89 |
|
neuper@37906
|
90 |
|
neuper@37906
|
91 |
(*---
|
neuper@37906
|
92 |
WN060421 stopped as soon as exp_IsacCore_Equ_Sys_Lin_No-1.xml worked ...
|
neuper@37906
|
93 |
|
neuper@37906
|
94 |
if f2str f = "" then ()
|
neuper@38031
|
95 |
else error "system.sml diff.behav.in me --99";
|
neuper@37906
|
96 |
case nxt of ("End_Proof'", End_Proof') => ()
|
neuper@38031
|
97 |
| _ => error "system.sml diff.behav.in me --99";
|
neuper@37906
|
98 |
|
neuper@37906
|
99 |
print_depth 11;nxt;print_depth 3;
|
neuper@37906
|
100 |
---*)
|
neuper@37906
|
101 |
(*
|
neuper@37906
|
102 |
use"../smltest/IsacKnowledge/system.sml";
|
neuper@37906
|
103 |
*)
|