test/Tools/isac/Knowledge/rlang.sml
author Walther Neuper <neuper@ist.tugraz.at>
Wed, 08 Sep 2010 16:47:22 +0200
branchisac-update-Isa09-2
changeset 37991 028442673981
parent 37986 7b1d2366c191
child 38031 460c24a6a6ba
permissions -rw-r--r--
tuned src + test

find . -type f -exec sed -i s/nadd_divide_distrib/add_divide_distrib/g {} \;
find . -type f -exec sed -i s/"\.thy\""/"\""/g {} \;
find . -type f -exec sed -i s/" indexname_ord"/" Term_Ord.indexname_ord"/g {} \;
find . -type f -exec sed -i s/"(string_of_cterm o cterm_of(sign_of thy))"/"(Syntax.string_of_term (thy2ctxt thy))"/g {} \;
find . -type f -exec sed -i s/" L_"/" L_L"/g {} \;
find . -type f -exec sed -i s/" L_:"/" L_L:"/g {} \;
find . -type f -exec sed -i s/"e_;"/"e_e;"/g {} \;
find . -type f -exec sed -i s/"v_)"/"v_v)"/g {} \;
find . -type f -exec sed -i s/"v_:"/"v_v:"/g {} \;
neuper@37906
     1
(* use"../smltest/IsacKnowledge/rlang.sml";
neuper@37906
     2
   use"rlang.sml";
neuper@37906
     3
   *)
neuper@37906
     4
neuper@37906
     5
(******************************************************************
neuper@37906
     6
WN.060104 transfer marked (*E..*)examples to the exp-collection
neuper@37906
     7
 # exp_IsacCore_Equ_Uni_Poly.xml   from rlang.sml    (*EP*)   exp
neuper@37906
     8
 # exp_IsacCore_Equ_Uni_Rat.xml    from rlang.sml    (*ER*)   exp
neuper@37906
     9
 # exp_IsacCore_Equ_Uni_Root.xml   from rlang.sml    (*EO*)   exp
neuper@37906
    10
*******************************************************************)
neuper@37906
    11
neuper@37906
    12
neuper@37906
    13
neuper@37906
    14
(*WN.12.6.03: for TODOs search 'writeln', for simplification search MG*)
neuper@37906
    15
(* use"kbtest/rlang.sml";
neuper@37906
    16
   use"rlang.sml";
neuper@37906
    17
   (c) Richard Lang 2003
neuper@37906
    18
   tests over all equations implemented in his diploma thesis
neuper@37906
    19
   Elementare Gleichungen der Mittelschulmathematik in der ISAC Wissensbasis,
neuper@37906
    20
   Master's thesis, University of Technology, Graz, Austria, March 2003.
neuper@37906
    21
   created: 030228
neuper@37906
    22
   by: rlang
neuper@37906
    23
   last change: 030603
neuper@37906
    24
*)
neuper@37906
    25
(*@Book{bSchalk1,
neuper@37906
    26
  author =       {Schalk, Heinz-Christian and Binder, Christian and Fertl, Walter and 
neuper@37906
    27
                  Firneis, Friedrich and Gems, Werner and Lehner, Dieter and 
neuper@37906
    28
                  Plihal, Andreas and Würl,Manfred},
neuper@37906
    29
  title =        {Mathematik für höhere technische Lehranstalten Band I},
neuper@37906
    30
  publisher =    {Reniets Verlag},
neuper@37906
    31
  year =         {1986},
neuper@37906
    32
  note =         {Schulbuch-Nr. 942},
neuper@37906
    33
}
neuper@37906
    34
neuper@37906
    35
@Book{bSchalk2,
neuper@37906
    36
  author =       {Schalk, Heinz-Christian and Baumgartner, Gerhard and Binder, Christian and 
neuper@37906
    37
                  Eder, Hans Gerhard and Fertl, Walter and Firneis, Friedrich and 
neuper@37906
    38
                  Konstantiniuk, Peter and Plihal, Andreas and Rümmele, Goswin and 
neuper@37906
    39
                  Steinwender, Andreas and Zangerl, Nikolaus},
neuper@37906
    40
  title =        {Mathematik für höhere technische Lehranstalten Band II},
neuper@37906
    41
  publisher =    {Reniets Verlag},
neuper@37906
    42
  year =         {1987},
neuper@37906
    43
  note =         {Schulbuch-Nr. 1682},
neuper@37906
    44
}
neuper@37906
    45
*)
neuper@37906
    46
neuper@37906
    47
(* Compiler.Control.Print.printDepth:=5; (*4 default*) 
neuper@37906
    48
trace_rewrite:=true;
neuper@37906
    49
 trace_rewrite:=false;
neuper@37906
    50
 refine fmz ["univariate","equation"];
neuper@37906
    51
*)
neuper@37906
    52
"---- rlang.sml begin-----------------------------------";
neuper@37906
    53
(*-----------------  Schalk I s.86 Bsp 5 ------------------------*)
neuper@37906
    54
"Schalk I s.86 Bsp 5 (3*x - 1 - (5*x - (2 - 4*x)) = -11)";
neuper@37906
    55
"Schalk I s.86 Bsp 5 (3*x - 1 - (5*x - (2 - 4*x)) = -11)";
neuper@37906
    56
"Schalk I s.86 Bsp 5 (3*x - 1 - (5*x - (2 - 4*x)) = -11)";
neuper@37906
    57
(*EP*)
neuper@37906
    58
val fmz = ["equality (3*x - 1 - (5*x - (2 - 4*x)) = -11)",
neuper@37906
    59
	   "solveFor x","solutions L"];
neuper@37991
    60
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
    61
(*val p = e_pos'; 
neuper@37906
    62
val c = []; 
neuper@37906
    63
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
    64
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
    65
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
    66
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    67
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    68
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    69
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    70
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    71
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    72
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    73
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    74
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    75
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    76
neuper@37906
    77
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    78
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    79
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    80
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    81
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = 2]")) => ()
neuper@37906
    82
	 | _ => raise error "rlang.sml: diff.behav. in Schalk I s.86 Bsp 5 [x = 2]";
neuper@37906
    83
neuper@37906
    84
(*-----------------  Schalk I s.86 Bsp 19 ------------------------*)
neuper@37906
    85
"Schalk I s.86 Bsp 19 (x - 5)*(10 - x) = (3 - x)*(2 + x) + 2*(x + 20)";
neuper@37906
    86
"Schalk I s.86 Bsp 19 (x - 5)*(10 - x) = (3 - x)*(2 + x) + 2*(x + 20)";
neuper@37906
    87
"Schalk I s.86 Bsp 19 (x - 5)*(10 - x) = (3 - x)*(2 + x) + 2*(x + 20)";
neuper@37906
    88
(*EP*)
neuper@37906
    89
val fmz = ["equality ((x - 5)*(10 - x) = (3 - x)*(2 + x) + 2*(x + 20))",
neuper@37906
    90
	   "solveFor x","solutions L"];
neuper@37991
    91
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
    92
(*val p = e_pos'; 
neuper@37906
    93
val c = []; 
neuper@37906
    94
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
    95
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
    96
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
    97
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    98
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
    99
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   100
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   101
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   102
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   103
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   104
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   105
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   106
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   107
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   108
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   109
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   110
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   111
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = 8]")) => ()
neuper@37906
   112
	 | _ => raise error "rlang.sml: diff.behav. in Schalk I s.86 Bsp 19 [x = 8]";
neuper@37906
   113
neuper@37906
   114
(*-----------------  Schalk I s.86 Bsp 23 ------------------------*)
neuper@37906
   115
"Schalk I s.86 Bsp 19 ((2*x+5)^^^2+(3*x+4)^^^2=(13*x+2)*(x+1)+2*(15+14*x))";
neuper@37906
   116
"Schalk I s.86 Bsp 19 ((2*x+5)^^^2+(3*x+4)^^^2=(13*x+2)*(x+1)+2*(15+14*x))";
neuper@37906
   117
"Schalk I s.86 Bsp 19 ((2*x+5)^^^2+(3*x+4)^^^2=(13*x+2)*(x+1)+2*(15+14*x))";
neuper@37906
   118
(*EP*)
neuper@37906
   119
val fmz = ["equality ((2*x+5)^^^2+(3*x+4)^^^2=(13*x+2)*(x+1)+2*(15+14*x))",
neuper@37906
   120
	   "solveFor x","solutions L"];
neuper@37991
   121
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
   122
(*val p = e_pos'; 
neuper@37906
   123
val c = []; 
neuper@37906
   124
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   125
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   126
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   127
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   128
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   129
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   130
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   131
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   132
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   133
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   134
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   135
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   136
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   137
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   138
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   139
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   140
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   141
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = -9]")) => ()
neuper@37906
   142
	 | _ => raise error "rlang.sml: diff.behav. in Schalk I s.86 Bsp 23 [x = -9]";
neuper@37906
   143
neuper@37906
   144
(*-----------------  Schalk I s.86 Bsp 25 ------------------------*)
neuper@37906
   145
"Schalk I s.86 Bsp 25 ((2*x+1)^^^3+(x+1)^^^3=(2*x+1)^^^2*2*x+(x+2)^^^3+x^^^2)";
neuper@37906
   146
"Schalk I s.86 Bsp 25 ((2*x+1)^^^3+(x+1)^^^3=(2*x+1)^^^2*2*x+(x+2)^^^3+x^^^2)";
neuper@37906
   147
"Schalk I s.86 Bsp 25 ((2*x+1)^^^3+(x+1)^^^3=(2*x+1)^^^2*2*x+(x+2)^^^3+x^^^2)";
neuper@37906
   148
(*EP*)
neuper@37906
   149
val fmz = ["equality ((2*x+1)^^^3+(x+1)^^^3=(2*x+1)^^^2*2*x+(x+2)^^^3+x^^^2)",
neuper@37906
   150
	   "solveFor x","solutions L"];
neuper@37991
   151
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
   152
(*val p = e_pos'; 
neuper@37906
   153
val c = []; 
neuper@37906
   154
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   155
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   156
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   157
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   158
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   159
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   160
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   161
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   162
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   163
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   164
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   165
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   166
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   167
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   168
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   169
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   170
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   171
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = -6 / 5]")) => ()
neuper@37906
   172
	 | _ => raise error "rlang.sml: diff.behav. in Schalk I s.86 Bsp 25 [x = -6 / 5]";
neuper@37906
   173
neuper@37906
   174
(*-----------------  Schalk I s.86 Bsp 28b ------------------------*)
neuper@37906
   175
"Schalk I s.86 Bsp 28b ((3*x+5)/18 - x/2 = -((3*x - 2)/9))";
neuper@37906
   176
"Schalk I s.86 Bsp 28b ((3*x+5)/18 - x/2 = -((3*x - 2)/9))";
neuper@37906
   177
"Schalk I s.86 Bsp 28b ((3*x+5)/18 - x/2 = -((3*x - 2)/9))";
neuper@37906
   178
(*ER-2*)
neuper@37906
   179
val fmz = ["equality ((3*x+5)/18 - x/2 = -((3*x - 2)/9))",
neuper@37906
   180
	   "solveFor x","solutions L"];
neuper@37991
   181
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
   182
(*val p = e_pos'; val c = []; 
neuper@37906
   183
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   184
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   185
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   186
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   187
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   188
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   189
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   190
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   191
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   192
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   193
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   194
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   195
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   196
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   197
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   198
val (p,_,f,nxt,_,pt) = me nxt p [1] pt; f2str f;
neuper@37906
   199
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[]")) => ()
neuper@37906
   200
	 | _ => raise error "rlang.sml: diff.behav. in Schalk I s.86 Bsp 28b []";
neuper@37906
   201
neuper@37906
   202
(*WN---v *)
neuper@37906
   203
val bdv= (term_of o the o (parse thy)) "bdv";
neuper@37906
   204
val v = (term_of o the o (parse thy)) "x";
neuper@37906
   205
val t = (term_of o the o (parse thy)) "3 * x / 5";
neuper@37926
   206
val SOME (t',_) = rewrite_set_inst_ PolyEq.thy true 
neuper@37906
   207
				    [(bdv, v)] make_ratpoly_in t;
neuper@37906
   208
if term2str t' = "3 / 5 * x" then () else raise error "rlang.sml: 1";
neuper@37906
   209
neuper@37906
   210
val t = str2term "(3*x+5)/18 - x/2  - -(3*x - 2)/9 = 0";
neuper@37906
   211
val subst = [(str2term "bdv", str2term "x")];
neuper@37926
   212
val SOME (t',_) = rewrite_set_inst_ thy false subst make_ratpoly_in t;
neuper@37906
   213
if term2str t' = "1 / 18 = 0" then () else raise error "rlang.sml: 2";
neuper@37906
   214
(*WN---^ *)
neuper@37906
   215
neuper@37906
   216
(*-----------------  Schalk I s.87 Bsp 36b ------------------------*)
neuper@37906
   217
"Schalk I s.87 Bsp 36b ((17*x - 51)/9 - (-(13*x - 3)/6) + 11 -(9*x- 7)/4 = 0)";
neuper@37906
   218
"Schalk I s.87 Bsp 36b ((17*x - 51)/9 - (-(13*x - 3)/6) + 11 -(9*x- 7)/4 = 0)";
neuper@37906
   219
"Schalk I s.87 Bsp 36b ((17*x - 51)/9 - (-(13*x - 3)/6) + 11 -(9*x- 7)/4 = 0)";
neuper@37906
   220
(*ER-1*)
neuper@37906
   221
val fmz = ["equality ((17*x - 51)/9 - (-(13*x - 3)/6) + 11 - (9*x - 7)/4 = 0)",
neuper@37906
   222
	   "solveFor x","solutions L"];
neuper@37991
   223
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
   224
(*val p = e_pos'; 
neuper@37906
   225
val c = []; 
neuper@37906
   226
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   227
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   228
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   229
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   230
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   231
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   232
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   233
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   234
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   235
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   236
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   237
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   238
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   239
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   240
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   241
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   242
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = -237 / 65]")) => ()
neuper@37906
   243
	 | _ => raise error "rlang.sml: diff.behav. in Schalk I s.86 Bsp 36b [x = -237 / 65]";
neuper@37906
   244
neuper@37906
   245
neuper@37906
   246
(*WN---v *)
neuper@37906
   247
val t = str2term "(17*x - 51)/9 - (-(13*x - 3)/6) + 11 - (9*x - 7)/4 = 0";
neuper@37906
   248
val subst = [(str2term "bdv", str2term "x")];
neuper@37926
   249
val SOME (t',_) = rewrite_set_inst_ thy false subst make_ratpoly_in t;
neuper@37906
   250
term2str t';
neuper@37906
   251
if term2str t' = "79 / 12 + 65 / 36 * x = 0" then () 
neuper@37906
   252
else raise error "rlang.sml: 3";
neuper@37906
   253
(*WN---^ *)
neuper@37906
   254
neuper@37906
   255
neuper@37906
   256
(*-----------------  Schalk I s.87 Bsp 38b ------------------------*)
neuper@37906
   257
"Schalk I s.87 Bsp 38b (-(2/x) + 3/(2*x) - 4/(3*x) + 5/(4*x) + 6/(5*x) =65/8)";
neuper@37906
   258
"Schalk I s.87 Bsp 38b (-(2/x) + 3/(2*x) - 4/(3*x) + 5/(4*x) + 6/(5*x) =65/8)";
neuper@37906
   259
"Schalk I s.87 Bsp 38b (-(2/x) + 3/(2*x) - 4/(3*x) + 5/(4*x) + 6/(5*x) =65/8)";
neuper@37906
   260
(*ER-3*)
neuper@37906
   261
val fmz = ["equality (-2/x + 3/(2*x) - 4/(3*x) + 5/(4*x) + 6/(5*x) = 65/8)",
neuper@37906
   262
	   "solveFor x","solutions L"];
neuper@37991
   263
val (dI',pI',mI') = ("RatEq",["univariate","equation"],["no_met"]);
neuper@37906
   264
(*val p = e_pos'; 
neuper@37906
   265
val c = []; 
neuper@37906
   266
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   267
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   268
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   269
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   270
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   271
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   272
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   273
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   274
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   275
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   276
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   277
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   278
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   279
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   280
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   281
if f = Form' (FormKF (~1, EdUndef, 0, Nundef, "296 + -3900 * x = 0")) then ()
neuper@37906
   282
else raise error "rlang.sml: diff.behav. in Schalk I s.87 Bsp 38b";
neuper@37906
   283
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   284
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   285
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   286
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   287
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   288
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   289
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   290
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   291
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   292
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   293
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = 74 / 975]")) => ()
neuper@37906
   294
	 | _ => raise error "rlang.sml: diff.behav. in Schalk I s.86 Bsp 38b [x = 74 / 975]";
neuper@37906
   295
neuper@37906
   296
(*-----------------  Schalk I s.87 Bsp 40b ------------------------*)
neuper@37906
   297
"Schalk I s.87 Bsp 40b ((x+3)/(2*x - 4)=3)";
neuper@37906
   298
"Schalk I s.87 Bsp 40b ((x+3)/(2*x - 4)=3)";
neuper@37906
   299
"Schalk I s.87 Bsp 40b ((x+3)/(2*x - 4)=3)";
neuper@37906
   300
(*ER-4*)
neuper@37906
   301
val fmz = ["equality ((x+3)/(2*x - 4)=3)",
neuper@37906
   302
	   "solveFor x","solutions L"];
neuper@37991
   303
val (dI',pI',mI') = ("RatEq",["univariate","equation"],["no_met"]);
neuper@37906
   304
(*val p = e_pos'; 
neuper@37906
   305
val c = []; 
neuper@37906
   306
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   307
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   308
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   309
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   310
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   311
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   312
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   313
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   314
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   315
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   316
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   317
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   318
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   319
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   320
val (p,_,f,nxt,_,pt) = me nxt p [1] pt; f2str f;
neuper@37906
   321
(*val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   322
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;*)
neuper@37906
   323
if f = Form' (FormKF (~1, EdUndef, 0, Nundef, "15 + -5 * x = 0")) then ()
neuper@37906
   324
else raise error "rlang.sml: diff.behav. in Schalk I s.87 Bsp 40b";
neuper@37906
   325
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   326
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   327
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   328
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   329
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   330
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   331
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   332
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   333
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   334
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = 3]")) => ()
neuper@37906
   335
	 | _ => raise error "rlang.sml: diff.behav. in Schalk I s.87 Bsp 40b [x = 3]";
neuper@37906
   336
neuper@37906
   337
neuper@37906
   338
(*-----------------  Schalk I s.87 Bsp 44a ------------------------*)
neuper@37906
   339
"Schalk I s.87 Bsp 44a ((1/2+(5*x)/2)^^^2 -((13*x)/2- 5/2)^^^2 -(6*x)^^^2+29)";
neuper@37906
   340
"Schalk I s.87 Bsp 44a ((1/2+(5*x)/2)^^^2 -((13*x)/2- 5/2)^^^2 -(6*x)^^^2+29)";
neuper@37906
   341
"Schalk I s.87 Bsp 44a ((1/2+(5*x)/2)^^^2 -((13*x)/2- 5/2)^^^2 -(6*x)^^^2+29)";
neuper@37906
   342
(*ER-5*)
neuper@37906
   343
val fmz = ["equality ((1/2 + (5*x)/2)^^^2 - ((13*x)/2 - 5/2)^^^2 = -1*(6*x)^^^2 + 29)",
neuper@37906
   344
	   "solveFor x","solutions L"];
neuper@37991
   345
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
   346
(*val p = e_pos'; 
neuper@37906
   347
val c = []; 
neuper@37906
   348
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   349
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   350
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   351
(*trace_rewrite:=true;
neuper@37906
   352
*)
neuper@37906
   353
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   354
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   355
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   356
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   357
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   358
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   359
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   360
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   361
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   362
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   363
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   364
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   365
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   366
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   367
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = 1]")) => ()
neuper@37906
   368
	 | _ => raise error "rlang.sml: diff.behav. in Schalk I s.87 Bsp 44a [x = 1]";
neuper@37906
   369
neuper@37906
   370
(*WN---v *)
neuper@37906
   371
val t = str2term "(1/2 + (5*x)/2)^^^2 - ((13*x)/2 - 5/2)^^^2 - (6*x)^^^2 + 29";
neuper@37906
   372
val subst = [(str2term "bdv", str2term "x")];
neuper@37926
   373
val SOME (t',_) = rewrite_set_inst_ thy false subst make_ratpoly_in t;
neuper@37906
   374
if term2str t' = "23 + 35 * x + -72 * x ^^^ 2" then () 
neuper@37906
   375
else raise error "rlang.sml: 4";
neuper@37906
   376
neuper@37906
   377
val t = str2term "(1/2 + (5*x)/2)^^^2 - ((13*x)/2 - 5/2)^^^2 + (6*x)^^^2 - 29";
neuper@37906
   378
val subst = [(str2term "bdv", str2term "x")];
neuper@37926
   379
val SOME (t',_) = rewrite_set_inst_ thy false subst make_ratpoly_in t;
neuper@37906
   380
if term2str t' = "-35 + 35 * x" then () 
neuper@37906
   381
else raise error "rlang.sml: 4.1";
neuper@37906
   382
(*WN---^ *)
neuper@37906
   383
neuper@37906
   384
(*-----------------  Schalk I s.87 Bsp 52a ------------------------*)
neuper@37906
   385
"Schalk I s.87 Bsp 52a ((5*x)/(x - 2) - x/(x+2)=4)";
neuper@37906
   386
"Schalk I s.87 Bsp 52a ((5*x)/(x - 2) - x/(x+2)=4)";
neuper@37906
   387
"Schalk I s.87 Bsp 52a ((5*x)/(x - 2) - x/(x+2)=4)";
neuper@37906
   388
(*ER-6*)
neuper@37906
   389
val fmz = ["equality ((5*x)/(x - 2) - x/(x+2)=4)",
neuper@37906
   390
	   "solveFor x","solutions L"];
neuper@37991
   391
val (dI',pI',mI') = ("RatEq",["univariate","equation"],["no_met"]);
neuper@37906
   392
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   393
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   394
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   395
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   396
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   397
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   398
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   399
 (*"12 * x + 4 * x ^^^ 2 = 4 * (-4 + x ^^^ 2)",Subproblem["normalize", "poly*)
neuper@37906
   400
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   401
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   402
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   403
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   404
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   405
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   406
if f = Form' (FormKF (~1, EdUndef, 0, Nundef, "16 + 12 * x = 0")) then ()
neuper@37906
   407
else raise error "rlang.sml: diff.behav. in Schalk I s.87 Bsp 52a";
neuper@37906
   408
            (*Subproblem["degree_1", "polynomial", "univariate", "equation"]*)
neuper@37906
   409
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   410
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   411
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   412
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   413
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   414
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   415
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   416
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   417
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   418
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = -4 / 3]")) => ()
neuper@37906
   419
	 | _ => raise error "rlang.sml: diff.behav. in  Schalk I s.87 Bsp 52a [x = -4 / 3]";
neuper@37906
   420
neuper@37906
   421
(*-----------------  Schalk I s.87 Bsp 55b ------------------------*)
neuper@37906
   422
"Schalk I s.87 Bsp 55b (x/(x^^^2 - 6*x+9) - 1/(x^^^2 - 3*x) =1/x)";
neuper@37906
   423
"Schalk I s.87 Bsp 55b (x/(x^^^2 - 6*x+9) - 1/(x^^^2 - 3*x) =1/x)";
neuper@37906
   424
"Schalk I s.87 Bsp 55b (x/(x^^^2 - 6*x+9) - 1/(x^^^2 - 3*x) =1/x)";
neuper@37906
   425
(*ER-7*)
neuper@37906
   426
val fmz = ["equality (x/(x^^^2 - 6*x+9) - 1/(x^^^2 - 3*x) =1/x)",
neuper@37906
   427
	   "solveFor x","solutions L"];
neuper@37991
   428
val (dI',pI',mI') = ("RatEq",["univariate","equation"],["no_met"]);
neuper@37906
   429
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   430
(*val nxt = ("Model_Problem",Model_Problem["rational","univariate","equation"*)
neuper@37906
   431
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   432
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   433
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   434
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   435
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   436
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   437
(*//me's dropped !val it = ["9 * x + -6 * x ^^^ 2 + 1 * x ^^^ 3 ~= 0","x ~= 0"]
neuper@37906
   438
"(3 + -1 * x + 1 * x ^^^ 2) * x = 1 * (9 * x + -6 * x ^^^ 2 + 1 * x ^^^3)"))
neuper@37906
   439
WN: Grad hoeher      ~~~~~~~~~~~~  als notwendig                   ~~~~~~~~*)
neuper@37906
   440
(* nxt =Model_Problem ["normalize","polynomial","univariate","equation"])*)
neuper@37906
   441
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   442
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   443
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   444
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   445
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   446
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   447
(*val (p,_,f,nxt,_,pt) = me nxt p [1] pt; 040209 MGs norm_Rational*)
neuper@37991
   448
(* val nxt = Subproblem ("PolyEq",["polynomial","univariate","equation"])*)
neuper@37906
   449
if f= Form' (FormKF (~1, EdUndef, 0, Nundef, "-6 * x + 5 * x ^^^ 2 = 0"))then()
neuper@37906
   450
else raise error "rlang.sml: diff.behav. in Schalk I s.87 Bsp 55b";
neuper@37906
   451
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   452
(*nxt=Model_Problem["bdv_only","degree_2","polynomial","univariate","equation*)
neuper@37906
   453
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   454
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   455
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   456
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   457
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   458
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   459
(*val f = Form' (FormKF (~1,EdUndef,3,Nundef,"x = 0 | x = 6 / 5")) : mout
neuper@37906
   460
val nxt = ("Or_to_List",Or_to_List) *)
neuper@37906
   461
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   462
(*val f = Form' (FormKF (~1,EdUndef,3,Nundef,"[x = 0, x = 6 / 5]")) : mout
neuper@37906
   463
val nxt = ("Check_elementwise",Check_elementwise "Assumptions")
neuper@37906
   464
get_assumptions pt (fst p);
neuper@37906
   465
val it = [] : string list ... correct for this subproblem !*)
neuper@37906
   466
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   467
(*val p = ([6,5,5],Res) : pos'
neuper@37906
   468
val f = Form' (FormKF (~1,EdUndef,3,Nundef,"[x = 0, x = 6 / 5]")) : mout
neuper@37906
   469
nxt=Check_Postcond ["bdv_only","degree_2","polynomial","univariate","equation*)
neuper@37906
   470
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   471
(*val p = ([6,5],Res) : pos'
neuper@37906
   472
val f = Form' (FormKF (~1,EdUndef,2,Nundef,"[x = 0, x = 6 / 5]")) : mout
neuper@37906
   473
val nxt =Check_Postcond ["normalize","polynomial","univariate","equation"])*)
neuper@37906
   474
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   475
(*val p = ([6],Res) : pos'
neuper@37906
   476
val f = Form' (FormKF (~1,EdUndef,1,Nundef,"[x = 0, x = 6 / 5]")) : mout
neuper@37906
   477
val nxt = ("Check_elementwise",Check_elementwise "Assumptions")*)
neuper@37906
   478
val [(aaa,ppp)] = get_assumptions_ pt p;
neuper@37906
   479
if term2str aaa = "9 * x + -6 * x ^^^ 2 + x ^^^ 3 ~= 0" then ()
neuper@37906
   480
else raise error "rlang.sml: diff.behav. in I s.87 Bsp 55b [x = 6 / 5], asms";
neuper@37906
   481
(*WN060717 unintentionally changed some rls/ord while 
neuper@37906
   482
     completing knowl. for thes2file...
neuper@37906
   483
if term2str aaa = "9 * x + (x ^^^ 3 + -6 * x ^^^ 2) ~= 0" then ()
neuper@37906
   484
else raise error "rlang.sml: diff.behav. in I s.87 Bsp 55b [x = 6 / 5], asms";
neuper@37906
   485
.... but it became even better*)
neuper@37906
   486
neuper@37906
   487
(*22.10.03:
neuper@37906
   488
val it = "9 * x + (x ^^^ 3 + -6 * x ^^^ 2) ~= 0" : string;
neuper@37906
   489
  before 22.10.03:
neuper@37906
   490
val it = ["9 * x + -6 * x ^^^ 2 + 1 * x ^^^ 3 ~= 0","x ~= 0"]
neuper@37906
   491
> val subs = [(str2term "x", str2term "0")];
neuper@37906
   492
> val pred = str2term "9 * x + -6 * x ^^^ 2 + 1 * x ^^^ 3 ~= 0 & x ~= 0";
neuper@37906
   493
> eval_true thy [subst_atomic subs pred] rateq_erls;
neuper@37906
   494
val it = false : bool 
neuper@37906
   495
> val subs = [(str2term "x", str2term "6 / 5")];
neuper@37906
   496
> val pred = str2term "9 * x + -6 * x ^^^ 2 + 1 * x ^^^ 3 ~= 0 & x ~= 0";
neuper@37906
   497
> eval_true thy [subst_atomic subs pred] rateq_erls;
neuper@37906
   498
val it = true : bool*)
neuper@37906
   499
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   500
(*val p = ([7],Res) : pos'
neuper@37906
   501
val f = Form' (FormKF (~1,EdUndef,1,Nundef,"[x = 6 / 5]")) : mout
neuper@37906
   502
val nxt =Check_Postcond ["rational","univariate","equation"])        *)
neuper@37906
   503
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   504
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = 6 / 5]")) => ()
neuper@37906
   505
	| _ => raise error "rlang.sml: diff.behav. in  Schalk I s.87 Bsp 55b [x = 6 / 5]";
neuper@37906
   506
neuper@37906
   507
(*-----------------  Schalk I s.88 Bsp 64c ------------------------*)
neuper@37906
   508
"Schalk I s.88 Bsp 64c (((x - 1)/(x+1)+1)/((x - 1)/(x+1) - (x+1)/(x - 1))=2)";
neuper@37906
   509
"Schalk I s.88 Bsp 64c (((x - 1)/(x+1)+1)/((x - 1)/(x+1) - (x+1)/(x - 1))=2)";
neuper@37906
   510
"Schalk I s.88 Bsp 64c (((x - 1)/(x+1)+1)/((x - 1)/(x+1) - (x+1)/(x - 1))=2)";
neuper@37906
   511
(*ER-8*)
neuper@37906
   512
val fmz = ["equality (((x - 1)/(x+1)+1)/((x - 1)/(x+1) - (x+1)/(x - 1))=2)",
neuper@37906
   513
	   "solveFor x","solutions L"];
neuper@37991
   514
val (dI',pI',mI') = ("RatEq",["univariate","equation"],["no_met"]);
neuper@37906
   515
neuper@37906
   516
(*val p = e_pos'; val c = []; 
neuper@37906
   517
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   518
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   519
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   520
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   521
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   522
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   523
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   524
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   525
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   526
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   527
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   528
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   529
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   530
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   531
val (p,_,f,nxt,_,pt) = me nxt p [1] pt; f2str f;
neuper@37906
   532
if f = Form' (FormKF (~1, EdUndef, 0, Nundef, "-3 + -1 * x = 0")) then ()
neuper@37906
   533
else raise error "rlangsml: diff.behav. in Schalk I s.88 Bsp 64c";
neuper@37906
   534
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   535
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   536
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   537
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   538
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   539
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   540
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   541
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   542
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   543
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   544
case f of Form' (FormKF (_,_,0,_,"[x = -3]")) => ()
neuper@37906
   545
	 | _ => raise error "rlang.sml: diff.behav. in  Schalk I s.88 Bsp 64c [x = -3]";
neuper@37906
   546
neuper@37906
   547
(*-----------------  Schalk I s.88 Bsp 79a (2) ------------------------*)
neuper@37906
   548
"Schalk I s.88 Bsp 79a (2) (m1*v1+m2*v2=0)";
neuper@37906
   549
"Schalk I s.88 Bsp 79a (2) (m1*v1+m2*v2=0)";
neuper@37906
   550
"Schalk I s.88 Bsp 79a (2) (m1*v1+m2*v2=0)";
neuper@37906
   551
(*ER-10*)
neuper@37906
   552
val fmz = ["equality (m1*v1+m2*v2=0)",
neuper@37906
   553
	   "solveFor m1","solutions L"];
neuper@37991
   554
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
   555
neuper@37906
   556
(*val p = e_pos'; val c = []; 
neuper@37906
   557
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   558
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   559
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   560
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   561
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   562
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   563
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   564
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   565
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   566
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   567
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   568
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   569
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   570
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   571
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   572
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   573
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[m1 = -1 * m2 * v2 / v1]")) => ()
neuper@37906
   574
	 | _ => raise error "rlang.sml: diff.behav. in  Schalk I s.88 Bsp 79a (2) [m1 = -1 * m2 * v2 / v1]";
neuper@37906
   575
neuper@37906
   576
(*-----------------  Schalk I s.89 Bsp 90a(1) ------------------------*)
neuper@37906
   577
"Schalk I s.89 Bsp 90a (1) (f=((w+u)/(w+v))*v0)";
neuper@37906
   578
"Schalk I s.89 Bsp 90a (1) (f=((w+u)/(w+v))*v0)";
neuper@37906
   579
"Schalk I s.89 Bsp 90a (1) (f=((w+u)/(w+v))*v0)";
neuper@37906
   580
(*ER-11*)
neuper@37906
   581
val fmz = ["equality (f=((w+u)/(w+v))*v0)",
neuper@37906
   582
	   "solveFor v","solutions L"];
neuper@37991
   583
val (dI',pI',mI') = ("RatEq",["univariate","equation"],["no_met"]);
neuper@37906
   584
neuper@37906
   585
(*val p = e_pos'; val c = []; 
neuper@37906
   586
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   587
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   588
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   589
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   590
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   591
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   592
(*val nxt = Specify_Problem ["rational","univariate","equation"])      *)
neuper@37906
   593
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   594
(*val nxt = Specify_Method ["RatEq","solve_rat_equation"])      *)
neuper@37906
   595
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   596
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   597
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37991
   598
(*nxt = Subproblem ("RatEq",["univariate","equation"]))      *)
neuper@37906
   599
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   600
(*val nxt =Model_Problem ["normalize","polynomial","univariate","equation"])*)
neuper@37906
   601
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   602
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   603
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   604
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   605
(*val nxt = ("Apply_Method",Apply_Method ["PolyEq","normalize_poly"])*)
neuper@37906
   606
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   607
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37991
   608
(*val nxt =Subproblem ("PolyEq",["polynomial","univariate","equation"]))*)
neuper@37906
   609
if f = Form'
neuper@37906
   610
      (FormKF
neuper@37906
   611
         (~1,
neuper@37906
   612
            EdUndef,
neuper@37906
   613
            0,
neuper@37906
   614
            Nundef,
neuper@37906
   615
            "f * w + -1 * u * v0 + -1 * v0 * w + f * v = 0")) then ()
neuper@37906
   616
else raise error "rlang.sml: diff.behav. in Schalk I s.89 Bsp 90a";
neuper@37906
   617
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   618
(*val nxt = Model_Problem ["degree_1","polynomial","univariate","equation"])*)
neuper@37906
   619
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   620
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   621
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   622
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   623
(*val nxt = ("Apply_Method",Apply_Method ["PolyEq","solve_d1_poly_equation"])*)
neuper@37906
   624
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   625
(*val f = "v = -1 * (f * w + -1 * u * v0 + -1 * v0 * w) / f")) : mout
neuper@37906
   626
val nxt = ("Or_to_List",Or_to_List) : string * tac *)
neuper@37906
   627
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   628
(*val f = "[v = -1 * (f * w + -1 * u * v0 + -1 * v0 * w) / f]")) : mout
neuper@37906
   629
val nxt = ("Check_elementwise",Check_elementwise "Assumptions") *)
neuper@37906
   630
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   631
(*val f = "[v = -1 * (f * w + -1 * u * v0 + -1 * v0 * w) / f]")) : mout
neuper@37906
   632
val nxt = Check_Postcond ["degree_1","polynomial","univariate","equation"])*)
neuper@37906
   633
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   634
(*val f = "[v = -1 * (f * w + -1 * u * v0 + -1 * v0 * w) / f]")) : mout
neuper@37906
   635
val nxt = Check_Postcond ["normalize","polynomial","univariate","equation"])*)
neuper@37906
   636
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   637
(*val f = "[v = -1 * (f * w + -1 * u * v0 + -1 * v0 * w) / f]")) : mout
neuper@37906
   638
val nxt = ("Check_elementwise",Check_elementwise "Assumptions")*)
neuper@37906
   639
neuper@37906
   640
get_assumptions_ pt p;
neuper@37906
   641
(*it = ["v + w ~= 0"]    ... goes to the solution as an assumption*)
neuper@37906
   642
neuper@37906
   643
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   644
(*val f = Form' (FormKF (~1,EdUndef,1,Nundef,"[]")) : mout
neuper@37906
   645
val nxt = Check_Postcond ["rational","univariate","equation"])        *)
neuper@37906
   646
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   647
case f of Form'  (FormKF (~1,EdUndef,0,Nundef,
neuper@37906
   648
        "[v = (u * v0 + v0 * w + -1 * f * w) / f]")) => ()
neuper@37906
   649
	 | _ => raise error "rlang.sml: diff.behav. in  Schalk I s.89 Bsp 90a (1) [v=...]";
neuper@37906
   650
if get_assumptions_ pt p = 
neuper@37906
   651
   [(str2term"(u * v0 + v0 * w + -1 * f * w) / f + w ~= 0",[])] then () 
neuper@37906
   652
else raise error "rlang.sml: diff.behav. in I s.89 Bsp 90a (1) [v=...] asm";
neuper@37906
   653
neuper@37906
   654
neuper@37906
   655
(*-----------------  Schalk I s.89 Bsp 90a(2) ------------------------*)
neuper@37906
   656
"Schalk I s.89 Bsp 90a (2) (f=((w+u)/(w+v))*v0)";
neuper@37906
   657
"Schalk I s.89 Bsp 90a (2) (f=((w+u)/(w+v))*v0)";
neuper@37906
   658
"Schalk I s.89 Bsp 90a (2) (f=((w+u)/(w+v))*v0)";
neuper@37906
   659
(*ER-12*)
neuper@37906
   660
val fmz = ["equality (f=((w+u)/(w+v))*v0)",
neuper@37906
   661
	   "solveFor w","solutions L"];
neuper@37991
   662
val (dI',pI',mI') = ("RatEq",["univariate","equation"],["no_met"]);
neuper@37906
   663
(*val p = e_pos';val c = []; 
neuper@37906
   664
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   665
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   666
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   667
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   668
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   669
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   670
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   671
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   672
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   673
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   674
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   675
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   676
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   677
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   678
if f = Form'
neuper@37906
   679
      (FormKF
neuper@37906
   680
         (~1,
neuper@37906
   681
            EdUndef,
neuper@37906
   682
            0,
neuper@37906
   683
            Nundef,
neuper@37906
   684
            "f * v + -1 * u * v0 + (f + -1 * v0) * w = 0")) then ()
neuper@37906
   685
else raise error "rlang.sml: diff.behav. in Schalk I s.89 Bsp 90a (2)";
neuper@37906
   686
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   687
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   688
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   689
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   690
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   691
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   692
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   693
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   694
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   695
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[w = (u * v0 + -1 * f * v) / (f + -1 * v0)]")) => ()
neuper@37906
   696
	 | _ => raise error "rlang.sml: diff.behav. in Schalk I Bsp 90a(2)";
neuper@37906
   697
if get_assumptions_ pt p = 
neuper@37906
   698
[(str2term"v + (u * v0 + -1 * f * v) / (f + -1 * v0) ~= 0",[]),
neuper@37906
   699
 (str2term"f + -1 * v0 ~= 0",[])]
neuper@37906
   700
then writeln "asm should be simplified ???" 
neuper@37906
   701
else raise error "rlang.sml: diff.behav. in Schalk I Bsp 90a(2) asm";
neuper@37906
   702
neuper@37906
   703
(*-----------------  Schalk I s.89 Bsp 98a(1) ------------------------*)
neuper@37906
   704
"Schalk I s.89 Bsp 98a (1) (1/R=1/R1+1/R2)";
neuper@37906
   705
"Schalk I s.89 Bsp 98a (1) (1/R=1/R1+1/R2)";
neuper@37906
   706
"Schalk I s.89 Bsp 98a (1) (1/R=1/R1+1/R2)";
neuper@37906
   707
(*ER-9*)
neuper@37906
   708
val fmz = ["equality (1/R=1/R1+1/R2)",
neuper@37906
   709
	   "solveFor R1","solutions L"];
neuper@37991
   710
val (dI',pI',mI') = ("RatEq",["univariate","equation"],["no_met"]);
neuper@37906
   711
(*val p = e_pos'; val c = []; 
neuper@37906
   712
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   713
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   714
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   715
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   716
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   717
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   718
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   719
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   720
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   721
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   722
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   723
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   724
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   725
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   726
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   727
if f = Form'
neuper@37906
   728
      (FormKF
neuper@37906
   729
        (~1, EdUndef, 0, Nundef, "-1 * R * R2 + (R2 + -1 * R) * R1 = 0"))then()
neuper@37906
   730
else raise error "rlang.sml: diff.behav. in Schalk I s.89 Bsp 98a (1)";
neuper@37906
   731
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   732
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   733
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   734
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   735
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   736
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   737
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   738
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   739
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   740
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[R1 = R * R2 / (R2 + -1 * R)]")) => ()
neuper@37906
   741
	 | _ => raise error "rlang.sml: diff.behav. in 98a(1) [R1 = ...]";
neuper@37906
   742
if get_assumptions_ pt p = [(str2term"R * R2 * R2 ~= (R2 + -1 * R) * 0",[]),
neuper@37906
   743
			    (str2term"R2 + -1 * R ~= 0",[]),
neuper@37906
   744
			    (str2term"R2 + -1 * R ~= 0",[])] 
neuper@37906
   745
    then writeln "asm should be simplified"
neuper@37906
   746
else raise error "rlang.sml: diff.behav. in 98a(1) asm";
neuper@37906
   747
neuper@37906
   748
(*-----------------  Schalk I s.89 Bsp 104a(1) ------------------------*)
neuper@37906
   749
"Schalk I s.89 Bsp 104a (1) (y^^^2=2*p*x)";
neuper@37906
   750
"Schalk I s.89 Bsp 104a (1) (y^^^2=2*p*x)";
neuper@37906
   751
"Schalk I s.89 Bsp 104a (1) (y^^^2=2*p*x)";
neuper@37906
   752
(*ER-13 + EO-11 ?!?*)
neuper@37906
   753
val fmz = ["equality (y^^^2=2*p*x)",
neuper@37906
   754
	   "solveFor p","solutions L"];
neuper@37991
   755
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
   756
(*val p = e_pos'; val c = []; 
neuper@37906
   757
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   758
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   759
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   760
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   761
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   762
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   763
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   764
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   765
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   766
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   767
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   768
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   769
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   770
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt; 
neuper@37906
   771
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   772
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   773
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   774
case f of Form' (FormKF (_,_,0,_,"[p = y ^^^ 2 / (2 * x)]")) => ()
neuper@37906
   775
	 | _ => raise error "rlang.sml: diff.behav. in  Schalk I s.89 Bsp 104a (1) [p = y^2/(2*x)]";
neuper@37906
   776
if get_assumptions_ pt p = [(str2term"-2 * x ~= 0",[])] 
neuper@37906
   777
then writeln"should be x ~= 0\nshould be x ~= 0\nshould be x ~= 0\n" 
neuper@37906
   778
else raise error "rlang.sml: diff.behav. in  I s.89 Bsp 104a(1) asm";
neuper@37906
   779
neuper@37906
   780
neuper@37906
   781
(*-----------------  Schalk I s.89 Bsp 104a(2) ------------------------*)
neuper@37906
   782
"Schalk I s.89 Bsp 104a (2) (y^^^2=2*p*x)";
neuper@37906
   783
"Schalk I s.89 Bsp 104a (2) (y^^^2=2*p*x)";
neuper@37906
   784
"Schalk I s.89 Bsp 104a (2) (y^^^2=2*p*x)";
neuper@37906
   785
(*EO ??*)
neuper@37906
   786
val fmz = ["equality (y^^^2=2*p*x)",
neuper@37906
   787
	   "solveFor y","solutions L"];
neuper@37991
   788
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
   789
(*val p = e_pos'; 
neuper@37906
   790
val c = []; 
neuper@37906
   791
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   792
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   793
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   794
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   795
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   796
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   797
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   798
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   799
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   800
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   801
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   802
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   803
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   804
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   805
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   806
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   807
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   808
case f of Form' (FormKF (_,_,0,_,"[y = sqrt (2 * p * x), y = -1 * sqrt (2 * p * x)]")) => ()
neuper@37906
   809
| _ => raise error "rlang.sml: diff.behav. Schalk I s.89 Bsp 104a(2) [x = ]";
neuper@37906
   810
if get_assumptions_ pt p = [(str2term"0 <= -1 * (-2 * p * x)",[]),(str2term"0 <= -1 * (-2 * p * x)",[])] then writeln "asm should be simplified\nshould be simplified"
neuper@37906
   811
else raise error "rlang.sml: diff.behav. in I s.89 Bsp 104a(2) asm";
neuper@37906
   812
neuper@37906
   813
neuper@37906
   814
(*-----------------  Schalk I s.90 Bsp 118a (1) ------------------------*)
neuper@37906
   815
"Schalk I s.90 Bsp 118a (1) (b^^^2*x^^^2 + a^^^2*y^^^2 = a^^^2*b^^^2)";
neuper@37906
   816
"Schalk I s.90 Bsp 118a (1) (b^^^2*x^^^2 + a^^^2*y^^^2 = a^^^2*b^^^2)";
neuper@37906
   817
"Schalk I s.90 Bsp 118a (1) (b^^^2*x^^^2 + a^^^2*y^^^2 = a^^^2*b^^^2)";
neuper@37906
   818
(*EO-8*)
neuper@37906
   819
val fmz = ["equality (b^^^2*x^^^2 + a^^^2*y^^^2 = a^^^2*b^^^2)",
neuper@37906
   820
	   "solveFor x","solutions L"];
neuper@37991
   821
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
   822
(*val p = e_pos'; 
neuper@37906
   823
val c = []; 
neuper@37906
   824
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   825
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   826
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   827
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   828
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   829
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   830
neuper@37906
   831
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   832
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;f2str f;
neuper@37906
   833
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;f2str f;
neuper@37906
   834
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;f2str f;
neuper@37906
   835
neuper@37906
   836
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   837
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   838
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   839
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   840
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   841
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   842
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   843
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   844
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;f2str f;
neuper@37906
   845
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;f2str f;get_asm (fst p, fst p) pt;
neuper@37906
   846
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;f2str f;get_asm (fst p, fst p) pt;
neuper@37906
   847
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;f2str f;get_asm (fst p, fst p) pt;
neuper@37906
   848
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;f2str f;get_asm (fst p, fst p) pt;
neuper@37906
   849
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;f2str f;asms2str (get_asm (fst p, fst p) pt);
neuper@37906
   850
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;f2str f;asms2str (get_asm (fst p, fst p) pt);
neuper@37906
   851
neuper@37906
   852
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;f2str f;get_asm (fst p, fst p) pt;
neuper@37906
   853
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;f2str f;get_asm (fst p, fst p) pt;
neuper@37906
   854
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = sqrt ((a ^^^ 2 * b ^^^ 2 + -1 * a ^^^ 2 * y ^^^ 2) / b ^^^ 2),\n x = -1 * sqrt ((a ^^^ 2 * b ^^^ 2 + -1 * a ^^^ 2 * y ^^^ 2) / b ^^^ 2)]")) => writeln"should be simplified MG"
neuper@37906
   855
| _ => raise error "rlang.sml: diff.behav. in  Schalk I s.89 Bsp 118a(2) [x = ]";
neuper@37906
   856
val asms = get_assumptions_ pt p;
neuper@37906
   857
if asms = [(str2term"0 * b ^^^ 2 <= -1 * (a ^^^ 2 * y ^^^ 2 + -1 * a ^^^ 2 * b ^^^ 2)", []),
neuper@37906
   858
	   (str2term"b ^^^ 2 ~= 0", []),
neuper@37906
   859
	   (str2term"0 * b ^^^ 2 <= -1 * (a ^^^ 2 * y ^^^ 2 + -1 * a ^^^ 2 * b ^^^ 2)", []),
neuper@37906
   860
	   (str2term"b ^^^ 2 ~= 0", [])
neuper@37906
   861
	   ] then writeln"should be simplified MG"
neuper@37906
   862
else raise error "rlang.sml: diff.behav. in Schalk I s.89 Bsp 118a(2) asms";
neuper@37906
   863
neuper@37906
   864
(*-----------------  Schalk I s.102 Bsp 268(1) ------------------------*)
neuper@37906
   865
"Schalk I s.102 Bsp 268(1) (A = (1/2)*(x1*(y2-y3)+x2*(y3 - y1)+x3*(y1 - y2)))";
neuper@37906
   866
"Schalk I s.102 Bsp 268(1) (A = (1/2)*(x1*(y2-y3)+x2*(y3 - y1)+x3*(y1 - y2)))";
neuper@37906
   867
"Schalk I s.102 Bsp 268(1) (A = (1/2)*(x1*(y2-y3)+x2*(y3 - y1)+x3*(y1 - y2)))";
neuper@37906
   868
(*ER-14*)
neuper@37906
   869
val fmz = ["equality (A = (1/2)*(x1*(y2 - y3)+x2*(y3 - y1)+x3*(y1 - y2)))",
neuper@37906
   870
	   "solveFor x2","solutions L"];
neuper@37991
   871
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
   872
(*val p = e_pos'; 
neuper@37906
   873
val c = []; 
neuper@37906
   874
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   875
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   876
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   877
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   878
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   879
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   880
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   881
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   882
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   883
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   884
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   885
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   886
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   887
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   888
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   889
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   890
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   891
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x2 =\n (-2 * A + x1 * y2 + x3 * y1 + -1 * x1 * y3 + -1 * x3 * y2) /\n (y1 + -1 * y3)]")) => ()
neuper@37906
   892
| _ => raise error "rlang.sml: diff.behav. Schalk I s.102 Bsp 268(1) [x2=...]";
neuper@37906
   893
if get_assumptions_ pt p = [(str2term"y1 / 2 + -1 * y3 / 2 ~= 0",[])] then ()
neuper@37906
   894
else raise error "rlang.sml: diff.behav. in I s.102 Bsp 268(1) asm";
neuper@37906
   895
neuper@37906
   896
(*--------------------  Schalk II ----------------------------*)
neuper@37906
   897
(*--------------------  Schalk II ----------------------------*)
neuper@37906
   898
(*--------------------  Schalk II ----------------------------*)
neuper@37906
   899
(*--------------------  Schalk II ----------------------------*)
neuper@37906
   900
(*--------------------  Schalk II ----------------------------*)
neuper@37906
   901
neuper@37906
   902
neuper@37906
   903
(*-----------------  Schalk II s.56 Bsp 67b ------------------------*)
neuper@37906
   904
"Schalk II s.56 Bsp 67b (4*sqrt(4*x+1)=3*sqrt(7*x+2))";
neuper@37906
   905
"Schalk II s.56 Bsp 67b (4*sqrt(4*x+1)=3*sqrt(7*x+2))";
neuper@37906
   906
"Schalk II s.56 Bsp 67b (4*sqrt(4*x+1)=3*sqrt(7*x+2))";
neuper@37906
   907
(*EO*)
neuper@37906
   908
val fmz = ["equality (4*sqrt(4*x+1)=3*sqrt(7*x+2))",
neuper@37906
   909
	   "solveFor x","solutions L"];
neuper@37991
   910
val (dI',pI',mI') = ("RootEq",["univariate","equation"],["no_met"]);
neuper@37906
   911
(*val p = e_pos'; 
neuper@37906
   912
val c = []; 
neuper@37906
   913
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   914
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   915
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
   916
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   917
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   918
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   919
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   920
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   921
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   922
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   923
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   924
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   925
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   926
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   927
val (p,_,f,nxt,_,pt) = me nxt p [1] pt; f2str f;
neuper@37906
   928
if f = Form' (FormKF (~1, EdUndef, 0, Nundef, "-2 + x = 0")) then ()
neuper@37906
   929
else raise error "rlang.sml: diff.behav. in Schalk II s.56 Bsp 67b";
neuper@37906
   930
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   931
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   932
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   933
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   934
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   935
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   936
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   937
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   938
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   939
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = 2]")) => ()
neuper@37906
   940
	 | _ => raise error "rlang.sml: diff.behav. in  Schalk II s.56 Bsp 67b [x=2]";
neuper@37906
   941
neuper@37906
   942
(*-----------------  Schalk II s.56 Bsp 68a ------------------------*)
neuper@37906
   943
"Schalk II s.56 Bsp 68a (5*sqrt(x) - 1 = 7*sqrt(x) - 5)";
neuper@37906
   944
"Schalk II s.56 Bsp 68a (5*sqrt(x) - 1 = 7*sqrt(x) - 5)";
neuper@37906
   945
"Schalk II s.56 Bsp 68a (5*sqrt(x) - 1 = 7*sqrt(x) - 5)";
neuper@37906
   946
val fmz = ["equality (5*sqrt(x) - 1 = 7*sqrt(x) - 5)",
neuper@37906
   947
	   "solveFor x","solutions L"];
neuper@37991
   948
val (dI',pI',mI') = ("RootEq",["univariate","equation"],["no_met"]);
neuper@37906
   949
(*val p = e_pos'; 
neuper@37906
   950
val c = []; 
neuper@37906
   951
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
   952
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
   953
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37986
   954
(* val nxt = ("Model_Problem",Model_Problem ["normalize","root'","univariate","equation"])*)
neuper@37986
   955
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
   956
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
   957
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
   958
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
   959
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
   960
(* val nxt = ("Model_Problem",Model_Problem ["sq","root'","univariate","equation"]) *)
neuper@37906
   961
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   962
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   963
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   964
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   965
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   966
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   967
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
   968
(* val nxt = ("Model_Problem",Model_Problem ["sq","root'","univariate","equation"]) *)
neuper@37906
   969
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   970
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   971
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   972
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   973
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   974
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   975
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   976
get_assumptions_ pt p;
neuper@37906
   977
(* val nxt = ("Model_Problem",  Model_Problem ["normalize","polynomial","univariate","equation"])*)
neuper@37906
   978
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   979
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   980
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   981
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   982
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   983
if f = Form'
neuper@37906
   984
      (FormKF
neuper@37906
   985
         (~1, EdUndef, 0, Nundef, "256 + -2368 * x + 576 * x ^^^ 2 = 0"))then()
neuper@37906
   986
else raise error "rlang.sml: diff.behav. in Schalk II s.56 Bsp 68a";
neuper@37906
   987
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   988
get_assumptions_ pt p;
neuper@37906
   989
(* val nxt = ("Model_Problem",  Model_Problem
neuper@37906
   990
     ["abcFormula","degree_2","polynomial","univariate","equation"])*)
neuper@37906
   991
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   992
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   993
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   994
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   995
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   996
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   997
get_assumptions_ pt p;
neuper@37906
   998
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
   999
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1000
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1001
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1002
if f = Form' (FormKF (~1,EdUndef,0,Nundef,"[x = 4, x = 1 / 9]")) 
neuper@37906
  1003
then writeln "only [x = 4] !\nonly [x = 4] !\nonly [x = 4] !\n"
neuper@37906
  1004
else raise error "rlang.sml: diff.behav. in II 68a";
neuper@37906
  1005
val asms = get_assumptions_ pt p;
neuper@37906
  1006
if asms2str asms = 
neuper@37906
  1007
"[(0 <= (25 * (1 / 9) + -1 * (16 + 49 * (1 / 9))) * -56, []),\
neuper@37906
  1008
 \(0 <= 1 / 9, []),\
neuper@37906
  1009
 \(0 <= 1 / 9, []),\
neuper@37906
  1010
 \(0 <= (-5 + 7 * sqrt (1 / 9) + 1) * 5, []),\
neuper@37906
  1011
 \(0 <= 1 / 9, []),\
neuper@37906
  1012
 \(0 <= (25 * (1 / 9) + -1 * (16 + 49 * (1 / 9))) * -56, []),\
neuper@37906
  1013
 \(0 <= 1 / 9, [])]"
neuper@37906
  1014
(*WN050916 before correction 'rewrite__set_ called with 'Erls' for ..'
neuper@37906
  1015
  thus: maybe the rls for the asms is Erls ??:
neuper@37906
  1016
   [(str2term"0 <= (25 * (1 / 9) + -1 * (16 + 49 * (1 / 9))) * -56", []),
neuper@37906
  1017
    (str2term"9 ~= 0", []),
neuper@37906
  1018
    (str2term"0 <= (-5 + 7 * sqrt (1 / 9) + 1) * 5", []),
neuper@37906
  1019
    (str2term"9 ~= 0", []),
neuper@37906
  1020
    (str2term"0 <= (25 * (1 / 9) + -1 * (16 + 49 * (1 / 9))) * -56", [])]*)
neuper@37906
  1021
    then "should get True * False!!!"
neuper@37906
  1022
else raise error "rlang.sml: diff.behav. in II 68a asms";
neuper@37906
  1023
neuper@37906
  1024
(*-----------------  Schalk II s.56 Bsp 73b ------------------------*)
neuper@37906
  1025
"Schalk II s.56 Bsp 73b (sqrt(x+1)+sqrt(4*x+4)=sqrt(9*x+9))";
neuper@37906
  1026
"Schalk II s.56 Bsp 73b (sqrt(x+1)+sqrt(4*x+4)=sqrt(9*x+9))";
neuper@37906
  1027
"Schalk II s.56 Bsp 73b (sqrt(x+1)+sqrt(4*x+4)=sqrt(9*x+9))";
neuper@37906
  1028
(*EO-2*)
neuper@37906
  1029
val fmz = ["equality (sqrt(x+1)+sqrt(4*x+4)=sqrt(9*x+9))",
neuper@37906
  1030
	   "solveFor x","solutions L"];
neuper@37991
  1031
val (dI',pI',mI') = ("RootEq",["univariate","equation"],["no_met"]);
neuper@37906
  1032
neuper@37906
  1033
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
  1034
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1035
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1036
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1037
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1038
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1039
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1040
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1041
(*"13 + 13 * x + -2 * sqrt ((4 + 4 * x) * (9 + 9 * x)) = 1 + x" 
neuper@37991
  1042
-> Subproblem ("RootEq", ["univariate", ...])*)
neuper@37906
  1043
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1044
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1045
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1046
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1047
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1048
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1049
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1050
(*"144 + 288 * x + 144 * x ^^^ 2 = 144 + x ^^^ 2 + 288 * x + 143 * x ^^^ 2"
neuper@37991
  1051
-> Subproblem ("RootEq", ["univariate", ...])*)
neuper@37906
  1052
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1053
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1054
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1055
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1056
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1057
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1058
if f = Form' (FormKF (~1, EdUndef, 0, Nundef, "0 = 0")) then ()
neuper@37906
  1059
else raise error "rlang.sml: diff.behav. in Schalk II s.56 Bsp 73b";
neuper@37906
  1060
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1061
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1062
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1063
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1064
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1065
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1066
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1067
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1068
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1069
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1070
val asm = get_assumptions_ pt p;
neuper@37906
  1071
if asm=[] andalso f = Form' (FormKF (~1,EdUndef,0,Nundef,"UniversalList")) andalso nxt = ("End_Proof'",End_Proof') then ()
neuper@37906
  1072
else raise error "rlang.sml: diff.behav. in UniversalList 2";
neuper@37906
  1073
neuper@37906
  1074
(*-----------------  Schalk II s.56 Bsp 74a ------------------------*)
neuper@37906
  1075
"Schalk II s.56 Bsp 74a (sqrt(4*x+1) - sqrt(x+3) = sqrt(x - 2))";
neuper@37906
  1076
"Schalk II s.56 Bsp 74a (sqrt(4*x+1) - sqrt(x+3) = sqrt(x - 2))";
neuper@37906
  1077
"Schalk II s.56 Bsp 74a (sqrt(4*x+1) - sqrt(x+3) = sqrt(x - 2))";
neuper@37906
  1078
(*EO-3*)
neuper@37906
  1079
val fmz = ["equality (sqrt(4*x+1) - sqrt(x+3) = sqrt(x - 2))",
neuper@37906
  1080
	   "solveFor x","solutions L"];
neuper@37991
  1081
val (dI',pI',mI') = ("RootEq",["univariate","equation"],["no_met"]);
neuper@37906
  1082
neuper@37906
  1083
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
  1084
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1085
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1086
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1087
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1088
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1089
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1090
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1091
(*4 + 5 * x + -2 * sqrt (3 + 13 * x + 4 * x ^^^ 2) = -2 + x" 
neuper@37991
  1092
-> Subproblem ("RootEq", ["univariate", ...])*)
neuper@37906
  1093
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1094
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1095
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1096
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1097
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1098
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1099
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1100
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1101
(*"12 + 52 * x + 16 * x ^^^ 2 = 36 + x ^^^ 2 + 48 * x + 15 * x ^^^ 2"
neuper@37991
  1102
-> Subproblem ("RootEq", ["univariate", ...])*)
neuper@37906
  1103
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1104
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1105
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1106
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1107
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1108
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1109
if f = Form' (FormKF (~1, EdUndef, 0, Nundef, "-24 + 4 * x = 0")) then ()
neuper@37906
  1110
else raise error "rlang.sml: diff.behav. in Schalk II s.56 Bsp 74a";
neuper@37991
  1111
(*-> ubproblem ("PolyEq", ["degree_1", ...]*)
neuper@37906
  1112
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1113
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1114
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1115
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1116
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1117
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1118
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1119
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1120
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1121
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1122
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = 6]")) => ()
neuper@37906
  1123
	 | _ => raise error "rlang.sml: diff.behav. in  Schalk II s.56 Bsp 74a [x = 6]";
neuper@37906
  1124
neuper@37906
  1125
neuper@37906
  1126
(*-----------------  Schalk II s.56 Bsp 77b ------------------------*)
neuper@37906
  1127
"Schalk II s.56 Bsp 77b (sqrt(x+12)+sqrt(x - 3) = sqrt(x + 32) - sqrt(5+x))";
neuper@37906
  1128
"Schalk II s.56 Bsp 77b (sqrt(x+12)+sqrt(x - 3) = sqrt(x + 32) - sqrt(5+x))";
neuper@37906
  1129
"Schalk II s.56 Bsp 77b (sqrt(x+12)+sqrt(x - 3) = sqrt(x + 32) - sqrt(5+x))";
neuper@37906
  1130
(*EO-4*)
neuper@37906
  1131
val fmz = ["equality (sqrt(x+12)+sqrt(x - 3) = sqrt(x + 32) - sqrt(5+x))",
neuper@37906
  1132
	   "solveFor x","solutions L"];
neuper@37991
  1133
val (dI',pI',mI') = ("RootEq",["univariate","equation"],["no_met"]);
neuper@37906
  1134
neuper@37906
  1135
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37986
  1136
(* val nxt = ("Model_Problem",Model_Problem ["sq","root'","univariate","equation"]) *)
neuper@37986
  1137
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1138
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1139
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1140
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1141
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1142
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1143
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1144
(* val nxt = ("Model_Problem",Model_Problem ["sq","root'","univariate","equation"]) *)
neuper@37906
  1145
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1146
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1147
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1148
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1149
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1150
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1151
val (p,_,f,nxt,_,pt) = me nxt p [1] pt; f2str f;
neuper@37906
  1152
val (p,_,f,nxt,_,pt) = me nxt p [1] pt; 
neuper@37986
  1153
(* val nxt = ("Model_Problem",Model_Problem ["sq","root'","univariate","equation"]) *)
neuper@37906
  1154
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1155
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1156
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1157
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1158
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1159
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1160
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1161
(*val nxt = ("Model_Problem", 
neuper@37906
  1162
 Model_Problem ["normalize","polynomial","univariate","equation"])*)
neuper@37906
  1163
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1164
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1165
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1166
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1167
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1168
(*val (p,_,f,nxt,_,pt) = me nxt p [1] pt; since MGs norm_Rational*)
neuper@37906
  1169
if f = Form'(FormKF (~1, EdUndef, 0, Nundef, "451584 + -112896 * x = 0"))then()
neuper@37906
  1170
else raise error "rlang.sml: diff.behav. in Schalk II s.56 Bsp 77b";
neuper@37906
  1171
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1172
(* val nxt = ("Model_Problem",
neuper@37906
  1173
   Model_Problem ["degree_1","polynomial","univariate","equation"])*)
neuper@37906
  1174
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1175
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1176
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1177
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1178
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1179
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1180
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1181
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1182
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1183
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[]")) => ()
neuper@37906
  1184
	 | _ => raise error "rlang.sml: diff.behav. in  Schalk II s.56 Bsp 77b []";
neuper@37906
  1185
(*added 040209 at introducing MGs norm_Rational ?!*)
neuper@37906
  1186
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1187
neuper@37906
  1188
neuper@37906
  1189
(*-----------------  Schalk II s.66 Bsp 4 ------------------------*)
neuper@37906
  1190
"Schalk II s.66 Bsp 4 ((6*x - 9)*(5*x+7) - (4*x+7)*(3*x - 6) = 429)";
neuper@37906
  1191
"Schalk II s.66 Bsp 4 ((6*x - 9)*(5*x+7) - (4*x+7)*(3*x - 6) = 429)";
neuper@37906
  1192
"Schalk II s.66 Bsp 4 ((6*x - 9)*(5*x+7) - (4*x+7)*(3*x - 6) = 429)";
neuper@37906
  1193
(*EP*)
neuper@37906
  1194
val fmz = ["equality ((6*x - 9)*(5*x+7) - (4*x+7)*(3*x - 6) = 429)",
neuper@37906
  1195
	   "solveFor x","solutions L"];
neuper@37991
  1196
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
  1197
(*val p = e_pos'; 
neuper@37906
  1198
val c = []; 
neuper@37906
  1199
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
  1200
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
  1201
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
  1202
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1203
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1204
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1205
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1206
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1207
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1208
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1209
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1210
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1211
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1212
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1213
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1214
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1215
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1216
case f of   Form' (FormKF (_,_,0,_,"[x = 5, x = -5]")) => ()
neuper@37906
  1217
  | _ => raise error "rlang.sml: diff.behav. in  Schalk II s.66 Bsp 4 []";
neuper@37906
  1218
neuper@37906
  1219
neuper@37906
  1220
(*-----------------  Schalk II s.66 Bsp 8a ------------------------*)
neuper@37906
  1221
"Schalk II s.66 Bsp 8a ((x - 4)/(x+4) = (1 - x)/(1+x))";
neuper@37906
  1222
(*ER-15*)
neuper@37906
  1223
val fmz = ["equality ((x - 4)/(x+4) = (1 - x)/(1+x))",
neuper@37906
  1224
	   "solveFor x","solutions L"];
neuper@37991
  1225
val (dI',pI',mI') = ("RatEq",["univariate","equation"],["no_met"]);
neuper@37906
  1226
neuper@37906
  1227
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
  1228
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1229
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1230
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1231
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1232
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1233
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1234
val (p,_,f,nxt,_,pt) = me nxt p [1] pt; f2str f;
neuper@37906
  1235
(*"(-4 + x) * (1 + x) = (1 + -1 * x) * (4 + x)"
neuper@37991
  1236
-> Subproblem ("RatEq", ["univariate", ...])*)
neuper@37906
  1237
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1238
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1239
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1240
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1241
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1242
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1243
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1244
if f = Form' (FormKF (~1, EdUndef, 0, Nundef, "-8 + 2 * x ^^^ 2 = 0")) then ()
neuper@37906
  1245
else raise error "rlang.sml: diff.behav. in Schalk II s.66 Bsp 8a";
neuper@37991
  1246
(*-> Subproblem ("PolyEq", ["polynomial", ...])*)
neuper@37906
  1247
(* 
neuper@37906
  1248
 val Form' (FormKF (~1, EdUndef, 0, Nundef, str)) = f;
neuper@37906
  1249
 *)
neuper@37906
  1250
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1251
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1252
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1253
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1254
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1255
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1256
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1257
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1258
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1259
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = 2, x = -2]")) => ()
neuper@37906
  1260
	 | _ => raise error "rlang.sml: diff.behav. in  Schalk II s.66 Bsp 8a [x = 2, x = -2]";
neuper@37906
  1261
neuper@37906
  1262
(*-----------------  Schalk II s.66 Bsp 10b ------------------------*)
neuper@37906
  1263
"Schalk II s.66 Bsp 10b (1/(x^^^2 - 9)+(2*x+3)/(x+3)=(3*x+4)/(x - 3))";
neuper@37906
  1264
"Schalk II s.66 Bsp 10b (1/(x^^^2 - 9)+(2*x+3)/(x+3)=(3*x+4)/(x - 3))";
neuper@37906
  1265
"Schalk II s.66 Bsp 10b (1/(x^^^2 - 9)+(2*x+3)/(x+3)=(3*x+4)/(x - 3))";
neuper@37906
  1266
val fmz = ["equality (1/(x^^^2 - 9)+(2*x+3)/(x+3)=(3*x+4)/(x - 3))",
neuper@37906
  1267
	   "solveFor x","solutions L"];
neuper@37991
  1268
val (dI',pI',mI') = ("RatEq",["univariate","equation"],["no_met"]);
neuper@37906
  1269
(*val p = e_pos'; 
neuper@37906
  1270
val c = []; 
neuper@37906
  1271
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
  1272
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
  1273
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
  1274
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1275
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1276
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1277
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1278
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1279
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1280
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1281
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1282
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1283
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1284
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1285
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1286
if f = Form'
neuper@37906
  1287
      (FormKF
neuper@37906
  1288
         (~1,
neuper@37906
  1289
            EdUndef,
neuper@37906
  1290
            0,
neuper@37906
  1291
            Nundef,
neuper@37906
  1292
            "60 + 28 * x + -13 * x ^^^ 2 + -1 * x ^^^ 3 = 0")) then ()
neuper@37906
  1293
else raise error "rlang.sml: diff.behav. in Schalk II s.66 Bsp 10b";
neuper@37906
  1294
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1295
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1296
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1297
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1298
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1299
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1300
(*60 + 28 * x + -13 * x ^^^ 2 + -1 * x ^^^ 3 = 0 ... degree 3 not solvable*)
neuper@37906
  1301
neuper@37906
  1302
neuper@37906
  1303
(*-----------------  Schalk II s.66 Bsp 20a ------------------------*)
neuper@37906
  1304
(*EO-6*)
neuper@37906
  1305
"Schalk II s.66 Bsp 20a (sqrt(29 - sqrt (x^^^2 - 9))=5)";
neuper@37906
  1306
"Schalk II s.66 Bsp 20a (sqrt(29 - sqrt (x^^^2 - 9))=5)";
neuper@37906
  1307
"Schalk II s.66 Bsp 20a (sqrt(29 - sqrt (x^^^2 - 9))=5)";
neuper@37906
  1308
val fmz = ["equality (sqrt(29 - sqrt(x^^^2 - 9))=5)",
neuper@37906
  1309
	   "solveFor x","solutions L"];
neuper@37991
  1310
val (dI',pI',mI') = ("RootEq",["univariate","equation"],["no_met"]);
neuper@37906
  1311
(*val p = e_pos'; 
neuper@37906
  1312
val c = []; 
neuper@37906
  1313
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
  1314
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
  1315
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
  1316
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1317
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1318
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1319
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1320
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1321
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1322
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1323
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1324
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1325
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1326
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1327
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1328
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1329
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1330
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1331
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1332
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1333
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1334
if f = Form' (FormKF (~1, EdUndef, 0, Nundef, "-25 + x ^^^ 2 = 0")) then ()
neuper@37906
  1335
else raise error "rlang.sml: diff.behav. in Schalk II s.66 Bsp 20a";
neuper@37906
  1336
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1337
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1338
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1339
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1340
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1341
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1342
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1343
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1344
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1345
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1346
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1347
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[x = 5, x = -5]")) => ()
neuper@37906
  1348
	 | _ => raise error "rlang.sml: diff.behav. in  Schalk II s.66 Bsp 20a [x = 5, x = -5]";
neuper@37906
  1349
neuper@37906
  1350
(*-----------------  Schalk II s.66 Bsp 23b ------------------------*)
neuper@37906
  1351
"Schalk II s.66 Bsp 23b (2*sqrt(261 - x) - sqrt(2+2*x)=sqrt(2)*sqrt(5 - 3*x))";
neuper@37906
  1352
"Schalk II s.66 Bsp 23b (2*sqrt(261 - x) - sqrt(2+2*x)=sqrt(2)*sqrt(5 - 3*x))";
neuper@37906
  1353
"Schalk II s.66 Bsp 23b (2*sqrt(261 - x) - sqrt(2+2*x)=sqrt(2)*sqrt(5 - 3*x))";
neuper@37906
  1354
(*EO WN060310 something wrong:
neuper@37906
  1355
([6, 6, 3, 1], Frm) "-1064944 + 32 * x + -48 * x ^^^ 2 = 0"
neuper@37906
  1356
	### or2list False
neuper@37906
  1357
([6, 6, 3, 1], Res) "False"
neuper@37906
  1358
*)
neuper@37906
  1359
val fmz = ["equality (2*sqrt(261 - x) - sqrt(2+2*x)=sqrt(2)*sqrt(5 - 3*x))",
neuper@37906
  1360
	   "solveFor x","solutions L"];
neuper@37991
  1361
val (dI',pI',mI') = ("RootEq",["univariate","equation"],["no_met"]);
neuper@37906
  1362
neuper@37906
  1363
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
  1364
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1365
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1366
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1367
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1368
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1369
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1370
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1371
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1372
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1373
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1374
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1375
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1376
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1377
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1378
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1379
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1380
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1381
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1382
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1383
val (p,_,f,nxt,_,pt) = me nxt p [1] pt; f2str f;
neuper@37906
  1384
if f = Form'
neuper@37906
  1385
      (FormKF
neuper@37906
  1386
       (~1, EdUndef, 0, Nundef, "-1064944 + 32 * x + -48 * x ^^^ 2 = 0"))then()
neuper@37906
  1387
else raise error "rlang.sml: diff.behav. in Schalk II s.66 Bsp 23b";
neuper@37906
  1388
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1389
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1390
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1391
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1392
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1393
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1394
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1395
case f of Form' (FormKF (~1,EdUndef,_,Nundef,"[]")) => ()
neuper@37906
  1396
	 | _ => raise error "rlang.sml: diff.behav. in  Schalk II s.66 Bsp 23b []";
neuper@37906
  1397
neuper@37906
  1398
(*-----------------  Schalk II s.66 Bsp 28a ------------------------*)
neuper@37906
  1399
"Schalk II s.66 Bsp 28a (A=(c/d)*sqrt(4*a^^^2 - c^^^2))";
neuper@37906
  1400
"Schalk II s.66 Bsp 28a (A=(c/d)*sqrt(4*a^^^2 - c^^^2))";
neuper@37906
  1401
"Schalk II s.66 Bsp 28a (A=(c/d)*sqrt(4*a^^^2 - c^^^2))";
neuper@37906
  1402
val fmz = ["equality (A=(c/d)*sqrt(4*a^^^2 - c^^^2))",
neuper@37906
  1403
	   "solveFor a","solutions L"];
neuper@37991
  1404
val (dI',pI',mI') = ("RootEq",["univariate","equation"],["no_met"]);
neuper@37906
  1405
(*val p = e_pos'; 
neuper@37906
  1406
val c = []; 
neuper@37906
  1407
val (mI,m) = ("Init_Proof",Init_Proof (fmz, (dI',pI',mI')));
neuper@37906
  1408
val (p,_,f,nxt,_,pt) = me (mI,m) p c EmptyPtree;*)
neuper@37906
  1409
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
  1410
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1411
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1412
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1413
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1414
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1415
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1416
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1417
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1418
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1419
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1420
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1421
(*if f = Form'
neuper@37906
  1422
      (FormKF
neuper@37906
  1423
         (~1,
neuper@37906
  1424
            EdUndef,
neuper@37906
  1425
            0,
neuper@37906
  1426
            Nundef,
neuper@37906
  1427
            "c ^^^ 4 / d ^^^ 2 + A ^^^ 2 * d ^^^ 2 / d ^^^ 2 +\n-4 * c ^^^ 2 / d ^^^ 2 * a ^^^ 2 =\n0")) then ()*)
neuper@37906
  1428
if f2str f = 
neuper@37906
  1429
   "c ^^^ 4 / d ^^^ 2 + A ^^^ 2 / 1 + -4 * c ^^^ 2 / d ^^^ 2 * a ^^^ 2 = 0"
neuper@37906
  1430
then () else raise error "rlang.sml: diff.behav. in Schalk II s.66 Bsp 28a";
neuper@37906
  1431
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1432
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1433
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1434
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1435
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1436
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1437
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1438
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1439
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1440
case f of Form' (FormKF (~1,EdUndef,0,Nundef,"[a = sqrt ((c ^^^ 4 + A ^^^ 2 * d ^^^ 2) / (4 * c ^^^ 2)),\n a = -1 * sqrt ((c ^^^ 4 + A ^^^ 2 * d ^^^ 2) / (4 * c ^^^ 2))]")) => ()
neuper@37906
  1441
| _ => raise error "rlang.sml: diff.behav. in  Schalk II s.66 Bsp 28a [a=...]";
neuper@37906
  1442
neuper@37906
  1443
neuper@37906
  1444
neuper@37906
  1445
(*-----------------  Schalk II s.68 Bsp 52b ------------------------*)
neuper@37906
  1446
"Schalk II s.68 Bsp 52b (1/(x - a+b)=1/x - 1/a + 1/b)";
neuper@37906
  1447
val fmz = ["equality (1/(x - a+b)=1/x - 1/a + 1/b)",
neuper@37906
  1448
	   "solveFor x","solutions L"];
neuper@37991
  1449
val (dI',pI',mI') = ("RatEq",["univariate","equation"],["no_met"]);
neuper@37906
  1450
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
  1451
(* val nxt = ("Model_Problem",Model_Problem ["rational","univariate","equation"])*)
neuper@37906
  1452
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1453
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37991
  1454
(*val nxt = ("Specify_Theory",Specify_Theory "RatEq")*)
neuper@37906
  1455
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1456
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1457
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1458
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1459
(*val p = ([3],Res)
neuper@37906
  1460
val f="1 * (a * (b * x)) = (a * b + (a * x + -1 * (b * x))) * (b + (x + -1 * a)
neuper@37991
  1461
val nxt = Subproblem ("RatEq",["univariate","equation"]))*)
neuper@37906
  1462
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1463
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1464
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37991
  1465
(*val nxt = ("Specify_Theory",Specify_Theory "PolyEq")*)
neuper@37906
  1466
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1467
(* nxt = Specify_Problem ["normalize","polynomial","univariate","equation"])*)
neuper@37906
  1468
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1469
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1470
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1471
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1472
(*val (p,_,f,nxt,_,pt) = me nxt p [1] pt; at introducing of MGs norm_Rational*)
neuper@37906
  1473
(*val p = ([4,5],Res)  val f ="b * a ^^^ 2 + -1 * a * b ^^^ 2 + (a ^^^ 2 + b ^^^ 2 + -2 * a * b) * x +\n(b + -1 * a) * x ^^^ 2 =\n0"))
neuper@37991
  1474
val nxt = Subproblem ("PolyEq",["polynomial","univariate","equation"]))*)
neuper@37906
  1475
if f = Form'
neuper@37906
  1476
      (FormKF
neuper@37906
  1477
         (~1,
neuper@37906
  1478
            EdUndef,
neuper@37906
  1479
            0,
neuper@37906
  1480
            Nundef,
neuper@37906
  1481
            "b * a ^^^ 2 + -1 * a * b ^^^ 2 + (a ^^^ 2 + b ^^^ 2 + -2 * a * b) * x +\n(b + -1 * a) * x ^^^ 2 =\n0")) then ()
neuper@37906
  1482
else raise error "rlang.sml: diff.behav. in chalk I s.87 Bsp 38b";
neuper@37906
  1483
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1484
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1485
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37991
  1486
(*val nxt = ("Specify_Theory",Specify_Theory "PolyEq")*)
neuper@37906
  1487
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1488
(*Specify_Problem["abcFormula","degree_2","polynomial","univariate","equation*)
neuper@37906
  1489
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1490
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1491
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1492
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1493
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1494
(*val (p,_,f,nxt,_,pt) = me nxt p [1] pt;introducing MGs norm_Rational*)
neuper@37906
  1495
(*val p = ([4,6,5],Res) val f ="[x =\n (2 * a * b + -1 * a ^^^ 2 + -1 * b ^^^ 2 +\n  sqrt\n   (a ^^^ 4 + b ^^^ 4 + -4 * a * a * b ^^^ 2 + -4 * a * b * a ^^^ 2 +\n    -4 * b * b * a ^^^ 2 +\n    4 * a * a * b ^^^ 2 +\n    4 * a * b * a ^^^ 2 +\n    2 * a ^^^ 2 * b ^^^ 2)) /\n (-2 * a + 2 * #"
neuper@37906
  1496
nx Check_Postcond["abcFormula","degree_2","polynomial","univariate","equation*)
neuper@37906
  1497
(*9.9.03:   -"-  ["normalize","polynomial","univar...*)
neuper@37906
  1498
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1499
(*val p = ([4,6],Res)
neuper@37906
  1500
val nxt =Check_Postcond ["normalize","polynomial","univariate","equation"])*)
neuper@37906
  1501
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1502
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;(*1 additional for MGs norm_Rational*)
neuper@37906
  1503
if p = ([],Res) andalso f = Form' (FormKF (~1,EdUndef,0,Nundef,
neuper@37906
  1504
"[x =\n (2 * a * b + -1 * a ^^^ 2 + -1 * b ^^^ 2 +\n  sqrt\n   (a ^^^ 4 + b ^^^ 4 + -4 * a * a * b ^^^ 2 + -4 * a * b * a ^^^ 2 +\n    -4 * b * b * a ^^^ 2 +\n    4 * a * a * b ^^^ 2 +\n    4 * a * b * a ^^^ 2 +\n    2 * a ^^^ 2 * b ^^^ 2)) /\n (-2 * a + 2 * b),\n x =\n (2 * a * b + -1 * a ^^^ 2 + -1 * b ^^^ 2 +\n  -1 *\n  sqrt\n   (a ^^^ 4 + b ^^^ 4 + -4 * a * a * b ^^^ 2 + -4 * a * b * a ^^^ 2 +\n    -4 * b * b * a ^^^ 2 +\n    4 * a * a * b ^^^ 2 +\n    4 * a * b * a ^^^ 2 +\n    2 * a ^^^ 2 * b ^^^ 2)) /\n (-2 * a + 2 * b)]")) andalso nxt = ("End_Proof'",End_Proof') then writeln"simplify MG"
neuper@37906
  1505
else raise error "rlang.sml: diff.behav. in rational-a-b";
neuper@37906
  1506
neuper@37906
  1507
(*-----------------  Schalk II s.68 Bsp 56a ------------------------*)
neuper@37906
  1508
"Schalk II s.68 Bsp 56a ((a+b*x)/(a-b*x) - (a - b*x)/(a+b*x)= (4*a*b)/(a^^^2 - b^^^2))";
neuper@37906
  1509
val fmz = ["equality ((a+b*x)/(a-b*x) - (a - b*x)/(a+b*x)= (4*a*b)/(a^^^2 - b^^^2))","solveFor x","solutions L"];
neuper@37991
  1510
val (dI',pI',mI') = ("RatEq",["univariate","equation"],["no_met"]);
neuper@37906
  1511
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
  1512
(* val nxt = ("Model_Problem",Model_Problem ["rational","univariate","equation"]) *)
neuper@37906
  1513
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1514
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1515
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1516
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1517
(*SK loops with poly:
neuper@37906
  1518
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1519
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1520
neuper@37906
  1521
... with sml-nj:
neuper@37906
  1522
 (a + b * x) / (a + -1 * (b * x)) + (-1 * a + b * x) / (a + b * x) =
neuper@37906
  1523
    4 * (a * b) / (a ^^^ 2 + -1 * b ^^^ 2)
neuper@37906
  1524
common_nominator_p wird nicht angewendet, weil ...
neuper@37906
  1525
add_fract terminiert nicht: 030603
neuper@37906
  1526
siehe Rational.ML rational.sml
neuper@37906
  1527
*)
neuper@37906
  1528
neuper@37906
  1529
(*
neuper@37906
  1530
"(a + b * x) / (a + -1 * (b * x)) + -1 * (a + -1 * (b * x)) / (a + b * x) =\n4 * a * b / (a ^^^ 2 + -1 * b ^^^ 2)"
neuper@37906
  1531
neuper@37906
  1532
val nxt = ("Rewrite_Set",Rewrite_Set "make_ratpoly") : string * tac           
neuper@37906
  1533
"(a + b * x) / (a + -1 * b * x) + (-1 * a + b * x) / (a + b * x) =\n4 *
neuper@37906
  1534
a * b / (a ^^^ 2 + -1 * b ^^^ 2)"
neuper@37906
  1535
neuper@37906
  1536
neuper@37906
  1537
val t = str2term"(a + b * x) / (a + -1 * (b * x)) + -1 * (a + -1 * (b * x)) / (a + b * x) =\n4 * a * b / (a ^^^ 2 + -1 * b ^^^ 2)";
neuper@37906
  1538
trace_rewrite:=true;
neuper@37926
  1539
val SOME (t',asm) = rewrite_set_ thy false norm_Rational t;
neuper@37906
  1540
term2str t';
neuper@37906
  1541
trace_rewrite:=false;
neuper@37906
  1542
neuper@37906
  1543
#  rls: norm_Rational on: (a + b * x) / (a + -1 * (b * x)) + -1 * (a + -1 * (b * x)) / (a + b * x) = 4 * a * b / (a ^^^ 2 + -1 * b ^^^ 2)
neuper@37906
  1544
neuper@37906
  1545
##  rls: discard_minus on: 
neuper@37906
  1546
##  rls: powers on:
neuper@37906
  1547
##  rls: rat_mult_divide on:
neuper@37906
  1548
##  rls: expand on:
neuper@37906
  1549
##  rls: reduce_0_1_2 on:
neuper@37906
  1550
##  rls: order_add_mult on:
neuper@37906
  1551
###  try thm: real_mult_commute
neuper@37906
  1552
===  rewrites to: (a + b * x) / (a + -1 * (b * x)) + (-1 * a + -1 * (-1 * (b * x))) / (a + b * x) = b * (4 * a) / (a ^^^ 2 + -1 * b ^^^ 2)
neuper@37906
  1553
neuper@37906
  1554
###  try thm: real_mult_left_commute
neuper@37906
  1555
===  rewrites to: (a + b * x) / (a + -1 * (b * x)) + (-1 * a + -1 * (-1 * (b * x))) / (a + b * x) = 4 * (b * a) / (a ^^^ 2 + -1 * b ^^^ 2)
neuper@37906
  1556
neuper@37906
  1557
###  try thm: real_mult_commute
neuper@37906
  1558
===  rewrites to: (a + b * x) / (a + -1 * (b * x)) + (-1 * a + -1 * (-1 * (b * x))) / (a + b * x) = 4 * (a * b) / (a ^^^ 2 + -1 * b ^^^ 2)
neuper@37906
  1559
neuper@37906
  1560
###  try calc: op *'
neuper@37906
  1561
===  calc. to: (a + b * x) / (a + -1 * (b * x)) + (-1 * a + 1 * (b * x)) / (a +b * x) = 4 * (a * b) / (a ^^^ 2 + -1 * b ^^^ 2)
neuper@37906
  1562
neuper@37906
  1563
##  rls: common_nominator_p on: (a + b * x) / (a + -1 * (b * x)) + (-1 * a + 1 * (b * x)) / (a + b * x) = 
neuper@37906
  1564
                                                                                                    4 * (a * b) / (a ^^^ 2 + -1 * b ^^^ 2)
neuper@37906
  1565
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!GC
neuper@37906
  1566
neuper@37906
  1567
##  rls: discard_minus on:
neuper@37906
  1568
##  rls: powers on:
neuper@37906
  1569
##  rls: rat_mult_divide on:
neuper@37906
  1570
##  rls: expand on:
neuper@37906
  1571
##  rls: reduce_0_1_2 on:
neuper@37906
  1572
###  try thm: real_mult_1
neuper@37906
  1573
===  rewrites to: (a + b * x) / (a + -1 * (b * x)) + (-1 * a + b * x) / (a + b * x) = 4 * (a * b) / (a ^^^ 2 + -1 * b ^^^ 2)
neuper@37906
  1574
neuper@37906
  1575
##  rls: order_add_mult on:
neuper@37906
  1576
neuper@37906
  1577
##  rls: common_nominator_p on: (a + b * x) / (a + -1 * (b * x)) + (-1 * a + b * x) / (a + b * x) =
neuper@37906
  1578
                                                                                                    4 * (a * b) / (a ^^^ 2 + -1 * b ^^^ 2)
neuper@37906
  1579
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!GC
neuper@37906
  1580
neuper@37906
  1581
##  rls: discard_minus on:
neuper@37906
  1582
##  rls: powers on:
neuper@37906
  1583
##  rls: rat_mult_divide on:
neuper@37906
  1584
##  rls: expand on:
neuper@37906
  1585
##  rls: reduce_0_1_2 on:
neuper@37906
  1586
##  rls: order_add_mult on:
neuper@37906
  1587
##  rls: collect_numerals on:
neuper@37906
  1588
##  rls: common_nominator_p on: (a + b * x) / (a + -1 * (b * x)) + (-1 * a + b * x) / (a + b * x) =
neuper@37906
  1589
4 * (a * b) / (a ^^^ 2 + -1 * b ^^^ 2)
neuper@37906
  1590
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!GC
neuper@37906
  1591
*)
neuper@37906
  1592
 
neuper@37906
  1593
neuper@37906
  1594
(*-----------------  Schalk II s.68 Bsp 61b ------------------------*)
neuper@37906
  1595
"Schalk II s.68 Bsp 61b (sqrt(x+a)+sqrt(b - x)=sqrt(a+b))";
neuper@37906
  1596
val fmz = ["equality (sqrt(x+a)+sqrt(b - x)=sqrt(a+b))",
neuper@37906
  1597
	   "solveFor x","solutions L"];
neuper@37991
  1598
val (dI',pI',mI') = ("RootEq",["univariate","equation"],["no_met"]);
neuper@37906
  1599
neuper@37906
  1600
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37986
  1601
(* val nxt = ("Model_Problem",Model_Problem ["sq","root'","univariate","equation"])*)
neuper@37986
  1602
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1603
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1604
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1605
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1606
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1607
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1608
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37986
  1609
(* val nxt = ("Model_Problem",Model_Problem ["sq","root'","univariate","equation"])*)
neuper@37906
  1610
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1611
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1612
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1613
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1614
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1615
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1616
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1617
(*val nxt = ("Model_Problem",
neuper@37906
  1618
   Model_Problem ["normalize","polynomial","univariate","equation"])*)
neuper@37906
  1619
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1620
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1621
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1622
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1623
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1624
if f = Form'
neuper@37906
  1625
      (FormKF
neuper@37906
  1626
         (~1,
neuper@37906
  1627
            EdUndef,
neuper@37906
  1628
            0,
neuper@37906
  1629
            Nundef,
neuper@37906
  1630
            (*"-4 * b ^^^ 2 + -4 * a * b + 4 * b ^^^ 2 + 8 * a * b +\n(-2 * a + -4 * a + -4 * b + 2 * a + 8 * b) * x +\n-4 * x ^^^ 2 =\n0" before MG*)
neuper@37906
  1631
	    "4 * a * b + (-4 * a + 4 * b) * x + -4 * x ^^^ 2 = 0")) then ()
neuper@37906
  1632
else raise error "rlang.sml: diff.behav. in Schalk II s.68 Bsp 61b";
neuper@37906
  1633
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1634
(*val nxt = ("Model_Problem", Model_Problem
neuper@37906
  1635
     ["abcFormula","degree_2","polynomial","univariate","equation"])*)
neuper@37906
  1636
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1637
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1638
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1639
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1640
(* f= ... "-4 * b ^^^ 2 + -4 * a * b + 4 * b ^^^ 2 + 8 * a * b + 
neuper@37906
  1641
           (-2 * a + -4 * a + -4 * b + 2 * a + 8 * b) * x + -4 * x ^^^ 2 =0"*)
neuper@37906
  1642
(*val nxt = ("Rewrite_Set_Inst",Rewrite_Set_Inst ([#],"d2_polyeq_abcFormula_simplify"))*)
neuper@37906
  1643
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1644
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1645
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1646
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1647
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1648
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1649
(*if f = Form' (FormKF (~1,EdUndef,0,Nundef, with norm_Rational before MG
neuper@37906
  1650
"[x =\n (-2 * a + -4 * b + 6 * a +\n  sqrt\n   (32 * a * b + -16 * a ^^^ 2 + -48 * b ^^^ 2 + 24 * a ^^^ 2 +\n    64 * b ^^^ 2 +\n    8 * a ^^^ 2)) /\n -8,\n x =\n (-2 * a + -4 * b + 6 * a +\n  -1 *\n  sqrt\n   (32 * a * b + -16 * a ^^^ 2 + -48 * b ^^^ 2 + 24 * a ^^^ 2 +\n    64 * b ^^^ 2 +\n    8 * a ^^^ 2)) /\n -8]")) then writeln"simplify MG"*)
neuper@37906
  1651
if f = Form' (FormKF (~1,EdUndef,0,Nundef,"[x =\n (-4 * b + 4 * a + sqrt (32 * a * b + 16 * a ^^^ 2 + 16 * b ^^^ 2)) / -8,\n x =\n (-4 * b + 4 * a + -1 * sqrt (32 * a * b + 16 * a ^^^ 2 + 16 * b ^^^ 2)) /\n -8]")) then ()
neuper@37906
  1652
else raise error "rlang.sml: diff.behav. Bsp 61b";
neuper@37906
  1653
(*WN.18.12.03: extreme run-time !!!*)
neuper@37906
  1654
neuper@37906
  1655
neuper@37906
  1656
(*-----------------  Schalk II s.68 Bsp 62b ------------------------*)
neuper@37906
  1657
"Schalk II s.68 Bsp 62b (sqrt((x+a)^^^2+(x - 2*b)^^^2)=a+2*b)";
neuper@37906
  1658
val fmz = ["equality (sqrt((x+a)^^^2+(x - 2*b)^^^2)=a+2*b)",
neuper@37906
  1659
	   "solveFor x","solutions L"];
neuper@37991
  1660
val (dI',pI',mI') = ("RootEq",["univariate","equation"],["no_met"]);
neuper@37906
  1661
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37986
  1662
(*val nxt = ("Model_Problem",Model_Problem ["sq","root'","univariate","equation"]) *)
neuper@37906
  1663
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1664
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1665
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1666
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1667
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1668
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1669
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1670
(* val nxt = ("Model_Problem",
neuper@37906
  1671
   Model_Problem ["normalize","polynomial","univariate","equation"])*)
neuper@37906
  1672
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1673
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1674
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1675
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1676
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1677
if f = Form'
neuper@37906
  1678
      (FormKF
neuper@37906
  1679
         (~1,
neuper@37906
  1680
            EdUndef,
neuper@37906
  1681
            0,
neuper@37906
  1682
            Nundef,
neuper@37906
  1683
            "-4 * a * b + (-4 * b + 2 * a) * x + 2 * x ^^^ 2 = 0")) then ()
neuper@37906
  1684
else raise error "rlang.sml: diff.behav. in Schalk II s.68 Bsp 62b";
neuper@37906
  1685
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1686
(*val nxt =  ("Model_Problem", Model_Problem
neuper@37906
  1687
     ["abcFormula","degree_2","polynomial","univariate","equation"])*)
neuper@37906
  1688
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1689
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1690
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1691
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1692
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1693
(*val f = ... "-4 * a * b + (-4 * b + 2 * a) * x + 2 * x ^^^ 2 = 0" *)
neuper@37906
  1694
(*val nxt =  ("Rewrite_Set_Inst",Rewrite_Set_Inst ([#],"d2_polyeq_abcFormula_simplify"))*)
neuper@37906
  1695
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1696
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1697
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1698
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1699
(*val (p,_,f,nxt,_,pt) = me nxt p [1] pt;introduc.MGs norm_Rational*)
neuper@37906
  1700
if f = Form' (FormKF (~1,EdUndef,0,Nundef,
neuper@37906
  1701
        "[x = (-2 * a + 4 * b + sqrt (16 * a * b + 16 * b ^^^ 2 + 4 * a ^^^ 2)) / 4,\n x =\n (-2 * a + 4 * b + -1 * sqrt (16 * a * b + 16 * b ^^^ 2 + 4 * a ^^^ 2)) / 4]")) then writeln "simplify MG"
neuper@37906
  1702
else raise error "rlang.sml: diff.behav. in II 62b [x=...]";
neuper@37906
  1703
val asms = get_assumptions_ pt p;
neuper@37906
  1704
if asms = [(str2term"0 <= ((-2 * a + 4 * b + sqrt (16 * a * b + 16 * b ^^^ 2 + 4 * a ^^^ 2)) / 4 + a) ^^^ 2 + ((-2 * a + 4 * b + sqrt (16 * a * b + 16 * b ^^^ 2 + 4 * a ^^^ 2)) / 4 - 2 * b) ^^^ 2", []),
neuper@37906
  1705
	   (str2term"0 <= a + 2 * b", []),
neuper@37906
  1706
	   (str2term"8 * (-4 * a * b) <= (-4 * b + 2 * a) ^^^ 2", []),
neuper@37906
  1707
	   (str2term"8 * (-4 * a * b) <= (-4 * b + 2 * a) ^^^ 2", []),
neuper@37906
  1708
	   (str2term"0 <= ((-2 * a + 4 * b + -1 * sqrt (16 * a * b + 16 * b ^^^ 2 + 4 * a ^^^ 2)) / 4 + a) ^^^ 2 + ((-2 * a + 4 * b + -1 * sqrt (16 * a * b + 16 * b ^^^ 2 + 4 * a ^^^ 2)) / 4 - 2 * b) ^^^ 2", []),
neuper@37906
  1709
	   (str2term"0 <= a + 2 * b", []),
neuper@37906
  1710
	   (str2term"8 * (-4 * a * b) <= (-4 * b + 2 * a) ^^^ 2", []),
neuper@37906
  1711
	   (str2term"8 * (-4 * a * b) <= (-4 * b + 2 * a) ^^^ 2", [])] 
neuper@37906
  1712
then writeln "should be simplified MG"
neuper@37906
  1713
else raise error "rlang.sml: diff.behav. in II 62b asms";
neuper@37906
  1714
neuper@37906
  1715
"------ WN.TEST---------------------------------";
neuper@37906
  1716
"------ WN.TEST---------------------------------";
neuper@37906
  1717
"------ WN.TEST---------------------------------";
neuper@37906
  1718
(*EO-7*)
neuper@37906
  1719
val fmz = ["equality ((2*x+1)*x^^^2 = 0)",
neuper@37906
  1720
	   "solveFor x","solutions L"];
neuper@37991
  1721
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
  1722
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
  1723
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1724
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1725
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1726
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1727
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1728
(*
neuper@37906
  1729
val f = Form' (FormKF (~1,EdUndef,1,Nundef,"(2 * x + 1) * x ^^^ 2 = 0"))
neuper@37906
  1730
normiert nicht ... korr.WN:
neuper@37906
  1731
val t = str2term "(2*x+1)*x^^^2 = 0";
neuper@37906
  1732
val subst = [(str2term "bdv", str2term "x")];
neuper@37926
  1733
val SOME (t',_) = rewrite_set_inst_ thy false subst make_ratpoly_in t;
neuper@37906
  1734
if term2str t' = "x ^^^ 2 + 2 * x ^^^ 3 = 0" then () 
neuper@37906
  1735
else raise error "rlang.sml: 7";
neuper@37906
  1736
*)
neuper@37906
  1737
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1738
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1739
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1740
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1741
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1742
neuper@37906
  1743
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1744
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1745
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1746
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1747
val (p,_,f,nxt,_,pt) = me nxt p [1] pt;
neuper@37906
  1748
if f = Form' (FormKF (~1,EdUndef,0,Nundef,"[x = 0, x = 0, x = -1 / 2]")) then()
neuper@37906
  1749
else raise error "rlang.sml WN.TEST new behaviour";
neuper@37906
  1750
neuper@37906
  1751
"------ rlang.sml end---------------------------------";
neuper@37906
  1752
neuper@37906
  1753
(*------------------------------vvv-Rewrite_Set "rat_eliminate"---------
neuper@37906
  1754
> trace_rewrite:=true;
neuper@37906
  1755
> val t = str2term 
neuper@37906
  1756
  "(3 + -1 * x + 1 * x ^^^ 2) / (9 * x + -6 * x ^^^ 2 + 1 * x ^^^ 3) = 1 / x";
neuper@37926
  1757
> val SOME (t',asm) = 
neuper@37906
  1758
      rewrite_ thy dummy_ord rateq_erls true rat_mult_denominator_both t;
neuper@37906
  1759
> term2str t'; terms2str asm;
neuper@37906
  1760
"(3 + -1 * x + 1 * x ^^^ 2) * x = 1 * (9 * x + -6 * x ^^^ 2 + 1 * x ^^^ 3)"
neuper@37906
  1761
"[\"9 * x + -6 * x ^^^ 2 + 1 * x ^^^ 3 ~= 0\",\"x ~= 0\"]"
neuper@37906
  1762
> trace_rewrite:=false;
neuper@37906
  1763
  ------------------------------^^^-Rewrite_Set "rat_eliminate"---------*)
neuper@37906
  1764
neuper@37906
  1765
neuper@37906
  1766
"-------------------- WN.15.5.03: Pythagoras -------------------------------";
neuper@37906
  1767
"-------------------- WN.15.5.03: Pythagoras -------------------------------";
neuper@37906
  1768
"-------------------- WN.15.5.03: Pythagoras -------------------------------";
neuper@37906
  1769
(*EO-9*)
neuper@37906
  1770
val fmz = ["equality ((a/2)^^^2 + (b/2)^^^2 = r^^^2)",
neuper@37906
  1771
	   "solveFor a","solutions L"];
neuper@37991
  1772
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
  1773
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37906
  1774
(*   Model_Problem ["normalize","polynomial","univariate","equation"])*)
neuper@37906
  1775
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1776
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1777
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1778
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1779
(*val nxt = ("Apply_Method",Apply_Method ["PolyEq","normalize_poly"])*)
neuper@37906
  1780
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1781
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37991
  1782
(*val nxt = Subproblem ("PolyEq",["polynomial","univariate","equation"])*)
neuper@37906
  1783
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1784
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1785
(*val nxt =Model_Problem ["sq_only","degree_2","polynomial","univariate","equation"])*)
neuper@37906
  1786
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1787
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1788
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1789
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1790
(*val nxt = Apply_Method ["PolyEq","solve_d2_polyeq_sqonly_equation"])*)
neuper@37906
  1791
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1792
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1793
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1794
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1795
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1796
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1797
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1798
if f = Form' (FormKF (~1,EdUndef,0,Nundef,
neuper@37906
  1799
"[a = sqrt ((-1 * b ^^^ 2 + 4 * r ^^^ 2) / 1),\n a = -1 * sqrt ((-1 * b ^^^ 2 + 4 * r ^^^ 2) / 1)]")) andalso nxt = ("End_Proof'",End_Proof')
neuper@37906
  1800
then writeln"simplify result\nsimplify result\nsimplify result"
neuper@37906
  1801
else raise error "rlang.sml: diff.behav. in Pythagoras";
neuper@37906
  1802
val asms = get_assumptions_ pt p;
neuper@37906
  1803
(*if asms = [(str2term"0 <= -4 * (b ^^^ 2 / 4 + -4 * r ^^^ 2 / 4)", []),
neuper@37906
  1804
           (str2term"0 <= -4 * (b ^^^ 2 / 4 + -4 * r ^^^ 2 / 4)", [])]*)
neuper@37906
  1805
if asms2str asms = 
neuper@37906
  1806
   "[(0 <= -4 * (b ^^^ 2 / 4 + -1 * r ^^^ 2 / 1), []),\
neuper@37906
  1807
   \(0 <= -4 * (b ^^^ 2 / 4 + -1 * r ^^^ 2 / 1), [])]"
neuper@37906
  1808
then writeln"simplify result\nsimplify result\nsimplify result"
neuper@37906
  1809
else raise error "rlang.sml: diff.behav. in Pythagoras asms";
neuper@37906
  1810
neuper@37906
  1811
neuper@37906
  1812
"-------------------- WN.15.5.03: equation within the maximum example ------";
neuper@37906
  1813
"-------------------- WN.15.5.03: equation within the maximum example ------";
neuper@37906
  1814
"-------------------- WN.15.5.03: equation within the maximum example ------";
neuper@37906
  1815
(*EO-10*)
neuper@37906
  1816
val fmz = ["equality (2*sqrt(r^^^2 - (u/2)^^^2) - u^^^2/(2*sqrt(r^^^2 - (u/2)^^^2))= 0)",
neuper@37906
  1817
	   "solveFor u","solutions L"];
neuper@37991
  1818
val (dI',pI',mI') = ("PolyEq",["univariate","equation"],["no_met"]);
neuper@37906
  1819
neuper@37906
  1820
val (p,_,f,nxt,_,pt) = CalcTreeTEST [(fmz, (dI',pI',mI'))];
neuper@37986
  1821
(*   Model_Problem ["normalize","root'","univariate","equation"])*)
neuper@37906
  1822
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1823
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1824
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1825
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1826
(*val nxt = Apply_Method ["RootEq","norm_sq_root_equation"])     *)
neuper@37906
  1827
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37991
  1828
(*val nxt = Subproblem ("RootEq",["univariate","equation"]))*)
neuper@37906
  1829
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37986
  1830
(*val nxt = Model_Problem ["sq","root'","univariate","equation"]) *)
neuper@37906
  1831
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1832
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1833
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1834
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1835
(*val nxt = Apply_Method ["RootEq","solve_sq_root_equation"])     *)
neuper@37906
  1836
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1837
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1838
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37991
  1839
(*val nxt = Subproblem ("RootEq",["univariate","equation"]))*)
neuper@37906
  1840
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1841
(*val nxt = Model_Problem ["rational","univariate","equation"]) *)
neuper@37906
  1842
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1843
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1844
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1845
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1846
(*val nxt = Apply_Method ["RootEq","solve_rat_equation"])     *)
neuper@37906
  1847
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1848
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37991
  1849
(*val nxt = Subproblem ("RootEq",["univariate","equation"]))*)
neuper@37906
  1850
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1851
(*val nxt = Model_Problem ["normalize","polynomial","univariate","equation"]) *)
neuper@37906
  1852
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1853
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1854
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1855
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1856
(*val nxt = Apply_Method ["PolyEq","normalize_poly"])     *)
neuper@37906
  1857
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1858
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37991
  1859
(*val nxt = Subproblem ("PolyEq",["polynomial","univariate","equation"]))*)
neuper@37906
  1860
if f = Form'
neuper@37906
  1861
      (FormKF
neuper@37906
  1862
         (~1,
neuper@37906
  1863
            EdUndef,
neuper@37906
  1864
            0,
neuper@37906
  1865
            Nundef,
neuper@37906
  1866
            "-16 * r ^^^ 4 + 8 * r ^^^ 2 * u ^^^ 2 = 0")) then ()
neuper@37906
  1867
else raise error "rlang.sml: diff.behav. in Schalk I s.87 Bsp 38b";
neuper@37906
  1868
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1869
(*val nxt = Model_Problem ["sq_only","degree_2","polynomial","univariate","equation"]) *)
neuper@37906
  1870
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1871
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1872
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1873
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1874
(*val nxt = Apply_Method ["PolyEq","solve_d2_polyeq_sqonly_equation"])     *)
neuper@37906
  1875
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1876
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1877
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1878
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1879
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1880
val (p,_,f,nxt,_,pt) = me nxt p c pt;val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1881
val (p,_,f,nxt,_,pt) = me nxt p c pt;
neuper@37906
  1882
if f = Form' (FormKF (~1,EdUndef,0,Nundef,"[u = sqrt (2 * r ^^^ 2 / 1), u = -1 * sqrt (2 * r ^^^ 2 / 1)]")) then()
neuper@37906
  1883
else raise error "rlang.sml WN.TEST new behaviour in max-rooteq";