| 1. Purpose of reduce@trinitas.mju.ac.kr     [    
                              ÇÑ±Û     
                              ¼³¸í                    
                              ]Automatic execution of sender-provided reduce commands                      
                              between
 input:      and      end input:
 and return of the results to the e-mail sender.
 2. IntroductionA Computer Algebra System, Reduce is available via                      
                              our InetCompu Service.  In particular, this                      
                              will help a lot those having difficulties in basic                      
                              symbolic and numerical computations such as in                      
                              calculus, linear algebra, and engineering                      
                              mathematics, etc.
 3. Notes3-1. No reduce commands requiring graphics treatments,                      
                              for instances, plot, etc, will produce                      
                              highly qualified visual results.
 3-2. For a trouble-free handling of your e-mail, we                
                              recommend you to use MicroSoft Outlook Express, New mail >                
                              Alt+O                       
> Alt+X (with No Encryption),  to                  
                              send out an e-mail to reduce@trinitas.mju.ac.kr                    
                              .  Otherwise, please read subsections 3-3 and                
                              3-4 below.
 3-3. (Important) Instead of using the special                  
                              characters "<<" and ">>"                  
                              in your programming, for instance, in reduce                
                              commands,  it                  
                              is strongly recommended to use the words "begin"                  
                              and "end" for them, respectively,                  
                              as is shown in the example below, in order to                  
                              avoid possible mistreatment of these special                 
                              characters by your web-based                  
                              mail server you are using.  This could                
                              be caused by severe filteration of the main body of your                 
                              e-mail before it leaves your web-based mail                
                              server. The same recommendation applies to:                
                              "leq" = "<=", "geq"                
                              = ">=", "eq" =                
                              "=", "greaterp" =                
                              ">", and "lessp" =                
                              "<"   .
 3-4. (Warning) Even if you do not use these                
                              special characters, some free web-mail servers                
                              you may use sometimes insert commercial ads somewhere in the                
                              main body of your e-mail and then this garbage-containing input will certainly cause a                
                              trouble to our InetCompu service. For this reason,                
                              we strongly recommend you to use MicroSoft Outlook                
                              Express, New mail > Alt+O                       
> Alt+X (with No Encryption), to send out your e-mail to us.
 4. How to do: Send an e-mail with plain text style                      
(for instance, in the case of MicroSoft Outlook Express, New mail > Alt+O                      
> Alt+X (with No Encryption)) to reduce@trinitas.mju.ac.kr                     
whose main body should consist of,  for example, something like this:  input:off echo$
 off nat$
 write "comment The following program computes               
                              minimum and
 maximum of a polynomial function f in 3 variables under
 a polynomial constraint g=0. It is a prototype example of
 Lagrange's method of multipliers, lamda";
 % inputs:f:=x^3+2*x*y*z-z^2$
 g:=x^2+y^2+z^2-1$
 % If you choose inputs different from the above               
                              ones,
 % then you may have to modify the following lines.
 f1:=df(f,x)-lamda*df(g,x)$
 f2:=df(f,y)-lamda*df(g,y)$
 f3:=df(f,z)-lamda*df(g,z)$
 result:=solve({f1,f2,f3,g},{lamda,x,y,z})$
 %% You don't have to modify the rest of lines.
 write "critical points := ",result;
 write "comment Now mimimum and maximum of f under the constraint
 g=0 are determined as:";
 minimum:=sub(part(result,1),f)$
 ctps_min:=part(result,1)cons{}$
 maximum:=sub(part(result,1),f)$
 ctps_max:=part(result,1)cons{}$
 j:=2$
 while j leq length(result) do
 begin a:=sub(part(result,j),f)$
 if a geq maximum then
 begin if a greaterp maximum then
 begin maximum:=a$
 ctps_max:=part(result,j)cons{}$
 end
 else if a leq minimum then
 begin
 ctps_min:=part(result,j).ctps_min$
 end
 else
 begin
 ctps_max:=part(result,j).ctps_max$
 end$
 end
 else if a leq minimum then
 begin if a lessp minimum then
 begin minimum:=a$
 ctps_min:=part(result,j)cons{}$
 end
 else
 begin
 ctps_min:=part(result,j).ctps_min$
 end$
 end
 else begin  end$
 j:=j+1$
 end$
 write "The maximum value of f under g=0 is, ",maximum,", and it occurs at the critical points ",ctps_max;
 write "The minimum value of f under g=0 is, ",minimum,", and it occurs at the critical points ",ctps_min;
 write "comment Check: Here are the values of f at all the             
                              computed critical points";
 j:=1$
 while j leq length(result) do
 begin a:=sub(part(result,j),f)$
 write "The value of f at the critical point ",part(result,j)," is:  ", a;
 j:=j+1$
 end$
 end input:
 which should tell us maximum and minimum of the function f 
                              under the constraint g=0 at the corresponding critical points, by  
                              Lagrange's method of multiplers. Then upon the arrival of such   
                              an e-mail, the     
                              commands between input: and end input: are     
                              executed automatically and the results are sent back to the e-mail sender immediately.     
                              The sender will also get the timex report on     
                              execution time by our Server at the end of the     
                              returning e-mail. [Reminder] When the   
                              requested job is computationally not very   
                              complicated, it should be quite the case that you   
                              will receive the result within a few   
                              Minutes.  But, our response consisting of the   
                              computed results can not be   
                              delivered to the sender properly, if either there   
                              is a spelling mistake in sender's e-mail address   
                              or sender's mail box is already filled with too 
                              many of other e-mails. Thus, if you do not receive the results  
                              although you have waited for some time, then please   
                              check your mail account to correct the above   
                              trouble-causing problems.  After that, try   
                              again according to the procedure described in   
                              Section 4 above. 5. An ExampleIf you send an e-mail to reduce@trinitas.mju.ac.kr      
                              whose main body consists of those lines in      
                              between          
                              input:          
                              and     end      
                              input:     , where      
                              "input:" and "end input"      
                              should be included, in Section 4 above, then you      
                              will receive the following output:
 Comment The followings are the      
                              requested inputs:
 off echo$
 off nat$
 write "comment The following program computes      
                              minimum and
 maximum of a polynomial function f in 3 variables      
                              under
 a polynomial constraint g=0. It is a prototype      
                              example of
 Lagrange's method of multipliers, lamda";
 
 % inputs:
 f:=x^3+2*x*y*z-z^2$
 g:=x^2+y^2+z^2-1$
 % If you choose inputs different from the above      
                              ones,
 % then you may have to modify the following lines.
 f1:=df(f,x)-lamda*df(g,x)$
 f2:=df(f,y)-lamda*df(g,y)$
 f3:=df(f,z)-lamda*df(g,z)$
 result:=solve({f1,f2,f3,g},{lamda,x,y,z})$
 %% You don't have to modify the rest of lines.
 write "critical points := ",result;
 write "comment Now mimimum and maximum of f      
                              under the constraint
 g=0 are determined as:";
 minimum:=sub(part(result,1),f)$
 ctps_min:=part(result,1)cons{}$
 maximum:=sub(part(result,1),f)$
 ctps_max:=part(result,1)cons{}$
 j:=2$
 while j leq length(result) do
 begin a:=sub(part(result,j),f)$
 if a geq maximum then
 begin if a greaterp maximum then
 begin maximum:=a$
 ctps_max:=part(result,j)cons{}$
 end
 else if a leq minimum then
 begin
 ctps_min:=part(result,j).ctps_min$
 end
 else
 begin
 ctps_max:=part(result,j).ctps_max$
 end$
 end
 else if a leq minimum then
 begin if a lessp minimum then
 begin minimum:=a$
 ctps_min:=part(result,j)cons{}$
 end
 else
 begin
 ctps_min:=part(result,j).ctps_min$
 end$
 end
 else begin  end$
 j:=j+1$
 end$
 write "The maximum value of f under g=0 is,      
                              ",maximum,", and it occurs at the      
                              critical points ",ctps_max;
 write "The minimum value of f under g=0 is,      
                              ",minimum,", and it occurs at the      
                              critical points ",ctps_min;
 write "comment Check: Here are the values of      
                              f at all the computed critical points";
 j:=1$
 while j leq length(result) do
 begin a:=sub(part(result,j),f)$
 write "The value of f at the critical point      
                              ",part(result,j)," is: ", a;
 j:=j+1$
 end$
 
                                                                                                              Comment Here are the results:$
 
 comment The following program computes minimum and
 maximum of a polynomial function f in 3 variables      
                              under
 a polynomial constraint g=0. It is a prototype      
                              example of
 Lagrange's method of multipliers, lamda$
 
 critical points := {{x=( -      
                              2)/3,z=2/3,y=1/3,lamda=( - 4)/3},
 {x=( - 2)/3,z=( - 2)/3,y=( - 1)/3,lamda=( - 4)/3},
 {x=( - 3)/8,
 z=sqrt(11)/(8*sqrt(2)),
 y=( - 3*sqrt(11))/(8*sqrt(2)),
 lamda=1/8},
 {x=( - 3)/8,
 z=( - sqrt(11))/(8*sqrt(2)),
 y=(3*sqrt(11))/(8*sqrt(2)),
 lamda=1/8},
 {x=1,z=0,y=0,lamda=3/2},
 {x=0,z=1,y=0,lamda=-1},
 {x=0,z=0,y=1,lamda=0},
 {x=0,z=0,y=-1,lamda=0},
 {x=0,z=-1,y=0,lamda=-1},
 {x=-1,z=0,y=0,lamda=( - 3)/2}}$
 
 comment Now mimimum and maximum of f under the      
                              constraint
 g=0 are determined as:$
 
 The maximum value of f under g=0 is, 1, and it      
                              occurs at the critical points {{x
 =1,z=0,y=0,lamda=3/2}}$
 
 The minimum value of f under g=0 is, ( - 28)/27
 , and it occurs at the critical points {{x=( -      
                              2)/3,z=( - 2)/3,y=( - 1)/3,lamda=
 ( - 4)/3},
 {x=( - 2)/3,z=2/3,y=1/3,lamda=( - 4)/3}}$
 
 comment Check: Here are the values of f at all the      
                              computed critical points$
 
 The value of f at the critical point {x=( -      
                              2)/3,z=2/3,y=1/3,lamda=( - 4)/3}
 is: ( - 28)/27$
 
 The value of f at the critical point {x=( -      
                              2)/3,z=( - 2)/3,y=( - 1)/3,lamda=( -
 4)/3} is: ( - 28)/27$
 
 The value of f at the critical point {x=( - 3)/8,
 z=sqrt(11)/(8*sqrt(2)),
 y=( - 3*sqrt(11))/(8*sqrt(2)),
 lamda=1/8} is: 7/128$
 
 The value of f at the critical point {x=( - 3)/8,
 z=( - sqrt(11))/(8*sqrt(2)),
 y=(3*sqrt(11))/(8*sqrt(2)),
 lamda=1/8} is: 7/128$
 
 The value of f at the critical point      
                              {x=1,z=0,y=0,lamda=3/2} is: 1$
 
 The value of f at the critical point      
                              {x=0,z=1,y=0,lamda=-1} is: -1$
 
 The value of f at the critical point      
                              {x=0,z=0,y=1,lamda=0} is: 0$
 
 The value of f at the critical point      
                              {x=0,z=0,y=-1,lamda=0} is: 0$
 
 The value of f at the critical point      
                              {x=0,z=-1,y=0,lamda=-1} is: -1$
 
 The value of f at the critical point      
                              {x=-1,z=0,y=0,lamda=( - 3)/2} is: -1$
 
 comment The following is the timex report of the      
                              system in seconds:
 real             
                              1.70
 user             
                              0.40
 sys              
                              0.13
 $
 Remark. Unfortunately,                    
                              no help on reduce commands are available from reduce@trinitas.mju.ac.kr                    
                                . One may refer to intro2reduce.html                   
                              for user's help. |