This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
m=#l | m=p)>" cong_def "[a = b](mod m) == m dvd (a-b)" Notice how integer numerals are identified by prefixing a #. Also note that we introduce a special (more readable) syntax for the congruence relation. Based on these definitions we have proven several basic facts of number theory, including those of Proposition 2.1. In both the formalizations of Euler-Fermat's and Wilson's Theorems, finite sets play an important role. In Isabelle/HOL there is a theory developing notions of finite sets. This development is based on inductive definitions of the finiteness of a set, the cardinality of a finite set, etc. We utilize this in our development. The mechanizations of Euler-Fermat's and Wilson's Theorems closely follow the formalizations described in Section 3. Thus, we had to mechanize the bijection relations as discussed in Section 3.1. Fortunately, it is very easy to define such inductive definitions as those of Definition 3.1 and Definition 3.3 in Isabelle/HOL. There is a general approach for allowing inductive definitions in a logic.15 This approach can (in principle) be used for any logic in which it is possible to prove the Knaster-Tarski Fixedpoint Theorem. Notice that the logic in question is not extended in any way; the properties of the inductive definitions are proved within the logic, including rules for making inductive proofs over the definitions. This approach has been used in Isabelle/HOL which means that the relation ~p can be defined almost verbatim** as follows: + q
d
I n essence, only the syntax differs. In particular, note that : and ": is Isabelle syntax for G and £, respectively.
139 inductive "bijR P" intrs empty "(-[},{» : bijR P"
i n s e r t "[I P a b ; a ": A; b ": B; (A,B) : bijR P I] ==> ( i n s e r t a A, i n s e r t b B) : bijR P"
such that (A,B) : bijR P expresses A ~p B. We can similarly give an inductive definition such that A : bijER P expresses A € BSp. The mechanization of Euler-Fermat's Theorem follows the formalization of Section 3.2. We end up showing: Goal "[I #0<m; gcd(a,m) = #1 I] ==> [a"phi(m) = #1] (mod m)"; We have mechanized both the concrete and the inductive formalizations of Section 3.3. In both cases we end up proving: Goal "p:prime ==> [ f a c t ( p - # D = #-1] (mod p ) " ;
5
Conclusion
We have presented a formalization and mechanization (in Isabelle/HOL) of two basic theorems of number theory where we used inductive definitions of so-called bijection relations to establish a generalized framework for reasoning of one-to-one correspondences. Comparing our inductive approach with existing approaches is most easily done with respect to the formalizations of Wilson's Theorem, as we mechanized both the concrete version of Russinoff and our inductive approach in Isabelle/HOL. We observe that the inductive approach gives a cleaner and more modular presentation closer to the original mathematical proof. When it comes to quantity (number of proof steps) the two developments are comparable but if one ignores the bijection relation part the inductive approach gets noticeably shorter. A reason for doing this is that once the "machinery" for handling the bijection relations is in place it can be used unchanged in other contexts as well. This is in particular the case for our formalization of Euler-Fermat's Theorem in Section 3.2. Acknowledgments The work reported in this paper was carried out while the author was visiting Dr. Lawrence C. Paulson at the Computer Laboratory, University of Cambridge, England. I would like to thank Larry Paulson for valuable comments and suggestions to this work, and for always being willing to discuss Isabelle and formalized mathematics in general. I would also like to thank Morten P.
140
Lindegaard for important comments to parts of this paper. Finally, thanks to Dr. Michael R. Hansen for proofreading drafts of this paper. References 1. J. Harrison. Formalized mathematics. Technical Report 36, Turku Centre for Computer Science (TUCS), 1996. 2. L.C. Paulson. The Inductive Approach to Verifying Cryptographic Protocols. Journal of Computer Security, 6:85-128, 1998. 3. L.C. Paulson. A Simple Formalization and Proof for the Mutilated Chess Board. Logic Journal of the IGPL, 2001. In press. 4. R.S. Boyer and J.S. Moore. A Computational Logic. Academic Press, 1979. 5. R.S. Boyer and J.S. Moore. Proof Checking the RSA Public Key Encryption Algorithm. American Mathematical Monthly, 91(3):181-189, 1984. 6. D.M. Russinoff. An Experiment with the Boyer-Moore Theorem Prover: A Proof of Wilson's Theorem. Journal of Automated Reasoning, 1:121— 139, 1985. 7. D.M. Russinoff. A Mechanical Proof of Quadratic Reciprocity. Journal of Automated Reasoning, 8:3-21, 1992. 8. D.J. Howe. Implementing Number Theory: An Experiment with Nuprl. In CADES, volume 230 of Lecture Notes in Computer Science, pages 404-415. Springer, 1986. 9. L. Thery. Comparing Coq, HOL, PVS on a simple proof of the RSA Public Key Encryption Algorithm. INRIA Sophia-Antipolis, March 2000. 10. L.C.Paulson. Isabelle, A Generic Theorem Prover, volume 828 of Lecture Notes in Computer Science. Springer, 1994. 11. L.C. Paulson and K. Grabczewski. Mechanizing Set Theory. Journal of Automated Reasoning, 17:291-323, 1996. 12. T.M. Rasmussen. Formalizing Basic Number Theory. Technical Report 502, Computer Laboratory, University of Cambridge, September 2000. 13. A. Baker. A Concise Introduction to the Theory of Numbers. Cambridge University Press, 1984. 14. H. Davenport. The Higher Arithmetic. Cambridge University Press, 6th edition, 1992. 15. L.C. Paulson. A Fixedpoint Approach to (Co)Inductive and (Co)Datatype Definitions. In G. Plotkin, C. Stirling, and M. Tofte, editors, Proof, Language, and Interaction: Essays in Honour of Robin Milner, pages 187-211. MIT Press, 2000.
APPLICATION OF G R O B N E R BASIS A N D Q U A N T I F I E R ELIMINATION IN E N G I N E E R I N G DESIGN: A N I N T R O D U C T I O N FOR E N G I N E E R S HIROYUKI SAWADA Digital Manufacturing Research Center, AIST 1-2-1 Namiki, Tsukuba, Ibaraki 305-8564, Japan E-mail: [email protected] XIU-TIAN YAN Department of Design, Manufacture and Engineering Management University of Strathclyde James Weir Building, 75 Montrose Street, Glasgow Gl 1XJ, UK E-mail: [email protected] In engineering design, as design proceeds, more and more design decisions are being made and more and more design parameters are introduced. As more design parameters come into consideration, designers face increasing difficulties in gaining insights into the relationships among these parameters. This research aims at overcoming the above difficulties by applying Grobner basis and Quantifier Elimination. The new constraint solving methods help designers in gaining important insights during engineering design. These constraint solving methods have been evaluated through case studies of multidisciplinary engineering design: a robotic arm system design and a heat pump system design. The evaluation results have illustrated that these constraint solving methods are useful for gaining important insights during engineering design to help designers to make informed decision.
1
Introduction
Engineering design commences with a customer need. This need is translated into a Product Design Specification (PDS)8. PDS is a document of requirements satisfied by the product. Designers are encouraged to use quantifiable statements to describe the requirements. Usually, a design problem can be formalized as a constraint satisfaction problem by a set of design parameters. When the number of parameters increases, designers experience some difficulties. Firstly, it is difficult to establish the underlying relationships between the design parameters. Secondly, very often designers will give specific requirements based on their intuition. Inevitably these can result in contradictory requirements. These imply there is a need to provide support tools which enable a designer to understand the underlying relationships and resolve conflicts. This paper describes new constraint solving methods based on techniques of Grobner Basis (GB) 1 and Quantifier Elimination (QE) 3 . They provide the above support, and help designers in avoiding unnecessary iterations caused by 141
142
the conventional trial and error approach. These methods have been integrated into the design support system DeCoSolver (Design Constraint Solver), and have proven to be effective through case studies. The structure of this paper is as follows. Section 2 describes the process through which a statement of customer need is converted into algebraic constraint representation. In Section 3, the new constraint solving methods derived from this research are explained. Section 4 shows the architecture of DeCoSolver. In Section 5, two design examples are shown as case studies. 2
Algebraic Constraint Representation in Engineering Design
In the last three decades, there have been many attempts to draw up models of design process. According to these design theories, design process can be broken down into smaller, more detailed manageable sub-processes 5 ' 7 ' 8 . At the beginning of engineering design, a statement of customer need is formally translated into a PDS. Based on the PDS, several design concepts are generated and a final concept is selected. After that, technical requirements of the product are established and then represented as quantitative constraints. Figure 1 shows this conversion process. During this process, designers' common
]
|Common Sense and Logic Customer Need •>| Design Concept |—£—^r. ' Technical (PDS) Requirements 1 Knowledge
•
•* • *
b
*
Constraint ^ Solution Analysis for gaining insights Representation
Intuition
Figure 1: Transformation of customer need to algebraic constraint representation
sense and logic, intuition, and different kinds of knowledge play important roles. In this research, it is assumed that all the constraints can be converted to polynomial equations and inequalities. This assumption is used as an axiom 9 . 3
N e w Constraint Solving Methods based on GB and QE
Usually, design parameters are highly coupled, constraints are non-linear, and there are an insufficient number of constraints to deduce a solution. Conventional design support tools have the limitations to handle such problems. They may fail to detect a conflict2. Though they may work when there is at least one solution, there is no definite way of checking the existence of the solution 10 . They may have difficulties in handling non-linear or inequality constraints 6 . To overcome such difficulties, new constraint solving methods based on GB and QE have been derived to provide a comprehensive set of support tools 9 .
143
Let Eq. (1) be a constraint set of the design problem. /i ( x i , . . . , xn) = 0 , . . . , fp(xi,..., xn) = 0, 3 i ( x i , . . . , x „ ) ^ 0 , . . . , 5 , ( x i , . . . , x n ) ^ 0, fti(xi,... ,x„) > 0,.. . , / i r ( x i , . . . ,x„) > 0.
(1)
Eq. (1) is replaced by Eqs. (2) and (3) by introducing slack variables.
5.1
/ i ( x i , . . . , x„) = 0 , . . . , / p ( x i , . . . , xn) = 0, gi{xi,...,xn) -si = l , . . . , 5 , ( x i , . . . , x „ ) - s ? = 1, / i i ( x i , . . . ,x„) = i i , . . . , / i r ( x i , . . . ,x„) = tr.
(2)
h > 0 , ...,
(3)
Determining Possible Numerical Values of Design Parameters
When a design problem is denned as Eqs. (2) and (3), it is necessary to generate some design solution values, which can be investigated to progress to the final solution. This section gives a new method achieving the following objectives: 1. to make clear whether there exists a design solution; 2. to compute numerical solutions when solutions do exist. A target function u(x, s,t) with the following properties is firstly introduced. Target function u(x,s,i) 1. u(x, s, t) is continuous in (x, s, t)-space. 2. u(x, s, t) has the minimum value in (x, s, t)-space. 3. If at least one parameter of (x, s, t) becomes postive or negative infinite, u(x,s,t) becomes positive infinite. Let A be the region defined by Eqs. (2) and (3). If A is not empty, u(x, s, t) has the minimum value in A. Thus, by computing the minimum value of u(x, s, t) in A, solutions to Eqs. (2) and (3) are obtained as the minimum points. If u(x, s, t) does not have the minimum value, Eqs. (2) and (3) have no solution. Any function satisfying the above conditions can be used as the target function. The minimum value is computed by the optimizing method described in Section 3.2. 3.2
Optimizing Design Parameter Values
Designers often need to conduct optimization based on an incomplete design solution. This section gives a new method achieving the following objectives: 1. to investigate if the given objective function has the minimum/maximum; 2. to obtain the design parameter values to minimize/maximize the given objective function, when there actually exists the minimum/maximum.
144
Let u(x) be the given objective function. For generality, u(x) is denoted as u(x, s,t). Furthermore, a method of minimizing u(x) only will be discussed. Let A be the region defined by Eqs. (2) and (3). The minimum point of u(x, s, t) is obtained by three steps: dividing A into sub-regions, computing extreme points in each sub-region, and selecting the minimum extreme value. Dividing the region A into sub-regions The extreme point of u(x, s, t) is obtained by computing the zero-point of its derivative. Thus, the region A has to be divided into sub-regions where the derivative of u{x, s, t) is continuous. Extreme points must be computed separately in each sub-region. A should be divided into sub-regions as below.
A = \jAtj. A-ij :
(4)
fi(xi,...,xn)=0,...,fp{xi,...,xn)=0, 9i(xi,...,xn) -si = l,...,gq{xi,...,xn) • sq = 1, I riixXi-, • • • T xn) — c i , . . . , / i r \ ^ i , . . . , x n j — t r , t
where {a,j(i, 1 ) , . . . ,a,j(i,j)}
> 0, . . . , *0j(i,r) > 0>
,,
(6)
is a combination of j integers from 1 to r.
Computing extreme points in a sub-region AyExtreme points are obtained by computing the stationary and singular points. Computation of stationary points The stationary points are computed by the Lagrange Multiplier method. Firstly, Lagrange function L is defined by introducing the Lagrange multipliers A, fi, v and T]. And then, its stationary points satisfying Eq. (6) are calculated. L{x,s,t,\,ii,v,r)) = u+T,\kfk + T,(gk-sk-l) + TlVk(hk-tk)+T,riktaj{itk). (7) Computation of singular points The singular points, at which the row vectors of (p + q + r + j) x (n + q + r) Jacobian matrix J(x, s, t) of Eq. (5) are linearly dependent, cannot be computed as the stationary points 4 . At a singular point, Eq. (8) is valid. 3c = {ci,...,cp+q+r+j} ^ {0, . . . , 0 } c-J(x,s,t) = {0,...,0}. (8) By adding ck = 1 to Eqs. (5) and (8), the singular points corresponding to ck ^ 0 are obtained. Then, the singular points satisfying Eq. (6) are selected. 3.3
Detecting Underlying Conflicts between Constraints
This section describes a new method of detecting conflicts between constraints.
145
Finding out conflicts between inequalities The slack variables t\,..., tr are required to satisfy ti > 0 , . . . , tr > 0. Thus, conflicts between the inequalities can be detected by obtaining polynomial equations consisting of t\,..., tr by computing the GB of Eq. (2). c1(til,...,tim)
= ... = ck{til,...,tim)
= 0,til >0,...,titn
>0.
(9)
Finding out conflicts If Eq. (9) has no solution, all the inequalities of tix > 0 , . . . , tim > 0 cannot be satisfied simultaneously. This results in that the corresponding inequalities hi1 (x) > 0 , . . . , him (x) > 0 cannot be satisfied simultaneously. This method tries all the possible combinations of ti1,..., i«m. The method described in Section 3.1 is used to check whether Eq. (9) has a solution. Detecting design parameter values related to the conflict When a conflict is found, it is useful to identify the related design parameter values. In general, a univariate linear equation implies value assignment. xk = a.
(10)
If Eq. (10) is necessary to obtain Eq. (9), it can be concluded that the value assignment shown by Eq. (10) is related to the conflict shown by Eq. (9). Let / be an ideal of an equation set obtained by removing Eq. (10) from Eq. (2). If at least one of Ci (t^,..., t*m ),•••, Ck (*» x ,..., tim) does not belong to / , Eq. (10) is necessary to obtain Eq. (9). Otherwise, Eq. (9) can be obtained without Eq. (10). Thus, by using the GB of J, it can be checked whether Eq. (10) is related to the conflict. Relationship between a conflict and value assignment Let G be a GB of an equation set obtained by removing Eq. (10) from Eq. (2). 1. G does not reduce at least one of c i , . . . , c* to 0. => Eq. (10) is related to the conflict shown by Eq. (9). 2. G reduces all of C\,..., ck to 0. => Eq. (10) has no relation to the conflict shown by Eq. (9). 3.4
Gaining Insights into Design Solution Space
Designers need to understand the underlying relationships between design parameters in order to make design decisions. This section describes a new method of establishing explicit equality and inequality relationships among two design parameters Xi and Xj. An equality relationship defines a locus of design solution in the design parameter space. It can be obtained by using GB.
146
On the other hand, an inequality relationship gives an area in which design solutions can exist. It can be computed by applying GB and QE. The equality relationship, i.e. the locus of design solution 1. The GB of Eq. (2), Gp, is computed under the term order in which Xj and Xj are given the lexicographically lowest rank. 2. An equation consisting of Xi and Xj in Gp gives the design solution locus. The inequality relationships, i.e. the acceptable areas 1. The GB of Eq. (2), Ga, is computed under the term order in which x,, Xj and ti,..., tr are given the lexicographically lowest rank. 2. Let Gs be a set of equations consisting of Xi, Xj and t\,..., tr in Ga • The acceptable area is expressed by the following logical formula. 3(t1,...,tr){G,U{h > 0 , . . . , t r >0}}. The acceptable areas are obtained by applying QE to the above formula. 4
Preliminary Design Support System — DeCoSolver
The new constraint solving methods have been integrated into the prototype system DeCoSolver (Figure 2). The concept-tree shows the part-of hierarchy of a design concept. In general, a design concept has a hierarchical structure. For example, when a designer gets a concept of "car", the concept can be decomposed into sub-concepts of "engine", "body shell", "drive mechanism", etc. For each sub-concept, design can be conducted separately. The designer can describe such a hierarchy as a tree structure via the concept decomposer. Designers define and modify constraint sets via the constraint editor, with the support of the component library. The component library is a database of the commonly used components. Designers select necessary components, and construct a product model by combining them. All the created solutions are classified in the context-tree. It shows the is-a relationships between design alternatives. The designer can find a design solution of concern by tracing this is-a hierarchy. The product explorer provides facilities of integrating partial design solutions to sub-concepts into a global design solution. It also provides the solver handler. The designer can analyze the partial/global design solutions via the solver handler. All the analysis results are held in the analysis-tree. The designer can compare the design alternatives by referring to the analysis-trees. 5 5.1
Design Examples A Robotic Arm System Design
Figure 3 shows the arm robot. The hand moves vertically. Links have the same lengths L. There is a linear relationship between L and mass m: m = 7-L, 7 = 3.5[kg/m].
147 Product Explorer t&ybr»f|
R
KnaiMt'a: J Ennc*tE
"ill
••23*1
Switching of Concept-Tree/Product Explorer
I I I M I li |[ i
' .KtrTp n5iaBMgS)|*|M
-mcnrI LeftFi'nsar . Si Cenfmuratiort -• SI Hent'calLink :-. SI LinsarDensrtyVabs r. £3 Operation *" ft FinffartipFbi-ce r £1 LirwarDarisityValueS • El Operation
' & Concept $ LeftFinjfar • MstorToo • tvbtor&rt
A
\
Solver Handler (Sub-module of Product Explorer) Context-Tree
Analysis-Tree (Sub-module of Product Explo: 3 Crosainu Rotational Joint
•Lettfinger•MofoeTc
'ui'Vd'd.
" - Solww opTufu •
atom SlLWt
r fitlWfefttBtJtfcAI . r Mwtnam/MinNiMn"ra.fph
3 BaliThrsad Z3 DcMster 3 Pullay 3 Battery aObj&ct
wtop rbot
Concept Decomposer
0 E0»lBHfn«'r.G.Bfcl>n>6.Q00 E-2 >= D E0*VeiiF^|e^O„Bk:l[1h6.DO0 E-! <= 0 EQ'HoioiTopp_M(iTp>s 0
^
\~7 ~ P 3 UnkBot fflbof •
38aso
Component Library
Constraint Editor
Figure 2: Overview of DeCoSolver
The link length L, appropriate motors and gear ratios are to be determined. Link-A Joint-A Joint-B
Hand 25 cm
Gear-Motor-A Joint-B Pulley Gear-Motor-B ' 25 cm Figure 3: A wire-driven two-joint arm robot
Design procedure with DeCoSolver 1. Constructing the product model Necessary components are selected to construct the product model. 2. Determining the link length L DeCoSolver draws a graph representing the relationship between the robot hand's position and the link length (Figure 4 (a)). This graph gives information about possible valid link length. For example, if the link length is assigned 16 [cm], the operation cannot be conducted within the region marked by "*". Suppose the link length is assigned 20 [cm]. 3. Computing the maximum power requirements at the joint-A and joint-B Based on the selected link length, DeCoSolver computes the maximum
148
[* Operation fails here.[
IC
[The link length is 16 |cm].|
T^S^L^d Vertical Axis: Position of Robot Hand [m]| .*££; *W= ]Horizontal Axis: Link Length [m]| (a) Link length
(b) Gear ratio for Joint-A
(c) Gear ratio for Joint-B
F i g u r e 4: R e s u t l s of a n a l y s i s of t h e r o b o t i c a r m
power requirements: 7.632 [W] for Joint-A and 4.483 [W] for Joint-B. 4. Selecting appropriate motors The following motors that supply the maximum powers are selected. Maximum Rating Torque Resistance output power voltage constant Joint-A: 14.5 [W] 12 [V] 23.4 [mNm/A] 2.4 [fi] Joint-B: 6.5 [W] 12 [V] 22.0 [mNm/A] 5.3 [fi] 5. Determining the possible gear ratios for the joint-A and joint-B DeCoSolver draws graphs representing the relationships between the gear ratios and the robot hand's position (Figure 4 (b) and (c)). These graphs give insights into possible gear ratios for all the robot hand positions. 6. Selecting the optimal gear ratios for the joint-A and joint-B The designer can now select optimal gear ratios that minimize the power consumption of motors when the maximum output powers are required. DeCoSolver selects the optimal gear ratios: 1/246 for the both joints. 5.2
A Heat Pump System Design
Figure 5 shows the heat pump system. The refrigerant evaporates at the evaporator and collects heat from the water. Then, it is adiabatically compressed by the compressor. In the condenser, it condenses and heats up the water. The following design parameter values are to be determined: condensation and evaporation temperature Tc and Te, heat transfer area of the condenser and evaporator Ac and Ae, discharging pressure and compression ratio of the compressor Pd and K, and mass flow rate of the refrigerant Qr. Design procedure with DeCoSolver 1. Constructing the product model
149 Ho! spring (30 °C. 3.0 l/s)
Flow of refrigerant
Condenser
High pressure High pressure y saturated gas & liquid gas Ho! water supply Compressor for a bath Expansion Valve (Adiahatic (45 ° C 3.0 l/s) (Isenlhalpic Compression) Expansion) Low pressure | Lou-pressure saturated gas | Drain water gas & liquid (20 ° C 2.4 l/s) hvaporator Drain (5 ° C 2.4 l/s) J F i g u r e 5: A h e a t p u m p
Flow of water
system
2. Understanding the underlying relationships between design parameters DeCoSolver draws graphs representing the explicit relationships between design parameters (Figure 6), which give the following insights. (1) As Tc increases, Te and Pd also increase almost linearly. (2) Qr and K are almost unchanged. (3) As Tc increases, Ac decreases and Ae increases non-linearly. Qr and K can be excluded from consideration. Suppose Ac and Ae are focused on, because a small surface area results in small equipment. 3. Determining the design parameter values DeCoSolver determines Tc so that the total heat transfer area is minimized: Tc is 323 [K], resulting a total heat transfer area of 29.76 [m2]. 6
Conclusion
In order to provide designers with necessary information to gain insights into incomplete design solutions and to make more informed and confident design decisions, GB and QE techniques have been applied to engineering design. Conventionally, solution analysis is primarily conducted to evaluate behaviors and estimate performance of a design solution. This means that a design solution has to be completed before conducting solution analysis. This approach requires designers to repeat a lot of time-consuming trial and error processes. It may be often the case that since designers do not have sufficient insights into the produced design, problems are found too late to resolve easily. In contrast, the new constraint solving methods enable designers to analyze an incomplete design solution, and to get necessary information for further decision making such as determining unknown design parameter values. These advantages have been illustrated by the case studies. References 1. Becker, T. et al., Grobner Bases, Springer-Verlag, 1993.
150 Vertical Axis: Evaporation Temperature [K]
Vertical Axis: Discharging Pressure[Pa]
*,3>i
Horizontal Axis: Condensation Temperature [K] (a) Evaporation temperature Te Vertical Axis: Mass Flow Rate of Refrigerant [kg/s]
2^*1
Vertical Axis: Compression Ratio
r.a
Horizontal Axis: Condensation Temperature [K] (b) Discharging pressure Pd Vertical Axis: Heat Transfer Area of Condenser [m2]
L Hor Horizontal Axis: Condensation Temperature [K] (c) Compression ratio K Vertical Axis: Heat Transfer Area of Evaporator [m2J
)%.
Horizontal Axis: Condensation Temperature [K]
Horizontal Axis: Condensation Temperature [K]
Horizontal Axis: Condensation Temperature [K]
(d) Massflowrate of refrigerant Qr (e) Heat transfer area of condenser Ac (f) Heat transfer area of evaporator Ae Figure 6: Relationships between design parameters of the heat pump system
2. Bowen, J., "Aspects of Constraint Processing", Artificial Intelligence in Engineering, Vol. 6, pp. 100-102, 1991. 3. Caviness, B. F. et al. eds., Quantifier Elimination and Cylindrical Algebraic Decomposition, Springer-Verlag, 1996. 4. Cox, D. et al., Ideals, Varieties, and Algorithms, Springer-Verlag, 1996. 5. French, M. J., Conceptual Design for Engineers, Springer-Verlag, 1985. 6. Kuokka, D. et al., "A Collaborative Parametric Design Agent", Proceedings of AAAI '94, pp. 387-393, 1994. 7. Pahl, G. et al., Engineering Design, Springer-Verlag, 1996. 8. Pugh, S., Total Design, Addison-Wesley Publishers Ltd., 1990. 9. Sawada, H., Constraint-Based Computer Support for Insightful Multidisciplinary Engineering Design, PhD Thesis, University of Strathclyde, Glasgow, UK, 2001. 10. Thornton, A. et al., "CADET: A Software Support Tool for Constraint Processes in Embodiment Design", Research in Engineering Design, Vol. 8, pp. 1-13, 1996.
JAVAMATH: A N A P I FOR I N T E R N E T ACCESSIBLE MATHEMATICAL SERVICES ANDREW SOLOMON Faculty of Information Technology, University of Technology, Sydney, Broadway NSW 2007, Australia E-mail: andrew6illywhacker.net CRAIG A. STRUBLE Department of Computer Science Virginia Tech, Blacksburg, VA 24061, USA E-mail: [email protected] JavaMath is free software oriented toward integrating existing compute engines, such as Maple or GAP, into Internet accessible mathematical services. The architecture of the API is described and its use explained.
1
Introduction
JavaMath is an Open Source application programming interface (API) to enable mathematical programs in Java to use the computational capabilities of existing compute engines. While perfectly usable for stand-alone Java programs, the API is oriented toward the easy construction of Internet based client-server systems and Web pages. The motivation for this work comes from two directions: distance eductation on the Web and the need to interoperate computational tools and engines. 1.1
Distance education over the Web
The recent explosion of interest in distance education on the Web demands the delivery in Web pages of sophisticated interactive content, the type of which was traditionally only deliverable as a stand alone program on disk. This dictates that the technology should enable content delivery to users with the most common browsers (Internet Explorer, Netscape) straight out of the box (without patches or plug-ins) in the most common computing environments (Windows, Macintosh and Unix) and with the most basic of connections to the Internet: these days, a 56k dial-up service. There are many applets for the delivery of educational content over the Web, and various tools exist for handling interaction between components in support of building richer learning environments. In particular, the ESCOT4 project has been developing a framework in which JavaBeans fit together for 151
152
the purpose of developing browser based learning materials in mathematics. However, most such applets are limited to interactivity which can be achieved entirely at the browser side. The few applets, such as CECM's RevEng2, which have employed interaction with a compute engine on a server have generally not promoted their techniques in the form of a published API. The authors hope that JavaMath might provide a means by which client-server interaction can be made routine for the Web developer. 1.2
Interoperating mathematical tools and engines
As computational mathematics expands, the dream of a single general purpose computer algebra package to cater to all needs becomes increasingly remote and the community has begun so seek ways to make exising packages interoperate. There are a number of standardization efforts addressing this issue. Protocols such as KQML5, OpenXM17 and MCP 20 attempt to standardize the nature of request/response messages in agent and client-server interactions. As always, standardization is a slow process demanding concensus, continual tracking of the standard by any APIs built for it, and adjustment of existing applications to these changes. JavaMath avoids these issues by simply providing an API instead of a language independent communication protocol. This API makes available to developers working in Java a small but complete set of methods which we describe in Section 2. Another approach to increasing interoperability has been to standardize the representation of mathematical objects. Notable efforts in this direction include MP9, Content MathML14 and OpenMath 3 , this last being the most successful. OpenMath is described adequately elsewhere16 but for our purposes it is sufficient to note that with the appropriate phrasebook software for two computer algebra systems one can get the OpenMath encoding of an object A from one system and paste it onto the input of the other system which will decode it into an object B and (in a sense not formally defined) A and B will represent the same mathematical object. To the extent that this works, it saves a great deal of effort in processing the output of one system into the input of another. The JavaMath API allows the use of OpenMath for transferring objects between compute engines. 1.3
Simildr Projects
We review some parallel projects for serving computation over the Internet. Le and Howlett11 describe an experimental compute server constructed at the University of Waterloo using OpenMath, MathML (for presentation) and VRML (for graphics) to communicate results between clients and a Maple server.
153
Howlett's company WebPearls has developed PearlServer, a commercial product with similar goals to JavaMath which appears to be no longer available or supported. Below we list all the other developments we are aware of in this field. They are all Open Source and they are batch- rather than session-based requiring the compute engine to be restarted for every computation. • OM Worksheet and Dispatcher due to Matthias Berth1 uses OpenMath for representing objects. • MathWeb6 uses OpenMath and is intended to be part of a larger framework in which certain computations in certain engines are specified and certified as valid. • WebMath22 is a specialized service providing parallel Grobner Basis computations. Its architecture is similar to that of JavaMath without a proxy layer and is therefore subject to the vulnerabilities outlined in Section 3.3. • WIMS7 is a complete development toolkit and scripting language for web based mathematical courseware and assessment and does not support any standards for object representation. In spite of this, an impressive array of courseware has been developed using this technology. 2
Functionality
Leaving the formal presentation to the next section, we 'throw the reader in the deep end' and illustrate the capabilities of the API through some code. The concept of a compute session is embodied by the interface in Figure 1. We also define the interface CAServer with a single method, c r e a t e S e s s i o n which takes a string describing a compute engine and returns a CASession with that engine. 2.1
Example: Computing the Frobenius Determinant of a Group
Given a group of order n, one obtains an n x n matrix by taking the multiplication table and replacing the elements by n unknowns. The determinant of this matrix is then an n-variate polynomial over Z known as the Frobenius determinant of the group. Factoring this polynomial over the algebraic closure of Q, one finds that the degrees of the factors correspond to the degrees of the irreducible representations of the group10.
154 public interface CASession extends Remote
{ OMObject evaluateOpenMath(OMObject obj) throws RemoteException; void assignOpenMathCString varname, OMObject obj) throws RemoteException OMObject retrieveOpenMath(String varname) throws RemoteException; void sendNativeCommand(String command) throws RemoteException; String getNativeOutputO throws RemoteException; String nativeEvaluate(String command) throws RemoteException; String getNativeErrorQ throws RemoteException; void closeSessionQ throws RemoteException; } Figure 1: Interface to the JavaMath session
This is a nice example problem for exhibiting interoperability in the JavaMath A P I since G A P is suited to computations with groups but is incapable of multivariate polynomial factorization, while Maple has little functionality for dealing with groups but is able to factor multivariate polynomials. We present the ideal program for solving this problem, together with an inserted hack required where the reality falls short of the ideal. We hope t h a t the failings revealed by this example prove to be helpful feedback to the O p e n M a t h movement. First one must find the server whose location is described by a URL and initialize compute sessions with G A P and Maple. (Note: the p r o x y prefix will be explained in Section 3 and can safely be ignored for now.) / / Find s e r v e r proxyCAServer = new P r o x y C A S e r v e r ( " h t t p : / / l o c a l h o s t / P r o x y C A S " ) ; / / S e t up t h e GAP and Maple s e s s i o n s proxyGAPSession = p r o x y C A S e r v e r . c r e a t e S e s s i o n C ' G A P " ) ; proxyMapleSession = proxyCAServer.createSession("Maple"); Now assume t h a t in the G A P session, there is a variable g which refers to the group under investigation. We compute its multiplication table which is a matrix of integers, each integer representing an element of the group. proxyGAPSession.sendNativeCommand("m := M u l t i p l i c a t i o n T a b l e ( A s L i s t ( g ) ) ; " ) ; Now we come to the 'idealized code', where we retrieve the matrix of integers from G A P as an O p e n M a t h object (which the reader will recall is a standard encoding of the object) and assign it to a variable in the Maple session: OMObject m u l t T a b l e = p r o x y G A P S e s s i o n . r e t r i e v e O p e n M a t h ( " m " ) ; proxyMapleSession.assignOpenMath("m",multTable);
155
In fact, because the PolyMath Maple phrasebook version 0.7.5d is incomplete with respect to the linear algebra content dictionaries, the translation of multTable into a native Maple object fails. Luckily for this example, in GAP and Maple, the syntax of matrices is virtually identical, therefore we replace the above two lines with: S t r i n g matString = proxyGAPSession.getNativeOutput(); proxyMapleSession.sendNativeCommand("m := m a t r i x ( " + matString + " ) ; " ) ; Finally we are able to complete the computation in Maple. First replace the integer i in the matrix with the unknown X{. II a function f t o map an i t o x_i proxyMapleSession.sendNativeCommandO'f := proc(i::posint) return x [ i ] ; end;"); / / c = m with a l l t h e i n t e g e r s turned i n t o indeterminates proxyMapleSession.sendNativeCommandC'c := map(f,m);"); Now compute the determinant and its factorization over Q proxyMapleSession.sendNativeCommand("with(linalg);"); proxyMapleSession.sendNativeCommandC'd := d e t ( c ) ; " ) ; proxyMapleSession.sendNativeCommand("evala(AFactor(d));"); / / print the r e s u l t System.out.printlnC'The f a c t o r e d Frobenius determinant i s : \ n " ) ; System.out.println(proxyMapleSession.getNativeOutput() + " \ n " ) ; The preceding example illustrates the fact that the JavaMath API allows the programmer to interact with a compute session in an intuitive way and, we hope, convinces the reader that the small set of methods declared in the CASession interface are sufficient for most computations. 3
Architecture
The JavaMath API trades principally on two complementary notions: the compute server and the compute session. A compute session is what one might think of as the normal mode of interaction with a computer algebra system. One assigns values to variables, writes some functions, applies a function to a variable with a value assigned earlier in the session, and so on. The important aspect of a session is that it represents the evolving state of the compute engine as it responds to the sequence of commands. Just as it would be nearly impossible to achieve anything with most compute engines if they immediately forgot the last command you typed, it is necessary for the JavaMath API to provide an interface which allows the programmer to interact with a compute engine in the context of a session. This interface is the CASession. The server is responsible for creating and managing compute sessions with computer algebra systems running on the server machine. For example, a client
156
program (an application, servlet or applet written using the API) which wants to compute in Maple, would first look up the server and, having made contact, send the compute server the message that it wants a compute session with Maple. The compute server starts off the Maple session and gives the client a handle to it. In the following two sections, we delve more deeply into the design of the compute session and compute server, and then describe the HTTP proxy layer implemented on top of these components to facilitate robust and portable access over the Internet. 3.1
Session
The issues which arise when designing the interface to a compute session are largely the same as those already addressed elsewhere12'20 in designing a protocol. Experience has shown that most computations are more convenient in a mixture of OpenMath and the compute engine's native language. We believe that the 'principle of anonymity' by which the process requesting a computation need not know which compute engine is being used to complete the request12, is presently unattainable since the problem of specifying precisely what a compute engine does with an object is a very difficult open question. Therefore, we have settled on the following two design principles as most important: • the environment must support compute sessions as discussed above; • there must be a small and fixed set of methods which suffice to interact with any compute engine. These principles dictated the form of the interface in Figure 1 and we hope the example in Section 2 has convinced the reader of the utility of this definition. The communication between the session (implemented in Java) and the computer algebra system (a stand-alone package) involves translating between OpenMath objects and the native computer algebra system representation. Providing this functionality depends on a number of third party software components: the GAP phrasebook19; the PolyMath phrasebook for Maple18; and libraries to represent OpenMath objects within C and Java and to read and write their XML representation 13 ' 18 . When a compute session is started, depending upon the server setup the computer algebra system may load native initialization code which makes available special computations and sets the engine's security and load limits.
157
3.2
Server
The server's design follows from the principles that different compute engines are to be accessed uniformly; and it must be easy to extend the server to provide access to new compute engines. The client uses the RMI naming service to locate a server on a machine. When the server object is returned, the client calls the createSession method, passing a string
The Proxy Layer
So far, all communication between client and server has been achieved using Java remote method invocation (RMI). This architecture is simple but runs into a number of practical problems since RMI is unsupported or incompletely supported by a number of popular browsers and it presents complex security issues because it will not work across firewalls. These problems would be essentially fatal to any educational website aimed at a broad student population. Therefore, instead of the clients communicating with the compute server directly using RMI we add an extra HTTP layer so that the RMI interaction is contained within a local network or even a single machine as in Figure 2. Scott McPhersorr 5 explains how to add a proxy layer to an RMI application to avoid these problems. Roughly, the idea is to supply a proxy to the actual remote object for use in applets and other clients across the Internet. This proxy has methods corresponding to the methods of the remote object, but instead of accessing the remote object using RMI, each method uses HTTP to call a servlet on the server which contacts the remote object using RMI within the server subnet. The only added complexity is that, since our server hosts sessions (rather than being stateless as in McPherson's scenario), the proxy servlets must assign a cookie or ID number to each proxy session on a client. This cookie is then used to associate the proxyCASession on the client with the CASession on the web server. In practical terms, the proxy layer is completely transparent
158 Server Subnet ^____HTTP
Client
| Web Server
Client (proxyCASession)
RMI
Compute Server
(CASession)
Figure 2: Client-server architecture with H T T P proxy.
to the user of the API except insofar as one uses the class names prepended with ' p r o x y ' .
4
Conclusion
A number of applications using JavaMath have been developed in collaboration with Alan Cooper (Langara College, Vancouver) and Steve Linton (University of St. Andrews, Scotland). Cooper's applications construct graphs in the real numbers labelled by exact values found using Maple's symbolic computation capabilities. With Linton we developed a Web interface to the library of group character tables computed and stored in GAP. These demonstration applications are accessible from the JavaMath home page. At the same website one may find the draft of a forthcoming paper with a more serious discussion of these applications in terms of their aims and how they were achieved. An important lesson from Section 2 is that OpenMath, while an excellent concept, needs the support of more, and more seriously engineered tools before it bears significant fruit in the area of interoperability. Nevertheless, the example illustrates its great potential. The problem was, of course, that the third party libraries were inadequate to a particular task, and the source was not available for us to modify. We hope that more tools will be provided in Open Source so that developers can make the improvements they need and contribute to the whole community as they achieve their goals. As part of the on-going maintainence effort, we anticipate that the PolyMath OpenMath libraries will be replaced with an Open Source OpenMath library currently under development. The functionality of JavaMath is broadly complete. Our main aims are to grow and support its user community and to implement extra phrasebooks for other compute engines as the need arises. Other developers are invited to join this effort.
159 Availability T h e J a v a M a t h A P I is available at http://javamath.sourceforge.net by ftp or anonymous CVS for the current development version. J a v a M a t h is licenced under the G P L , so it may be used freely for academic and commercial purposes. Acknowledgments Discussions with Alan Cooper and Steve Linton greatly enhanced this work. In particular Steve Linton proposed the example in Section 2.1. Comments from the anonymous referees also helped improve this work. T h e authors gratefully acknowledge the support of European Commission E S P R I T grant number 24.969 and Canadian Network of Centres of Excellence MITACS project. 1. Matthias Berth, The OM Worksheet and Dispatcher, http://paul.math-inf.uni-greifswald.de/Cathode2/omws/ 2. Peter Borwein, RevEng, A Mitacs Symbolic Analysis project, http://psg.cecm.sfu.ca/projects/revenge/client/ 3. S. Dalmas, M. Gaetano and S. W a t t , An OpenMath 1.0 Implementation Proceedings of ISSAC 97, ACM Press. 4. Educational Software Components of Tomorrow, http://www.escot.org 5. Tim Finin, Don McKay, Rich Fritzson, and Robin McEntire, KQML: An Information and Knowledge Exchange Protocol, in Kazuhiro Fuchi and Toshio Yokoi (Ed.), Knowledge Building and Knowledge Sharing, O h m s h a and IOS Press, 1994. 6. Andreas Franke and Michael Kohlhase, System Description: MathWeb, an Agent-Based Communication Layer for Distributed Automated Theorem Proving, C A D E 1999. 7. Xiao Gang, WIMS: An Interactive Mathematics Server, Journal of Online Mathematics and its Applications, Volume 1, Issue 1, January, 2001. 8. T h e GAP Group, GAP Groups, Algorithms and Programming, Version 4.2; (Aachen, St Andrews, 1999) http://www-gap.dcs.st-and.ac.uk/~gap 9. Simon Gray, Norbert Kajler and Paul Wang, MP: A Protocol for Efficient Exchange of Mathematical Expressions, ISSAC 1994. 10. T. Hawkins, New light on Frobenius' creation of the theory of group characters, Arch. History Exact Sci. 12 (1974), 217-243. 11. Ha Le and Chris Howlett, Client-Server Communication Standards for Mathematical Computation, Proceedings, ISSAC '99, Vancouver, British Columbia, Canada.
160
12. Stephen A. Linton and Andrew Solomon, OpenMath, IAMC and GAP, Proceedings, ISSAC 99/1AMC workshop. 13. ESPRIT Project C and Java libraries, http://www.nag.co.uk/proj ects/OpenMath/ 14. The W3C's Math Homepage, http://www.w3.org/Math/ 15. Scott McPherson, Java Servlets and Serialization with RMI, Java Developer Connection, h t t p : / / d e v e l o p e r . j ava.sun.com/developer/technicalArt icles/RMI/rmi/ 16. OpenMath Consortium, The OpenMath Standard, OpenMath Deliverable 1.3.4a, O. Caprotti, D. P. Carlisle and A. M. Cohen Eds. http://www.nag.co.uk/projects/OpenMath.html, February 2000. 17. OpenXM: Open message eXchange protocol for Mathematics http://www.openxm.org 18. The PolyMath OpenMath Java Libraries, http://pdg.cecm.sfu.ca/openmath/ 19. Andrew Solomon, The GAP Phrasebook for OpenMath, at 'Deposited Contributions for GAP', http://www-gap.dcs.st-and.ac.uk/~gap/Info4/deposit.html 20. Paul S. Wang, Design and Protocol for Internet Accessible Mathematical Computation, Proceedings, ISSAC '99, Vancouver, British Columbia, Canada. 21. Math on the Web, http://www.mathtype.com/webmath/ 22. Andreas Weber, Wolfgang Kiichlin, Bernhard Eggers, Volker Simonis, Parallel Computer Algebra Software as a Web Component, ISSAC 1999.
DEFORMATION OF D O U B L E C U S P S I N G U L A R I T Y O N A N IRREDUCIBLE QUARTIC CURVE B Y USING T H E C O M P U T E R ALGEBRA SYSTEM R I S A / A S I R TADASHI TAKAHASHI Department of Mathematics and Informatics Faculty of Human Development, Kobe University 3-11 Tsurukabuto, Nada-ku, Kobe 657-8501, JAPAN E-mail: [email protected] There exist 21 types of curves as the classification of irreducible quartic curves. Irreducible quartic curves are classified by the singularities. In this paper, we consider the deformation of irreducible quartic curve with a double cusp singularity by using the computer algebra system Risa/Asir.
1
Introduction
Let P2 be a 2-dimensional complex projective space with the coordinate [a;, y, z] and let fn(x, y, z) be a homogeneous polynomial of degree n in P2. We consider the set Vn := {(x,y,z)\fn(x,y,z) = 0}. We call V4 a complex projective plane quartic curve but simply a quartic curve throughout this paper. There exist 21 types of curves as the classification of irreducible quartic curves^). Let / 1 , / 2 ,..., fr be holomorphic functions defined in an open set U of the complex space Cn. Let X be the analytic set / f ^ O ) l~l ...Of~l(0). Let x € X, and let gi,g2,...,gsbe a, system of generators of ideal I(X)X0 of the generators of the holomorphic functions which vanish identically on a neighborhood of XQ in X. XQ is called a simple point of X if the matrix (dgi/dxj) attains its maximal rank. Otherwise, XQ is called a singular point (singularity) of X. (For r = l , x 0 is called a hypersurface singularity of X.) Let V be an analytic set in C". A singular point x0 of V is said to be isolated if, for some open neighborhood W of x0 in Cn, W n V - {x0} is a smooth submanifold of W — {x0}. Example For a holomorphic function f(z0,...,zn) defined in a neighborhood U of the origin in C n + 1 , let X = {(z0,...,zn} <E U\f{z0,...,zn) = 0. Then if
{x = (o,...,o)} = {%L = ... = %L = o}nx, OZo
X has an isolated singularity at x.
161
OZn
162
Let (X, x) be a germ of normal isolated singularity of dimension n. Suppose that X is a Stein space. Let IT : (M, E) —> {X, x) be a resolution of singularity. Then for 1 < i < n — 1, dim(R1ir,i)M)x is finite. R1TT,I!)M has support on x. They are independent of the resolution. In fact dim(RiTr,tfM)x
= dim
W^X^M)
(1
2)
and dimiR'1-1*,
dM)x
= dim T(X - {x}, ti{K))/L2(X - {x})
where L2(X - {a:}) is the subspace of T(X - {x},d(K)) on X — {a;} which are square integrable near x.
consisting of n-form
We denote them by hi(X,x):=dim{RiTT,dM)x
(1 < i < n - 2)
and Pg(X,x) The invariant Pg(X,x)
:=
dim(Rn-1n,tfM)x-
is called the geometric genus of
(X,x).
Let X be a normal 2-dimensional analytic space. Then the singular points of X are discrete. There are rational singularities, elliptic singularities and so on. A singular point x of X is called rational if Pg (X, x) = 0. (The singularity (X, x) is also called rational even when dim X > 3 if the direct image sheaf Rl7r,-dM = 0 for i > 0.) For a rational singularity x £ X, the multiplicity of X at x equals — ZQ and the local embedding dimension of X at x is —ZQ + 1. Hence a rational singularity with multiplicity 2, which is called a rational double point ( An,Dn,Ee,E7,Es ), is a hypersurface singularity f ) . On the basis of the above-mentioned theory, we consider the deformation of singularities on a quartic curve. And we make it clear that the structure of singularity changes by a change of parameters of the defining equation. 2
Singularities of quartic curves
For the classification of irreducible quartic curves, the following result is known( x ). (Fundamental type means a class of P2 - C classifi ed by logarithmic Kodaira dimension.)
163 Number of singularities 1 1 1 1 1 2 2 2 2 3 3 3 3 1 1 2 2 2 1 1 0
Type of singularities
Number
^6
h h
E6 A5 #5
DA AAM
AiA4 A3A2 AiAz A2A2A2 A2A2A1 A2AlA1 A1A1A1 AA A3 A2A2 A2A1 An A! A2 Ax
I la Ih Ula
IIH 9 " IHa Ilh IIIC ilh IIIe HI}
nig iih ilh iih iih iih Him Ilh Ilh
The Ai singularity is called the double cusp((2,5)cusp) singularity. It is difficult for us to understand all states of deformation. Therefore, as a suitable example, we will consider the deformation of double cusp singularity on a quartic curve in the next section. 3
Deformation of double cusp singularity
Because a usual cusp singularity collides, a double cusp singularity occurs. A double cusp singularity has a special deformation. We consider the following defining equation: / = x2z2 ± 2xy2z + yA + y3z + axyzz + a2zA = 0. The curve defined by this equation has a double cusp singularity at [1,0,0] in P2.
164
fx U=i= 2x+2y2, fy \z=1= 4xy+4y3+3y2+au
h |2=i=
2x2+2xy2+y3+3aiy+4a2.
Let G be the Grobner Base with lexicographic order for fx | 2 = i , fy | 2 = 1 , fz
\z=1.
G = (-4a? - 2 7 a 2 , - 9 a 2 2 / + 2ai,2a 1 2/ + 3a 2 ,3y 2 + a i , 3 x - a 1 ) (We calculated the Grobner Base by using the computer algebra system Risa/Asir
f)) As a result, the curve denned by / = 0 has the only double cusp singularity at [1,0,0] for 4a? + 27a^ ^ 0. This curve is type IIIh. And the curve defined by / = 0 has the A2 singularity at [0,0,1] for a\ = a2 = 0. This curve is type IIib. We understand that singularity type IIIa and singularity type IIib occur as a state of deformation of double cusp singularity type IIIh We consider the deformation of irreducible quartic curve with a double cusp singularity. In summary, we obtain the following result. / = x2z2 ± 2xy2z + y4 + y3z + a^yz3 + a2z4 = 0. 4a? + 27a\-£ 0 ->• type IIIh. 4a? + 27a^ = 0 and { a\ ^ 0 or a 2 ^ 0} -> type IIIa. ai = 0 and a 2 = 0 —> type IIib. Therefore, by the value of parameters of the defining equation, it occurs the new singularity. This is an example of deformation of singularities. It means that the structure of singularity changes by a change of parameters of the defining equation. References 1. S.Iitaka, K.Ueno and U.Namikawa, Math, seminar, An extra number, Introduction to modern mathematics [6]: Descartes' spirit and Algebraic Geometry (in Japanese), Nihon Hyoronsha, Tokyo, 1979. 2. V.I.Arnol'd, Normal forms of functions in neighbourhoods of degenerate critical points, Russian Math. Surveys 29:2, pp. 10-50, 1974. 3. T.Saito, T.Takeshima and T.Hilano, Risa/Asir Guide Book(in Japanese), SEG shuppan, Tokyo,1998.
A GENERALIZED ALGORITHM FOR COMPUTING CHARACTERISTIC SETS DONGMING WANG LIP6, Universite Pierre et Marie Curie - CNRS, 4place Jussieu, F-75252 Paris Cedex 05, France E-mail: [email protected] We generalize Wu-Ritt's algorithm for the computation of characteristic sets by means of onestep pseudo-reduction instead of pseudo-division. This generalization results in a new algorithm which, with optimal selection of reductors and heuristic generation of S-polynomials, may speed up the computation considerably and produce simpler output for large problems. Examples and experiments are provided to show the performance of our new algorithm.
1
Introduction
The principal operation in Wu-Ritt's algorithm5'10,13 for computing characteristic sets is pseudo-division, which is used extensively to compute the pseudo-remainders of some polynomials with respect to (wrt) others. Consider, for example, the following three polynomials Pl=xA + y*zi + l, P2 = y4 + xZ3-x2y,
P3 = z4+
x2z2-y2z-2
with a fixed variable ordering x -< y -< z. The algorithm proceeds by first pseudodividing Pi and P3 using P\ because P\ has lowest degree in z; then two pseudoremainders of degree 1 in z are obtained: R2 = prem(P2, P\, z) = - (x5 + x)z + y6 - x2y3, R3 = prem(P3,P\,z) = -y6z- 2 / - x 6 y 2 - x 2 y 2 + x8 + 2x4 + 1. Here prem(/>,-,P/,z) denotes the (sparse) pseudo-remainder of Pj wrt Pj in z. The main purpose of this paper is to generalize Wu-Ritt's algorithm by means of one-step pseudo-reduction explained below. Instead of pseudo-division, we can use either P \ or P2 to pseudo-reduce P3 to F\ or F2 as follows: F, = y2P3 - z2P\ = (x2y2 -x4-\)z2-y4zF2 = xP3 - zPi = x3z2 - (y3 +xy- x2)yz
2y2, -2x.
Here P3, is pseudo-reduced to F, in the sense that the degree of F, is smaller than that of P3 in z. To continue, we consider, for instance, Fi, which can be pseudo-reduced by P\ to a polynomial G of degree 1 in z: G = y2F2 -x3Pi = -{y3 +xy-x2)y3z-2xy2 165
-x1
-x3.
166
In this way, G is obtained from PT, by pseudo-reduction using both Pi and P\, while #3 is obtained from P3 by pseudo-division using P\ alone. One can further pseudo-reduce F\ by either P\, or F2, or G. Similarly, P2 can be pseudo-reduced by P\, F\, F2, or G. A pseudo-reduction of one polynomial by another, defined formally in (1), is actually a single step extracted from the procedure of pseudo-division. This reduction mechanism provides more possibilities for the selection of reductors and thus more flexibility for the introduction of reduction strategies. In this paper, we generalize Wu-Ritt's algorithm for computing characteristic sets using one-step pseudo-reductions and discuss possible strategies for the selection of reductends and optimal reductors. This will lead to a new algorithm whose underlying reduction mechanism cannot be simulated by pseudo-division. One of the toughest problems that we often encounter for the computation of characteristic sets is "object too large." Indeed, large polynomials not only make the computation difficult or even impossible but also render the output too complicated to be manageable. It is crucial to reduce the size of such polynomials. We propose a strategy for computing characteristic sets of smaller size by generating S-polynomials (in the terminology of Grobner bases'). The addition of such S-polynomials does not change the ideal in question but increases the cost of elimination. The gain is that these additional polynomials contribute to eliminating superfluous factors and thus help speed up the subsequent computation considerably and produce much simpler output. We report some experiments with a set of large examples for which our new algorithm with optimal selection of reductors and heuristic generation of S-polynomials performs better than Wu-Ritt's in terms of output and computing time. 2
Autoreduced Sets and Autoreduction
Let %_ be a computable field of characteristic 0 and 9([x] t n e ring of polynomials in x = (xi,...,xn) with coefficients in %_. A polynomial set is a finite nonempty set of nonzero polynomials in ^C[x]. We recall some basic concepts from the books by Wu13 and the author.9 For any P e 3C[x] \ %_, the biggest index of the variables effectively occurring in P is called the class of P; the class of any P G %_ is defined to be 0. We denote the class of P by cls(/>). For any P € ^C[x], deg(P,Xk) and lc(/ p ,^) denote the degree and leading coefficient of P in Xk, respectively. Now let P g Ht; then p = cls(P) > 0. We call lv(P) := xp the leading variable, ini(P) := \c(P,xp) the initial, and ldeg(/)) := deg{P,xp) the leading degree of P. Let / = ini(Z') and Q be any other polynomial in 9C[x] with J = \c(Q,xp). We say that Q is reduced wrt P if deg(Q,xp) < ldeg(/>). If Q is not reduced wit P, one
167
can pseudo-reduce Q by P to another polynomial R as follows: GQ-FPxf&{Q'x"]-]dee{P)=R,
(1)
where F and G are polynomials free of xp such that FI = GJ = \cm(I,J), the least common multiple of / and J. This is a one-step pseudo-reduction of 2 to R by P. We call Q the reductend, P the reductor, and P. the pseudo-rest. The pseudo-rest R of Q by P is denoted prest(2, P). Let P be a polynomial set in 7([x] \ %. It is said to be autoreduced or called an autoreduced set if, for any P, Q g P, Q is reduced wrt P. It is easy to see that any autoreduced set can be ordered as [A\,... ,Ar] with 0 < cls(Ai) < • • • < cls(Ar). An ascending set A is either an ordered autoreduced set or a set of a single nonzero element of %_. In the latter case, A is said to be contradictory. For any ascending set A = [A \,... ,Ar] and polynomial Q in 3C[x], one can form the pseudo-remainder of Q wrt A: prem({2, A) := prem(...prem(<2,Ar, lv(A r )),... ,A\,lv(A])). We use the notation prem(P,T) := {prem(P,T) | P g P} for any P C 3C[x]. Nonzero polynomials and ascending sets in ^[x] may be ordered by their ran/:.10'13'9 Any sequence of ascending sets whose ranks strictly decrease is finite (see the book13 by Wu). Consider a polynomial set P C ^C[x]. Let O denote the set of all ascending sets contained in P. Any ascending set of O that has the lowest rank is called a basic set of P. There is a simple algorithm that computes a basic set B of P (see Wu's book,13 p. 165 and algorithm BasSet in the author's book9). Let such an algorithm be denoted BasSet: B :=BasSet(P). Let P be as above; denote by Ideal(P) the ideal generated by all the polynomials in P, and by Zero(P) the set of all the common zeros (in some algebraically closed extension of %) of the polynomials in P. For any Q C 3C[x], Zero(P/Q) := {x g Zero(P) | Q(\) ± 0, VQ g Q}. Definition 1 Let P be a polynomial set in !?C[x]. Any ascending set, which is contained in Ideal(P) and has rank not higher than that of any basic set of P, is called a medial set of P. Now let P C X[\] \ X- We define the function 0(P,G) : = { P e P \ { e } | Q is not reduced wrt P). Suppose that Qi = P is not autoreduced. Then there exists a polynomial Q\ € Qi such that Pi — ©(Qi, Q\) ^ 0 . Take a polynomial P\ from Pi and pseudo-reduce Q\ by Pi to another polynomial R\ :=prest«2i,Pi). If/?i g 3C\{0}, thenZero(P) = 0 . Otherwise, let Q 2 := Qi \ {Q\} U {R\} \ {0}. If Q 2 is not autoreduced, then there exists a polynomial £>2 € Q2 such that P2 = 0(2,G2) / 0- Thus, we can take a
168
polynomial P2 from P2 and pseudo-reduce Q2 by P2 to get R2 :— prest(Q2,^2), and so on. This process must terminate so that we will either end up with a nonzero pseudo-rest in 3C or get an autoreduced set Q m . Let T and J. denote two functions, each of which selects an element from a polynomial set in ^C[x]. The autoreduction process explained above may be described formally as the following algorithm. Algorithm AutoRed[T,_L]: M := AutoRed[T,_L](P). Given a polynomial set P C 3C[x], this algorithm computes a medial set M of P. Al. A2. A3. A4. A5.
Set M := P. If M n %.±<2, then set M := [1] and the algorithm terminates. Compute H : = { A / 6 l | 0(M, M) ^ 0 } . If H = 0 , then order M as an ascending set and the algorithm terminates. Select Q := T(E) and P := ±(0(M, £>)), and compute R := prest(Q,P). If R 6 %\ {0}, then set M := [1] and the algorithm terminates. Otherwise, set M := M \ {Q} U {/?} \ {0} and go to A2.
Proof. Consider an arbitrary sequence 4* of pseudo-reductions performed in AutoRed with reductends (2i,£?2, ••• and reductors P\,P2,... such that Qj+\ = prest((2/, /y-) for 7 > 1; 4* is finite if some Qj is in %_. Now suppose that Qj # %_ and let q = cls(<2i), Pj = cls(f / ), and 8^ = deg(£>;,*i) for 1 < / < q and j > 1. Then, 8' + 1 < 8' for / > pj and j > 1. Hence, there exist mq < mq- \ <••• such that 8y = bqmq for all j > mq, 8^~ = b%q_l for all j > mq-\, and so on. In this way, there should be an m\ such that 8' = 8'mi for all 1 < / < q and j >m\. This is not possible because 8^j_, < 5P:J for every j . Thus, *P is necessarily finite. The number of such sequences 4 / is clearly finite, so the algorithm must terminate. Moreover, the /?, still belong to Ideal(P). Therefore, the final M is contained in Ideal(P) and its rank is not higher than that of any basic set of P. 3
A Parametric Algorithm
Let Mu denote an algorithm that computes a medial set of a polynomial set in 3C[x], and V be a binary set operator that maps two sets to another set. We recall the following parametric "algorithm" from an early paper7 by the author. Algorithm Delta[Mu,U]: A := Delta[Mu,0](P). Given a polynomial set P C 3C[x], this algorithm computes an ascending set A. 81. Set F := P andffi:= P. 82. While K ^ 0 do:
169 82.1. Compute A :=Mu(F). 82.2. If A is contradictory, then set K := 0 ; else compute !:=prem(F\A,A)\{0} and set F := U(P,F) UAuM. Algorithm Delta has the same structure as Wu-Ritt's original algorithm of characteristic sets;10'11'13 the only new ingredient is the introduction of the subalgorithm Mu (instead of computing basic sets) and the operator U. It becomes a meaningful algorithm only if appropriate Mu and 13 are specified such that the output A has a nontrivial relation with the input P. We introduce three simple operators for IS: O 0 (P,F) := 0 , Ui (P,F) := P, and 152(P,F) := F for any sets P and F. The following proposition is obvious. Proposition 1 Let CharSetN := Delta[BasSet,Uo]. Then, for any P C 3C[x], CharSetN(P) terminates and returns a medial set of P. A medial set C of a polynomial set P C 3C[x] is called a Wu characteristic set of Pifprem(P,C) = { 0 } . Proposition 2 If, for any F C ^C[x], Mu(F) terminates and returns a medial set of F, then, for any'P C ^C[x], Delta[Mu,lJ2](P) terminates and returns a Wu characteristic set of P. Proof. Theorem 2.2.5 in the book.9 Taking BasSet, CharSetN, and AutoRed[T,±] respectively for Mu, we get the following three different algorithms for computing Wu characteristic sets. • Wu-Ritt algorithm:5'10-1'-13 CharSet := Delta[BasSet,02]• Generalized Wu-Ritt algorithm:12'7 GenCharSet := Delta[CharSetN,iy. • Main algorithm of this paper: NewCharSet := Delta[AutoRed[T,±],iJ2]The algorithms CharSet and GenCharSet are developed by Wu 10,11 ' 12 ' 13 fromRitt's theory of differential algebra.5 The novelty of NewCharSet may be seen from the new subalgorithm AutoRed[T,±]. Different choices of the selection functions T and _L in AutoRed[T, _L] result in different variants of the algorithm. This will be discussed in the following section. Let C be a Wu characteristic set of P and I = {ini(C) | C € C}. Then Zero(P) = Zero(C/I)u(J / 6 l Zero(PU{/}). Recursive application of a characteristic set algorithm to each PU {/} will decompose P into finitely many ascending sets with an associated zero decomposition.' '' 13 ' 9
170
4
Practical Strategies
SELECTION OF REDUCTORS. The introduction of pseudo-reduction opens a lot of possibilities for the selection of reductors. In what follows, let T be a fixed function T that selects a reductend of highest rank, whose initial also has highest rank. We discuss possible selection functions for J_.
Strategy ±n (high-degree-first). J.// takes one reductor of highest rank. If there are several reductors having the same highest rank, it takes one whose initial has lowest rank and fewer terms. Strategy _!/. (low-degree-first). In contrast to ±H, ±i selects, from all possible candidates of highest class, one reductor that has lowest degree and whose initial has lowest rank and fewer terms. The selection strategy ±L is not identical to the strategy of pseudo-division in Wu-Ritt's algorithm, because a newly computed pseudo-rest may be taken immediately as a reductor for the following pseudo-reductions. Strategy ±/ (initial-first). The initial of a reductor plays a nontrivial role in the reduction process because the reductend has to be multiplied by a factor of the initial. So we may consider the function ± / that selects a reductor whose initial has lowest rank and fewer terms. The effectiveness of the above selection strategies depends on the structure of the polynomial sets occurring in the reduction process. One strategy may be better than another in one situation, but not so in another situation. We have made some experiments with these strategies without much gain (see, e.g., New// in Table 1; the limit of page space prevents us from including more experimental data). None of them appears evidently superior to another. This motivates us to introduce a more sophisticated strategy described below. Strategy ±o (optimal selection). For any polynomial H € 3C[x], define red(//) := H — ini(//) • lv(//) ldeg ( // '. Refer to the pseudo-reduction formula (1). For a given Q, it is desirable to search for an optimal P such that the pseudo-rest R has smaller size and contains terms of lower rank, in order to make subsequent computations with R easier. R depends essentially on F, G, and red(f): if the size of F, G, red(P) is large, then that of R is likely to be large; if F, G, red(P) contain terms of higher rank, the subsequent computations with R are likely to be heavier. Therefore, we propose to select P by taking into account the information on F, G, red(P), and red(<2). As an example, we take the following heuristic function y{P) := co/(G) • ©*(G) + »/(F) • ©«(/>), where the weight functions (0/ and CO/? map polynomials to integers as follows. Consider an arbitrary polynomial H of class h and let a be the leading term of H and (J
171
the leading term of lc(red(//),x/,) wrt the purely lexicographical term ordering. Then a>/(tf) := a| Jtl=miJi=m 2 i ... iJtA=m * • [term(//) + 1]*, m(H) := ^\Xi=m,X2=m2,...,Xh_]=m^
• [term(red(//)) + 1]*,
where term(//) denotes the number of terms of// and m is an integer, usually chosen from {2,..., 20}; m = 10 is taken for the experiments in this paper. Let ±o denote the function that selects, from all possible candidates, a reductor P with smallest \\f(P). This selection strategy works better in general than the strategies _l_//, ±L, and J_/. However, it still does not lead to a satisfactory improvement over the generalized Wu-Ritt algorithm GenCharSet in terms of output and computing time. The reason seems that the use of different reductors causes the multiplication of different factors of initials to the reductends, and thus may create extraneous factors for the pseudo-rests (see the paper6 by Sasaki and Furukawa for an analysis of such extraneous factors introduced by pseudo-division). Fortunately, the function J_o together with the strategy of heuristic generation explained below does lead to a significant improvement over GenCharSet. HEURISTIC GENERATION. TO compute Wu characteristic sets of smaller size (and
more effectively), we propose a new strategy called generation. Refer to algorithm AutoRed and M therein. We generate some new polynomials Mj G Ideal(M) and add Mj to M. This will enlarge M but keep Ideal(M) and thus Zero(P) unchanged. The addition of polynomials to M will immediately increase the cost of elimination. However, more polynomials in M not only give more potential reductors but also lead to more pseudo-rests; more pseudo-rests will provide higher chances to eliminate extraneous factors, and thus the subsequent computations will benefit. Therefore, we suggest to use heuristic generation at the early stage of characteristic sets computation for large problems. There are different ways to generate polynomials. One way is to form S-polynomials as in the method of Grobner bases,' and another is to compute subresultants. Our experiments in this paper are restricted to the former. At the outset, the S-polynomials of all possible pairs of polynomials from M are formed and added to M. For the loop, three heuristic parameters s, X, and y are introduced to control the generation: after the si-th pseudo-rest R^O'is computed in step A4 (for / = 1,2,...) and as long as si < X and M contains not more than y polynomials, form the Spolynomials of/? and M, for all M G M with cls(F) = c\s(R) and ldeg(F) > ldeg(/?), and add them to M. The reader may wish to consult the references3'4 in which the use of pseudodivision is proposed to speed up the computation of Grobner bases. QUASI-SENSE AND REMOVAL OF FACTORS.
Computing Wu characteristic sets as
defined in Sect. 2 is expensive in general. One difficulty is caused by the requirement
172
of autoreducibility in the definition of an ascending set. To drop this requirement, Wu proposed to use quasi-ascending set: "' 9 [Ai,... ,Ar] with cls(Ai) < • • • < cls(Ar), but Aj is not necessarily reduced wrt A,- for j > i when r > 1. Accordingly, one has the concept of quasi-basic sets,9 which may be computed by an algorithm QuaBasSet similar to BasSet. Moreover, we may easily devise the corresponding algorithms QuaCharSetN and QuaAutoRed for computing quasi-medial sets. This quasi-sense will be used for our experiments reported in the next section. Computing quasicharacteristic sets is often easier than computing characteristic sets, but the theory in the quasi-sense is less proper. Other kinds of ascending sets as well as algorithms for their computation may be found in the references.2'9 Let Q C 3C[x] \ {0}. An ascending set C is called a Q- modified Wu characteristic set of a polynomial set P c 3C[x] ifZero(P/Q) cZero(C) andprem(P,C) = { 0 } . An effective strategy used by Wu for computing Q- modified characteristic sets is to remove potential initial factors by frequent trial.' 1,s In this case, one may have to consider all removed factors which may be quite many and, in fact, most of them are superfluous. Another strategy is to examine the relationship among certain initials.7'12 Algorithm AutoRed[T, _L] employs essentially a top-down (from x„ to x\) elimination strategy. It may be better to mix this strategy heuristically with a bottom-up (from x\ ioxn) strategy. In particular, when M contains several polynomials of class 1, one should replace all these polynomials by their GCD. 5
Examples and Experiments
The computing time given in this section is for our implementation of the algorithms running in Maple V.4 under MS-DOS mode of Windows Me on a laptop Pentium III 700 Mhz with 128 MB of memory. AN ILLUSTRATIVE EXAMPLE. A polynomial P e 3C[x] \ X will be depicted briefly by an index triple [term(/>) lv(/>) ldeg(P)]. Recall the three polynomials P\,P2,Pi discussed at the beginning of Sect. 1 and let P = {P\,Pi,Pi} with x -
Cx = 4xM + 28x63 + 105 x62 +
210*3 - 28x2 + 1.
173
A quasi-characteristic set of P cannot be computed by Delta[QuaBasSet, 132] within 20 hours. To eliminate some extraneous factors, we use the generation strategy with s = 2, X = 40, and y = 50. Then the quasi-medial set MU computed by AutoRed[T,_Lo] from P consists of three polynomials with index triples [72 x 76], [334 y 1], [4 z 1]. The first polynomial may be written as x4(x4 + l) 2 Ci and the last is C3. It may be verified that prem(P,MU) = {0}, so CA = MA is a Wu quasi-characteristic set of P. The computation of CA together with the verification of 0 pseudo-remainders takes about 33 minutes. Clearly, the size of CA is much smaller than that of Cw • The Grobner basis G of P wrt the purely lexicographical term ordering may be computed in about 21 hours; G consists of Ci and two other polynomials with index triples [65 y 1] and [65 z 1]. It follows that C\ G Ideal(P), so the first polynomial in CA or Civ can be replaced by C\. Reducing the second polynomial in CA by C\, one gets a C2 with index triple [128 y 1] (here the number of terms is reduced but the size of the integer coefficients becomes much larger). In this way, we have obtained a Wu quasi-characteristic set C = [C\,Ci,C-i\ of P. Moreover, let C = [C\,C2,C{\, C2 being the second polynomial in G. One can verify that prem(P, C) = {0}, so C is also a Wu quasi-characteristic set of P. A general question is how to find such a quasi-characteristic set of smaller size without computing the Grobner basis of P. With removal of initial factors, the Qiy- and Q^-modified Wu quasi-characteristic sets of P, computed by Delta[QuaCharSetN,02] and Delta[QuaAutoRed [T,±o],l32] (without generation) in about 250 and 5 seconds respectively, are [Ci,[112y l],C 3 ]and[Ci,[125yl],C 3 ], Ex withQtv ={x,xA+\, [51x50], [49*66], Newo New// WuRitt 3 *** >7200 >7200 [71x80], [81 JC 83]} andQ^ = {X,X4+\, *** *** *** 4 [6 x 14], [39 x 48], [56 x 55], [89 x 88], *** *** 11.56 7 [99 x 98], y}. We omit other details. 3.95 14 >7200 0.11 EXPERIMENTS. Algorithm NewCharSet *** 16 261.82 356.69 has been implemented in Maple. Here 72.06 8230.96 19 282.97 is a short report on our preliminary ex21 323.38 257.94 >7200 periments using function ±0 with gener11.84 22 8.45 16.18 ation (s = 2, X = 50, and y=3t, where *** *** *** 31 t is the number of polynomials in P) and *** *** *** 40 ±n without generation for the selection 43 21.50 26.20 6.81 of reductors in comparison with the ge*** 47 575.08 >7200 neralized Wu-Ritt algorithm. In Table 1, 50 >7200 >7200 >7200 the Ex number refers to those of the 50 Table 1. Timings in Maple V.4 previously used examples8 for which Gen on Pentium III 700 Mhz Char Set in the quasi-sense (see Table 1
174
in the reference8) could not finish, and Wu quasi-characteristic sets are computed now by WuRitt := Delta[QuaCharSetN,iy; New0 := Delta[QuaAutoRed[f ,_L0],U2]; New// := Delta[QuaAutoRed[T,_L//],l52]. The timings are in CPU seconds and the cases *** were rejected by Maple for "object to large." Our discussions and experimental data on the computation of Q- modified Wu characteristic sets are omitted because of page limitation. Acknowledgements. This work is supported by the SPACES Project (http://www. spaces-soft.org) and the Chinese National 973 Project NKBRSF G19980306. References 1. Buchberger, B. (1985): Grobner bases: An algorithmic method in polynomial ideal theory. In: Multidimensional Systems Theory (N. K. Bose, ed.), Reidel, Dordrecht, pp. 184-232. 2. Lazard, D. (1991): A new method for solving algebraic systems of positive dimension. Disc. Appl. Math. 33: 147-160. 3. Pohst, M. E., Yun, D. Y. Y. (1981): On solving systems of algebraic equations via ideal bases and elimination theory. In: Proc. SYMSAC '81 (Snowbird, Utah, August 5-7, 1981), ACM, New York, pp. 206-211. 4. Mandache, A. M. (1994): The Grobner basis algorithm and subresultant theory. In: Proc. ISSAC '94 (Oxford, England, July 20-22, 1994), ACM Press, New York, pp. 123-128. 5. Ritt, J.F. (1950): Differential Algebra. Amer. Math. Soc, New York. 6. Sasaki, T, Furukawa, A. (1984): Theory of multiple polynomial remainder sequence. Publ. Res. Inst. Math. Sci., Kyoto Univ. 20: 367-399. 7. Wang, D. (1992): A strategy for speeding-up the computation of characteristic sets. In: LNCS 629, Springer, Berlin Heidelberg, pp. 504-510. 8. Wang, D. (1996): Solving polynomial equations: Characteristic sets and triangular systems. Math. Comput. Simul. 42: 339-351. 9. Wang, D. (2001): Elimination Methods. Springer, Wien New York. 10. Wu, W.-t. (1984): Basic principles of mechanical theorem proving in elementary geometries. J. Syst. Sci. Math. Sci. 4: 207-235. 11. Wu, W.-t. (1987): A zero structure theorem for polynomial-equations-solving. Math. Mech. Res. Preprints 1: 2-12. 12. Wu, W.-t. (1989): Some remarks on characteristic-set formation. Math. Mech. Res. Preprints 3: 27-29. 13. Wu, W.-t. (1994): Mechanical Theorem Proving in Geometries: Basic Principles. Springer, Wien New York.
DECIDING INCLUSION OF DIFFERENTIAL QUASI-ALGEBRAIC VARIETIES
Department
Department
JIMIN WANG L I A N LI of Computer Science, Lanzhou University Lanzhou 730000, P.R.China E-mail: ( wangjm,lil )©lzu.edu.en
FUDING XIE of Applied Mathematics, Da Lian University Da Lian 116024, PRChina
of
Technology
This paper presents a decision method to check inclusion among differential quasialgebraic varieties. The basic strategy is as follows: applying some equivalent formulas in first-order logic, the problem of deciding inclusion can be transformed into one which checks whether some differential quasi-algebraic varieties are empty; by differential Hilbert Nullstellensatz, it becomes a decision problem of membership in the radical of finitely generated differential ideals, which can be solved by Rosenfeld-Groebner Algorithm. A decision algorithm and two examples are given in the paper.
1
Introduction
Let K be a differential field of characteristic zero with a finite number of derivation operators, and K{yi,..., yn} the differential polynomial ring in differential indeterminates j/i, • • • ,yn. Supposing that F is a finite subset of K{y\,... ,yn}, the set of all common differential zeros of F is called a differential algebraic set. Let q be a differential polynomial of K{yi,... ,yn}, then the set of all common differential zeros of F which q does not vanish is called a differential quasi-algebraic set. A finite union of differential quasi-algebraic sets is called a differential quasi-algebraic variety. Checking whether two differential rational maps are equal needs testing whether they have the same domain, which means checking an inclusion relation of differential quasi-algebraic varieties twice. From Wu's geometric view point, mechanical theorem proving in elementary or differential geometry is just to check an inclusion relation between two (differential) quasi-algebraic varieties 15 ' 16 ' 4 . Inspired by Chou et al. 4 and Sit 1 4 , we present a decision method in this paper to check the inclusion of differential quasi-algebraic varieties. The routine is to transform the problem of deciding inclusion relation by logic method into one which checks whether some differential quasi-algebraic varieties are empty. Furthermore, by differential Hilbert Nullstellensatz, it becomes a de175
176
cision problem of membership in the radical of finitely generated differential ideals, which can be solved effectively by the Rosenfeld-Grobner Algorithm 1,2,7
Sit 14 studied inclusion relation of two quasi-algebraic sets by Grobner method, which is only applied in algebraic case, and his method is not complete for inclusion of quasi-algebraic varieties. Our method in this paper can be applied mainly for ordinary or partial differential case. The later sections are organized as follows. Section 2 contains some preliminaries on differential algebra and first-order logic. By equivalent logical transformation for a predicate formula and the Rosenfeld-Grobner Algorithm, section 3 gives a decision method for the inclusion problem between two differential quasi-algebraic varieties. In section 4, we give two practical examples, one of which is on differential geometry theorem proving. 2 2.1
Preliminaries Differential algebra
Let K be a differential field of characteristic zero with a finite number of derivation operators, and K{yi,..., yn} the differential polynomial ring in differential indeterminates j/i, • • • ,yn. An element of K{y\,... ,yn} is called a differential polynomial . By a differential affine space, we mean any one of the sets £", where n 6 N, C is a universal differential field which is a universal extension of K, see 9 . An element (771, • • • ,rjn) of £ " will be called a point. Let E : pi, • • • ,pr be a finite subset of K{yi,... ,yn}. By a differential zero of E, we mean a point of Cn at which every differential polynomial in E vanishes. The set of all differential zeros of E is a differential Zariski closed set, denoted by d-zero(E). For a single differential polynomial p, we denote the complement of d-zero(p) in Cn by ->(d-zero(p)), which is a basic differential Zariski open set. A differential quasi-algebraic set d-zero(F/q), we mean those points that every differential polynomials vanish in F and q does not vanish, in which q is a differential polynomial. It is obviously that d-zero(F/q) = d-zero(F) fl -id-zero(q). i.e., a differential quasi-algebraic set can be regarded as the intersection of a Zariski closed set with a basic Zariki open set. A differential quasialgebraic variety, we mean a finite union of differential quasi-algebraic sets, and the general form is U^ =1 (d-zero(i r i/9i)), in which Fi C K{y\, • • • ,yn},qi G K{yi,---,yn}-
The Rosenfeld-Grobner Algorithm was described by Boulier et al. 1 and improved by Hubert 7 ' 8 and Boulier et al. 2 . It is implemented within a pack-
177
age in computer algebra system Maple 5.5 and later version. The algorithm presents the radical of a finitely generated differential ideal as an intersection of some radical differential ideals. In detail, given a system E of differential polynomials, Rosenfeld-Grobner Algorithm outputs finitely many characteristic presentations C\, • • •, C n , which are particular cases of triangular systems 1,2 . Every characteristic presentations Ci represents a differential ideal, denoted [Ci] : H(?. The radical ^/[Ej of the differential ideal generated by E is the intersection
V\s] =
[c1]:H%n---n[Ct]:H%..
Roughly speaking, the Rosenfeld-Grobner Algorithm consists in two steps. The first step is the differential step which transforms E as finitely many systems A = 0, S ^ 0 of equations and inequations, called regular differential systems. y/\S] = [A1]:H%n---n[Ar]:HZ. These systems satisfy the hypotheses of Rosenfeld's lemma which "reduced differential problems to purely algebraic ones". Every regular system A — 0, S 7^ 0 represents a regular differential ideal denoted [A] : S°°. Its set of equations A is triangular. The second step is a purely algebraic step which transforms a regular differential system A = 0, S / 0 into finitely many characteristic presentations
[Ci] : #£?,•••, [Cs] : # g \ It provides a normal simplifier for the equivalence relation modular this ideal
V^I- i-e., pGx/Pl^P
d-remC, = 0
(1 < i < t),
where d-rem Ci means the remainder of the differential polynomial p with respect to Cj. 2.2
First-order Logic
A propositional formula in the standard connectives are (inductively) defined by the following statements: (1). each propositional variable is a propositional formula; (2). 0 and 1 are propositional formulas; (3). if A,B are two propositional formulas, then - B,A O B are propositional formulas. Any propositional formula B can be transformed into a conjunctive form, i.e., B is equivalent to a conjunction of formulas, each of which is a disjunction of propositional variables and their negations.
178
All truth equivalent propositional formulas, such as ->(A U B ) O -u4 D -iB, A -> B o -iA U B, which hold true in propositional logic, also hold true in predicate logic 3 . Furthermore, any predicate formula with quantifierfree B, which means that B contains no occurrence of universal quantifier V and existential quantifier 3, can also be transformed into a conjunctive form. Besides, there are some additional equivalent predicate formulas in predicate logic, such as \/xB(x) <$• ->3x(-
Decision Method
In what follows, given a differential quasi-algebra variety Ul=1d-zero(Fi/qi), if Fi contains no element of K{yi, •••yn) then we add 0 to Fi, and if qt does not exist then let g, = 1. So we always assume that all Fi are non-empty sets and qi exists. Let Fi,Gj be some finite subsets of K{y\,..., «/„}, and qi,hj are some differential polynomial of K{y\,... ,yn}. By U^=1d-zero(F,/<7j) C U j=1d-zero(Gj/hj), wemeanV(j7i,---,J7 n ) £ £", if (771, • • • ,7j„) £ U[ =1 d-zero(Fi / qt), then (771, ••• ,??„) £ Uj=1d-zero(Gj/hj), that is to say, Vfai, • ••,!?„)£ £ n (U[ = 1 d-zero(F,/ g i ) - • U* = 1 d-zero(G,/^)). We consider firstly the inclusion of two differential quasi-algebraic sets. Theorem 1. Let F, G be two finite non-empty subsets of K{yi,..., yn}, in which G = gi, • • • ,gt. q,h £ K{yi,... ,yn}- then d-zero(F/q) C d-zero(G/h) if and only if l4 =1 d-zero(F/{<7, gi}) U d-zero({F, h)/q) is empty. Proof. d-zero(F/q) C d-zero(G/h) «• V(r?i, • • •, Vn) G Cn{d-zero{F/q) -»• d-zero(G/h)) O- -13(77!, • • •,Vn)-'(d-zero(F/q) -> d-zero(G j h)). For simplicity, we first deduce the equivalently conjunctive form of the formula with quantifier-free ^(d-zero(F/q) -> d-zero(G/h)). ^{d-zero{F/q) -> d-zero(G/h)) <& ->(-^(d-zero{F/q)) U d-zero(G/h)) <=> d-zero(F/q) D ^(d-zero(G / h))) <=> d-zero(F) D ->d-zero(q) D ->(d-zero(G) n ->(d-zero(/i))) O d-zero(F) D -^d-zero(q) n (-i(d-zero(G)) U d-zero{h)) «• (d-zero(F)n-id-zero(9)n-id-zero(G f ))U(d-zero(F)n->d-zero(g)nd-zero(^)) <£> (d-zero(F) n -id-zero(g) D~'(u' =1 d-zero(gi))) U (d-zero(F) n -id-zero(g) n d-zero(/i)) i.e.,<^>U^ =1 ((d-zero(F)n-id-zero(g)n-.d-zero(pi)))U(d-zero(F)n-id-zero(g)n d-zero(/i))
179 that is,<£> \Ji=y{d-zero(FI{q, g{}) U d-zero({F, h}/q). Therefore, we have d-zero{F/q) C d-zero{G/h) O -,3{m,- •-,»?»)€ £ n M = i d - z e r o ( F / { g , 5 i } ) U d-zero({F,h)/q)), Then, U* =1 d-zero(F/{q, gt}) U d-zero({F, h}/q) is empty, and the proof is finished. Corollary 2. Let F,G C K { y 1 ; . . . ,«/„}, where G - gi,-• • ,gt; q,h € i f { j / i , . . . , y n } . Then d-zero(F/q) C d-zero(Gfh) if and only if g £ ^/[F, /i] and Vi(l (1).F = 0,/i = 0,qr / 0 has no solution; (2). Vz(l < i < <), F = 0) 1 * 9i T^ 0 n a s n 0 solution. <£> {\).q € \/[F,/i]. (2). Vi(l < i < «), 9 * 3 , G ^ / F L ( b y differential Hilbert Nullstellensatz ). The proof is finished. The main idea of the proof of theorem 1 above is to transform inclusion between two differential quasi-algebraic sets into a conjunctive form in prenex form -G, every term of which is just a differential quasi-algebraic set. Obviously, We can generalize the way to the inclusion between two differential quasi-algebraic varieties. By Corollary 2, it is transformed a membership problem of radical differential ideal generated by a finite number of differential polynomials, and which can be solved by the Roesenfeld-Grobner algorithm. Thus, we have the following algorithm to decide inclusion between two differential quasi-algebraic varieties. A l g o r i t h m 3. I n p u t : Two differential quasi-algebraic varieties: Ei = U[ = 1 d-zero(F/ 9 i ), S 2 = U$ =1 d-zero(Gi/Ju). O u t p u t : True if Ei C E 2 , false otherwise. Step 1. For i = 1 to r, do Step 1.1. Compute a conjunctive form with prenex - d of V?7(£i —> £2), eaci term of which is a differential quasi-algebraic set and write the result as: ->3r](U>^1(r\f'i=1 d-zeroAid) D n^ =1 -id-zeroSjd))S t e p 1.2. For d — 1 to hi, do S t e p 1.2.1. Assume that B^ = qi, • • • ,qm.
180
Step 1.2.2. By Rosenfeld-Grobner Algorithm, compute the characteristic representation Mid the radical of differential ideal generated by Aici. Step 1.2.3. For all j = 1 to m if qi £ Mid, then print "False", return. Step 2. Print "True". Note that applying the Algorithm 3 twice, the problem of two differential quasi-algebraic varieties equality can be solved. 4
Example
Example 4. Let C{u,v} be a differential polynomial ring in two differential indeterminates u,v, and with two differential operators d/dx, d/dy. Fi,Gt C C{u,v}; qi,,hi G C{u,v}, (i = 1,2), where Gt={vul &2 — x^x^y
+vux,x Vy
+ ux,
Wj 5 y Vy Uy
ux>y,
u2yy-\};
Uy Ux^ y -\- Uy
hi = vuy,y*(2ux,x j,
Q2 — ^x,y
Vy
+ l);
^yi
G2 = {-vx2 uy +vx2uX:V +4vuy - 41/u^j,}; h2 = uXtX - 2. Decide whether l)2=1d-zero(Fi/qi) = U2=1d-zero(Gi/hi). We first check whether U2=1d-zero(Fi/qi) C U2=ld-zero(Gi/hi). According to Algorithm 3, we compute an equivalently predicate formula of d-zero(Fifqi) C U2=1d-zero(Gi/hi), and obtain ^3r)(d-zero(F1/(q1*G1*G2))Ud-zero{{F1,h1}/(ql*G2))l)d-zero{{F1,h2}/q1* G^Ud-zeroUFuhuhij/q!)). By the Rosenfeld-Grobner Algorithm implemented in Maple 5.5, we compute, respectively, these radical differential ideal generated by {Fi}, {Fi,hi}, {Fuh2}, {Fuhx,h2}. Checking whether every differential polynomials, respectively, among {q\ * Gi*G2}, {qi * G 2 ) , {qi *G\} and {q\} belong to the respective radical differential ideal above, and we get d-zero(Fi / qx) C \J2=1d-zero(Gi/hi). Similarly, we get d-zero(F2/q2) C U2=1d-zero(Gi/hi). Hence, we have 2 U =1d-zero(Fi/qi) C U2=1d-zero(Gi/hi) true. For U2=1d-zero(Gi/hi) C U2=1d-zero(Fi/qi), repeat Algorithm 3 and get U2i=ld-zero(Gi/hi) <£ U2=1d-zero(Fi/qi). Therefore, Li2=ld-zero(Fi/qi) ^ Lif=1d-zero(Gi/hi). Example 5. Wu15'16 gave a mechanical method to prove the relation of Kepler's laws and Newton's laws. Chou and Gao 4 extended Wu's work to give a complete, mechanical solution of the relation between these laws.
181
We here are following the symbols of Chou and Gao 4 to prove the theorem, which First law of Newton can be deduced from First and Second law of Kepler under a non-degeneracy condition a / 0,p / 0 (i.e., the ellipse does not degenerate to two lines). First and Second law of Kepler can be described as fi=r-p-e*x; h=p\ /3 = e'; f4 = y'*x-y*x -h; /5 = h ; f6=r2 -x2 -y2; f7 = a2 - x'2 - y'2. The First Law of Newton can be represented as: n\ = a * r - 2a * r * r . Suppose F = {/i, / 2 , • • •, h}, Q = {a,p} and G = {ru}, then the problem above is translated into checking whether d-zero(FfQ) C d-zero(G). By Algorithm 3, we get d-zero(F/Q) C d-zero(G) true, so the conclusion holds. Acknowledgments This work was supported by a national key basic research project of P.R.China (No. G19980306). We would like to express our gratitude to Prof. W.Y. Sit and the other referee for their valuable suggestions and comments on the early version of this paper. References 1. F. Boulier, D. Lazard, F Olliver and M Petitot, Representation for the radical of a finitely generated differential ideal. In Proc. of ISSAC-95, ACM Press, pp.158-166, (1995). 2. F. Boulier and F Lemaire, Computing canonical representatives of regular differential ideal. In Proc. of ISSAC-00, ACM Press, pp.37-46, (2000). 3. S. N. Burris, Logic For Mathematics And Computer Science. New Jersey: Prentice Hall/Upper Saddle River, (1998). 4. S.-C. Chou and X.-S. Gao, Automated reasoning in differential geometry and mechanics using the characteristic set method. J. of Automated Reasoning. 10, 173-189 (1993). 5. D. Cox, J. Little and D. O'Shea, Ideals, Varieties, and Algorithms (second edition), New York: Springer-Verlag, (1997). 6. X.-S. Gao and S.-C. Chou, A zero structure theorem for differential parametric system. J. of Symbolic Computation. 16, 585-595 (1993). 7. E, Hubert, Essential components of an algebraic differential equation. J. of Symbolic Computation. 28, 657-680 (1999). 8. E, Hubert, Factorization free decomposition algorithms in differential algebra. J. of Symbolic Computation. 29, 641-662 (2000).
182
9. E.R. Kolchin, Differential Algebra and Algebraic Groups. New York: Academic Press, (1973). 10. J. F. Ritt, Differential Algebra. New York: Amer. Math. Soc, (1950). 11. A, Rosenfeld, Specializations in differential algebra. Trans. Amer. Math. Soc. 90, 394-407 (1959). 12. A, Seidenberg, An elimination theory for differential algebra. Univ. California Publ. Math. (N.S.), 3(2), 31-66 (1956). 13. W.Y. Sit, An algorithm for solving parametric linear systems. J. Symbolic Computation. 13,353-394 (1992). 14. W.Y. Sit, Computations on quasi algebraic set. (private communication), also report in Electronic Proc. of IMACS-ACA'98, (1998). 15. W.-T. Wu, Mechanical derivation of Newton's gravitational laws from Keple's laws. MM Research Preprints (CAS), 1, 53-61 (1987). 16. W.-T. Wu, Mathematics Mechanization. Beijing and Netherlands: Science Press/Kluwer Academic Publishers, (2000).
A C T I O N R E F I N E M E N T FOR TIMED LOTOS JINZHAO WU Fakultat
fur Mathematik und Informatik Universitat Mannheim D7, 27, 68131 Mannheim, Germany and Chengdu Institute of Computer Applications Chinese Academy of Science Chengdu 610041, China We develop techniques of action refinement in a real-time process algebra baptized timed LOTOS. Semantic refinement is performed in a timed extension of bundle event structures. We show that the refinement operations we presented behave well. They meet the commonly expected properties.
1
Introduction
In this paper, we investigate action refinement 3 in a real-time process algebra, which is indeed a timed extension of the internationally standardised specification language LOTOS x , a synthesis of two well-known process calculi CCS 8 andCSP4. We employ a causality based setting, Langerak's bundle event structures 7 , as semantic models, and take Katoen's method to associate timing information 5 . We define the concept of action refinement, following the methodology that refinement of actions is modelled as an operator. We show that our refinement operation is safe and under this operation a timed version of the traditional history preserving bisimulation equivalence 10 is a congruence. It therefore behaves well. Furthermore, the semantic and syntactic refinements we developed are shown to coincide with each other under this equivalence notion with respect to a cpo-based denotational semantics 5,6 . This result gives a clear understanding of the concept of refinement of actions. It has two-fold applications: the syntactic specification can be implemented by semantic action refinement, and on the contrary the refined semantic models can be specified by syntactic action refinement. This paper is a further development of the work of Glabbeek & Goltz 2 and the work of Murphy & Pitt 9 . Refinement operators for various untimed event structures are proposed in the former, and a timed variant of prime event structures is defined in the latter, which allows for a simple concept of refinement. 183
184
2
Real-time LOTOS
We assume a given set Obs of observable actions, and an invisible silent action r (T £ Obs). Action y/ (\/ & Obs U {r}) indicates the successful termination of a process. Let Act = Obs U {r, 1/}. We use R+ = [0, oo), the set of nonnegative reals, to denote the time domain. Unlike Katoen 5 , we view actions as compound happenings having durations. Let function k : Act —> R+ with k{r) = k(y/) = 0 assign durations to actions. Assume a e Obs U {T}, A C Obs, A: Act -> Act with A(r) = r, A(yO = V and A(a) 7^ y' for a G 06s is a relabelling function, and dom(A) = {a € ^4rf | A (a) ^ a}, representing the set of actions that are really relabelled by A. We also assume that an action a can only be relabelled by an action with the same duration, i.e., k(X(a)) = k(a). Let Var be a set of process variables with x € Var, and T C R+, t <E R+. The set of (timed) expressions is generated by the following grammar: P ::=
0 | 1 T | a T . P | P ; P \ P + P | P | | v P | P\A \ P[X] \P>tP\x\ fix.P. Our language is in fact the process algebra termed timed LOTOS presented in 6 without interrupt operator and multi-way synchronization on observable actions. The general parallel composition and interrupt, operator will be discussed later. The operators have the following intuitive meaning: 0 denotes inaction. I T represents that the process terminates successfully at certain time instant in T. Here we need label 1 with a time instant set T because actions are no longer instantaneous, we have to make clear the time points at which an action may finish. ar-P denotes the prefix of a and P where a is over at some time point in T. P\A behaves as P , except that the actions in A are abstracted, i.e., turned into the invisible r-actions. P[A] denotes the relabelling of P according to A. Pi; P2 denotes the sequential composition of Pi and P2. The control is passed to P2 by the successful termination of Pi. Pi + P2 indicates the choice between the behaviors described by Pi and P2. Pt \\y/ P2 denotes the parallel composition of Pi and P2. Pi and P2 execute other actions independently from each other, while the action of successful termination *J must be performed by both processes simultaneously. Pi >t P2 initially behaves like Pi. But if Pi doesn't begin to perform an action before time point t, then a timeout occurs and control is passed to p j . px.P is a recursive expression. It can be understood through x := P , where x, and other process variables in Var, may occur in P . By TEpr we denote the set of all the expressions of our language, P, P; are expressions, and Ap the set of all the actions occurring in P .
185
3
Semantics
Now we describe a semantics for timed LOTOS, using timed event structures as semantic models. 3.1
Timed event structures
We employ a timed version of Langerak's bundle event structures 7 . A timed event structure (tes for short) £ is a tuple (E, §,>->, I, T>,1Z,U) with E, a set of events; Jt C E x E, the irrefiexive and symmetric conflict relation; i-»C V{E) x E, the bundle relation; I : E —• Act, the action labelling function; V : E -> V(R+), the event delay function; H :i->-> V(R+), the bundle delay function; and U C {e E E \ l(e) = r } , the set of urgent events, such that for any bundle-set X, (1) (X xX)\ IdE C ft; and for all e € U, (2) for all e' e £ , ( l H e ) A (ejje') => (X H- e') V (Xfle'); (3) there is t £ R+, (V(e) C {t})W (3X : {X M- e) A (7l(X,e) C {*})). Here T'(-) denotes the power-set function. Xtfe' denotes (Ve" e X : e'fle"), and I ^ E = { ( e , e ) | e g £ } . X is called a bundle-set if X >-» e. Constraint (1) enables us to uniquely define a causal ordering between the events in a system run. The justification for constraint (2) is to be able to locally decide whether an event can occur by only considering its direct causal predecessors and conflicts. This enables a more straightforward notion of configurations. The motivation for constraint (3) is that urgent events are used for the sole purpose of modelling timeouts which are internal actions of a process and typically can appear at a single time instant only. By init(£) we represent the set of initial events of £, and exit(£) its set of successful termination events, i.e., init{£) = {ee E\ -,(3X C E : X H-> e)},exit(£) = {e £ E \ 1(e) = V}. To describe a system run, we first consider its underlying set of events that are timed. A timed event (of £) is a pair (e,t), where e £ E, t € R+, and t indicates actually the time instant at which event e finishes. Let a be a finite sequence (ei, *i), • • •, (e n , tn) of timed events, where e; and ej are distinct when i / j . we denote by E(a) the event set {ei, • • •, e„} and Timea(ei) = ij, the accompanying time instant of e,. For t € R+ and T C R+, let T ± t denote the set {ti ± t | U 6 T } , and we say t < T if T = 0 or t is not greater than each element of T. Suppose that CT;_I = (e\,t{) • • • (e,_i,ij_i) is the (i — l)-th prefix of a. Let
186
en(ai-i)
= {eeE\
£(<Ti_i) |
(Ve, £ £(ffi_i) : e fa) A (VI^eilnB^-O^)}. It is then the set of events enabled after
K - . ( e ) = [*(*(e)), oo) n 27(e) D (nx^ e , e i €Jf (*i + WOO), oo) n ft(X, e))) consists of all the potential time instants at which event e may finish. If there exists such a timed event sequence a, for 1 < i < n satisfying the conditions (1) e* £ en(crj_i); (2) U € i m ^ ^ e * ) ; and (3) Ve £ e n ( ( T M ) n M : fetfe) =>• fa - fc(/(e*)) < t m ^ . ^ e ) ) , then the set of all the timed events occurring in this a is called a configuration of £. We use C{£) to denote the set of all the configurations of £. For a € C(£), we say that it successfully terminates, if there exists e £ -E(cr) such that 1(e) = sj. e £ -E(CT) is said to be maximal in CT if for any bundle-set X and e' £ £", if e £ X and X !->• e' then e' ^ E(a). In a system run successful termination action cannot appear more than once. £ is called well-labelled if for every a £ C(£), E(a) D exit(£) is empty or a singleton. Let maxt(£) = {i £ R+ \ 3a £ C(£)3(e,t) £ er : /(e) = y/}. It consists of all the time instants at which the successful termination runs of the system finish. By TES we denote the set of all the tes's, £, £t £ TES, and £ = (E, j), *->• ,l,T>,H,U),£i = (Ei,^i,^ri,li,Vi,TZi,Ui). When necessary we also use Ee,$£, H+£, /f, Pf, TZg and ZYf to represent E, fl, H->, /, 2?, 7?. and W, respectively. For two different tes's £/ and £g, we always assume Ef C\Eg = 0. 3. ,2 j4n equivalence notion For ej,ej £ E, by ej i-^ e* we mean that there exists a bundle-set X such that ej £ X and X i->- e;. We still use i-> to represent the transitive closure of relation i-» in the following. Let a £ C(£), i-» ^ and /|CT be the projections of H> and / on E(a) respectively, i.e., H-» |O- =I-> fl(cr x a) and /^(e) = /(e) for e £ E(a). We sometimes call *->• l^ the causality relation in a. For a £ ^4ci, i £ R+, and cr' £ C(£) such that cr C a', we say cr —^ a' (or — ^ when necessary) if cr' \ cr = {(e, t)} and /(e) = a. o\ £ C(£\) and 02 € C(£2) are said to be isomorphic, denoted u\ « 02, if there exists a bijection h : E(a{) -> E(a2), such that for arbitrary e,e' £
E(
Timeai(e) = Timea2(h(e)); h\ai(e) = l2\«2(h(e)); e i-^ | f f l e' iff /i(e) H4 2 U 2 /i(e'); e € Wi iff /i(e) £ U2.
187
So when o\ «
3.3
Semantics
Let ax-, [A], ;, +, ||^ and >t be the compositional operators on tes's representing respectively the action prefix, relabelling, sequential composition, choice, parallel composition and timeout defined in 5 ' 6 . Since actions are no longer instantaneous, abstraction operator \A here has to be different. Our idea to abstract an observable action a is that, we insert two r-events at the time points at which a starts and finishes. Formally £i\A — f{£\), the refined tes of £\ defined in the next section, where Acto = Act \ A, and for a G A, / ( a ) = ( e v , 0,0, {(e v , ^)}, {(ev, {fc(o)})}, 0,0). We suggest the reader go back here after reading Section 4. The definition of tes's is independent of the duration function of actions. As is shown in 6 , 0^(0 e {OT-,[A]}) and £\ o£ 2 (° G {;,+, ||./,>t}) are all tes's. £\\A is also a tes by our following Theorem 4.1.1. Proposition 3.3.1
Suppose £1 =(, £2, £3 =& £4. Then (l)o£1S6o£2(oe{ar.)VMA]}); (2)f1of3Sif2o54(o£{;,+)||v,,>t}).
Let mapping s : TEpr -» TES be the cpo-based denotational semantics proposed in 5 . Note that the assumption that actions have durations has no essential influence on this semantics. Proposition 3.3.2 s(P) is well-labelled.
188
4
Action refinement in semantic models
We first introduce a new event in the tes substituted for an action to explicitly represent start point of the system. We call 7-{0}.£, denoted r(£), the rooted tes associate with £. In r{£), the event, which is labelled with the prefix T and denoted o r (£), is called the start-event of £ (or r(£)). Proposition 4.1
(1) £ is well-labelled iff r(£) is well-labelled; (2) maxt{£) = maxt(r(£)).
Proposition 4.2 If £x ^b £2 then r(£i) ^b
4-1
r(£2).
Definition
Let Act0 be a subset of Act containing r and ^/, representing the set of actions which needn't or cannot be refined. / : Act\Acto —> TES is called a refinement function if for any action a € Act \ Acto, it meets the following conditions: (1) f(a) is well-labelled; (2) maxt(f{a)) = {k(a)}. We call f(a) a refinement of action a. Notice that processes that are quicker than an action are not allowed to be valid refinements of it. Hereafter, let / and fi denote refinement functions. The problem now is how / can be applied to a tes to derive a refined one. For simplicity, we use rfl(e) and rf(a) to abbreviate r(/(Z(e))) and r(f(a)) respectively. Assume in(X) = {e | (e,e') e X} and it2(X) = {e' | (e,e') € X}. The refined tes of £ is defined to be
f(£) = (Ef4f,^f,lf,Vf,nf,Uf), • Ef =
where
{(e, e') \(eeE)A (1(e) $ Acto) A (e' e {(e,e)\ (eeE)A(l(e)GAct0)},
Erfl{e))}U
• for (ei,e 2 ),(ei,ef>) G Ef, (e1,e2)tf(e'1,e'2) iff if e\ = e[ then e2$rfi(ei)e2> o r e 2,e 2 € exit(rfl(e\)) and e2 ^ e'2 (e2 ^ ei and e'2 ^ e^ in this case), if ei 7^ e'j then if e2 = ei and e 2 = e^ then ei$e[, if e 2 ^ ei and e2 = e^ then eife'j and e2 G {o r //(ei)} U exit(rfl(ei)), if e2 = ei and e2 7^ e[ then eijjei and e 2 G {°r/((e'j)} U exit(rfl(e[)), if e 2 7^ ei and e2 7^ ej then eiflei, e2 G {o r /;( ei )} U exit(rfl(ei)) and e 2 € {o r /j( e ')} U exit(rfl(e[)),
189
• for X C Ef and (e1,e2) e Ef, X >-»/ {e1,e2) iff if 7ri(X) = {ei} then 7r2(X) ^rfi(ei) e2 ( e2 ^ e\ in this case), if ITI(X) ^ {ei} then e 2 € {o r /;( ei )} U exit{rfl(ei)) if e2 ^ ex, Tti(X) i-> e i , a n d 7T 2 (X) = U e e 7 r i ( x ) , i ( e ) g A r t o e a ; i * ( r / ' ( e ) )
U
(iJeeir1(X),l(e)€Acto{e}),
• if e 2 / ei for (ei, e2) e £ / then if e 2 &exit(rfl(ei)) then //(e x ,e 2 ) = lrfi(ei)(e2), if e 2 £ exit(rfl(e\)) then lf(ei,e2) = r, if e 2 = ei then //(ei,e 2 ) = Z(ei), • if e2 = ei for (ei,e 2 ) € £ / then Vf(ei,e2) =V(ei), if e2 7^ ei then if e 2 = orfl(ei) then D/(ei, e 2 ) = (X>(ei) - *(Z(ei))) n J2+, if e2 ^ o r / i ( e i ) then £>/(ei,e 2 ) = [0, oo), • for X C I?f and (ei,e 2 ) e E / , if X H-^ (ei,e 2 ) then if TTI(X) = {ei} then % ( X , (ei,e 2 )) = 7£ r/( ( ei )(7i- 2 (X),e 2 ), if 7Ti(X) 7^ {ei} then if e2 = ei then Uf(X,(ei,e2)) = K(ni(X),ei), if e2 7^ ei then if e2 = orfl{ei) then ft,(X, (e 1 ; e 2 )) = (ftfri(X), ei) - fc(/(e0)) n i?+, if e2 € exit{rfl{e\)) then TZf(X, (ei,e 2 )) = [0, oo), • for (e, e') € Ef, (e, e') £ Uf iff e e W, or e' € Wr/((e) if e ' 7^ e Note that urgent events of the refined tes are just the conjunction of urgent events of the original tes and urgent events of the tes's substituted for actions. Theorem 4.1.1 f(£) € TES. 4-2
Properties
Suppose that 07 is a configuration of / ( £ ) . Let 7r
i(
(ei*) I there exists (e,ej) € E(af) and if/(e) $ Ado then t = Timea!{e,orfi(e)) otherwise t = Timeaj{e,e)}, and for e € £(771(07)) and /(e) ^ Ac£0, let 7T2(<7/,e) = {
+ k(l(e))
(ej,tj) I (e,ej) G £(07) and tj = Timea/(e,ej) - Time 0 - / (e,o r / ; ( e ))}. 771(07) is in fact the projection of 07 on £, and 77^07, e) the projection of 07 on r//(e). By Proposition 4.1, we have the facts that 771(07) is a configuration of £, -K2{df,e) is a configuration of r//(e), and it successfully terminates if e is not maximal in .£(771(07)).
190 Now suppose a is a configuration of £, and ae a configuration of r//(e) satisfying the condition: ae successfully terminates if event e is not maximal in a, where e G E(cr) and /(e) $• Act0- Let /(er,Ue<7e) = {
((e,ej),tj) | e £ £((7) and if /(e) G Acto then e^ = e, tj = Timea(e) otherwise ej e E(ae), tj = Timea
= {?f | oy is a refinement of a G C{£)}.
It is straightforward to see that the causality relation in ae is respected in the refinement of a. The causality relation in a is respected in the meaning that if e causes e' in a then some successful termination event of rfl(e) causes the start-event of rfl(e'). Therefore, the behavior of f{£) can be inferred compositionally from the behavior of £ and the behavior of those //(e) with the explicitly represented start events. We have the following theorem by Theorem 4.2.1, which shows that history preserving bisimulation equivalence is a congruence under our refinement. Theorem 4.2.2 If £\ =b £2 and fi(a) =b h(a) for any a G fl(£l)=bf2(£2). 5
Act\Act0,then
Syntactic action refinement
In order to make sure that there is no confusion of communication levels, we have to sort out some "bound" actions. For a given expression P, let Sort(P) be the smallest action set containing A and dom(X) if abstraction operator \^4 and relabelling operator [A] occur in P. All the actions in Sort(P) are not allowed to be refined. Let Act0 be a subset of Act such that Sort(P) U {r, y/} C Acto, and g : Act \ Act0 -^ TEpr a function. Acto represents again the set of actions that needn't or cannot be refined. We first see what it means that function g is a refinement function for expression P: g is a refinement function for 0, I7* and x; g is a refinement function for ax-Pi iff 3 is a refinement function for Pi; g is a refinement function for Pi o P 2 iff g is a refinement function for Pi and P 2 , where o G {;,+,>*, \\^}] g is a refinement function for 0P1 iff g is a refinement function for Pi, and for any a G Act \ Acto, ^g(a) H Sort(P) = 0, where o e {\.A, [A]}; g is a refinement function for fix.Pi iff g is a refinement function for P j .
191
Now we show how g can be applied to expression P to derive a refined one. Our basic idea is that, if a £ Act0, then the refined expression of ar Pi is the sequential composition of TT_k(a).g(a) and the refined expression of Pi. Here the prefix r can be understood as the start point of system. Its time attachment, as already explained for tes's, is T - k(a). The refinement of expression P is defined as follows: g(0) = 0,g{lT) = lT,g(x)=x, ia p) = I aT-9(pi)> if o G Act0, 9\flT- l) | (r T _ fc(a) .5(a));ff(P 1 ), otherwise, g(oP1) = °g(P1),foroe{\A,[\]}, g(Pi ° P2) = g{Pi) ° g{P*), for ° e {;, +, >t, lly}, g{fj.x.Pi) = fix.g{Pi). g(P) is called a refinement of P. Notice that our refinement is simutanous, not step-wise. Theorem 5.1.1 g(P) £ TEpr. The function / presented in Section 4 uses semantic objects, i.e., timed event structures, as the domain of definition. We call it semantic. The function g presented above, however, is defined at syntactic level. We call it syntactic. Let g : Act\Acto —> TEpr be a syntactic refinement function for expression P , and / : o 4 s(g(a))(a € Act \ Acto). In the sequel, we are interested in the situation that / is a semantic refinement function. Proposition 3.3.2 guarantees that s(g(a)) is well-labelled. Since we are interested in the refinement of a given expression P , we assume in the following that all the expressions and operators mentioned occur in P . Lemma 5.1.2
f(aT.s(Pi)) f{aT.s(P!))
=b aT.f(s(Pi)), if a e Act0; =b (r T -fe(a)-/(a));/(s(i :> i)), otherwise;
/MPOJsWWOJ.oeiWA]}; /(s(Pi)oS(P2))-6/(S(P1))o/(S(P1)),
°e{;,+,ll,W^From these results, we can also prove that the similar conclusion is the case for recursion: Lemma 5.1.3 f(s(fix.Pi))
=b
s(g{fix.Pi)).
We thus obtain the following theorem by these two lemmas, which indicates that the semantic and syntactic refinements coincide.
192
Theorem 5.1.4 f(s(P)) Act\Act0. 6
*£b s(g(P)), where / ( a ) = s(g(a)) for any a €
Discussions
In the presence of general synchronization, defining a refinement operator is more difficult even in the untimed case. Theorem 5.1.4 does not hold anymore for the parallel composition \\A 5 ' 6 with synchronization on A C Obs. The main reason is that we can by no means require r-actions to be executed simultaneously. The interrupt operator [> 1 can be modelled by timed bundle event structures. But we need to duplicate some events. This operator depends strongly on the assumption of atomicity of actions. When it appears, one trick to perform action refinement is that, we require that the actions involved with this operator are atomic and cannot be refined.
References 1. Bolognesi, T., Brinksma, E., Introduction to the ISO Specification Language LOTOS, Comp. Netw. & ISDN Syst, 14: 25 - 59, 1987. 2. van Glabbeek, R., Goltz, U., Refinement of Actions and Equivalence Notions for Concurrent Systems, Hildesheimer Informatik-Berichte 6/98, Universitat Hildesheim, 1998 (To appear in Acta Informatica). 3. Gorrieri, R., Rensink, A., Action Refinement, Technical Report UBLCS99-09, University of Bologna, 1999 (To appear as Chapter XVI of the Handbook of Process Algebra, Elsevier Science). 4. Hoare, C. A. R., Communicating Sequential Processes, Prentice-Hall, 1985. 5. Katoen, J-P., Quantitative and qualitative Extensions of Event Structures, PhD Thesis, University of Twente, 1996. 6. Katoen, J-P., Baier, C , & Latella, D., Metric Semantics for True Concurrent Real Time, Th. Comp. Sci., 254(1-2): 501 - 542, 2001. 7. Langerak, R., Transformations and Semantics for LOTOS, PhD Thesis, University of Twente, 1992. 8. Milner, R., Communication and Concurrency, Prentice-Hall, 1989. 9. Murphy, D., Pitt, D., Real-Timed Concurrent Refineable Behaviours, Lecture Notes in Computer Science, 571: 529 - 545, 1992. 10. Rabinovich, A., Trakhtenbrot, B. A., Behavior Structures and Nets, Fund. Info., 11(4): 357 - 404, 1988.
SYMBOLIC COMPUTATION A N D A B U N D A N T N E W FAMILIES OF E X A C T SOLUTIONS FOR THE COUPLED MODIFIED KdV-KdV EQUATION ZHENYA YAN AND HONGQING ZHANG Department of Applied Mathematics, Dalian University of Technology, Dalian 116024, People's Republic of China E-mail: [email protected]
In this letter, with the aid of symbolic computation, a simple transformation is powerfully applied to find exact solutions of the coupled MKdV-KdV equation such that many new families of exact solutions are given which contain bell-shaped solitary wave solutions, kink-shaped shock wave solutions, periodic wave solutions and new solutions. To be conveniently used in what follows we firstly give a lemma: Lemma 1 Setting .(fs nU
=
44exp(£ + fr)) (D + E) exp(2(£ + &)) + 2(nE + 2B)exp(t
+ &) + (E - D)
'
where A,B,D,E,and F are constants, fi = ± 1 . According to the relations between the hyperbolic functions and exponential functions, we have Case 1: When /x = 1, ^vs;
Bsech2 § (£ + £0) + D tanh \ (£ + &) + E
Case 2: When /i = - 1 , Acsch2\(£
MO = ^
J
,— Bcsch2\{£
+ (,0)
2
T
+ F.
+ &) + Dcoth±(£ + &) + E
Case 3: When (iE + 2B = 0 and E2 > D2,
Case 4: When fiE + 2B = 0 and E2 < D2, AA
E-D
,.,
*<« = E ^ D V E-TDCSCk[t 193
, +
*0+2
1, ,E + D.. ln(
E3p)] +
„ R
194
Case 5: When E(fiE + 2B) > 0 and E + D = 0,
+® = WT2B tanh 2 K + & + ^Sr^
+
^T^
+F
"
Case 6: When £ ( / / £ + 25) < 0 and E + D = 0,
In what follows, with the aid of symbolic computation, we would like to use a simple transformation to obtain more new families of exact solutions to the coupled MKdV-KdV equation given by ( ut + aHx + eHHx + bu2ux + ruxxx \ Ht + c(uH)x + dHHx = 0.
= 0,
, . '
{
Where a,b,c,d,e and r are constants, when e = 0, system (1) becomes the coupled modified KdV equation considered by Guha-Roy[l]. For the given system (1), we seek the traveling wave solution which is physical significance in the form u(x,t) = u(0,
H(x,t)=H(0,
€ = x-\t.
(2)
where A is constant to be determined. Substituting Eq.(2) into system(l) we have -AM' + aH' + eHH' + bu2u' + ru'" = 0,
(3a)
-XH' + c(uH)' + dHH' = 0,
(36)
where "'" denotes d/d£. Setting H(£) = au(£) + ft and substituting it into Eq.(3b) yields (2ac + a2d)uu' + (-Xa + c(3 + da0)u' = 0. which gives rise to
2ac + a2d = 0, -Xa + c/3 + da/3 = 0.
(4) (5)
that is 2c
a = --,
ft
2A
/?=-
(M
(6)
195 Thus we have 2c 2A a a Substituting Eq.(7) into Eq.(3a) and integrating it w.r.t. £ yields _, 2adX + 2e\2 C+ ^
,_,
., 4ce\ + 2acd 2ec2 , b , „ (A + u + - ^ ) w 2 + - w 3 + r w " = 0.
(8)
where C is integration constant. Setting Eq.(8) possesses the following formal solution u(c) =
4AeMRt
yq)
F
(D + E)exp{2R£) + 2(nE + 2B)ex.p(RS) + {E-D)
{9)
W
'
Where A,B,D,E, Rsaxd F are constants, /z = ± 1 . With the aid of symbolic computation software such as Mathematica or Maple, substituting (9) into (8), we have an equation w.r.t Qexp(iR£)(i = 1,2, 3,4,5), Q — [(D + E) exp(2i?£) + 2(fiE + 2B) exp(R£) + (E - D)]~3, which will be satisfied if these terms with Qexp(iR£)(i = 1,2,3,4,5) and the constant term are assumed to vanish separately, that is to say, if we set the coefficients of Qexp(i.R£)(i = 1,2,3,4,5) and the constant term to zero. Correspondingly, we get the following algebraic calculations and reductions: £> , 2ec2 ~ 3 F + ^ - F + ~
/x ( A +
4ceA + 2 a c d . „ 2ad\ + 2eA2 )F+ * -^P
4AR2(D + E)2 + 4A(D + E)2[bF2 + ^ F
- (A +
4ceX
„
. „,
+ C =
+ 2acd)]
°' = 0)
(10)
(11)
-4AR2(D
+ E){2fiE + 4B) + 8A(D + E)(2[iE + 4B)[bF2 + - ^ - F a1 2 4ceX + 2acd^ „, ,, 4ec -(A+ -p )] + l6A2(D + E)(bF+—) = 0, (12)
-4AR2{D
- E)(2fiE + 4B) + 8A(D - E){2fiE + 4B)[bF2 +
4ceX + 2acd.. ,,,„ „.,,„ -(A+ j2 )} + lQA2(D-E)(bF -24AR2(E2
—-F er
4ec2 + —) = 0,
- D2)(2nE + 4B) + 4A[2{E2 - D2) + (2fiE + 4B)2][bF2 + l
-(A + d
2
„ + 16A , 2_(2 M £_+ 4B)(bF _ - n0, )] +, — ) , +, — — - = v ;v ^ d2 ' 3
n
, , (13) d2
^-F
(14)
196 4AR2(E - Df + AA{E - D)2[[bF2 + ^-F
- (A +
4ceA
+
2Qcd
}] = 0.
(15)
With the aid of Mathematica and by using Wu's elimination method[2], we can obtain the variables A, B, F from system of equations (10)-(15). Therefore according to Eq.(7), (9) and Lemma, we have the following theorem: Theorem 1 Type 1: When bF + *g- / 0, r[bF2 + ^ F - (A + 4ceA + i 2acd )] < 0, (E2 - D2)[3b(X + ^ex+2acd) __ ^2^2 _ sbec^p + 32eV] > 0 and F satisfying Eq.(10), system (1) has the new combined kink-shaped and bell-shaped solitary wave solution ± | ( A + ^eX+2acd _ hp2 _ 4^p)
J ^ ^ L ^ 2
{z)
Ml =
+ F, ± \{bF + ^)^]2^-D2)]secK*{z)
[-\E
Hl
2C ± | ( A +
=
" ^ ^
d
[~\E±
u2 =
: |(A ±-2«
+
2c±f(A+
=
d
~ ^F)\/2-iMrlsech2^
" ^
, 2A - 2cF,
\{bF + i^)y/^m]aedfi(z) ^
i ^
2
^
- bF2 , „ —±zf)^2(E2-D2l]csch2{z)
+^ ^ ^
ice\+2gcd\
8bec2 pi , 3 2 e 2 c 4
Type 2: When C = - ^ [ i ^ 4ceX
2acd
+ F, + Dcoth{z)
2
2
| +
i z )
- bF2 - ^F)(x
Where z = ±y/$(\ 1,2 rp2
] c s c h
d
^-F)J2-^^csch2{z)
- b F 2 - Jg.F)y/®%21cach*(z)
[IF± I(6F+ ^ ? l ^ n
+
+ Dtanh(z)
4ceA 2acd
\E ±\{bF+
#2
+ £>tanh(z)
+Dcoth{z)
2A-2cF d
- Xt + &), M = 36(A +
+ 1^(A + 2
4ce
^2acd)] 4ceX
***%*£„
2acd
rb[^^ + b{X+ + )] > 0,(E - D )[^^ + b(X+ +i )] >0,B = — | / z F , system (1) possesses the bell-shaped and singular solitary wave solutions 12 /l r 16e 2 c 4 ~~ 4ceA + 2acd„ U3 = ±
T V 6 [ - ^ - + 6(A + - ^
, , 1 16e2c4 ,, x 4ceA + 2acd... Xj _ * - ^ r / ^ r[ ^ - + &(A + ^ )}(X-XtHo) 24c /l r 16e 2 c 4
,.,
)]
1, ,D + E.. + ^H¥-5)]-^,E2
4ceA + 2acd.
4ec2 _ 2
> D2,
197 ,r / 1 r16e2c4
xsech[
[
y Tb -*r-
~~
4ce\ + 2acd...
+ b{x +
—&
t/,
t
,l r 16e 2 c 4
x-MV S 1 - 5 T -
t/,
„
+ 6 A
,
8ec3 2A _,
hF+T'^
> D
, > 1, /-0 + ^ M
4ec
rf
n2
,
,N
1, , 0 + £>, 8ec3 2A _2
Type 3: When rb < 0, i ^ ^ l i + &(A + 4ceA +. 2acd ) > 0 , £> = - £ , system (1) possesses the kink-shaped and singular solitary wave solutions 3 /l r 16e 2 c 4
,„
4ceA + 2acd,n
, 1 . / 2 r 16e 2 c 4 ... 4ceA + 2acd. 1 . , _ ,.fiE + 2B., x tanh - [ ^ - - [ - ^ j — + 6(A + ^ )](a: - At + &) + l n ( ^ )] 4pr 2
E(txE +
6c /l r 16e 2 c 4 g5 =
,,,
2B)>0, 4ceA + 2acd xl
^V3[^4-+b(A+
d»
)]
, lr/ 2 r 16e 2 c 4 ... 4ce\ + 2acd... _ , . / i £ + 25.. A w x tanh - [ ^ _ _ [ _ F _ + 6(A + ^ )](* - At + &) + m ( ^ )]
,,lr x c o t f t
8ec3 2A + — bcP d,
„, „ E(nE +
, 3 /lr16e2c4
,,,
2B)>0; 4ceA + 2acd xl
/ 2 .16e 2 c 4 ,, A 4ceA + 2acd, 1 . _ , . fiE + 2B., w _ [ ^ _ _ [ _ _ + 6(A + )}(x -\t + &) + l n ( - ^ — g )] 4ec2 —^-,
'
n2
)](*-*+&)+ 2 l n ( ^ T ^ ) l + M F + T ' ^ < ^ '
< +— ^
- — ,
^2
4ceA + 2acd..
L/1
4ceA + 2acd...
) ] +
4ceA + 2acd..
4ce\ + 2acd...
,24c / l r 16e 2 c 4 Lr
. 1, ,D + £ , ,
)K*-^o)+2 ^ F ^
12 / l . i e e V , r , 1 r16e2c4
,
£ ( / i £ + 2B) < 0,
6c / l r 1 6 e 2 c 4
?/,
4ceA + 2ac
198 x,
l r / 2 r 16e 2 c 4
xcoth [
[
~~ 4ceA + 2acd, 1 .
+b{x
+
2 yVb ^r~
See
—&—
3
)]{x
,
~
M+
,.
^
o)
, , uE + 2B„
+ ln(
E
)]
2A ^
Type 4: When 6F + ^ ^ 0, r[6F 2 + ^-F - (A + 4ceA j:/ acd )] > 0, {E2 £ ) 2 ) [ 3 6 ( A + iceA^acd) _ 6 2 F 2 _ sbef F + 32^1] > 0 ) £> = - i G and F satisfying Eq.(10), system (1) has the new combined periodic wave solutions ±|(A
+ iceXgacd _ bF2 _ i^F)
J^+O^sec2
[-\E
± | ( 6 F + ^ ) ^ / 2 i ^ m ] S e c 2 ( z ) + Gtan(z)
{z)
u7 =
+ F,
2 C ±|(A + ^^-^-^f)^/gig±gl seC 2 (,)
g | =
d
[-iE±i(&F+^)v/H^^i]SeC2(,)+Gtan(z) ± | ( A + i«A+2aM _
u8 =
2 c ±
d
| (
A +
b F
2 _ 4
f
J
F )
^ 2 ( ^ C
u2 T?2
+ *."*+*"* - bF2 - ^F){x 2
8bec
2
r? , 3 2 e c
+
_2cF d
+ F, +
Gcot{z)
! l c 5 c 2 ( z )
[\E ± \{bF + 4 - i ) v / ? i ^ ! i ] c s c 2 ( z ) + Gcot(z)
Where z = ±yJ-±(\ 4ce\+2acd\
i ^ ^ _
2 A
_ i|§iF)7^±^CSC2(z)
6F2
, + ^.)^-iE^m]csc2{z)
[\E ±\{bF
|
^ +
_
2 x
2 c p
d
- \t + &), M = 36(A +
4
Type 5: When C = -&[&££ + ±^(A + 4^+2^)] ~ ***&£» rb < 0, i ^ V + 6 ( A + 4ceA+2acd) > 0 , B = -\nE,D = 0 system (1) possesses the periodic wave solutions 12 / l r 1 6 e 2 c 4 u = ±
"
TV6[-#-
, , , 1 r 16e 2 c 4
~
, , , 4ceA + 2acd„ + 6(A +
4ceA + 2acd. 1/
24c /l r 16e 2 c 4
)]
* x
^ .n
, , , 4ceA + 2acd xl
4ec2
199 tr
xsecM
/
1 r 16e 2 c 4
~~
V ~7b[~^~
4ceA + 2acd,.,.
+ b{x +
Type 6: When C = - ^ P ^ 4ceA
r& < 0, ^ J ^ + b{\ +
j:2
2acd
)]{x
1*
+^ ( A
xcsc/l[
/ l r 16e 2 c 4
v^
[ _
Hw ,. ,
~~
= *«-v-6 -#L.x
6 A+
^ V " ^ — +
4ceA
+.
2acd
+
T'
)] - ^
^
~ 4ce\ + 2acd„ +b{x+ )]
—&—
4ceA + 2acd v l /
(
d
^o)1" ~MP
2
8ec3 2A
_ .
w
)](*-A* + 6)] + -^- +
Type 7: When rb < 0, ^ j p - + b{\ + 4 c e > + 2 a " 1 ) < 0, £> = -E,fiE ±E,i — \f—l system (1) possesses the periodic wave solutions U11=±
lr/2r16e2c4
W"3 ^ -
,/x
lr/2r16e2c4 2[V ; & [ _ * ~
„x + 6(A +
Ul2 = ± l r / 2 r 16e 2 c 4
XCOi [
[
4
2 V ^ ~^ ~~
lr/2r16e2c4
xcot [
[
2 V 7b ~~dT
,
+ 2B =
d
4ceA + 2acd,.,
^ ,. 4ec2
,
„
„ „„
4ceA + 2acd,n
I/x
4ceA + 2acd... , _ , 8ec3 2A ^ )]{x xt+ —#— ^—bjr+^> E =
^ „„ »E+2B'>
, 3 / 1.16e2c4 , , , 4ceA + 2acdN1 [ + 6(A+
W-3 —
^P
~~~ 4ceA + 2acdN1/
+ 6(A +
//l2 =
T
3 / l r 16e 2 c 4 ,,, 4ceA + 2acdN1 [ 4 + 6(A+ 2 )]
6c / l r 16e 2 c 4
x tan
,
4ec2
, . ..
w
) ] ( x +
—^—
24c / l r 16e c [
1 r 16e c
^o)1 + T&
4ceA + 2acd..
l/A
2 4
2 4
+
4ceA + 2acd,..
4 _ + & ( A +
d
+
, . .. , 8ec3 2A
) > 0, B = £ = 0
, 12 / l r 16e 2 c 4
tr
~xt
w
d*
6c / l r 16e 2 c 4
^V-3[^4L
„
+ 6(A +
x
d"
4ec2
^
, „
„,
) K * - W o ) ] - - ^ , £ = -(^+25), ~~
+6 ( A +
4ceA + 2acd\ n , 2
_
»
,
)]{x XtH
-
4ceA + 2ocd,n )]
—^
_ n 8ec3 +
°K-Jjr -J>
2A ^ E
=
, ^
„,
E 2B
-& + )-
200
In summary, we have obtained many new families of exact solutions for the coupled MKdV-KdV equation by using a simple transformation and symbolic computation. The method plays an important role to study many properties of nonlinear evolution equations in soliton theory. These solutions obtained may be of important significance for the explanation of some practical physical problems.
Acknowledgement The work was supported by the NKBRSF of China, the NNSF of China and Higher Education Commission Doctoral Foundation of China.
References 1. C. Guha-Roy, J. Math. Phys., 28, 2087 (1987). 2. W. Wu, Kexue Tongbao, 31, 1 (1986).
E X A C T ANALYTICAL SOLUTIONS TO A SET OF COUPLED N O N L I N E A R DIFFERENTIAL EQUATIONS USING SYMBOLIC COMPUTATION RUO-XIA YAO*, ZHI-BIN LI 'Department Department
of Computer
Science, Weinan Teachers College, Weinan, Shaanxi, 714000, China of Computer Science, East China Normal University, Shanghai, 200062, China E-mail: Iizb6cs.ecnu.edu.cn
A direct and unified algorithm for constructing multiple traveling wave solutions of nonlinear differential equations is presented and implemented in computer algebraic system Maple. A generic system of coupled ordinary nonlinear differential equations for a pair of real scalar fields is studied by this method, and in addition to rederiving all known solutions in a systematic way, several new solutions (either functional or parametrical) are explicitly obtained.
1
Introduction
In the study of nonlinear science, the discovery of exact explicit solutions to nonlinear systems has great theoretical and practical importance and the research on this field has come to prominence. For nonlinear systems, explicit solutions are used as models for physical or numerical experiments, and often reflect the asymptotic behavior of more complicated solutions. In mathematics, for a nonlinear evolution equation, usually the exact traveling wave solutions are considered first. Over the years, a variety of techniques and methods for constructing the traveling wave solutions have been developed J ~ 6 . The mixing exponential method established by Hereman et al 1 is one of them. It is extensively used for ordinary as well as partial differential equations. It is said that all single solitary wave solutions can be obtained by this method and it can serve the role of a general recipe for single solitary waves. However, for coupled nonlinear equations a lot remains to be done. Recently, Panigrahy et al 7 investigate the following set of two coupled ordinary nonlinear differential equations which is used in the study of Langmuir and ion-acoustic wave field, coupled electro magnetic ion acoustic waves and upper hybrid- magnetosonic waves $" = dip + hi/j(t>,
(1)
where ip a n d
202
and obtained many localized solitary wave solutions and diverging shock type solutions in closed form, including all of solutions obtained by other methods 8 . However we find these solutions are still not general and by no means exhaust all possibilities. They are only some particular solutions within some specific parameter choices. In this paper, we intend to analyze equations (1) using a simple but widely applicable approach. With the aid of symbolic manipulation system Maple, we obtain some new types of closed form solutions, which to our knowledge, not yet reported by the mixing exponential method and other methods, in addition to rederiving all known solutions in a systematic way. Through this method, it is then shown that only two systems of algebra equations need to be solved. It is laborious to solve such complicated nonlinear algebraic systems by hand, but it is ideally suited to a symbolic computation system such as Maple. Therefore, the method is very simple. However, it is efficient and applicable to a variety of nonlinear evolution equations. 2
Extended Tanh-function Method
It is well known that the solution of many nonlinear partial differential equations can be expressed as in terms of the tanh-function. This observation motivates a less sophisticated but more direct method of solution in which the starting point in ansatz that the solution sought is expressible as a polynomial in terms of a tanh-function. This method was originally used to solve quite complicated equations 9 . Later Malfliet formalized this method as tanhfunction method 10 . It is widely used to construct exact traveling wave solutions of nonlinear evolution equations 4 5 6 . Consider a given partial differential equation, say in two variables G(u,ut,ux,uxx,---)
= 0.
(2)
According to tanh-function method, the solution of (2) to be sought can be supposed in the form m
u(x,t) = U{z) = ^2aiu;i,
(3)
i=0
where u(x,t) — tanh(fez), z = x — ct, and m is a positive integer that can be determined by balancing the linear term of highest order with the nonlinear term in (2), and k, c, a®, • • •, am are parameters to be determined. Substituting (3) into (2) will yield a set of algebraic equations for k, c, a0, • • •, am because all coefficients of u 1 have to vanish. All unknown parameters then can be determined by solving the set of algebraic equations with the aid of computer
203
algebraic system Maple. However, since the tanh-function method starts from the series expansion in tanh function, it misses solitary wave solutions, like sech, sechxtanh, etc. We find that the key idea of the tanh-function method is using a property of tanh-function, that is, tanh(^) is a solution of Riccati equation u' = 1 — u2. Based on such observation, in our extended tanh-function method, solutions of nonlinear equations are obtained as a combination of the solutions of coupled Riccati equations instead of Riccati equation. The desired Riccati equations reads u' = -kuv,
v' = fc(l - v2),
(4)
which admits two types of solutions u = ±sech(kz),
v = tanri(fcz),
(5)
and u = ±csch(fcz), v = coth(kz),
(6)
where k is an arbitrary nonzero constants. It is found that these two types of solutions satisfy the relations v2 = 1 — u2 and v2 = 1 + u 2 , respectively. Now we look for the solutions of (1) in the following forms m
m
n
ip = "^2aiU* + 'S~]bivut~1, i=0
i=\
<j> — i=0
n V]CJM1
+ y^djvw* - 1 ,
(7)
i=\
where di,bi,Ci,di are constants to be determined. The parameters m,n will be found as narrated in the above tanh-function method. Balancing ip" with ip(f>, and <j)" with >2,V>2 leads to n = 2, and m = 0,1,2. This suggests the following ansatz, tp = ao + a\u + a,2ii2 + biv + b^vu, (f> = CQ + C\U + czu2 + d\v + d2vu, where c2 ^ 0 or d2 ^ 0. Substituting (8) into (1), using (4) repeatedly, we can express all derivatives of u and v in term of series in u and v, and we can eliminate any powers of v higher than 1 with v2 = 1 — u2 or v2 = 1 + u2. Because the coefficients of u1 and vu1 have to vanish, we get two sets of algebra equations for parameters
(8)
204
d, h,p, q, r in 11 unknowns a,, c,, bj,dj, (i = 0,1, 2, j = 1, 2) and k —db\ — hb\Co — haodi = 0, —dao — haoco — hbidi = 0, —2raobi — pd\ — 2qcodi = 0, -ral - rb\ - pco - qc% - qd\ = 0, —db2 + k2b2 — hb2Co — hb\C\ — ha\d\ — haod2 = 0, —2k2bi — hb2ci — hb\c2 — ha2d\ — ha,\d2 = 0, -6k2b2 - hb2c2 — ha2d2 = 0, —da\ -\- k2a\ — ha\Co — ha^Ci — hb2d\ — hb\d2 = 0, —2k2a\ — ha2ci — ha\c2 + hb2di + hb\d2 — 0, —da2 + Ak2a2 — ha2Co — ha\p\ — haoc2 + hbidi — hb2d2 = 0, -6k2a2 — ha2c2 + hb2d2 = 0, —2ra\bi — 2ra0b2 — 2qc\d\ + k2d2 — pd2 — 2qc$d2 = 0, ra2bi + ra\b2 + k2d\ + qc2d\ + qc\d2 = 0, ra2b2 + 3k2d2 + qc2d2 = 0, —2raoai — 2rb\b2 -I- k2c\ —pc\ — 2qcoCi — 2qd\d2 = 0, raia2 - rbib2 + k2C\ + qc\c2 - qd\d2 = 0, -ra\ ~~ 2ro 0 a2 + rb\ - rb\ - qc\ + Ak2c2 - pc2 - 2qc0c2 + qd\ - qd\ = 0, -ra\ + rb\ - 6k2c2 - qc\ + qd2 = 0, (9) For the sake of conciseness, only the first set of algebra equations corresponding to the relation v2 = 1 — u2 is given here, because the other is similar but with a change of sign of some terms. Now the task in the following is to find all the unknowns such that (8) actually satisfy (1). 3
Exact Analytical Solutions
In order to solve systems (9), one may use the Ritt-Wu Elimination or the technique of Grobner bases. However, we have used instead a much more effective algorithm. Its main idea is to consider several alternative cases, such as a2 — 0, a2 ^ 0, and several subcases inside each case, etc. Applying this algorithm and carry out all computations in the interactive mode of Maple, we have found many non-trivial solutions of system (9). In this way, we can successfully recover the previous known solitary wave solutions that had been found by the mixing exponential method and other more sophisticated methods. More importantly, we also find other new and more general types of solutions. In all cases, we report here diverging solutions which come from the non-trivial solutions of the second system of algebra equations corresponding to the relation v2 — 1 + u1 omitted in this paper. The diverging solutions will
205
show shock structures which represents a collapsible state. Most of them are always accompanied by the solitary wave solutions with the difference that the parameter values are different, but we also find some diverging shock type solutions exist independently. 3.1
n=2, m=0
In this case, a\ = a2 = bi = b2 = 0, and system (9) is reduced to —ha0d\ = 0, -a0(d + hco) = 0, — (p + 2qc0)d\ = 0, —ra\ — pco — qcl — qd\ = 0, —ha0d2 = 0, — ha^Ci = 0, -ha0c2 = 0, -2qc\di + k2d2 - pd2 - 2qc^d2 — 0, -2{k2dx + qc2di + qcxd2) = 0, -2(3fc 2 + qc2)d2 = 0, k2ci - pc\ — 2qc0ci — 2qdid2 = 0, -2(fc2Ci + qc\C2 - qd\d2) = 0, -qc\ + 4k2c2 - pc2 - 2qc0c2 + qd\ - qd\ = 0, -6k2c2 - qc?> + qd2 = 0. (10) Analyzing (10), we find ao must be equal zero, because of c2 and d2 can not be zero at the same time. Considering the case d\ ~ 0, and the subcase d2 = 0, we arrive at - c 0 ( p + qc0) = 0, (A;2 - p - 2qc0)c1 = 0, ~2ci{k2 + qc2) = 0, ~qc\ + 4k2c2 - pc2 - 2qcoc2 = 0, -c2(6k2 + qc2) = 0.
, . '
{
If taking c0 = —p/q, we get c\ = 0, C2 = —6k2/q and fc2 = —p/4. That means when p < 0, there exits a uncoupled field solution V = 0, ^ = _ ? [ l - ^ s e c h 2 ( ^ z ) ] .
(12)
The solution (12) is a set of new solitary wave solution, and the corresponding diverging solution can be found as V = 0, 4,= -P[l + lcsch2(^z)}.
(13)
Other uncoupled field solutions found in this case are as follows
V> = 0, <> / =- | W ( ^ ) , V- = 0, 4, = + | ? c s c h 2 ( ^ ) ,
(14) (15)
and 3p •0 = 0,
(16)
206 with p > 0, as well as ^ = 0, <> / = - Pr - [ 1 + S c s c h ^ v ^ z ) =F 3coth(v / = p^)csch( v /=pz)],
(17)
with p < 0. Solutions given by (14) and (15) are solutions obtained by Panigrahy 7 . In addition, we also obtain another two diverging shock type solutions (16) and (17) which don't accompany any solitary wave solution. Except for (12)-(17), there is no other uncoupled solutions. 3.2
n=2, m=l
In this case, 02 = 62 = 0 and a\ 7^ 0 or b\ ^ 0. Analyzing system (9), we find there is no non-trivial solution except for a\b\ = 0 and q — 3h = 0. Under such restriction, 2 sets of solutions in sech and sech2 can be found as follows ^ = ±i/^(p-3d)(12d-p)sech(A:2), V 3<7r
0 = - ^ + 2 ( p 3d) sech 2 (fcz), (18) q q
with p < 3d, qr < 0 and k2 = (3d - p)/3, ip = ± 4 / — ( p - 4d)sech(fcz),
4>=-- + -^-
(19)
^csch2(fcz), (20)
with p < 3d, qr > 0 and k2 - (3d - p)/3. iP = ±J — (4d-p)csch(kz), y qr
0 = +—csch2(kz), n
(21)
with d > 0, (p - 4d)/qr < 0 and k2 = d. The solutions (18),(19),(20),(21) are exactly same as that of Panigrahy et al7. Another set of solutions in tanh and sech2 are also obtained as follows ^ = ± W d ( p , 3 d ) tanh(frz), 4>=-\[d+2k2sech2{kz)\, (22) V hr h with d < 0, p < 6d, hr > 0 or p > 3d, hr < 0, and k2 = (p - 6d ± y/\2dP - 4dp + p2)/8. This is a new set of solutions first reported here. It is
207
more general than that of Panigrahy et al 7 . Our solution is valid for q = 3h, whereas Panigrahy et al 7 solution is only for q = 3/i and d = p. If we further choose p = d, we see the solution found by Panigrahy et al 7 is recovered from (22) ^-tanh(yf^z), 4> =-~[1 - 2sech2{yf^pz)}. (23) V hr h In fact, from (22), we can get another new solution which was missed by Panigrahy et al 7 in the case p = d «/> = ±d\
—2 ip = ±eM-— tanh(V hr
?*> ^ = -^ [1 -r ech2( V 2)]
(24)
Accompanying (22), the diverging solution is also found in coth and csch2 form but with a change of sign of c2 %l> = ± \ / 3.3
(
\
^
coth(fcz),
(25)
n=2, m=2
In this case, a 2 7^ 0 or 62 7^ 0. We guess the system (9) admits a lot of nontrivial solutions, however, we may not get all of them. Using our algorithm, we only find 12 sets of solitary wave solutions as well as corresponding diverging shock type solutions. For clarity, let us list them as follows For d = p < 0, (h - q)r > 0,
t^r-i1 ,
^
= ±
d
W
ri
^
,2,y/—p~
], [ l - - s e c h 2 ( v^ )y-"
M
,
^ = •>•-
h- qr, 3 , 2,yf~P [1+
r
2
2
d., Sf1
X
3
,i,\f—p
[ l -—^u 2(, v- 2 r z)], (26)
[ l + 2 c s c h 2 v --P *)]•
(27)
For d = p > 0, (h - q)r > 0,
V
^=± W
•IJsrf^),
(28)
ih^c^\4z),
(29)
±sV^-*'
208
For p < 0, (h - q)r > 0, h = q(d + p)/p,
For p>0,(h~q)r>0,h
= q(d + p)/p,
(32)
[1 + | c s c h 2 ( ^ z ) ] , ^ = - ? [ 1 ~ ^ - T c s c h 2 ( ^ z ) ] . v v 2 2 ;J' /iL 2(/i - g ) 2 n (33) For d > 0, (q - h)r > 0,p = 2d(3q - h)/h,
4> = ±
/ ' h^/(h-q)r
ifj = ±6r\P^~sech(Vdz)tanh(Vdz), h\ r For d>0,(q-h)r<0,p = 2d(3q -
0 = -6-secb2(Vdz). h
(34)
h)/h,
i> = ±6-i/-^csch(Vdz) coth(Vdz), 0, dq/(2h -5q)>0,p = 2dq(h - Sq)/h(2h - 5q),
(35)
k2 In - h Ik2 fiP r/, = ±6~Jl sech(fcz)tanh(fc«), 0 = — — + ^ - [ 1 - sech2(fc,z)l, (36) h V r q h where A;2 = dq/(2h - 5q). For (g - /t)r < 0, dg/(2/i - 5) > 0,p = 2dq(h - Sq)/h(2h - 5q), k2 In — h Ik2 k2 1> = ±6—\-csch(A:z)coth(Jfc*), 4> = + ^ [ 1 + csch2(ibz)], (37) h \ r q h where A;2 = dq/(2h - 5q). Among of these solutions, the last two sets of solutions are entirely new, which, to our knowledge, have not been reported in the literature earlier. The coefficients of some known solutions are slight different with that of Panigrahy et al 7 solutions. For example, for our solutions (32) and (33) which
209 corresponding to the solutions given by (24) and (25) in Panigrahy et al respectively, if we do the same process as Panigrahy et al 7 d = cp, h/q = c + 1, where c is an arbitrary constant, then A appearing in Panigrahy et al b e
4
d
\Jc(c+l)hr
inStead
0f
7
(38) 7
should
\lc(c+l)hV
Summary
To summarize, using our method, we have reported some completely new solutions and verified them by putting them back into the original equations (1) using Maple. We found a feature that each solitary wave is associated with a shock structure which represents a collapsible state, but indeed there some shock type solutions exist independently. Further, in addition to these new solutions, the all known solutions reported earlier by other authors 7 8 are also obtained by this method. The approach used here is also readily applicable to a large variety of ordinary nonlinear differential equations. References 1. W.Hereman, P.P., Korpel, Exact solitary wave solutions of nonlinear evolution and wave equations using a direct algebraic method. J.Phys.A: Math.Gen. 19(1990), 607-628. 2. Z.B.Li and M.L.Wang, Traveling wave solutions to the two-dimensional KdV-Burgers equation, J.Phys.A: Math.Gen. 26(1993), 6027-6031. 3. M.L.Wang, Solitary wave solutions for variant Boussinesq equations, , Phys.Lett. A199(1995), 169-172. 4. E.J.Parkes and B.R.Duffy, An automated tanh-function method for finding solitary wave solutions to non-linear evolution equations, Comp.Phys.Comm. 98(1996)288-300. 5. Z.B.Li, Exact solitary wave solutions for nonlinear wave equations using symbolic computation, Acta Math.Sci. 17(1997) ( in Chinese) 81-89. 6. E.G.Fan, Extended tanh-function method and its applications to nonlinear equations, Phys.Lett. A277(2000), 212-218. 7. M.Panigrahy and P.C.Dash, Soliton solution of a coupled field using the mixing exponential method, Phys.Lett. A261(1999), 284-288. 8. N.N.Rao, Exact solutions of coupled scalar field equations, J.Phys. A22(1989), 4813-4825. 9. H.B.Lan and K.L.Wang, Exact solution for two nonlinear equations, J.Phys.A: Math.Gen. 23(1990), 4097-4105.
210
10. W.Malfliet, Solitary wave Solutions of Nonlinear Wave Equations, Am.J.Phys. 60, (1992)650-654.
A N EFFECTIVE ALGORITHM FOR ISOLATING T H E REAL SOLUTIONS OF SEMI-ALGEBRAIC SYSTEMS A N D ITS APPLICATIONS B. C. XIA School of Mathematical Sciences, Peking Beijing 100871, CHINA E-mail: [email protected]
Institute
University,
L. Y A N G Applications, Chinese Academy Chengdu 6IOO4I, CHINA E-mail: [email protected]
of Computer
of
Sciences,
We present an effective algorithm for isolating the real solutions of semi-algebraic systems, which has been implemented in MAPLE-program r e a l z e r o . For a large number of examples with various backgrounds, r e a l z e r o gets the solutions very efficiently.
1
Introduction
By semi-algebraic systems 2,4 , we mean systems of polynomial equations and inequalities. Strictly speaking, we call ' px(xi,x2,..;Xs)
=0,
pn(xi,x2,-..,xs) qi(xi,x2,.:,xs) 9i(xi,X2,...,xs) _ h1(x1,x2,...,xs)
=0, > 0,...,qr(xi,x2,...,xs) > 0,...,gt(xi,x2,...,xs) ^ 0,...,hm(xi,x2,...,xs)
> 0, > 0, -£ 0,
a semi-algebraic system, where pi{\ < i < n), qi(l < I < r), gj(l < j < t), /t/t(l < k < m) are all polynomials in x\, ...,xs with integer coefficients and we always assume that {pi, ...,p n } has a finite number of common zeros. For convenience, we call it SAS. Many problems in both practice and theory can be reduced to the problems of solving system SAS. For example, some special cases of "p-3-p" problem 7 which originates from computer vision, the problem of constructing limit cycles of plane polynomial systems 12 ' 15 and the problem of automated discovering and proving for geometric inequalities 20 ' 19 . Moreover, many problems in geometry, topology and differential dynamical systems are expected to be solved by translating them into solving certain semi-algebraic systems 2 . 211
212
There are two classical algorithms for solving semi-algebraic systems, which are Tarski's method 14 and cylindrical algebraic decomposition method proposed by Collins 4 . The complexity of these two algorithms are super-exponential time and double-exponential time, respectively. Therefore, they are not effective in practice. In the past two decades, there have been some exciting results 8 2 13 ' ' in theory. For example, Smale proved there exists a singly exponential time algorithm for semi-algebraic systems 2 . However, the problem is far from being solved. Efficient algorithms are highly needed to help solving related problems in those fields mentioned above. In this paper, combining the algorithms for solving systems of polynomial equations such as Ritt-Wu method 18 and WR algorithm 21 with Uspensky algorithm 5 for isolating real zeros of a univariate polynomial, we present an effective algorithm for isolating the real solutions of semi-algebraic systems which, in some sense, can be viewed as the generalization of Uspensky algorithm. Our algorithm has been found to be very efficient in practice on a large number of problems with various backgrounds though it is not a complete one in theory. 2
Basic Algorithm
In this paper, all the polynomials, if not specified, are in Z[xi,..., xs]. For any polynomial P with positive degree, the leading variable Xi of P is the one with greatest index / that effectively appears in P. By a triangular set, we mean a set of polynomials {fi(xi, ...Xi), fi+i(xi, ...Xi+i),..., fi(xi, ...xi)} in which the leading variable of fj is Xj. It is well known that for a system of polynomial equations with zero dimensional solutions, there exist many algorithms based on Ritt-Wu method, Grobner basis method or subresultant method, which can decompose the given system into systems of triangular equations (see, for example, 18 ' 3,16 ' 17 ' 10 ' 1 ' 21 ). Therefore, in Sections 2 and 3, we only consider triangular equations and the problem we discuss is to isolate the real solutions of following system TSA, 7 i ( * i ) = o, f2(xi,X2) = 0, < fs(xi,x2,...,xs) g1(xi,x2,...,xs) gr+i(x1,x2,...,xs) ^ hi{xi,x2,...,xs)
=0, > 0,...,gr(xi,x2,.:,xs) > 0,...,gt(xi,x2,...,xs) ^ 0,...,hm(x1,x2,...,xs)
> 0, > 0, i=- 0,
where {fi,f2,---,fs} is a normal ascending chain 21 (also see Definition 2.3 and Remark 2 in this section).
213
Definition 2.1 (Discriminant) Given a polynomial g{x), let resultant(3,^,a;) be the Sylvester resultant of g and g'x with respect to (w.r.t.) x. We call it the discriminant of g w.r.t. x and denote it by Discrim(p, x) or simply by Discrim(g) if its meaning is clear. Definition 2.2 (Resultant and Pseudo-remainder w.r.t. a Triangular Set) Given a polynomial g and a triangular set {/i, /2, ••-, / s } , let rs:=g,
r s _j := resultant(r s _ i + i,/ s _ i + i,a; s _i + i),
Qs •= g,
qs-i :=prem(g s _j+i,/ g _j + i,a: s _j-i-i),
i = 1,2, ...,s; i=
l,2,...,s,
where resultant(p, , a;) means the Sylvester resultant of p,q w.r.t. a; and prem(p, q,x) means the pseudo remainder of p divided by q w.r.t. x. Let res(g,fs,...,fi) and prem(p,/ s ,...,/,) denote rj_i and qi-i (1 < i < s), respectively, and call them the resultant and pseudo-remainder of 5 w.r.t. the triangular set {fi, ft+i,..., / s } , respectively. Definition 2.3 2 1 (Normal Ascending Chain) Given a triangular set {/1, fi,..., / s } , by /j (i = 1,2,..., s) denote the leading coefficient of /j in 2^. A triangular set {fi,f2,---,fs} is called a normal ascending chain if I\ 7^ 0, res(I;,/t_i, ...,/i) 7^ 0, i = 2, ...,s. Definition 2.4 (Critical Polynomial of System TSA) Given a TSA, called T. For every /*(i > 2), let Bf2 = Discrim(/2,X2) and Bfi = ies(D\scrim(fi,Xi), For any q € {^(1 < 3 < t)} \J{hk(l
ft-i, fi-2,- • •, f2),i > 2.
m)}, let
Bq = { r e S (q' ^ s ' ^ s _ 1 ' ' " ' ^ i f s > l \q ifs = 1. We define BPT{xx) = n 2 < i < s BU ' lli<j
214
Definition 2.6 21 (Simplicial) A normal ascending chain {/1; / 2 ,..., / s } is simplicial with respect to a polynomial g if either prem(g, f s , . . . , / i ) = 0 o r res(#, f s , . . . , / i ) / 0. Theorem 2.1 21 For a triangular set AS : {/i,/2, ••-,/«} a«d o polynomial g, there is a constructive algorithm which can decompose AS into some normal ascending chains ASi : {fn, fi2, •••, fis} (1 < i < n), in which every chain is simplicial w.r.t. g and this decomposition satisfies that Zero(AS) — Ui 1, the system {f2(P,x2) = 0,..., fs(/3,x2, -,xs) = 0,g\{f3,x2, ...,x„) > 0,...,gr(P,x2,...,xs) > 0,gr+1((3,x2,...,xs) > 0, ...,gt(/3,x2, ...,xs) > 0} and the system {f2(~f,x2) = 0,..., fs(-y,x2, ...,xs) = 0,51(7,x 2 , ...,xs) > 0,...,3 r (7,x 2 ,...,x JS ) > 0,gr+i('y,x2,...,xs) > 0,...,gt(-y,x2,...,xs) > 0} have the same number of distinct real solutions and, 2) ifs = 1, then for any q € {^(1 < j < t)} | J { ^ ( 1 < k < m)}, sign(g(/?)) = sign(q>(7)), where sign(x) is, 1 if x > 0; - 1 if x < 0; 0 if x — 0. Theorem 2.3 For an irregular TSA T, there is a constructive algorithm which can decompose T into some regular systems Ti. Let Rzero(-) denote all the distinct real solutions of a given system, then this decomposition satisfies Rzero{T) = £ Rzero{Ti).
215
3
Lifting and Recursion
By Theorem 2.3, we need only to consider regular TSA. For a regular TSA, by calling nearzero(/i(ar 1 ),BP(a;i),xi), we can get a sequence of intervals satisfying the 5 conditions of algorithm nearzero. How do we take use of these isolating intervals of / i ( z i ) to get those of 72(^2), •••, fs{Xs)? Given a regular TSA T, for every fi(i > 2), let
„|| = /~(«&-/'-/----A).|*». ( 2 < j <., 1 < J S ,_ I ) , MPT(^) = n2
in S(i\
let Vt be the
Step 3 Because resultant(/i(a;i),MP T (i) (£*),£«) / 0, regarding Xi+\ as an implicitly denned function by fi+\ in x\,X2,--,Xi, respectively, Xi+\ is W monotonic when X\ is on [cr1 , Xi is on \oS °,6 ]. For every vertex (VJ ', ...,Vj) in Vr, substitute x\ = uj ', ...,Xj = vy into T^ and delete the first % equations of it. Let i := i + 1, we denote the new system by Tj . Regarding Tj as a new regular TSA, do Step 1. If not exit, we get a sequence of isolating intervals on xu say SJ J ) : [<*£}, /?]*]],..., [a^.,/3J^.]. Step 4 By Theorem 2.1, the numbers of intervals in any two sequences, 5;*' and SjJ (1 < ji < J2 < |V/|)> a r e the same. So, we merge these sequences into one: S& : [a[i],p{% ..., [ a ^ , / ^ ] , where af
= min(a ( i ; ) f c > ..,a^ | i f c ), /#> = max(/?$,...,0$ | i f c ), (1 < * < n*).
216
If any two intervals in S^ intersect or the maximal size of these intervals exceeds the given positive number, by a sub-algorithm below, we shrink the cube / and still denote it by / . Let i := i — 1, back to Step 2; else we get a sequence of i-dimensional cube: I x S^. We denote the sequence still by 5 ( i ) . If i < s, back to Step 2, else Step 5 For each s-dimensional cube / = [a' 1 ',^ 1 '] x ••• x [a' s ',6* s '] in S^s\ substitute x\ — a^\...,xs = a' s ' into each gj (1 < j < t) and check whether gj > 0 or gj > 0 according to T^\ If all the inequalities satisfied, output / .
Sub-algorithm: SHR input: a fc-dimensional cube IQ in S ^ ' output: a fc-dimensional cube I C IQ Step 0 Suppose I0 = [oi, 6i] x • • • x [at, &*]. We know /i(xi) has one and only one zero, say x\, in [a\, b\\ (Without loss of generality, we assume f\{x\) has no repeated zeros). By intermediate value theorem, we can get an interval [a^fej] C [ai,&i] with x\ € [ai,&i] and 6j — ax — (b\ — ai)/10. Step 1 Let i := 1,7 = [01,61] and Vi be the vertexes of the i-dirnensional cube I. Step 2 For every vertex (vj ',..., vy) vy into T^
in Vi, substitute xi — Vj ',..., xt =
and delete the first i equations of it. Let i := i + 1, we
denote the new system by T- . Regarding T- as a new regular TSA, call neaTzero(fi(xi),BPJ,i:i) • MPT(i),Xi). When calling nearzero, let i
j
the maximal size of intervals be 1/10 of that when we computed [
Step 4 Denote Ix [a^, b^] still by I. If i=k, output I; else let Vj be the vertexes of the i-dimensional cube I and back to Step 2.
217
For a regular TSA T ( 1 ) with resultant(/ i (a;j),MP T (v)(a; i ),Xi) ^ 0, where T(') means every TJ1' appearing in the above steps for i > 1, the algorithm REALZERO can isolate the real solutions of the system. It has been found to be very efficient in practice on a large number of problems with various backgrounds though it is not a complete one in theory. 4
Realzero and Examples
Combining the algorithm REALZERO with Ritt-Wu method and WR algorithm, we generalize REALZERO to deal with general semi-algebraic systems SAS which is defined in Section 1. Our method has been implemented in MAPLE program realzero. There are three basic kinds of calling sequences for SAS in MAPLE: r e a l z e r o ([pi, • • • ,ps], [qi, • • • ,qT], [gi, • • •, gt], [hi,--r e a l z e r o ([pi, • • • ,ps], [qi, • • •, qr], [gi, • • •, gt], [hi,---, r e a l z e r o ( [ p i , • • • ,ps], [qi, • • • ,qr], [gi,-- -,gt], [hi,---,
,hm], [an, • • -,xs]); hm], [ x i , • • •, xs], width); hm], [xi,---,xa], [wi,..., ws]); .
The command realzero returns a list of isolating intervals for all real solutions of the input system or reports the method does not work on some branches. If the 6-th parameter "width", a positive number, is given, the maximal size of the output intervals is less than or equal to the number. If the 6-th parameter is a list of positive numbers, [w\,..., ws], the maximal sizes of the output intervals on x\,... and less than or equal to wi,... and ws, respectively. If the 6-th parameter is omitted, the most convenient width is used for each interval returned. In what follows, all the examples were computed on a Pentium/800 PC with 256 Mb RAM under MAPLE V.4. Example 1 Given a system of polynomial equations a , {p\ = X\{2 — xi - j/i) + Z2/2 - x i / 2 = 0,p 2 = £2(2 - x 2 - 2/2) + x i / 2 - £ 2 /2 = 0,p3 = yi(5 -xx2Vl) + ya/2 - j/i/2 = 0,p4 = 2/2(3/2 - a - 22/2) + 2/i/2 - 2/2/2 = 0}, find the isolating intervals of non-negative solutions of it. Call realzero([pi,p2,P3,P4], [£1,^2,2/1,2/2], [],[], [x\,x2,y\,2/2],
1/1000);
the output is (4.855 seconds), 123699 151 ^262144' 32(r' 15604750193840633515355762525347641882989981 25646736065207290639 1 15429603258688008185068797668747034522695597 ' 25350470632055620751'' 319400452616066402549 64807714054451707909444009190671657811201765 ^ 152102823792333724506' 30859206517376016370137595337494069045391194'' a
The example was provided by Prof. Lu Zhengyi in a talk in Chengdu, China this spring, who proposed a method, based on an entirely different principle, for isolating the real solutions of a polynomial system of equations.
218 ,117665269819559725768
23867887436121200844755218097593146520662280,
163049658030390350401 33070540167780718023098481036025768815988257" „ ,r i r , ,77397 38699, ,283969593 71012665,, 0, 0 , 0, 0 , 0, 0 , 0, 0 JJ , 0, 0 , L0, 0J , , , , , 32768 16384 1 268435456 67108864 J J [[2, 2], [2, 2], [0, 0], [0, 0]]],
which means the system has 4 non-negative real solutions and obviously, only one of them is positive. Example 2 This example is one of the special cases of "p-3-p" problem 7 . Given a system {p\ = x2 + y2 — xy — 1 — 0,p2 — y2 + z2 — yz — 4 = 0,p3 = 100z2 + lOOx2 - lOOzx - 441 = 0,x > 0,y > 0,z > 0}, call Tealzero(\p1,p2,p3},[},[x,y,z],[},[x,y,z},1/100), the output is (0.510 seconds) ,,,329 1317 7484377440343 52609887507, 43054377865877 24498926286479469 '"640' 2560J' '•6494479183360' 45636563840J' 118655898501120 ' 10606777162792960J Example 3 This problem originates from automated proving for inequalitytype theorems. Given a system {pi = (x — y)2 + (y — z)2 + (z — x)2 — 13/10 = 0,p2 = (x + y + z)xyz + 1/25 = 0,p3 = (x + y)2 + (y + z)2 + (z + x)2 - 1 = 0, x + y>0,y + z>0,z + x>0}, call realzero([pi,p 2 ,P3], [] ,[x + y^y + zyz + x], [], [x, y, z], [1/100,1/10,1/10,1/10]), the output is (1.211 seconds), -6081 • 20480 6939
-19
347
^20480' 1024''
173
87
2121
265581
-609
-19, ,35 5, ,283
512
256
3520
429568
2048
64 '
L
64 '
-609 l
-607
9197 1
360041
693
347
64
8J 155
l
840
57423,, 163520
157
2048 ' 2048 '' 15360' 579584"' '^2048 ' 1024'' ^256' 25f>
-370699 l
-733683
1248000 ' 2474240 '
1249 625 -39 -37 66473 145251 1249 625 43 11 -46663 -366839 "2048' 1024^' ' 128 ' 128 '' ^210560' 400000"' 2048 ' 1024^' 128' 32'' ^ 156320 ' 1239680 '"'
Acknowledgments This work is supported in part by Chinese National 973 Project (G1998030602) and the 95 Key Project on Fundamental Research of Academia Sinica. References 1. P. Aubry, D. Lazard and M. Moreno Maza, On the theories of triangular sets, J. Symb. Comput. 28 105-124 (1999). 2. L. Blum, F. Cucker, M. Shub and S. Smale, Complexity and Real Computation, Springer-verlag, New York, 1997. 3. B. Buchberger, Grobner bases: An algorithmic method in polynomial ideal theory, In Multidimensional Systems Theory, (Edited by N.K. Bose), pp. 184-232, D. Reidel, Dordrecht, (1985).
219
4. G. E. Collins, Quantifier elimination for real closed fields by cylindrical algebraic decomposition, in Lecture Notes in Computer Science 33 134183 (1975). 5. G. E. Collins and R. Loos, Real Zeros of Polynomials, In Computer Algebra: Symbolic and Algebraic Computation, (Edited by B. Buchberger et a/.), pp. 83-94, Springer-Verlag, New York, (1983). 6. D. Cox, J. Little, and D. O'Shea, Using Algebraic Geometry, SpringerVerlag, New York (1998). 7. X.-S. Gao and H. F. Cheng, On the Solution Classification of the "P3P" Problem, In Proc. of ASCM'98, (Edited by Z. Li), pp. 185-200, Lanzhou University Press, Lanzhou, (1998). 8. D. Grigoriev and N. Vorobjov, Solving systems of polynomial inequalities in subexponential time, J. of Symbolic Computation 5 37-64 (1988). 9. L. Gonzalez-Vega, F. Rouillier, M.-F. Roy and G. Trujillo, Symbolic Recipes for Real Solutions, In Some Tapas of Computer Algebra, (Edited by A.M. Cohen et al), pp. 121-167, Springer-Verlag, New York, (1999). 10. D. Lazard, A new method for solving algebraic systems of positive dimension, Discrete Appl. Math. 33 147-160 (1991). 11. R. Loos, Generalized Polynomial Remainder Sequences, In Computer Algebra: Symbolic and Algebraic Computation, (Edited by B. Buchberger et al), pp. 115-137, Springer-Verlag, New York, (1983). 12. S. L. Ma and Z. M. Zheng, On a cubic system with eight small-amplitude limit cycles, Appl. Math. Lett, vol. 7, (4)1994, 23-27. 13. S. Smale, The fundamental theorem of algebra and complexity theory, Bulletin of the Amer. Math. Soc, 4 1-36 (1981). 14. A. Tarski, A Decision Method for Elementary Algebra and Geometry, University of California Press, 1951. 15. D. M. Wang, A class of cubic differential systems with 6-tuple focus, J. Diff. Eqns., 87 305-315 (1990). 16. D. M. Wang, An elimination method for polynomial systems, J. Symb. Comput. 16 83-114 (1993). 17. D. M. Wang, Decomposing polynomial systems into simple systems, J. Symb. Comput. 25 295-314 (1998). 18. W. T. Wu, On zeros of algebraic equations-An application of Ritt principle, Kexue Tongbao 31 1-5 (1986). 19. L. Yang, X. R. Hou and B. C. Xia, Automated Discovering and Proving for Geometric Inequalities, In Automated Deduction in Geometry, (Edited by X.-S. Gao et al), LNAI 1669, pp. 30-46, Springer-Verlag, New York, (1999). 20. L. Yang, X. R. Hou and B. C. Xia, A Complete Algorithm for Automated
220
Discovering of a Class of Inequality-Type Theorems, Science in China, Series F, Vol. 44, 33-49, 2001. 21. L. Yang, J. Z. Zhang and X. R. Hou, An Efficient Decomposition Algorithm for Geometry Theorem Proving Without Factorization, In Proceedings of Asian Symposium on Computer Mathematics 1995, (Edited by H. Shi et al), pp.33-41, Scientists Incorporated, Japan, (1995).
C-D I N T E G R A B L E S Y S T E M A N D C O M P U T E R A I D E D SOLVER FOR DIFFERENTIAL EQUATIONS
ZHANG HONGQING Department of Applied Mathematics, Dalian University of Technology, Dalian 116024, China E-mail: [email protected] From the point of view for finding solution to differential equations, this paper introduces the concepts of C-D integrable systems and C-D pair respectively. Under some conditions, we shall prove that these concept are equivalent. An efficient method for finding C-D pairs is presented and the computer aided solver for differential equations is also presented.
D e f i n i t i o n 1 Let X be a linear space, and A be operators form X to X. For the operator, A is called a C — D integrable system if there exist operators C and D such t h a t CKerD = KerA. By the definition 1, if AU = 0 is a C — D integrable system, then any solution of AU = 0 can be given by u = Cv,Dv = 0, If Dv = 0 is an equation which is easy t o solve, then we can get general solution of Au = 0 by u = Cv,Dv = 0 D e n n i t i o n 2 Operators C and D are called C-D the consistency condition of
pair of the operator A, if
\C(v,u) = 0, \D(v,u)=0
{l>
is AU = 0 exactly, where u is a parameter a n d "exact " means t h a t if A*u = 0 is another consistency condition of (1), then KerA* C KerA. If C(v,u) = 0 can be written a s u = Cv, then D(v,u) — 0 can be written as Dv = 0. In the case it is called t h a t C-D pairs is explicit form of A. E x a m p l e 1 Maxwell Equation f 9 = j^divE
^
= 0
221
^
D v
U
=
-
C v
0
222
is a C — D pair for conservation law of electric charge — + divj = 0 at Example 2 r Lip = \ip \ipt = Mip is a C — D pair of Lax equation Lt + [L, M] = 0 so Lax pair is a special case of C — D pair. Definition 3 Let Au = 0 be a system of partial differential equation with analytical coefficients. It is called formal integrable system if there exists the solution in the form of formal power series. If the series converges uniformly with corresponding derivatives altogether, then this solution is also classical solution. Lemma [1] If systems Cv = u, Dv = 0 can be reduced to standard form of Riequier-Janet, then this system is formal integrable system. Theorem 1 Let Au = 0 be a C — D integrable system, then the pair of operators {C, D} is a C — D pair of operator A. Proof Since CKerD = KerA, so that for Vt; € KerD,u = Cv e KerA. Hence it follows that Au = 0 is consistency condition of (1). If there exists another consistency condition A*u = 0 and KerA/KerA* is not empty, then CKerD ^ KerA, which is a contradiction to the assumption CKerD = KerA. The proof is completed. Theorem 2 Let C and D be C - D pair of A and {Cv = 0,Dv = 0} is formal integrable system, then in the sense of formal solution, Au = 0 is C — D integrable system. Proof Since Au — 0 is the consistency condition of Cv = 0, Dv = 0, so that CKerD C KerA. On the other hand, by the assumption, {Cv — u, Dv = 0} is formal integrable system, so that CKerD D KerA. The proof is completed.
223
Theorem 3 Let X is a linear space, A,B,C, and D be operators form X to X, if AC = BD,B0 = 0,CKerD D KerA, then any solution of Au = 0 si given by u — Cv, Dv = 0. Proof From AC = BD and BO = 0, we know that for any solution of v of Dv = 0, if u = Cv ,then Au = ACv = BDti = 0, i.e., u = Cv is a solution of ,4M = 0. Conversely, form CKerD D KerA, it follows that for any solution u of AM = 0, there exists a solution of Dv = 0 such that u = Cv. Example 3 Let Au = 0 be the KdV equation ut - 6uux + uxxx = 0 and M = Cip = —;
hA
then AOP = Xt = [d2x - (M - A)][V>t - 2(M + 2A)Vx + u*^] It is easy to show that there exists a constant a such that CKer(D - a) = KerA where D = dt - 2(u + 2A)<9X + Uj.. Therefore KdV equation can be reduced to be the equation At = 0 or (Da)x/j = 0 by the transformation U = CV =
;
h A
The theorem given above leads to the integrable question: for given operator A, is there an algorithm to find operators B and C ? There are any different algorithms to solve this question[2-23], some of these algorithms are: (1) Elimination by differential algebra; (2) Method of algebraic geometry;
224
(3) Variational method; (4) Method of Lie group; (5) Method of undetermined coefficients; (6) Division with remainder; (7) Inversion method. Because if the limited space, we shall describe the division algorithm with remainder only. Let A be given operator and C, D be operators which include undetermined coefficients, by the division with remainder we have ACv = BDv + Rv where the operator R depends on operators C and D. Example 4 Let Au = [dt + \{dx)2
- \d2x]u = 0
u = Cv = f(v) where / is a function to be determined, the n ACV = f'(v)(vt
- \vxx)
+ {\f'2(v)
where B = f'(v),Dv = vt - Xvxx,Rv = (\f'2(v) that R = 0, we obtain /(w) = 2Alnw
-
- A / ' » ) ^ . Choose / such
so that u = Cv = 2X In v 2X ACv = — ( v t - Xvxx) = 0 v Since j ^ O , therefore vt — Xv — xx — 0 so that CKerD = KerA
Xf"(v))v2x
225
where u = Cv = 2A In v Dv = vt - Xvxx Based on our result and Riequier-Janet theory, the computer aided solver for differential equations can be constructed as follows: Step 1 For given operator A, choose operators C and D which include undermined coefficients. Step 2 Division with remainder ACv = BDv + Rv. Step 3 Reduce the overdetermined system Rv = 0 to the standard form of Riequier-Janet theory. Step 4 Solve above equation for determining operators C and D. Step 5 Calculate the dimension KerA and CKerD. Step 6 Choose suitable C — D pair. Above algorithm have important applications to field of mathematical physics. The follows chart explains the application of the theory: Elasticity
Theory
of plates and shell
I
{ Electrodynamics Mawell equation
i C — D integrable system I CKerD = KerA
f Riequier - Janet I Wu's method Classical Mechanics Control theory Continum mechanics
theory ^
f Gauge field \ Yang — Mills equation
f Cartan - Kahler theory \ Spencer cohomology
C — D pair AC = BD
{
Classical mechanics Thermodynamics Quantummechanics
I Fluid dynamics soliton theory Acknowledgements The project is supported by the National Key Basic Research Development Project Program of China under the Grant No. G1998030600 and Doctoral Foundation of China under the Grant No.98014119.
226
References 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
J. Reid. Eur. J. Appl. Math., 1991, 2: 293-318. Zahng Hongqing. J. Dalian Uni. Tech., 1978, 18(3):25-47. Zhang Hongqing. ACta Mech. Sin., (Special issure) 1981, 152-161. Zhang Hongqing. Appl. Math. Mech., 1981, 2:349-360 Zhang Hongqing and Wang Zhenyu. Kexue Tongbao, 1986, 31(10):667670. Zhang Hongqing and Wu Fangxiang. Acta Mech. Sin., 1992, 24(5): 700-707. Zhang Hongqing and Yang Guang. Appl. Math. Mech., 1991, 12(2): 149-153. Zhang Hongqing and Feng Hong. Proc. Intern. Workshop on Math. Mech. , International Academic, 1992, 274-279. Zhang Hongqing and Wu Fanf Xiang. Proc. Intern. Workshop on Math. Mech. , International Acdemic, 1992, 280-285. Zhang Hongqing and Wu Fangxiang. Groc. Third Congress for Finite Element Method if China, 1992, 183-191. Zhang Hongqing and Wu Fangxiang. Kexue Xuebao, 1993, 13:671-672. Zhang Hongqing and Feng Hong. J. Dalian Uni. Tech., 1994, 34:249-255. Zhang Hongqing and Feng Hong. Appl. Math. Mech., 1995, 16:335-344. Zhang Hongqing. Thirty yeras for nonholonomic mechanical in China, 1994, 182-186. Zhang Hongqing and Chao Lu. J. Dalian Uni. Tech., 1996, 36:373-379. Zhang Hongqing . Modern Math. Mech. (MMM-VII), Shanghai University Press, 1997, 20-25. Shi He. MM-preprints, 1997, 1-4. Zhang Hongqing and Chao Lu. Computing Phys., 1997, 14:375-379. Zhang Hongqing and Chao Lu. Appl. Math. Mech., 1998, 19:195-202. Zhang Hongqing and Fan Engui. J. Nonlinear Dynamics, 1998, 5:236239. Fan Engui and Zhang Hongqing. Appl. Math. Mech., 1998, 19:667-670. Fan Engui and Zhang Hongqing. Phys. Lett. A 1998, 246:403-405. Zhang Hongqing and Chen Yufu. J. Dalian Uni. Tech., 1999, 32(2):137143.
AUTHOR INDEX Camargo-Brunetto M. A. 0 . 28 Coulter R. S. 36
Struble C. A. 151 Takahashi T. 161 Takayama N. 102 Takeshima T. 56 Tamura Y. 102
Faugere J.-C. 1 Gao X.-S. 92
Villard G. 14
Havas G. 36 Henderson M. 36
Wang Wang Wang Wu J.
Kai H. 122 Kaltofen E. 13 Kitamoto T. 46 Kondoh Y. 56
J. 175 D. 165 P. S. 82 183
Xia B. C. 211 Xie F. 175
Lazard D. 66 Li K. 76 Li L. 175 Li Z.-B. 201 Liao W. 82 Lin D. 82
Yan X.-T. 141 Yao R.-X. 201 Yan Z. 193 Yang L. 211
Ma Y. 92 Maekawa M. 102
Zhang H. 193, 221 Zhi L. H. 76
Naciri H. 112 Noda M.-T. 76, 122 Notake Y. 122 Noro M. 102 Ohara K. 102 Rasmussen T. M. 131 Rideau L. 112 Saito T. 56 Sawada H. 141 Solomon A. 151 227
?HM •
• • • > •
'•-&•
to
••i*t+m
.<••?•<£••
ISBN 981-02-4763-X
www. worldscientific.com 4821 he
9"789810 ll 247638"