Computer Mathematics Proceedings of the Fourth Asian Symposium (ASCM 2000)
LECTURE NOTES SERIES ON COMPUTING Editor-in-Chief: D T Lee (Northwestern Univ., USA)
Published Vol. 1: Computing in Euclidean Geometry Eds. D-Z Du & F Hwang Vol. 2: Algorithmic Aspects of VLSI Layout Eds. D T Lee & M Sarrafzadeh Vol. 3: String Searching Algorithms G A Stephen Vol. 4: Computing in Euclidean Geometry (Second Edition) Eds. D-Z Du & F Hwang Vol. 5: Proceedings of the Conference on Parallel Symbolic Computation - PASCO'94 Ed. H Hong Vol. 6: VLSI Physical Design Automation: Theory and Practice Sadiq M Sait & Habib Youssef Vol. 7: Computer Mathematics Proceedings of the Fourth Asian Symposium (ASCM 2000) Eds. X-S Gao & D Wang
Lecture Notes Series on Computing Vol. 8
Computer Mathematics Proceedings of the Fourth Asian Symposium (ASCM 2000) Chiang Mai , Thailand 17-21 December 2000
Editors
Xiao-Shan Gao Academia Sinica, China
Dongming Wang CNRS, France
`m World Scientific Singapore • New Jersey* London • Hong Kong
Published by World Scientific Publishing Co. Pte. Ltd. P O Box 128, Farrer Road, Singapore 912805 USA office: Suite 1B, 1060 Main Street , River Edge, NJ 07661 UK office : 57 Shelton Street, Covent Garden, London WC2H 9HE
British Library Cataloguing -in-Publication Data A catalogue record for this book is available from the British Library.
COMPUTER MATHEMATICS Proceedings of the Fourth Asian Symposium (ASCM 2000)
Copyright © 2000 by World Scientific Publishing Co. Pte. Ltd. All rights reserved. This book, or parts thereof, may not be reproduced in any form or by any means, electronic or mechanical, including photocopying, recording or any information storage and retrieval system now known or to be invented, without written permission from the Publisher.
For photocopying of material in this volume, please pay a copying fee through the Copyright Clearance Center, Inc., 222 Rosewood Drive, Danvers, MA 01923, USA. In this case permission to photocopy is not required from the publisher.
ISBN 981 -02-4498-3
Printed in Singapore by Uto-Print
INVITED SPEAKERS Gaston H. Gonnet Federal Institute of Technology, Switzerland Daniel Lazard University Pierre et Marie Curie (Paris VI), France William McCune Argonne National Laboratory, USA
Wen-tsiin Wu Chinese Academy of Sciences, China
PROGRAM COMMITTEE Co-Chairs Xiao-Shan Gao Dongming Wang
Chinese Academy of Sciences, China Centre National de la Recherche Scientifique, France
Members Shang-Ching Chou Mark J. Encarnacion Hoon Hong Jieh Hsiang Deepak Kapur Hidetsune Kobayashi Hongbo Li Tien-Yien Li Zhibin Li Zhuojun Liu Matu-Tarow Noda Tadashi Takahashi Paul S. Wang Lu Yang Kazuhiro Yokoyama Hantao Zhang Zhiming Zheng
Wichita State University, USA University of the Philippines, Philippines North Carolina State University, USA National Taiwan University, Taiwan University of New Mexico, USA Nihon University, Japan Chinese Academy of Sciences, China Michigan State University, USA East China Normal University, China Chinese Academy of Sciences, China Ehime University, Japan Kobe University, Japan Kent State University, USA Chinese Academy of Sciences, China Fujitsu Laboratories Limited, Japan University of Iowa, USA Peking University, China
LOCAL ARRANGEMENT Piyapong Niamsup Chankong Prateep
Chiang Mai University, Thailand Chiang Mai University, Thailand
V
This page is intentionally left blank
PREFACE This volume contains papers presented at the Fourth Asian Symposium on Computer Mathematics (ASCM) held in Chiang Mai, Thailand, December 17-20, 2000. The 26 full papers and 13 four-page extended abstracts are selected, by the Program Committee under a standard refereeing process, from over 50 submissions. These original contributions together with four invited talks cover some of the most recent and significant advances in computer mathematics, ranging from algebraic and geometric computation to software design and engineering applications. We hope that this proceedings volume reflects the state-of-the-art and presents some interesting aspects and new trends on doing mathematics using computers. The ASCM series has been localized in Asian countries with international participants since 1995, and has become an ideal forum for presentation of original research and exchange of ideas on the interaction of mathematics and computers. The previous three symposia ASCM'95, 96, 98 were held in Beijing (China), Kobe (Japan), and Lanzhou (China), respectively, and have considerably promoted the research activities in computer mathematics, particularly in China and Japan. These symposia were organized under close collaboration between the Mathematics Mechanization Research Center (MMRC) of the Chinese Academy of Sciences and the Japan Society for Symbolic and Algebraic Computation (JSSAC). The International Workshop on Mathematics Mechanization held successfully in Beijing in July 1992 and a business meeting of the second editor with several members of JSSAC in Tokyo in August 1993 are part of the prelude of ASCM. This fourth symposium, held jointly with the Fifth Asian Technology Conference in Mathematics, has attracted wider international participation. The ASCM program includes four invited talks by Gaston H. Gonnet, Daniel Lazard, William McCune, and Wen-tsiln Wu, and 39 technical presentations by researchers from 15 countries and regions in Asia, Europe, and North America. ASCM'2000 is hosted by Chiang Mai University with financial support from MMRC and the Chinese National Key Basic Research (973) Project. Many people have contributed to the organization of ASCM'2000 and the preparation of this proceedings. The expertise and timely help of the Program Committee members and external referees are essential for the quality of the conference program. The dedicated work of the local organizer has been making the conference towards a great success. The effort of Wei-Chi Yang and other colleagues from ATCM, Inc. on our joint event has made ASCM'2000 organizationally easier and scientifically more attractive. The publication of
vii
this proceedings as a volume in the Lecture Notes Series on Computing by World Scientific will make ASCM more accessible to the academic community. We thank all of them for their generous contribution , help, and cooperation.
Beijing and Paris Xiao-Shan Gao September 2000 Dongming Wang
CONTENTS Preface .................................................................vii Invited Talk Resolution of Polynomial Systems ........................................ 1 D. Lazard (France) Symbolic, Algebraic , and Geometric Computation Approximate GCD of Multivariate Polynomials ........................... 9 L. H. Zhi and M.-T. Noda (Japan) Subresultants with the Bezout Matrix ................................... 19 X. Hou and D. Wang (China and France)
Parallel Coset Enumeration Using Threads .............................. 29 G. Havas and C. Ramsay (Australia) Generating Power Series of Coloured Polylogarithm Functions and Drinfel'd Associator .................................................39 M. Bigotte, G. Jacob, N. E. Oussous, and M. Petitot (France) Plotting Algebraic Space Curves by Cluster Computing ..................49 W. Schreiner, C. Mittermaier, and F. Winkler (Austria) Grobner Bases in Polynomial Rings over Von Neumann Regular Rings ... 59 Y. Sato and A. Suzuki (Japan) Another Attempt for Parallel Computation of Characteristic Sets ........63 I. A. Ajwa, P. S. Wang, and D. Lin (USA and China) Zero Decomposition Algorithms for Systems of Polynomial Equations ....67 D. K. Wang (China) Integer Roots for Integer-Power-Content Calculations ....................71 D. J. Jeffrey, M. W. Giesbrecht, and R. M. Corless (Canada) Semi-Algebraic Approach to Piano Movers' Problem .....................75 N. Tongsiri and D. Richardson (England)
Quantum Self-Dual Codes and Symmetric Matrices ......................79 V. D. Tonchev (USA)
ix
X
Invited Talk Single Axioms: With and Without Computers ...........................83 W. McCune (USA) Automated Reasoning Homomorphism Theorem and Unreachability for w Rewriting Systems ..................... .........................................90 K. Akama, H. Mabuchi, and Y. Shigeta (Japan) Logic Programming - Taking Advantage of Symmetry ................. 100 J. Wu (Germany) The Degree of Certainty in Automated Uncertainty Reasoning ......... 110 G. Hu (China) Automated Theorem Proving in Projective Geometry with Bracket Algebra ................................................................120 H. Li and Y. Wu (China) Equi-Cevaline Points of Triangles ....................... .............130 L. Yang and Z. Zeng (China) Higher Order Pre-Unification on Intuitionistic Proof Nets .............. 138 S. Matsuoka (Japan) Computational Geometry/CAGD Efficient Implicitization of Rational Surfaces by Moving Planes ......... 142 M. Zhang, R. Goldman, and E. W. Chionh (USA and Singapore) Fast Computation of Distance between Two Disjoint 2D Convex Regions with Curved Boundaries ....................................... 152 W. Wang, B. A. Barsky, and X. Li (China and USA) Gl Continuous Conditions of Bicubic B-spline Surfaces ................. 162 X. Shi and Y. Zhao (China) Algebraic Surface Blending Using Wu's Method ........................ 172 F. Chen, J. Deng, and Y. Feng (China) Filling Holes with Piecewise Algebraic Surfaces ......................... 182 C. Chen, F. Chen, J. Deng, and Y. Feng (China)
Global Superconvergence for Blending Surfaces by Boundary Penalty plus Hybrid FEMs ..................................................... 192 Z. C. Li and N. N. Yan (China)
XI
Invited Talk Extension of Mathematics Mechanization Theory in Algebraic Case
to Differential Case .................................................... 202 W.-T. Wu (China) Computational Differential Equations
On the Differential-Integral Analogue of Zeilberger's Algorithm to Rational Functions .................................................. 204 H. Q. Le (Canada) A Computer Algebra Approach for Solving Singularly Perturbed
Initial Value Problems ................................................. 214 R. Khanin (UK) Travelling Wave Solutions to the Two-Dimensional DissipativeDispersive Nonlinear System with Maple ............................... 224 Z.-B. Li (China) Determinant Formulas for Inhomogeneous Linear Differential, Difference and q-Difference Equations .................................. 229 Z. Li (China) Some Conclusions for (2+1)-Dimensional Generalized KP Equation .....239 Z. - Y. Yan and H. - Q. Zhang (China)
Darboux Transformation and Soliton-Like Solutions for Dispersive Long Wave Equations . ................................................249 E. Fan (China)
Local Geometric Structures and Bifurcations of a Polynomial Differential System from a General Multi-Molecular Reaction ...........258 X. Hou, R. Yan, and W. Zhang (China) Reduced Form of Yang-Mills Equations of SU(2) on R2'2 ............... 268 H. Shi (China) A Parallel Approach of the Constrained Normal Form of a Perturbed Keplerian Hamiltonian ................................................. 272 A. Blaga (France) A Stability and Diversity Analysis on a Mathematical Model of the Interaction between HIV and T-Cell CD4. ............................ 276 Y. Ishida (Japan)
XII
Invited Talk Exactly 20 Years of Maple ............................................. 280 G. H. Gonnet (Switzerland) Software Design and Implementation
Dragonfly: A Java-Based IAMC Client Prototype ...................... 281 W. Liao and P. S. Wang (USA) The Mathematical Software Implementation for Computational Algebra and Number Theory ........................................... 291 M. Kolodnytsky, A. Kovalchuk, S. Kuryata, and V. Levitsky (Ukraine) Mathematical Computing on Network .................................. 295 L. Li and X. Zou (China)
Graph Algorithms Optimally Extending Bistandard Graphs on the Orthogonal Grid .......299 T. Calamoneri, R. Petreschi, and Y. Liu (Italy and China)
Ordering in Solving Systems of Equations .............................. 309 K. Jiang and X.-S. Gao (China) One-Dimensional Radio Broadcast Problem ............................ 319 S. Fujita (Japan)
Author Index ......................................................... 323
RESOLUTION OF POLYNOMIAL SYSTEMS D.LAZARD LIP6, Universite Paris VI, 75252 Paris Cedex 05, France
E-mail:
[email protected] In this paper, the state of the art of solving polynomial systems by algebraic methods is sketched, and the main directions where future work is needed are indicated. Emphasis is given on input-output specification rather than on technical algorithmic aspects.
Introduction
For more than 20 years, much work has been devoted to algorithms for solving polynomial systems. Most of the work in the field is devoted to four approaches: Grobner bases, triangular systems, and, in the real context, cylindrical algebraic decomposition and "asymptotically fast algorithms". But few efficient implementations are available, and they only concern the first three approaches. In this paper, we try to give a description of the state of the art on solving polynomial systems by focusing on practical efficiency. In order to keep in a small number of pages, we do not describe nor cite most of the relevant papers, limiting ourselves to trends and citing only the works well illustrating these trends. Thus, we had to make many subjective choices, which have as a consequence that many important work or papers are not mentioned. We apologize for this. One of these trends is that, for a long time, most authors tried to improve algorithms and very few of them took care on the specification of the output, i.e. on the kind of output that would fulfill the needs of the users of a solver. It is very recent that very efficient algorithms and implementations are available, especially for Grobner basis computation and real zero isolation, which set this question of specification of the output as an essential one. Therefore, the organization in sections of this paper is done by the different kinds of input-output. Most of the time, we mention only the most efficient algorithms and implementations without any description nor citing previous work incorporated therein.
1
2 2 Systems of Equations - Dimension 0 A system of equations is a formulas
P1 =OandP2=0and •.. and Pk=O
(1)
where the Pi's are multivariate polynomials with coefficients in some given field K. A solution is a set of values for the variables of the Pi's, which satisfy (1); these values are searched in some field extension L of K. In this paper we only consider the case where L is algebraically closed or is the field of the realsb. A system is said to be of dimension 0 or zero-dimensional if it has only a finite set of solutions in some algebraically closed field. In this case, it is well known that all solutions are algebraic on K and lie in the algebraic closure of K. Thus they are essentially independent of L. The zero-dimensional case is essentially the only one which is accessible to purely numeric methods. Moreover, numeric methods require that the number of equations is equal to the number of variables, and, even in this case, numerical instability strongly limits the size of numerically solvable systems. There are many ways for algebraically representing the solutions of a zerodimensional system. One of the most useful is to represent them as one or several regular triangular systems 91(x1) = 0, 92(x1,x2)
=
0,
(2)
9n(xl,...,xn) = 0,
where the initials of gi has no common zero with g1, ... , gi- i This representation is usually convenient for any subsequent work on the solutions, except for numerical evaluation, which needs to solve univariate polynomial equations with approximate coefficients. Therefore, a RUR (Rational Univariate Representation) is numerically more convenient. In fact, a RUR is a system ho(xo) = 0, x1
=
h1(xo)/h0(xo),
(3)
x,n = hn(x0) /h0(x0), 'Usually, the "and" are omitted and replaced by commas. bLooking for the solutions in K is usually much more difficult: The 10th problem of Hilbert essentially asserts that the existence of solutions is undecidable when K = L is the field of rationals. cThe initial is the leading coefficient of gi when viewed as univariate polynomial in xi.
3
where the hi's are univariate polynomials, xo is an auxiliary variable and ho is the derivative of ho. Actually, one standard way for a complete resolution of a polynomial system consists in the following schema. 1. Compute a lexicographical Grobner basis, either directly or through a change of basis ordering7. This step checks zero-dimensionality. 2. Deduce from it a set of regular triangular systems using algorithm Lextriangularl'
3. For each of these triangular systems, compute a RUR17. 4. For each RUR compute a numerical approximation of the solutions together with a bound on the error, either with the Uspensky algorithm implemented by Rouillier18 in the real case or with Bini's implementation3 in the complex case (the latter does not give a bound on the error, but it gives an output of arbitrary precision).
With the implementation of FGB and Rs6, this strategy commonly allows one to solve systems with more than thousand solutions. The critical step lies frequently in the size of the Grobner basis to be computed. It seems that algorithm F76 may avoid this problem by splitting the system during the computation of the Grobner basis: The system Cyclic(9) has a Grobner basis of 1.6 Gbytes whose computation needs 15 days and which is too big for subsequent computation, while F7 provides in a few hours a set of 113 Grobner bases which allows a complete description of the solutions'. 3 Triangular Sets The most common alternative to Grobner bases for algebraic resolution of polynomial systems consists in using triangular systems. They were introduced by Ritt under the name of characteristic sets and systematically used by Wen-tsun Wu and his followers for solving systems. However, two important facts were only recently well recognized and need to be described here: the essential role of regular triangular sets and the two different ways in which triangular sets may be used in solving systems. For explaining this, we need to recall some technical notions. We suppose that the variables of the polynomials are x1, ... , x,, sorted by increasing indices. The main variable of a polynomial is the highest one which effectively appears in itd. The initial of a polynomial is its coefficient of highest degree, when it is viewed as univariate polynomial in its main variable. dThus a constant does not have any main variable.
4 A triangular set is a sequence of polynomials with strictly increasing main variables. The regular zeros of a triangular set are its common zeros (in some algebraically closed field) which are not zeros of any initial. To a triangular set T is associated an ideal Sat(T), the saturated ideal of T, which is the set of the polynomials, the product of which by some product of initials lies in the ideal generated by T.
Theorem 1 2 For a triangular set T = (t1, . . . tk) the following conditions are equivalent. 1. T is a characteristic set of Sat(T). 2. The ideal Sat(T) is the set of the polynomials which reduce to 0 by T with pseudo- division. 3. For any i the initial of ti is not a zero- divisor in the ring K[xl, ... ,x,]/ Sat(t1,... , ti-1). j. For any i, the iterated resultant ro defined as follows is not zero: ri = initial (ti); rj = resultant(r3+1, tj, main_var(t, )) for j = i - 1, ... , 0. A triangular set which satisfies these equivalent conditions is said to be regular. An ideal which is the saturated ideal of a regular triangular set is said to be triangularizable ; it is always equi-dimensional of dimension n - k, where n is the number of variables and k the length of T. A prime ideal is always triangularizable, and the primes associated to a triangularizable ideal are simply obtained by factoring recursively each ti in the field extensions defined by the factors of t1i ... ,ti-1. It should be remarked here that regular triangular sets are a good alternative to Grobner basis for representing triangularizable and prime ideals on computers: The number of polynomials in a triangular set is always bounded by the number of variables, which is not the case for generating sets or Grobner bases of prime ideals. Computing a Grobner basis from a regular triangular set may be done by any Grobner basis algorithm, and is usually not too difficult. The inverse transformation is very easy for prime ideals. 4 Solving by Prime Decomposition For solving polynomial systems of positive dimension, there are two main approaches. We consider here the first one, leaving the second one to the next section.
A system of equations defines an ideal, and for solving the system (i.e. studying the possibly infinite set of solutions) one may decompose the radical of this ideal as an intersection of primes and then study separately the
5
primes . This is equivalent to decomposing the set of solutions into irreducible components which are studied separately. We do not precisely define here what we mean by an irreducible variety, because it strongly depends on the kind information about the solutions which is needed by the user of a solving program. M. Kalkbrener13 is the first to have provided an algorithm for computing a prime decomposition by mean of regular triangular sets, or more exactly for computing a decomposition in triangularizable ideal; in fact the prime decomposition may be computed at the end, using factorization in algebraic field extensions . This algorithm has been improved by Aubry' and seems to be the fastest existing algorithm for system solving by triangular sets. A drawback of this algorithm is that, in some case , it computes a redundant decomposition which may only be cleaned by using Grobner bases. Moreover , this algorithm extends trivially to differential algebra and in this context , no algorithm is known for removing redundancies , and one may conjecture that this is an undecidable problem (equivalent to the Pitt problem). Recently, an experimental version of an algorithm called F7 has been developed by Faugere6 , which provides as output a decomposition in primes represented by Grobner bases or regular triangular sets. This algorithm appears to be very efficient, but it is too early to determine which approach between F7 and Kalkbrener-Aubry is more efficient. From an algebraic point of view , some information , like multiplicities, is lost by prime decomposition . Thus efficient algorithms for computing complete primary decompositions would be needed . Unfortunately, the algorithms which are known10 are too inefficient for solving difficult problems. Thus a challenge for the next years would be to get efficient algorithms for primary decomposition.
5 Solving by Regular Zero Decomposition There is another way of using triangular sets for solving polynomial systems of positive dimension: It consists in decomposing the sets of zeros into sets of regular zeros of triangular systems. It is the approach taken by Wen-tsiin Wu and his followers19. The advantage of this approach is to allows non-redundant decompositions14,16 without using external algorithms like Grobner bases. On the other hand, some topological or geometric information may be difficult to extract without Grobner bases, like the inclusion of one component in the closure of another. It should be noted that this approach, as well as the one of preceding sec-
6 tion, allows one to manage inequations of the form Q 54 0. In both cases, the inequations of the input may be introduced only at the end of the computation, but it is usually better to use them during the computation for removing early empty components. Despite the recent progresses on this approach, it is not yet clear in which cases it will be faster than using Grobner bases. Moreover, no estimation is available of the complexity of the algorithms of decomposition by triangular sets , but one may conjecture a bound of d°(') (see the papers by Gallo and Mishra), while Grobner bases may have output of size d2o(') (see the reference12). It follows that competition is yet open between the triangular sets approach and the Grobner basis one. Personally, I guess that the winner will be a mixture of both. 6 Real Solving in Positive Dimension When working in the real field, one is usually concerned not only with equations and inequations but also with inequalities Q > 0 or Q _> 0. In this context, one considers not only systems of equations and inequalities but more generally also formulae of first order logic, in which atomic formulae are equations, inequations and inequalities involving polynomials. In this case, solving a system may ideally be split into three steps: 1. Eliminate quantifiers in order to get an equivalent quantifier-free formula, which may be written as a disjunction of systems of equations and inequalities. 2. Decompose the set of solutions of these systems into (algebraic, semialgebraic or connected) components represented, for example, by some generalization of triangular systems.
3. Study the structure of these components and their inter-relation. For example describe the topology of the whole set of solutions. In practice these steps are not completely distinct. For example, Collins' cylindrical algebraic decomposition (CAD) performs both first steps. Also, a projection of an irreducible variety may be viewed as a quantifier elimination as well as the study of the variety. While many theoretical algorithms are known for performing these steps, the only one which is in practice efficient enough for being implemented is Collins' CAD11. Moreover many seemingly easy problems are outside the possibilities of this algorithm; among them some are solvable by hand. Thus hard work is needed for finding better algorithms.
7
It should be remarked that the output of the above three steps is not well described. In fact, we need not only better algorithms but also specifications of input and output which together allow efficient computation and are useful in practice. We end this paper by two examples for such restricted problems, which have been recently solved, and both need most of the recent progresses sketched in preceding sections. The first is an efficient algorithm for providing at least one point for each connected component of the set of real solutions of a systems of equations (without inequations nor inequalities)4. The second is an algorithm for discussing the number of real solutions of a system of equations and inequations depending on at most two parameters8. It has been developed for and applied to a problem of celestial mechanics, which consists in determining the number of symmetric configurations of 4 unequal masses which remain homothetic to themselves (two symmetric masses are supposed to be equal and are normalized to the unit).
This problem may be described by the following system b3B2-1=0, d3D2-1=0,
f3F2-1=0,
(d - b)2 - 2(b - d) + f + 1 = 0, (4) (B - 1)m + (D - F)(b - d - 1) =0, (D-1)n+(B-F)(d-b-1) =0, where the parameters are the two masses m and n, and all variables and parameters should be positive. This problem, which seems rather small, gives an idea of the complexity of problems of positive dimension: the domains where the number of solutions are constant (1, 3 or 5) are delimited by two branches of an algebraic curve defined by a bivariate polynomial, which has total degree 424 with coefficients of more than 200 decimal digits and needs more than 10 Mbytes to be stored. An important part of the several days of computation which were needed was devoted to the drawing of this curve and to the certification of this drawing: computation of the 24 cusps, of the 22 asymptotes (some of which are multiple), of the points with tangents parallel to the axes, and of the way in which all of these are connected. Note that in this case, the output of the resolution is essentially this curve. References 1. P. Aubry. Ensembles triangulaires de polynomes et resolution des systemes algebriques . These de l'Universite Pierre et Marie Curie (Paris VI) (1999).
8
2. P. Aubry, D. Lazard and M. Moreno-Maza. On the theories of triangular sets. J. Symbolic Comput. 28, 105-124 (1999). 3. D. Bini and G. Fiorentino. MPSolve: Numerical computation of polynomial roots v. 2.0. FRISCO report (1998). http:// fibonacci .dm.unipi.it/-bini/papers /mps2.html 4. P. Aubry, F. Rouillier and M. Safey El Din. Real solving for positive dimensional systems . Submitted to J. Symbolic Comput. (2000). 5. J.C. Faugere. How my computer finds all the solutions of Cyclic 9. Research report LIP6-2000-007 (2000). http://www.lip6.fr /reports/lip6.2000.007.html 6. J.C. Faugere. //http://calf or.lip6.fr/' jcf /Software / index.html 7. J.C. Faugere, P. Gianni, D. Lazard and T. Mora. Efficient computation of zero-dimensional Grobner bases by change of ordering. J. Symbolic Comput. 16, 329-344 (1993).
8. J.C. Faugere and D. Lazard. In preparation. 9. G. Gallo and B. Mishra. Efficient algorithms and bounds for Wu-Ritt characteristic sets. Progress in Math. 94, 119-142, Birkhauser (1991). 10. P. Gianni, B. Trager and G. Zacharias . Grobner bases and primary decomposition of polynomial ideals. J. Symbolic Comput. 6, 149-167 (1988). 11. H. Hong. Comparison of several decision algorithms for the existential theory of the reals. Research report, RISC-Linz (1991).
12. D.T. Huynh. A superexponential lower bound for Grobner bases and Church Rosser commutative Thue systems. Information and Control 68, 196-206 (1986). 13. M. Kalkbrener. A generalized Euclidean algorithm for computing triangular representations of algebraic varieties . J. Symbolic Comput. 15, 143-167 (1993). 14. D. Lazard. A new method for solving algebraic systems of positive dimension. Discrete Appl. Math. 33, 147-160 (1991). 15. D. Lazard. Solving zero-dimensional algebraic systems . J. Symbolic Comput. 13, 117-131 (1992). 16. M. Moreno-Maza. On triangular decomposition of algebraic varieties. Proceedings of MEGA'2000 (to appear).
17. F. Rouillier. Solving zero-dimensional systems through the rational univariate representation . Appl. Algebra Engrg. Comm. Comput. 9, 433-461 (1999). 18. F. Rouillier and P. Zimmermann. Efficient isolation of a polynomial real roots . Preprint, 12 pages, INRIA (2000).
19. D. Wang. Elimination methods . Springer-Verlag (2000).
APPROXIMATE GCD OF MULTIVARIATE POLYNOMIALS L. H. ZHI AND M: T. NODA Dept. of Computer Science, Ehime University, Matsuyama 790-8577, Japan E-mail: { lzhi, nodal Ohpc. cs. ehime- u. ac. jp We describe algorithms for computing the greatest common divisor (GCD) of two multivariate polynomials with inexactly known coefficients. We focus on extending standard exact EZ-GCD algorithm to an efficient and stable algorithm in the approximate case. Various issues related to the implementation of the algorithms and some preliminary test results are also presented.
1 Introduction Given two polynomials F and G in R[xi,... , x,i], we are going to find the nontrivial approximate GCD C and polynomials F', G' E R[xl,... , x,] such that IIF - CF'II < e and IIG - CG'II < e, for some a and some well defined norm . Many papersl , 2,s,s,s,l °, 11,18,15 have already discussed the problem in the case n = 1. Few of them2 , 1°,11 mentioned the case n > 1. Approximate GCD computation of univariate polynomials provides the basis for solving multivariate problem . But it is nontrivial to modify the techniques used in symbolic computation such as interpolation and Hensel lifting to compute the approximate GCD of multivariate polynomials. In Section 2, we briefly review two methods2,10 for computing GCD of polynomials with floating-point coefficients . In Section 3, we focus on extending the Hensel lifting technique to polynomials with floating-point coefficients. The method involves the QR decomposition of a Sylvester matrix. We propose an efficient new algorithm which exploits the special structure of Sylvester matrix . A local optimization problem is also been proposed to improve the candidate approximate factors obtained from Hensel lifting. In order to compare the performance of the different methods, we implement all three methods in Maple. In Section 4, we summarize the special problems we encounter when they are applied to polynomials with floatingpoint coefficients . A set of examples are given to show the efficiency and stability of the algorithms. 2 Review of GCD Algorithms Modular Algorithm: Multivariate polynomial GCD problems are reduced to univariate problems by using (repeatedly) evaluation homomorphisms to 9
10 eliminate variables, and reconstruct the GCD of the original inputs from these "images" using interpolations. For the dense modular algorithm, the number of homomorphisms is exponential in the number of variables. If the multivariate polynomials and their non-trivial GCD are sparse, then sparse modular method needs much less number of homomorphisms. Corless and others2 modified the sparse modular algorithm to compute approximate GCD in the case of bivariate polynomials. 1. Choose random evaluations a, /3i of x and y to compute TT nonzero terms in GCD(F(x, /3i), G(x, /3i)) and Ty nonzero terms in GCD(F(a, y), G(a, y)).
2. Solve M monic GCD(F(x, /3i), G(x, l3i)) for randomly chosen /3i, where M > Ty Tx/(TX - 1). 3. Interpolate all coefficients simultaneously. Subresultant PRS: The Subresultant PRS algorithm calculates the PRS
{P1=F,P2=G,...,Pk00,Pk+1=0.}
(1)
by the iteration formula /3ZPz+1 = remainder(aiPP_1, Pi), i = 2,3,..
(2)
where ai = lc(pi)di+1, di = deg(Pi-1) - deg(Pi);
(3)
/32 = 1, 'Y2 = 1; //^^ Ni = lc(Pi-1),
yi = lc(Pi-1 )
di-1
1-di-1 , i - 3.
'ti-1
lc(P) denotes the leading coefficient of P. The above algorithm has been extended to polynomials with floating -point coefficients . 1° There are two critical steps: 1. Normalization of remainders in PRS. Let R and Q be pseudo-remainder and pseudo-quotient of polynomials F and G, i.e.,
R = lc(G)d+1F - QG, d = deg (F) - deg(G). (4) The normalized pseudo- remainder R is defined as R max (II lc(G) 1+1 II, II Q II)
(5)
2. Rounding of Pk . Normalize Pk as II Pk II= 1, where II ' II denotes the maximum norm of the coefficient vector . Round off the coefficients of Pk at O(E).
11
3 Hensel Lifting Algorithm For polynomials with exact coefficients, the main steps compute GCD using Hensel lifting are summarized below.4,14 1. Choose a main variable, suppose x1, find lucky evaluation homomorphism I = (x2 - a2i...,x„ - an).
2. FI = Fmod I, GI = G mod I. Compute CI = GCD(FI, GI) and cofactors FI, GI. 3. If there is one of the cofactors which is prime to Ci, then use multivariate Hensel construction to lift CI and the cofactor. Otherwise perform a square-free decomposition for either F or G. The last step is critical. Suppose P is a polynomial in x1,. .. , xn, with leading coefficient p,,, (a2 i ... , an) # 0. Let x = x1, u = {x2, ... , xn }, G(°) (x) and H(°) (x) be relatively prime polynomials satisfying P(x, u) = G(°) (x)H(°) (x) mod I.
(6)
The multivariate Hensel construction calculates polynomials G(k) (x, u) and HW (x, u) satisfying P(x, u) - G(k) (x, u)H(k) (x, u) mod Ik+1 (7) The main calculation involved in multivariate Hensel construction is to solve polynomial Diophantine equations for the fixed polynomials G(°) (x) and H(°) (x). If G(°) (x) and H(°) (x) are relatively prime, then for any polynomial R(x) with deg(R(x)) < deg(G(°) (x)) + deg(H(°) (x)), there exist unique polynomials A(x), B(x) such that
A(x)G(°) (x) + B(x)H(°) (x) = R(x) (8) and
deg(A(x)) < deg(H(°) (x)), deg(B(x)) < deg(G(°) (x)). Solving (8) is equivalent to solving the linear equations with fixed coefficient matrix M, where M is Sylvester matrix of polynomial G(°) (x) and H(°) (x). There are several ways to solve the linear equations. LU decomposition is the fastest but may be unstable in some cases, especially when M is close to singular; SVD method can detect nearly rank-deficiency in the presence of roundoff error and give satisfactory results while LU decomposition fails, but it is notoriously computational-intensive; QR decomposition with Householder transformations or Given rotations is very stable although
12 it costs double time than LU decomposition. We prefer QR decomposition as it is easy to exploit the structure of the Sylvester matrix M for the purpose of finding a computationally efficient and stable algorithm. Since the Sylvester matrix M consists of two Toeplitz matrices, we start the QR decomposition with the Given rotation and to eliminate the elements below the diagonal of the first t columns, and then apply the Householder transformations to the low s x s submatrix (suppose s >= t). The advantage of combining Given rotations with Householder transformations can be seen clearly from comparing complexity in the case s = t = n. The flops used in general LU, QR and SVD decomposition are s (2n)3, s (2n)3 and 12(2n)3; while using the above strategy, the flops we used are 6n2 + n3. For Hensel construction, it is also very important to decide when to stop the lifting. Obviously, the procedure will stop as soon as II Np(k) 11=11 P - G(k)H(c) 11= O(e). However, it is also possible that OP(k) still has some coefficients whose absolute values are not O(e) when k is larger than the total degree of the variables u in P. In this case, we have to decide if it is caused by error accumulation or P has no approximate factors indeed. If many coefficients of OP(k) are relatively much larger than e, it is believed that F and G have no approximate GCD. Otherwise, we can use the optimization method" to improve the initial approximate univariate GCD and its cofactor GO) and H(°), or increase the number of digits carried in floating-point computations. But it is possible that both techniques are inefficient. Then we have to apply the correction method that was given in a separate paper by the author and others.6 When OP(k) is reasonable small, we round off G(k) and H(k) to G and H respectively. G and H are supposed to be candidate factors of P. If II P - GH 11 is not very large, we formulate a local minimization problem:
min II P-GH-GAH-IGH I^ . (9)
OG,OH
Notice that it is not necessary to actually solve the minimization problem. We are only interested in finding iH, AG which modify H and G to achieve a sufficient small backward error. Example 1 F = (x2 + y2 + 1.01)(x2 + xy + y2 + 1.12), G = (x2 + y2 + 1.01)(x2 + xy + 1.02) + 10-4(x + y).
(10)
For e = 10-4 and y = 0, we modify algorithms from the existing paperslo,ii to get
C(o) = GCD(F(x, 0), G(x, 0)) = 1.01 - 0 .000998478x + 1.x2,
13
with backward error about 10_5 and cofactor of CO) with respect to F(x, 0) k°) = 1.12 + 0.001055x + 1.x2. For simplicity, polynomials here and below are rounded to six digits. Compute the Hensel lifting for F, 0°) and F(°). When k = 3, C(2) = 1.01 - 0.000998478x + 1.x2 + 0.99999y2, F(2) = 1.12 + 0.001055x + 1.x2 + 0.999821xy + 0.0101626y + 1.00001y2, IJ F - C(2)F(2) 11 = 0.0102642. Since the leading coefficients of F, Ci2> and F(e) with respect to x are equal to 1, no corrections are needed. The optimization problem (9) is the minimization of 14 linear equations in 8 correction coefficients subject to 6 linear equality conditions. It turns out we can choose all corrections be zero except the correction coefficient of y in F(2) be -0.01. This gives us a backward error about 10-3. For this example, it is very difficult to get the correct approximate GCD only by improving the univariate GCD or increasing the Digits in Maple (e.g. Digits=40). We will discuss this problem in Section 4.
4 Implementation and Discussion It has been pointed outs that all these three methods have advantages and disadvantages. For example: sparse modular method can find the "small" GCD very fast but may be unlucky or need a large number of evaluation homomorphisms in the case the GCD is dense; Subresultant algorithm can deal with the polynomials with complicated leading coefficients but it is very inefficient to find that two polynomials are actually prime to each other; Hensel lifting algorithm only needs small number of homomorphisms but has trouble if the GCD is not prime to any of its cofactor. All these advantages and disadvantages are remained and some special drawback will appear when we extend these methods to polynomials with floating-point coefficients. 4.1 Modular Algorithm The main serious problem in Modular Algorithm is the high condition number of the Vandermonde matrix for interpolation of polynomials . A variety of bounds for the condition number of a Vandermonde matrix have been derived by Gautschi .7 Let V,, = V(ao,a,....) an _ 1) E ]Rnxn Corless et al. suggest to randomly scale each variable and choose the random points : a + /.3ui, where ui are the Chebyshev nodes in [-1, 1] and
14 Table 1. Bounds and Estimates for koo (Vn ). ai
k.(Vn)
equispaced [0,1]
(4,, )-l ,/-28n
n=5 3687.7
equispaced [-1,1]
E' (3.1)n 3 37 (1 + V/2-)n
41.5
128. 8
399.3
Chebyshev nodes [-1, 1]
46.7
112.8
272.4
ai > 0
> 2n' (n > 1)
10 10
10 10
10 10
n=6 29501.5
n=7 236012.5
a, Q E (1/2, 1). It is still possible to get very large condition numbers when n is big. We have tried to use orthogonal polynomials instead of power series 1, x, x2, ... , to interpolate the GCDs. The details will be reported in another paper. However, it is always very dangerous to interpolate a polynomial from more than 10 points.12 So it is not recommended to interpolate a non-monic GCD with degree larger than 5 and dense in some variables. In Corless's paper,2 in order to obtain the same denominator of the GCD, a large system is formed to interpolate all coefficients simultaneously. However, it is possible to interpolate coefficients independently if we perform the normalization of the leading coefficient.4 Firstly, we estimate the leading coefficient of the GCD from the relation lc(GCD(F, G)) I GCD(lc(F), lc(G)). (11) If c = GCD(lc(F), lc(G)) is small, we normalize the GCD to have the leading coefficient c. Now the coefficients of the GCDs we computed will be polynomials in all variables and can be interpolated one by one. However, if we are unlucky, the GCD we computed may contain an extra factor which can be divided out after computing the content of the GCD(it requires to run the algorithm recursively). Moreover, we also notice that normalization of the leading coefficient may destroy the sparsity of the GCD. So normalization is only practical when c is simple (e.g. 1). Sparse Modular Algorithm is fast but also probabilistic. The algorithm is not efficient for dense GCDs and could also be unlucky. In floating-point computations, "zero" only means relatively small, i.e., O(E). Failure to recognize the essential "zero" will bring unsatisfactory answer. Example 2 F = (1+x+y1 +y2 +y3 +y4 +ys)2 (-2+x-(y1+y2+y3+y4+y5)2), G= (1+x+yl+y2+y3+y4+y5)2 (2+x+y1+y2+y3+y4+y5)2.
(12)
15
Compute T., = Ty, = Tye = Ty9 = Ty, = Ty, = 3. Since the GCD is monic and dense, we need about 35 = 243 evaluations. For Digits=10, e = 10-5, the algorithm returns: 2.00029x + 1.x2 + 1.99931y1x + 1.99909y1 + 1.99789Y2 + 1.99773y3 +1.99476y4 + 1.99543y5 + 1.00134y1 + 1.00188y2 + 1.00202y3 + 1.00512y4 +1.00550y5 - 0.112238y2y4y5 - 0.0681706y2Y3Y5 - 0.120297y3y4 J5 -0.0525764y1y4y5 - 0.0387045y1y2y5 - 0.0263314y1y3Y5 + 0.0835444y5y2y3
+0.0199011xy4y5 + 0.0640616y52 y1y4 + 0.135066y5y2y42 + 0.1476623y5y3y4 +0.0461392y25 y1y2 + 0.0353559y2y1y3 0.0237874y2xy4 5 5 + 0.0197683y2y5 3 +0.0466600y42y5 + 0.0125651yiy5 + 0.0141069y2y5 - 0.0480776y4y5 -0.0102278y5yI - 0.0125707y5y2 - 0.0158431y5y3 - 0.0387656y5y4 -0.0181389y2y5 - 0.0218871y3y5 + 2.03987y4y5 + 1.99737xy4 +1.99786xy5 + 2.0068ly1y4 + 2.00683y1y5 + 2.01477y2Y4 + 2.01531y2y5 +2.01526y3y4 + 2.01765y3y5 + 1.00060 + 1.99889xy2 +1.99894xy3 + 2.00545y1y2 + 2.00329y1y3 + 2.00916y2y3.
Some terms such as y2Y4y5 , ... , Y2Y3Y2 which should be zeros but have not very small coefficients here . If Digits=20, we can get the exact result: 2.x + 1. + 1 .x2 + 2.yjx + 2 . y1 + 2.y2 + 2.y3 + 2.y4 + 2 .y5 + l.yl + 1 .y2 + 1.y3 +1.y4 + 1.y5 + 2.y4y5 + 2.xy4 + 2.xy5 + 2.y1y4 + 2.y1y5 + 2.y2Y4 + 2.y2Y5 +2.y3y4 + 2 . Y3Y5 + 2.xy2 + 2.xy3 + 2 .y1y2 + 2.y1y3 + 2.y2y3. /.,2 Subresultant PRS What will happen when we extend Subresultant PRS for polynomials with floating-point coefficients? At each iteration of the algorithm, the pseudoremainder is divided by a factor which is an exact factor in the case of exact rational coefficients. But now, it is only an approximate factor. Error accumulation is inevitable for each division. Another problem is caused by the large cancelation error during the pseudo-remainder computations. Even we perform the normalization,10 it is still possible to obtain unsatisfactory answers. Example 3 F=y4+y+x+1, G=y3-77y+ x2.
(13)
Let 77 = 10-3 and r = 10-6, by the approximate Subresultant Algorithm, we
get 11P511= 0(e) and P4 = (-0.995974x+0.996977-1.00201x2+x3)y-10.x2+0.997984+0.002012x. But the norms of the remainders of F, G w.r.t. P4 are 0(1).
16 V
cond(M) errorl error2 error 3
0.425 7.02 3.41 10- - 1 8.66 10- 1.45__ 10_ --T__ 0.65 28.9 5.16 10- 3.81 10- 0.15
4.3 Hensel Lifting Algorithm Now let us see the main difficulty we encountered when apply Hensel lifting to compute GCD of multivariate polynomials with floating-point coefficients. Use the same notations as in Section 3, it is clear that if G(°) (x) and H(°) (x) have a close common root, the matrix M will be very ill-conditioned and the multivariate Hensel construction will be sensitive." This may be caused by a bad evaluation or both F and G are not squarefree. For Example 1, the four roots of G(x, 0) form two clusters near . The roots of F(x, 0) are also not very well separated. The condition number of the Sylvester matrix formed by C(°) and k°) is about 42. Since the polynomials F and G are of digits 5, it is nature that we obtain an approximate GCD( C(2)) with backward error 10-2 by only performing Hensel lifting. In order to keep the sparsity and error tolerance of the polynomials, we prefer to choose as many ai be zero as possible. However, if such ai leads to bad homomorphism, then we have to choose nonzero evaluation for a;. It affects not only the efficiency but also the stability of the algorithm. As for the following example:
Example 4 F = 0.25 - 0.25x2 - 0.25y2 - 0.9999xy + xy3 + yx3 _ (x2 + y2 - 1)(xy - 0.25) - 10-5xy, (14) G = -0.00001 + y - 1.0000lx + xy2 - yx2 + x3 - ys _ (x2 + y2 - 1)(x - y) - 10-5(x + 1). We choose x as the main variable. Since the leading coefficient of F with respect to x is zero if we evaluate it at y = 0. It is necessary to choose nonzero evaluation for y. For the random values of y belong to [0.5, 1], we can not obtain the meaningful result only by Hensel lifting until Digits = 30; If we choose y in (0, 0.5), then we can get a reasonable result that almost needs no improvement when Digits = 10. The following table compares the performance of the algorithm for Example 4 at two different evaluation points. Here, cond(M) is the condition number of M; errorl, error2 and error3 correspond to II Fj - C1Fi 11, II Gr - CrG1 II and II AP(3) II (lift the two factors of G) respectively. At last we would like to point out that both Modular Algorithm and Hensel Lifting Algorithm may be inefficient when they are used to compute
17
approximate non-monic multivariate GCD. On the contrary, Subresultant Algorithm can deal it very well. Example 5 F = (-I + xyly2y3y4y5y6 )(3 + xyly2y3y4y4y5y6) + 10-5(x + yl + y6), G = (-1 + xyly2y3y4y5y6 )(- 3 + xyly2y3y4y5y6) + 10-5(yi - ys)• (15) Our implementation of Hensel lifting algorithm in Maple fails to obtain the approximate GCD because any evaluation of yz must be chosen as nonzero which seriously destroy the sparsity of the original polynomials. Much worse, normalization of the leading coefficient introduces a nontrivial extra factor. Modular algorithm takes more than 30 seconds to get a reasonable answer. However , it is trivial using Subresultant Algorithm to obtain approximate GCD: -1. + 1.xyiy2y3y4y06 + 0.00001(x + y3 + y6)• (16)
5 Remarks In this paper, we briefly discuss the three possible methods for computing approximate GCD of multivariate polynomials. Many problems remain open. Especially, we still do not have well developed theory for choosing good homomorphisms. Only some strategies are proposed. It will be the main direction for our future research. Since both Modular and Hensel Algorithms are based on the approximate univariate GCD computation, we have to choose an efficient and stable algorithm for computing univariate GCDs. Especially for Hensel lifting method, the computation of cofactor of the GCD is also necessary. In our algorithm, we modify the algorithm in the paper10 by Ochi and others, use the result as an initial guess, and then apply some optimization strategies" to improve it. It is difficult to propose an optimal algorithm for computing GCD of multivariate polynomials with floating-point coefficients and there are also a lot of work to stabilize the algorithms and analyze the errors. Our implementation in Maple has not yet been optimized, therefore we only get some very initial observation from our experiments. References 1. B. Beckermann and G. Labahn, When are two numerical polynomials relatively prime? J. Symb. Comput., 26 (1998), 677-689.
18
2. R.M. Corless, P.M. Gianni, B.M. Trager, and S.M. Watt, The singular value decomposition for polynomial systems, Proc. ISSAC '95, ACM Press, New York, 1995, 195-207. 3. I.Z. Emiris, A. Galligo, and H. Lombaradi, Certified approximate univariate GCDs, J. Pure Appl. Algebra, 117 (1997), 229-251. 4. K.O. Geddes, S.R. Czapor, and G. Labahn, Algorithms for Computer Algebra, Kluwer, Boston, 1992. 5. V. Hribernig and H.J. Stetter, Detection and validation of clusters of polynomial zeros, J. Symb. Comput., 24 (1997), 667-681. 6. Y. Huang, H.J. Stetter, W. Wu, and L.H. Zhi, Pseudofactors of multivariate polynomials, Proc. ISSAC '00, ACM Press, New York, 2000.
7. W. Gautschi, How (un)stable are Vandermonde systems? Lecture Notes in Pure and Applied Mathematics, 124 (1990), 193-210. 8. N. Karmarkar and Y.N. Lakshman, On approximate polynomial greatest common divisors, J. Symb. Comp., 26(6) (1998), 653-666.
9. H.C. Liao and R.J. Fateman, Evaluation of the heuristic polynomial GCD, Proc. ISSAC '95, ACM Press, New York, 1995, 240-247. 10. M. Ochi, M. Noda, and T. Sasaki, Approximate greatest common divisor of multivariate polynomials and its application to ill-conditioned system of algebraic equations, J./Info. Proces., 12 (1991), 292-300. 11. P. Chin, R.M. Corless, and G.F. Corliss, Optimization strategies for approximate GCD problem, Proc. ISSAC '98, ACM Press, New York, 1998, 228-235.
12. W. Press, B. Flannery, S. Teukolsky, and W. Vetterling, Numerical Recipes: The Art of Scientific Computation, Cambridge Univ. Press, Cambridge, 1990. 13. T. Sasaki and M. Noda, Approximate square-free decomposition and root-finding of ill-conditioned algebraic equations, J. Info. Proces., 14 (1989), 159-168. 14. T. Sasaki and S. Yamaguchi, An analysis of cancelation error in multivariate Hensel construction with floating-point number arithmetic, Proc. ISSAC '98, ACM Press, New York, 1998, 1-8. 15. A. Schonhage, Quasi-GCD computations, J. Complexity, 1 (1985), 118137.
SUBRESULTANTS WITH THE BEZOUT MATRIX XIAORONG HOU Chengdu Institute of Computer Applications, Academia Sinica, Chengdu 610041, China • E-mail: xhouOhotmail. com
DONGMING WANG Laboratoire d'Informatique de Paris 6, Universite Pierre et Marie Curie - CNRS, 4, place Jussieu, F-75252 Paris Cedex 05, Prance • E-mail: wang0calfor.lip6.fr Subresultants are defined usually by means of subdeterminants of the Sylvester matrix. This paper gives an explicit and simple representation of the subresultants in terms of subdeterminants of the Bezout matrix and thus provides an alternative definition for subresultants. The representation and the lower dimensionality of the Bezout matrix lead to an effective technique for computing subresultant chains using determinant evaluation. Our preliminary experiments show that this technique is computationally superior to the standard technique based on pseudo-division for certain classes of polynomials.
1 Problem and Result Let F and G be two univariate polynomials of respective degrees m and n in x with m > n > 0, which can be written as
F
= aoxm
+ alxm'-1 + ... +
am,
G = boxn
+ blx'n-1 +
....+
bn.
The following matrix of dimension m + n by m + n / ao a1 ... am f a o a l . a' n
S
ao a1 bo b1 ... bn
am
bo b1 ... bn bo b1 ... bn J
I
m
where the blank spaces are filled with 0, is called the Sylvester matrix and its determinant the well-known Sylvester resultant of F and G with respect to (wrt) x, denoted by res(F, G, x).
Let Sze be the submatrix of S obtained by deleting the last i of the n rows of the F coefficients, the last i of the m rows of the G coefficients, and the 19
20 last 2i + 1 columns, excepting the column m + n - i - j, for 0 < j < i < m. As usual, det(M) denotes the determinant of any square matrix M. The polynomial
Si(x) = det(Sio)xi + det( Sil)xi-i + • • • + det(Sii) is called the ith subresultant of F and G wrt x, for 0 < j < i < n. Obviously, So = res(F, G, x).
If m > n + 1, the definition of the ith subresultant Si (x) of F and G wrt x is extended as follows: Sn,(x)=bo-n-1G,
Si(x)=0, n
Clearly, we have deg(Si, x) < i. Si is said to be defective if deg(Si, x) < i, and regular otherwise. By subdeterminant we mean the determinant of some submatrix. One of the most beautiful results in the theory of subresultants is the subresultant chain theorem discovered by Collins,' Brown and Traub3'4 (see also the paper" by Loos and Chap. 7 of the book" by Mishra). This theorem exhibits the block structure of the subresultant chain and establishes the explicit relation between subresultants defined in terms of subdeterminants of the Sylvester matrix and elements of the polynomial remainder sequence (PRS) formed by means of pseudo-division. It also provides effective algorithms for computing subresultant chains, resultants, and extended greatest common divisors (GCD) by means of pseudo-division. On the other hand, the resultant may also be constructed by using the following alternative method due to Bezoutl and Cayley.5 Let a be a new indeterminate. The determinant A(x, a) = det
F(x) G(x) (F(a) G(a)
is a polynomial in x and a, and is divisible by x - a. The quotient A(x,a) = A.(x, a)/(x - a) has degree m - 1 in a and is symmetric wrt both x and a. As A(-t, a) = 0 for any common zero i of F and G no matter what value a has, all the coefficients Bi(x) of A as a polynomial in a are 0 at x = x. Consider the following m polynomial equations in x: Bo(x) = 0, ... , Bm-1(x) = 0, (1) the maximum degree of the Bi in x is m - 1. Any common zero of F and G is a solution of (1), and the equations in (1) have a common solution if the determinant R of the Bi's coefficient matrix B = (cij ) i
21 The determinant R differs from res(F, G, x) only by a factor ao -". It is obviously easier to evaluate R than det( S) because the matrix B has lower dimension m x m. Bezout-Cayley's formulation of resultants was extended to the bivariate case by Dixon? and to the multivariate case by Kapur and others.1° It has been shown9 that this formulation with the technique of rank submatrix construction performs better than other formulations of resultants. The following example shows the difference in entries of the Sylvester and Bezout matrices. Example 1 (Implicitization of a rational curve). Consider the following plane curve defined parametrically l E II82 : t E Il8, C _ (P( A(tt)) Z^((t)' / where A, B, P, Q E Q[t], with R and Q the fields of real and rational numbers, respectively. We want to find the implicit defining equation C(x, y) = 0 of C. The unique irreducible polynomial C E Q[x, y] may be obtained as the resultant of F* = Px - A and G* = Qy - B wrt t. As a concrete example, let A=t3-1, P=t2-5, B=t4-3, Q=t3-7. Then the Sylvester and the Bezout matrix of F* and G* wrt t are
S* =
-1 x 0 0 0 0 -5x+1 0 0 -5x+1 0 -1 x 0 x -5x+1 0 0 0 0 -1 -1 -5x+1 x 0 0 0 0 0 -1 y 0 -7y+3 0 0 0 -7y+3 0 -1 y 0 0 y 0 0 -7y+3 0 0 -1
-1 x 0 -5x+1 5x-1 -7y+3 B*- y-x 0 -5xy-6y+3 x(7y-3) 0 5x-1 5x-l -5xy-6y+3 x(7y-3) 0 respectively. Evaluation of the determinant of S* or B* gives the resultant of F* and G* wrt t, an irreducible polynomial consisting of 19 terms in x and y. There are two natural questions about relations between the matrices S and B. The first is whether the entries of B can be expressed in terms of subdeterminants of S, and if so, give the explicit expression. This question has been answered positively by Gelfand and others.8 In concrete terms, let I' = i - j, [p, 9] = aPbq - agbp
22
for any indices i, j and p, q, and when 1
bj-i Cij = min i-1, j-1)
when m - n < i < m.
[k, 1 +k] k =0
Then, under a possible permutation of the rows and columns of B, we have Cij = aocij for 1 < i < m - n, and cij = cij for i > m - n. Therefore, det(B) differs from the determinant of the matrix C12 C22
B = (Cij)1
by an extraneous factor ao -". We call B the BJzout matrix of F and G wrt X. The second question is whether the subresultants can be defined by means of subdeterminants of B or B, and if so, find the explicit representation. The authors are not aware of any investigation about this question. This paper gives a positive answer to the question and provides an explicit and simple representation of the subresultants in terms of subdeterminants of B. To state the result precisely, let Bij denote the submatrix of B obtained by deleting the last i rows and the last i + 1 columns, excepting the column m - i +j, for 0 < j
Cil Ci2
.. Ci(i-1) Ci(i+j)
We have the following Main Theorem The polynomial Bk(x) = det(Bk0)xk + det(Bkl)xk-1 + ... + det(Bkk) (
is equal to (-1)
32
k-1) +m-
nSk( x), for 0 < k < n.
The proof of this theorem will be given in the next section. One of its direct consequences is an alternative definition of subresultants by means of subdeterminants of the Bezout matrix. The practical significance of the result lies in a simple and probably more effective technique for computing
23 subresultants using determinant evaluation. We shall present experimental comparisons for the computation of subresultants using pseudo-division, the Sylvester matrix, and the Bezout matrix in the last section. The motivation of the present work comes from the second author's search for more efficient algorithms to compute regular subresultants, which are the basis of a general method for decomposing multivariate polynomial systems into triangular, regular, or simple systems. 11,14 Our new technique of computing subresultants using the Bezout matrix is being incorporated into this method. 2 Proof of the Main Theorem First consider the special case m = n. For 1 < k < n and 0 < t < n - k, let S(n-k)t =
IT,, T121 T21 T22 J '
B ( n-k)t = (ciji c2( k+t))1
where it is assumed that at = bi = 0 when 1 < 0 or 1 > n, and /ao a1 ...... ak_1 I ao at ' ' ' ak-2 I
Tll = (aj- i)1
a2k -2 a2k-l+t a2k-3 a2k-2+t
T12 = (alj+k, a2k_i+t)1
a1 a2 ... ak-1 ak+t T21 = (bj-i ) 1
T22 = (bjj+k,b2k - i+t)1
We are now in the position to prove that
(- 1) "'2 1 det ( S(n-k)t) = det(B ( n_k)t),
1 < k < n, 0 < t < n - k.
Since T11 ' T2, =
(E1=
_ (X:j
1
ai -ibj -l I = I ^t_i at-ibj-t)
k i aj_vb,_i) = (I:P =l ap-ibj- n
we see that det(S(n_k)t) = det(Til ' T22 - T21 ' T12).
= T21 ' Tll
24
Let 0= (6k _j)
bq= f1 ifp=4,
P 0 otherwise; 1 J 1
We have k
k bt-ial.i+k+tdk t=1
D = (dij)1
k
/
1=1
C
ck
k
= I I b i \9 1 \
=O [l-i,li+k+tb^]
[k
+k
+ L,L bk i [l -q, I 1 =1 9 =1
q,li+k+t 8^] 1=1
k
tb^ ] =
C
E[l _
Ik
+1,
I
+k
+ tbjk ]
t-1
i-1
[p,I
+p +tb^]
i
P=- (k-i)
For i < j, it is obvious that min(i-1, j-1) dij
=
[p, I 1 +p
P =O
+ tb; ].
Fori> j, since j
= 2 E[p,
I1
P=j
+p]
+p]
E[p, I i+P] + E [p, I 1
P=j
P=i-1
+ E[l +9, q] = 2 E([p, li+p ] +
9=j
[I1+p, p]) = 0,
P=j
we see that min(i-1, j-1)
D = E [p, P=O
I1+p + tbjk
B(n-k)t,
i.e., k k-1
det(D) = (-1) det(S(n_k)t) = det(B(n-k)t), 1 < k < n, 0 < t < n - k.
25
Now we come to the case m > n > 0. Let G'(x) = boxm + blxm-1 + ... + b' be of virtual degree m, where b$=0, 0
bi=bi_m+n, m-n
Denote the subresultants of F and G' wrt x - in terms of subdeterminants of the Sylvester matrix and of the Bezout matrix B' of F and G' wrt x -by Sk' (x) = det(Sko)xk + det(Skl)xk-1 + + det(Skk), B' (x) = det(Bko)xk + det(B',)xk-l + • • • + det(Bkk), respectively. Clearly, we have i B = (ai+p - 1-(m-n) a Siq)l
det(Skt) = ao -n det(Skt), det(Bkt) = (-ao)m-n det(Bkt) for 0 < k < n and 0 < t < k. Therefore, +m -n
+m-n
det(Skt) =
' am-n det (lSkt)^ 0
= det(Bkt)/(-ao)m-n = det(Bkt)
for 0 < k < n and 0 < t < k. This completes the proof of our main theorem. 3 Experiments In this section we present some preliminary experiments with several examples for the techniques of computing subresultant chains using pseudo-division,11,12 the Sylvester matrix, and the Bezout matrix. One of our purposes is to figure out for which classes of polynomials the technique using the Bezout matrix performs better. It is obvious that the two matrix-based techniques would not work well if many of the subresultants in the chain are defective. This case does occur quite often for problems with symmetry or geometric background. The experiments reported in this section were made with our implementation of the three techniques in Maple V.5 running on an i686 under Linux 2.0.36. The timings are given in CPU seconds and include the time for garbage collection. The cases marked with *** were rejected by Maple for "object too large," and for other incomplete cases computation was interrupted manually after certain time limit. Example 2 Let us start with the following class of polynomials m
F = 1 ` aixi,
m-1
G = E imxi.
i=Jo :=o
26
With indeterminate ai, we obtained the following timings for computing the subresultants Sm_2i ... , S° of F and G wrt x: m Bezout matrix Sylvester matrix
4 .08 .71
5 .19 .39
6 .57 11.41
7 2.64 97.36
Pseudo-division
.03
.57
85.09
***
8 56.98 1532.29 ***
They indicate that the technique using the Bezout matrix may be much better than that using pseudo-division for polynomials of small degree with indeterminate coefficients. Taking ai = i for all i, we have:
m Bezout matrix Sylvester matrix Pseudo-division
32 1477.79 2572.40 15.62
33 1927.05 3279.66 19.03
34 2503.97 4110.17 22.99
35 3221.79 5172.33 27.52
36 4098.43 6505.03 33.30
These timings show clearly that the matrix-based techniques are much worse for polynomials of high degree with integer coefficients.
Example 3 The following three polynomials Pi = u(b+c)2 -cb(c+b-a) (c+b+a), P2 = v (c - b)2 - cb (a + b - c) (c - b+ a), P3 = w (c - a)2 - ac(a + b - c) (c + b - a) arise from the problem of deriving the side-bisector relation for an arbitrary triangle, which was investigated by X.-S. Gao and D.-K. Wang and reconsidered by Kapur and others.1° Let R1 = res(Pi, P2, a)/c,
R2 = res(Pi, P3, a)/b;
R3 = res(Pi, P3, c), R4 = res(P2, P3, c)• The degree of R1 in b is 7, and R2, R3, R4 have the same degree 8 in b. The subresultant chain of R2 and R1 wrt b may be computed in 669.5 and 1392.7 s, respectively, with the Bezout and the Sylvester matrix, whereas the computation using pseudo-division cannot be completed within 6 500 s. The following table shows the times for the subresultants Si of R3 and R4 wrt b.
Si
S7
S6
S5
S4
Bezout matrix Sylvester matrix
.22 .04
.08 .16
1.19 3.30
16.47 39.84
Pseudo-division
.03
.57
85.09
***
Si Bezout matrix Sylvester matrix
S3 156.68 453.08
S2 1075.86 3868.08
Si 4460.93 > 6500
So > 6500 > 6500
27 The computation of S7 (and S11 in Example 4) with the Bezout matrix takes more time because the cost of forming the Bezout matrix is added there. The resultant So as the determinant of the Bezout and the Sylvester matrix can be computed in about 3 890 and 8 750 s, respectively, on a more powerful machine. Example 4 Refer to the web page http://calfor.lip6.fr/-wang/PEAA/ LPS/Welcome.html for the two polynomials w9 and vii consisting of 458 and 539 terms and of total degrees 26 and 28, respectively, in four variables a20, all, a02, a03 with large integer coefficients. These polynomials occur in the elimination process of solving a large polynomial system derived from certain differential equations. Computing the subresultants Si of vii and w9 wrt all, we obtain the following result:
Si Bezout matrix Sylvester matrix Pseudo-division
Su 19.53 .81 .69
Sio 12.06 15.75 61.72
S9 408.50 807.32 2625.10
S7 S8 3328.24 > 6500 6880.41 > 6500 ***
The computing time for S7 on a more powerful machine is about 4 560 s using the Bezout matrix, and 10 850 s using the Sylvester matrix. Example 5 The figure on the Time + 6 500 right-hand side depicts the times of computing subresultants using the three techniques for randomly generated n-variate polynomials wrt x, one of the variables. The average degrees of the polynomials in x are 22.5, 9.5, and 4.6 respectively for n = 1 , 2 , 3, the number of terms is 6 I Sylvester matrix 1 RA-'A. mMr,v for n = 1, 35 for n = 2, and 30 or 36 for n = 3, and the length of the integer coefficients ranges I ^^ n from 7 to 10. It is clear that our technique for computing subresultant chains using the Bezout matrix is computationally better than that using the Sylvester matrix. Our observation shows that, in general, the former is also better than the standard technique based on pseudo-division for polynomials whose coefficients are polynomials in many variables. We continue looking for evidences to support this observation.
28
Added in September 2000: It is known in the (classical and recent) literature that certain subdeterminants of the Bezout matrix are the principal subresultant coefficients. While finishing the final version of this paper, the second author learned from Bernard Mourrain of Theorem 3.1 in the paper2 by Bikker and Uteshev, to which our main theorem is related. Acknowledgments This work has been supported by the Chinese National 973 Project NKBRSF G19980306. References 1. Bezout, E. (1779): Theorie generale des equations algebriques. thesis, Pierres, Paris.
Ph.D
2. Bikker, P., Uteshev, A. Yu. (1999): On the Bezout construction of the resultant. J. Symb. Comput. 28: 45-88. 3. Brown, W. S. (1978): The subresultant p.r.s. algorithm. ACM Trans. Math. Softw. 4: 237-249.
4. Brown, W. S., Traub, J. F. (1971): On Euclid's algorithm and the theory of subresultants. J. ACM 18: 505-514. 5. Cayley, A. (1865): On the theory of elimination. Cambridge Dublin Math. J. III: 210-270. 6. Collins, G. E. (1967): Subresultants and reduced polynomial remainder sequences. J. ACM 14: 128-142. 7. Dixon, A. L. (1908): The eliminant of three quantics in two independent variables. Proc. London Math. Soc. 6: 468-478. 8. Gelfand, I.M., Kapranov, M.M., Zelevinsky, A.V. (1994): Discriminants, resultants, and multidimensional determinants. Birkhauser, Basel. 9. Kapur, D., Saxena, T. (1995): Comparison of various multivariate resultant formulations. In: Levelt, A. H. M. (ed.): Proc. ISSAC '95, ACM Press, New York, pp. 187-194. 10. Kapur, D., Saxena, T., Yang, L. (1994): Algebraic and geometric reasoning using Dixon resultants. In: Von zur Gathen, J., Giesbrecht, M. (eds.): Proc. ISSAC '94, ACM Press, Baltimore, pp. 99-107. 11. Loos, R. (1983): Generalized polynomial remainder sequences. In: Buchberger, B., Collins, G.E., Loos, R. (eds.): Computer algebra: Symbolic and algebraic computation. Springer, Wien, pp. 115-137. 12. Mishra, B. (1993): Algorithmic algebra. Springer, New York.
13. Wang, D. (1998): Decomposing polynomial systems into simple systems. J. Symb. Comput. 25: 295-314. 14. Wang, D. (2000): Computing triangular systems and regular systems. J. Symb. Comput. 30: 221-236.
PARALLEL COSET ENUMERATION USING THREADS GEORGE HAVAS AND COLIN RAMSAY Centre for Discrete Mathematics and Computing, School of Computer Science and Electrical Engineering, The University of Queensland, Queensland 4 072, Australia E-mail: { havas, cram} mcsee . uq. edu. au Coset enumeration is one of the basic tools for investigating finitely presented groups . Many enumerations require significant resources , in terms of CPU time or memory space . We develop a fully functional parallel coset enumeration procedure and we discuss some of the issues involved in such parallelisation using the POSIX threads library. Our results can equally well be applied to any master-slave parallel activity exhibiting a medium level of granularity.
1 Introduction Coset enumeration is long established as a technique for the investigation of finitely presented groups. It takes a finitely presented group and a finitely presented subgroup as input, and attempts to find the index of the subgroup in the whole group. Various detailed accounts2,4,7,9,11 of the techniques used in computer coset enumeration are available. Coset enumeration builds a table giving the action of each group generator and inverse on each coset. New cosets are defined to fill gaps in the coset table or in the relator tables, and definitions are tested against the relators to find any coincidences (two distinct cosets are equal) or deductions (coset table entry is forced) consequent on them. For many enumerations, coset enumeration is straightforward but takes significant time. Thus, to keep the number of cosets under control, we may fully explore the consequences of all definitions immediately, and then most of the processing time is spent scanning each coset table entry at all of the essentially different positions in each relator. Much of this time is fruitless, in the sense that most such scans yield neither a deduction nor a coincidence. Previous work3 has established that it is possible to process deductions in parallel, and our parallel enumerator, PACE, was developed specifically for those enumerations where the bottleneck is deduction processing. PACE10 was developed from the enumerator ACES. A shared memory architecture was used rather than distributed memory since the hard coset enumerations for which a parallel enumerator is desirable need hundreds of megabytes of memory in a coset table. To duplicate the coset table on each
29
30 processor would require inordinate amounts of memory and no effective way of distributing it is known. Our aim was to provide a fully functional parallel coset enumerator including all modern capabilities. In particular, we wanted to allow a complete range of enumeration strategies, as provided in ACE, in distinction to a purely Felsch-type enumerator3. We also wished to more carefully study the behaviour of parallel coset enumeration, taking the cost of issues such as synchronisation into account. The obvious motivation for parallelising coset enumeration is to decrease the running time, and so produce results more quickly. Another rationale for parallelisation is to note that in multiprocessor machines not only have the available processors to be shared between the competing processes, but the available memory must also be shared. Many of the enumerations in which we are interested require large amounts of memory. Parallelising such enumerations allows us to reduce their time-memory cost, and their impact on other users of the system. Even if we cannot achieve a speed-up which is linear in the number of processors, a request to use 3/4 of the machine's memory and twenty of its CPUs overnight is more likely to be favourably received than a request to use that much memory and one CPU for four days. For maximum generality, we implemented concurrency using the POSIX pthread library'. Parallelising ACE is straightforward, with a simple masterslave paradigm sufficing. The master is responsible for making all table entries and for processing deductions and coincidences. The master makes and stacks table entries, but does not otherwise process them. When sufficient table entries are stacked, they are divided amongst the available slaves, and the slaves perform the required scans. The scans which yield coincidences or deductions are stacked and passed back to the master. The master reruns these scans, processing the coincidences and deductions, and then returns to making table entries. PACE runs in a multi-threaded symmetric multiprocessor environment, so there is only a single copy of all the enumerator's data structures. In particular, the coset table (which can be very large) is shared by the master and all the slaves. Only the master changes the coset table, with a slave's accesses to the table being read-only. Since deductions cause only localised table changes (unlike coincidences, which can change arbitrarily large portions of the table), we could allow the slaves to process them. However, we would still have to record them and pass them back to the master to detect and resolve conflicting deductions (i.e., coincidences). So this approach is unlikely to be faster, and is considerably more complicated. In all of the tests discussed here, we used the native compiler (cc) of the system, and compiled the code with level 2 optimisation. Since maximum code
31 portability was one of our aims we restricted ourselves, insofar as was possible, to ANSI C and the POSIX routines, and made no use of any system-specific C extensions or thread handling routines. The metrics we use in our tests are standard: T, the total number of cosets defined during an enumeration; M, the maximum number of cosets active at any time during an enumeration; the elapsed, or wall, time for an enumeration; and the aggregated CPU time for all threads. 2 Synchronisation , Scheduling and Statistics Although our parallelisation strategy is straightforward, it is still necessary to code the master-slave handovers using the POSIX synchronisation primitives to ensure correct behaviour. As we will see, given the granularity of our parallelisation and the cost of the synchronisation primitives, this code has a major effect on the performance of PACE. Given the variation between platforms, there does not seem to be any general best method, so a choice of methods is provided. The easiest method is simply to create new threads as required at the master-slave handovers, and to wait until they have all terminated before resuming the master. This method is conceptually appealing and, given that the overheads of threads are much lower than those of processes, need not be uncompetitive with the other methods. A second method is to use the traditional synchronisation primitive of semaphores, which allows control to be passed back and forth between the master and the slaves. A third method is to use the pthread mutexes (mutual exclusion locks) to simulate a symmetric barrier, at which each thread must wait until all are ready to proceed. Note that in the second and third methods, inactive threads are blocked waiting for an event. So, in all three methods, the concurrency switches regularly between one (the master is active and the slaves blocked or not present) and n (the master is blocked and the slaves active). In practice, we can and do use the master as one of the slaves, instead of blocking it. This concurrency variation can cause problems with some schedulers, which use the (average) concurrency to allocate an appropriate number of processors. Our final synchronisation method keeps all threads continuously busy, and the concurrency fixed at n, by spin-locking. That is, waiting threads sit in tight loops monitoring the value of a memory flag. Each flag is protected by a mutex, and controls whether the thread is active (flag set by master) or waiting (flag cleared by slave). Although profligate, this method is potentially very fast, provided enough processors are available. However, its performance will degrade rapidly if not enough processors are allocated, unlike the first
32 three methods, which degrade gracefully. The POSIX pthread standard does not mandate how threads are to be implemented , and it does not specify the mapping between threads and processes /processors. These may be done at the kernel or user level, or at both levels . This makes scheduling and priority control very system dependent, and means that considerable fine-tuning may be necessary for some applications. In our case we require that threads actually run in parallel on the specified number of processors. To ensure this on all systems, we set the scheduling scope to SYSTEM, instead of its default of PROCESS . Other than this, we use the defaults for all the thread control parameters. 3 Modelling the Running Time
The traditional model for master-slave parallel applications is to divide the processing time into a serial portion (SER) and a parallel portion (PAR), and to assume that the elapsed time (WALL) scales in the obvious manner with the number of CPUs (n). This yields the simple model: WALL = SER + PAR/n. It yields good results3 if both the granularity of the parallelisation and the synchronisation times are such that the master-slave synchronisation overheads can be ignored. It also suffices if this overhead is independent of n or if it varies as n but can be parallelised; in these cases, it simply increases SER or PAR. In PACE the parallelism is of medium granularity, and the synchronisation overhead cannot be ignored. In particular, the overhead varies with the number of threads, and part of it must be serialised in the master. We model this by assuming that each master-slave synchronisation takes SYNC time over the course of the enumeration, and that there are n - 1 synchronisations per master-slave cycle (since the master can also act as one of the n slaves). This yields the model: WALL = SER + (n - 1)SYNC + PAR/n. Note how WALL no longer tends to SER as n is increased. Instead, it is now unbounded as n increases; there may or may not be a minimum for some intermediate value of n, depending on the relative sizes of SYNC and PAR. Note that the values of SER, SYNC and PAR are determined by the given presentation, the chosen enumeration strategy, the platform being used, and the choice of synchronisation primitive. We have no direct control over their values, and predicting (or measuring) them accurately is difficult. This model applies for a fixed number of master-slave cycles. However, in PACE the number of cycles is implicitly determined by a parallelisation parameter (p), which controls the number of table entries which are batched by the master before being processed by the slaves (that is, it sets the work per cycle). As p is increased, the number of master-slave cycles over the course
33
of the enumeration drops proportionally. To model this, the second term in the above model should be divided by p. However, as p is increased we are deferring the processing of more and more data, for longer and longer. This causes the number of cosets T to change, altering WALL. (Usually, but not necessarily, T will increase.) If we assume that the amount of work performed is proportional to T, then we can model the effect of T's growth with p by multiplying the right hand side of our model by some function of p, say g(p). This yields our final model: WALL = g(p) (SER + (n - 1)SYNC/p + PAR/n). There is no a priori way to decide on the form of g(p). It varies widely, depending on the presentation and the enumeration stategy. Small values of p often yield only modest growth in T, while larger values can increase T dramatically. Now the derivation of our model is a trifle ad hoc, and we do not expect it to be particularly accurate quantitatively, especially for extreme values of n or p. However, extensive testing of PACE shows that it is qualitatively valid, and does capture the essential features of its behaviour. In particular, if one of n or p is fixed and the other varied from a low to a high value, then typically the running time first decreases and then increases again, displaying a definite minimum. 4 A Small Example The example used by Cooperman and Havas3 from a paper by Vaughan-Lee12 is too easy, but another group from the same paper is instructive. As part of his proof that 2-generator Engel-4 groups of exponent 5 are finite, VaughanLee considers a group J on two generators, a and b. The subgroup (a, ab) has index 56 = 15625 in J, and a coset enumeration is used to establish this as part of the proof. This presentation10 for J has 51 relators and, after expanding and reducing the Engel words, has a total length of 1349. Litt8 made an extensive investigation of this enumeration. To illustrate the effects of the synchronisation method, we ran tests on a two-processor SUN SPARCstation-20 system for n = 1 (no synchronisation overheads), n = 2 (system fully loaded), and n = 3 (system overloaded). Detailed timings are recorded elsewhere'° The results for n = 1 are essentially the same, as we would expect, and give the actual processing time required to perform the enumeration. For each of the first three methods, an about 5% rise in CPU time with n reflects the impact of the synchronisation primitives. With n = 2, we achieve a speed-up of around x 1.7 (based on WALL times), while for the overloaded case of n = 3, we achieve a speed-up of around x 1.35. For the mutex controlled spinning method, the jump in CPU time for n = 2 is much more pronounced, about
34 15%, while the WALL time is roughly half the CPU time; as we would expect in both cases. This gives similar speed-up to the other three methods. The mutex results for n = 3 are very variable, with catastrophic degradation: CPU time blow out by a factor of three or more and WALL time up by a factor of forty. The choice of mutex spinning as synchronisation method is aggressive, in the sense that the runs are potentially very fast, but the performance will degrade rapidly as the system load increases. We also tested10 our model for the running time, on a seven-processor SUN Ultra-Enterprise system, for a range of p and n values: p = 2$ for i from 0 to 11; n from 1 to 5. The results confirmed the behaviour discussed at the end of Section 3. So our model is valid, at least qualitatively, for enumerations in J. If we divide T by the running time for n = 1 (no slave threads), then all the values obtained are about the same. So our assumption that the amount of work performed is proportional to T is reasonable. 5 A Hard Enumeration Although suitable as a small test case, J is not representative of the large enumerations for which PACE is intended. One of the first real enumerations to which PACE was applied was the Lyons simple group, Ly. This group has order 51765179004000000, and a presentation for it is described by Havas and Sims6. From this, a presentation on the generator set {a, b, c, d, e, z}, suitable for coset enumeration, can be produced. This six-generator presentation has 53 relators, of total length 887, and an index 8835156 coset enumeration of G2 (5) is the hard part of a proofs. For our experiments with this presentation of Ly, we used an SGI Origin 2000 machine; the 64 CPUs were MIPS R10000 chips, clocked at 195 MHz, and 16 GB of physical memory was available, while the OS was IRIX64 6.5. Using Felsch-type methods with ACE, the enumeration completed in 13 hours 41 minutes, with a maximum coset count equal to the index and a total coset count of 11849288. As e is the only involution among the generators, the completed coset table requires 371 MB of memory. Ly is mentioned3 as a possible target for parallelisation and this has been done6 and an approximately linear speed-up achieved. Prior to testing PACE with the enumeration of G2 (5) in Ly, we pruned the presentation. It is easy to eliminate either e or d from the initial presentation, but this greatly increases its length. An alternative approach is to note that some of the relators which contain z (that is, which are not responsible for defining G2 (5)) are redundant. A simple greedy algorithm can be used to eliminate relators which are not formally required and whose removal does not render the coset enumeration substantially more difficult.
35
One such reduction yields a presentation10 which has 49 relators and total length 692. Using ACE, this enumeration takes 8 hours 4 minutes. The maximum number of cosets is unchanged, while the total increases slightly to 11922259. Since the running time for a large enumeration such as this is dominated by the time to scan each coset table entry at each essentially different position in the relators, and since the coset table is initially empty and fills up as the enumeration progresses, then we would expect that the running time is quadratic in the total length of the presentation. Our results support this heuristic argument, with (692/887)2 = 0.61 (i.e., ratio of original to reduced length, squared) and 484/821 = 0.59 (i.e., ratio of CPU times in minutes). So even a modest reduction in presentation length can be significant. Before running PACE with more than one thread, two test runs were done to assess the parallelisation potential. The first of these used a test mode which is essentially the same as ACE, except that deductions are handled via a function, instead of as inline code. This mode also gathers detailed statistics regarding deduction handling. A batch size of 1 (that is, p = 1) was used, so the enumeration was Felsch-type without threads. In this run, the maximum and total counts were unchanged, but the running time increased by about 5 minutes compared to ACE. A total of 56099439 deductions were stacked, and 56038295 survived to be processed (the remainder referenced cosets which had become redundant). These surviving deductions generated 6162825103 scans, which yielded 38178487 deductions and 1775940 primary coincidences. So only 0.65 % of the scans are actually necessary. Furthermore, all but approximately 5 minutes of the running time was spent processing deductions. Our second test run was a `parallel' run with only one thread (that is, n = 1 and p = 1); since the master also acts as one of the slaves, there are no thread management overheads. This allows the effect of deferring the processing of the necessary deductions to be measured. The maximum and total counts were again unchanged, but the running time increased further, to 8 hours 18 minutes. A total of 56100949 deductions were stacked, and the slave stacked 166598619 scans as necessary. Of these, 166555503 survived and were rerun by the master, generating 38179085 deductions and 1775438 primary coincidences. Note how the number of scans rerun by the master is more than four times those necessary. This implies that the deferral of processing the deductions and primary coincidences causes them to be detected and stacked multiple times. Despite this, the number of scans done by the master, which represent non-parallelisable work, is only 2.7 % of those of the first test. When running PACE with more than one thread we chose to illustrate the behaviour observed on a real system, instead of the more usual, but highly artificial, situation of a very lightly loaded system. The data in Table 1 was
36 gathered from a series of runs with n = 16 and with synchronisation via mutex spinning. Recall that p is the deduction batching factor, while M and T are the maximum and total number of cosets defined. Note how M increases slightly above the index, due to the deferral of deduction processing, but that the increase is always less than p, as we would expect. The value of T increases more strongly with p, but does not exhibit any serious blow-out. WALL and CPU are the elapsed time and aggregated CPU time, in seconds, while the last column gives the ratio of CPU to WALL. The C/W figure could be regarded as a quality measure for the run, since it indicates its average parallelism, as opposed to its concurrency (fixed at 16).
Table 1. Cosets and times for our hard enumeration, Ly
p
16
8835170
12325413
32
8835184
12530641
64
8835211
12824890
128
8835253
13175662
256
8835375
13518860
512
8835423
13828854
1024
8835774
14091169
2048
8836557
14298984
4096
8839151
14476620
8192
8842913
14645976
WALL
CP U
40578.38
601895-32 781914.67 339870.83 363262.50 279760.92 305294.59 168930.21 184755.18 139714.90 188774.28 125297.98 154770.21 120709.02 130594.01 121675.08 130901.05 114611.88 123945.94 118803.84 119312.80
54644.80 22919.57 24420.89 18783.72 22920.13 11515.14 12419.61 9332.24 13257.53 8269.79 10399.50 7892.05 8707.73 7859.57 8769.50 7481.54 8209.20 7537.96 7863.96
14.83
14.31 14.83 14.88 14.89 13.32 14.67 14.88 14.97 14.23 15.15 14.88 15.30 15.00 15.48 14.93 15.32 15.09 15.76 15.17
Several runs for each value of p were made, and Table 1 records the details of the best and worst WALL times seen. We made no attempt to undertake all our runs when the machine was lightly loaded. In fact, given the not insignificant time and memory requirements of an enumeration in Ly, this would not have been possible without making special arrangements. Over the course of our runs, the machine loading varied unpredictably, from essentially zero (just after a reboot) to overloaded (in terms of CPUs or memory, or
37 both). The batch system scheduler suspends and resumes jobs, and swaps them in and out of memory, as the system loadings vary, and this can grossly distort a run's timings. Given the sensitivity of WALL to the parallelism, and the usual timing variations encountered in multiuser systems, the difference between our best and worst results can be quite large. Consequently, it is difficult to find the best value of p, and to verify our model, without performing a large number of tests. 6 Conclusions We have developed a fully functional parallel coset enumeration procedure, PACE, for the multi-threaded symmetric multiprocessor environment. Our implementation is reasonably portable, based on ANSI C and POSIX threads. It gives appropriate speed-up, so that difficult enumerations can be completed much faster than serially. Our results demonstrate that, for master-slave parallelisations of medium granularity, the cost of the synchronisation primitives should not be ignored, even for small numbers of processors. Simply increasing the concurrency and expecting (the parallel proportion of) the running time to decrease is naive, and is often counterproductive. It is possible to achieve a significant speed-up, but this can be well below that implied by the number of processors employed, and it is critically dependent upon the control parameters used. Our model of PACE's running time and our empirical experience suggest that, all other things being equal, there is a combination of n (number of CPUs) and p (parallelisation parameter) which yields minimum running time. However, all other things are usually not equal. Variations in system loading interact strongly with the enumeration parameters and the POSIX primitives used, so the repeatability of results is low. And, of course, each presentation must be considered individually. So it is questionable how relevant it is to know how best to do a particular enumeration. It is satisfying to have this information but, in the absence of the ability to use this data to accurately predict how best to undertake other enumerations on other platforms, its value is moot. However, it does provide some guidance on how best to proceed when presented with a new enumeration. Acknowledgments
The research work of both authors was supported by the Australian Research Council. We are grateful to the High Performance Computing Unit at the
38 University of Queensland for access to the SGI Origin 2000, and also to the Department of Mathematics at the University of Auckland for access to the SUN Ultra-Enterprise.
References 1. David R. Butenhof. Programming with POSIX Threads. Addison-Wesley, 1997. 2. John J. Cannon, Lucien A. Dimino, George Havas, and Jane M. Watson. Implementation and analysis of the Todd-Coxeter algorithm. Mathematics of Computation, 27(123):463-490, July 1973. 3. Gene Cooperman and George Havas. Practical parallel coset enumeration. In G. Cooperman, G. Michler, and H. Vinck, editors, Workshop on High Performance Computing and Gigabit Local Area Networks, Lecture Notes in Control and Information Sciences, 226, pages 15-27. SpringerVerlag, 1997. 4. George Havas. Coset enumeration strategies. In Stephen M. Watt, editor, ISSAC'91 (Proceedings of the 1991 International Symposium on Symbolic and Algebraic Computation), pages 191-199. ACM Press, 1991. 5. George Havas and Colin Ramsay. Coset enumeration: ACE version 3, 1999. Available as http: // www. csee. uq. edu. au/" havas/ ace3. tar. gz. 6. George Havas and Charles C. Sims. A presentation for the Lyons simple group. In P. Drixler, G.O. Michler, and C.M. Ringel, editors, Computational Methods for Representations of Groups and Algebras, Progress in Mathematics, 173, pages 241-249. Birkhauser, 1999. 7. John Leech. Coset enumeration. In Michael D. Atkinson, editor, Computational Group Theory, pages 3-18. Academic Press, 1984. 8. Tom Litt. Coset enumeration. MSc thesis, Mathematical Institute, University of Oxford, 1999. 9. J. Neubiiser. An elementary introduction to coset-table methods in computational group theory. In C.M. Campbell and E.F. Robertson, editors, Groups - St. Andrews 1981, London Mathematical Society Lecture Note Series 71, pages 1-45. Cambridge University Press, 1982. 10. Colin Ramsay. PACE 1.000: Parallel ACE. Technical Report 17, Centre for Discrete Mathematics and Computing, The University of Queensland, 2000. 11. Charles C. Sims. Computation with Finitely Presented Groups. Cambridge University Press, 1994. 12. Michael Vaughan-Lee. Engel-4 groups of exponent 5. Proceedings of the London Mathematical Society (3), 74:306-334, 1997.
GENERATING POWER SERIES OF COLOURED POLYLOGARITHM FUNCTIONS AND DRINFEL'D ASSOCIATOR M. BIGOTTE, G. JACOB, N. E. OUSSOUS, AND M. PETITOT LIFL, Bat. M3-Informatique , University of Lille 1, 59655 Villeneuve d'Ascq Cedex, France E-mail: { bigotte, jacob, oussous, petitot} Olifl. fr In this paper, we use combinatorial tools as Lyndon words and noncommutative generating power series to prove an important result "structure theorem", which generalizes for the coloured polylogarithms a result obtained for polylogarithms. This theorem implies that the shuffle relations are the only relations between coloured polylogarithms. To prove this theorem, we compute the coloured polylogarithm monodromy. These computations are done with a Maple package.
1 Introduction The polylogarithm functions arise in number theory, in physics (Feynmann diagrams), in knots theory and in the differential equations. To study these functions, authors use mathematical tools (algebraic geometry, homotopy, invariant theory, ... ), combinatorial tools (quasi-symmetric functions, Hecke algebras, generating power series, Hopf algebras, ... ) or computation tools (numerical computation, 2,3,4 exact and symbolic computation 1,9,10) Some authors are interested in polylogarithms with roots of unity8 (called coloured polylogarithms) which can give a lot of informations on differential equation structure. The Riemann sum is defined for all s E N, by the series ((s) _ °_ 1/n9 which converges for s > 2. A first extension consists to substitute the integer s by a multi-index s = (sl, s2, ... , sk) of strictly positive integers. This extension called Euler-Zagier sums or Multiple Zeta Values (MZV) was already given by Euler7 and is defined by: ((81,S21 ... , ak) _
81 82 1 sk nl>n2> ...>nk>0 n1 n2 nk
(1)
It converges for sl > 2. An extension of MZV, called coloured MZV, is defined by adjunction of roots of unity.2,3,4,8 It is defined for any multi-index s = (Si, s2i ... , sk ) and any k-uple or = (ol, a2, ... , Q k) of roots of unity by: nl n2 nk O'1 0'2 .. Uk (8f Q)
81828k ... nk
n2 nl>n2> ...> nk>O ^1
39
(
2)
40
The pair (s; o) is called coloured multi-index of length k and of weight sl + + S.
We have previously presented the exact computation of the table of the relations between the coloured MZV' (up to weight 8 with a Maple package), this computation being achieved by means of the algebra of the coloured polylogarithm functions. We compute here the monodromy of the coloured polylogarithms around the roots of unity (the case without roots of unity was studied10). These results are obtained once for all by computing the monodromy of their noncommutative generating power series L(z). We have implemented a Maple package which computes their monodromies up to fixed weight. This package uses another Maple package of non commutative algebra (ncalg) developped by our team.
2 Coloured Polylogarithm Functions The polylogarithm function Li8(z), is defined by the power series expansion:12 zn
Li8(z ) _ 8, n>0 n
IzI
(3)
< 1 and s>1
This definition can be generalized to a multi-index a = (Si, s2i ... , sk) as follows: zn1
Li, (z) =
82 ...8k n181 n2 nk nl >n2>.. .>nk>0
Izl
< 1
(4)
Finally, by adjunction of roots of unity, 1,2,3,4,8,11 we obtain the coloured polylogarithm functions defined as follows: zn1 81Q82
L 1,;Q(z) _
...QBk ,
1
nl>n2>.. .>nk>0
IzI < 1 (5)
n1 n2 ... nk
For a given integer m > 0, let On = for, .m = 1} be the group of mth roots of unity. LetO={0}UOnandX,n={x., pEO,s}andX={xi, iEO}. We denote by X* the set of words over X. The empty word is denoted by E. The length of the word w E X* is denoted by IwI. The noncommutative polynomials (resp. power series) on X over Q are the finite (resp. formal infinite) Q.linear combinations of words. The set of polynomials (resp. power series) is denoted by Q(X) (resp. Q((X )) ). Endowed with the Cauchy product Q(X) (resp. Q((X))) is a non commutative algebra. And endowed with the
41
shuffle product, a Q(X) (resp. Q((X))) is a commutative algebra denoted by ShQ(X) (resp. ShQ((X))). Each coloured multi-index (s; a) is associated with the word w E X*X„a defined as follows: j W = XOi-1XTlxo2-lxr2 ... xpk-'xrk
with T j = [J Qi,
1, 2, ... , k (6)
i=1
Example (s; o) _ ((2,3); (-1, -1)) --+ w = xox_lxoxl. The polylogarithm functions Li,;, can also be defined by iterated integrals.' For all w E X*, we define Lw(z) as follows: P
Lxo (z) = log i z) for p > 0 P ! (7)
I
Lxu(z) =
J
wx • Lu(t) for x E X and xu ¢ {xo}*
1
where the wx are the differential 1-forms over C defined as follows:2,4 dz p dz wxo = z and wx' = 1 forE Om pz p (8) We have shown' that Li,;, = Lw(z) if w is defined as in (6). The coloured MZV ((s; o) = S(w) is convergent for w = xuy E X *, u E X *, x, y E X, with x # x1 and y 0 xo. Let us denote by C the set of convergent polynomials (linear combinations of convergent words). C is closed for the shuffle product and contains all Lyndon words other than xo and x1. Lemma 2 .1 Let w E X * be a word. Then w E C = P*(w) E C. P* (w) is defined in Section 3.2 on page 43. Corollary 2.1 ShQ(X) ^^ (C[xo, xi], w ). 3 Generating Power Series of Polylogarithms Let us define 7Z to be the universal Riemann surface above C \ O. Definition 3.1 The generating power series L(z) of the polylogarithm functions is the noncommutative formal series L(z) on X , on the complex variable aThe shuffle product is commutative and associative product and is defined by: f eww=wwe = w
for wE X*
xuwyv=x(uwyv)+y ( xuwv)for x ,yEX,and u,vEX*
42 z E R, defined by:
L(z) = E L,,,(z)w
(9)
wEX•
Theorem 3 . 1 The generating power series L(z) is the unique solution of the following differential equation with asymptotic condition: dL(z) = 1l(z)L(z) where Q(z) z ° + E lpxpl z
1
L(e) =
exo
log E + O(/), for e -+ 0+
PEO,,,
P / (10)
where the second equation expresses the asymptotic behaviour of the series L(e) when a tends to 0 on the positive real half axis.
Proof It is the same as in the case without roots of unity.'° Theorem 3 .2 L(z) is a Lie exponential series for all z E R. Consequently, by the Ree theorem,13 L(z) satisfies the Friedrichs criterium: Corollary 3.1 For all P,Q E Q(X ) and all z E R, we have the shuffle relation:5'9 Lp Q(z) = Lp (z) • LQ( z) where Lp (z) = (L(z)I P) (PI w)Lw(z) WEX•
3.1 Free Lie algebra and Lyndon basis In the free QLie algebra Lie(X) generated by X, we are interested with the Lyndon basis. And in the envelopping algebra Q(X) of Cie(X), we are interested with the Poincare-Birkhoff-Witt basis,14 noted PBWL. In order to define Lyndon words b and Lyndon basis, a total order is required on the alphabet X. For a primitive mth root of unity or, we set the order: 0 < o < v2 < ... < am-1. And then we consider on X the following order: x0 < xQ < xa2 < • • • < XQm-1. The elements of the Lyndon basis are exactly the polynomials P(l) with P(l) is the bracketted form ° of a Lyndon word 1. bA Lyndon word on an ordered alphabet X is a non empty word which is strictly smaller (for the lexicographic order) than each of its proper right factors. The set of Lyndon words, denoted by Lyndon{X}, is a transcendance basis of ShQ(X). 'The bracketed form P ( 1) of a Lyndon word 1 is defined by:
if l E X P(l) _ I l [P(11), P(12) ] if l = 1112 and 12 is the longest proper Lyndon suffix of 1.
43 3.2 Infinite product factorization The diagonal series W = E.cx* w ® w can be factorized, using a classical Schiitzenberger facorization,14 in the algebra ShQ((X)) ® Q((X)) as follows: E wow= I eP*(l)®P(I)
(11)
wEX* lEGyndon{x} \ where P*(l) is the dual polynomial of P(l) which can be explicitly obtained by computing the dual basis of the PBWL basis of Q((X )) .14 This result allows to factorize also L(z) as an infinite product: it suffices to take the image of the diagonal series by the morphisme: L(z) ® Id : u ® v (L(z)Iu)v. We obtain: 11 eLp.lil(z)P(l)
L(z) =
= e-109(1-z)x1Lren(z) elog(z)xo
IE.Cyndon{x} -, where Lren (z) is the renormalized series: Lren(z) = 11 eLp*(,)(z)P(l) (12) lEGyndon{x}\{xo,x1} \
This series is a Lie exponential series and converges at z = 1. For 1 E Lyndon{X} \ {xo,x1}, we have LP.(1)(1) = ((P* (1)), we then obtain: Z = Lren(1) = H es(2'*(l))P(l)
(13)
lEGyndon{x}\{xo,xl} which is exactly the Drinfel'd 4 KZ associator.s Lemma 3 .1 The series Z and L satisfy: Z = lim
-}o+ [exl
l ogE . L(1 - e)] (14)
Proof It is an extension of a result of Hoang Ngoc and others,10 giving the asymptotic behaviour of the series L: L(1 - e) - e-xl logeZ, with e -- 0+ (15)
4 Chen Series 4.1 Analytical prolongation along a path Let z° be a non singular point of the Riemann surface R and let -y = z° - z1 be a differentiable path from zo to z1 avoiding the singular points.
44 Definition 4.1 The Chen series along y = xo - z1 , denoted by S., or Szp..,.. z„ is defined to be the evaluation at z = z1 of the solution of the following differential equation with an initial condition: d S(z) = LO + E pxP S( z), S(zo) = 1 W z1 - pz PEOm
This series is a Lie exponential series5 which only depends on the homotopy class of the path y. For all paths 'y1 = zo z1 and rye = x1 -' z2i the Chen series satisfy : Sy1.72 = S y2 • Sy, and S,y' S,-,' where y1 • y2 = xo -+ z2 is the concatenation of the two paths y1 and y2, and yi 1 = z1 M+ zo is the reversed path of yl.
Both of the series L(z) and So-^•z • L(zo ) satisfy the differential equations (10). We then have the following result: Lemma 4 . 1 Let zo --+ z be a differentiable path on R . The series L(z) can be extended analytically along this path and we have: L(z) = Szp..,.. z • L(zo), or, equivalently: Szo-»x = L(z) - L-1(zo) (16)
4.2 Change of variables Let h : C \ 0 --3 C \ 0 be an analytical function . We note h* the action of h on the differential 1-forms by reciprocal image , namely: dz _ d(h(z)) h* g(z) g(h(z)) For all letter x E X , the image h* (x) is the transposed of the linear application h* restricted to the differential 1-form w,, . And we have: h* (wi) xi = wi h* ( xi)
(17)
iEO iEO
The action of h*on the words is given by h* (uv ) = h* (u)h* (v) and additively extended to the series. The main property is that if Sy is a Chen series along the path y, then: h*(S7) = Sho7 (18) In this section, we shall use the rotation map hP : z ^--> pz for p E Om. Thus we get: h*w.,o = wyo
and
h*wx, = w.,,,
for v E Om
45
E
z<1
1 -E
7o(z)
71
W
Figure 1. Monodromy Figure 2. Monodromy Figure 3. Monodromy around 0 around 1 around p 54 1
And, using (17), we have: hP(Wo)xo = WPoxo = Wo X,1,6 = Woxoy oEO oEO u'EO oEO
Hence , the action on the letters of X, is given by: hp.xo = x0 and hP.xo = xop Monodromy and Structure Theorem 5.1 Computation of the monodromy For each z E]O, 1[, and i E 0, let MiL(z) be the analytic continuation of L(z) along the path 'yi(z), which is the circle around the singularity i described in Figures (1, 2 and 3). We generalize the result of Hoang Ngoc and others,10 expressing MiL(z) as a product L(z) • Mi, where Mi is a Lie exponential series which does not depend of z (but here the power series L(z) is defined on a coloured alphabet). Proposition 5.1 The monodromy of the series L(z) around 0 (resp. 1) is given by:1o
M0L (z) = L (z) • e2inxo
(
resp.
M1 L(z) = L( z)
• e2i7rm1
where
e2i7rm1
= Z-1 . e-2iax1 .
z z) )
The monodromy of the series L(z) around p E
Om
\ {1} is given by:
MPL(z) = L(z) • e2iamp where mP is the Lie series defined by: e2iirmo = e-xo log P . * (e2i7rm1 ) , exo log P h Pll
46 Proof Firstly, let ry = e + pe be the circular path of radius e and turning around 0 in the trigonometric sense. By the same argument as for the monodromy computation around 0, we have: L(pe) • L-1(e) = SEwpE lim [L(pe) • L -1 (e)] = e- ixoAr g(p) =
exo
Iog(p)
E->O+
The proof is obtained by integration of L(z ) along the path described in Figure 3 , and by using the equation (16). We have the following intermediate result: exologP L(pz) = SpE-pz . L(p6) = hp* (S,,_.) . L(pe) = hp* (L(z)) • The monodromy in p is then computed as follows:
M L(pz) = Sp(1-E)-pz . Sryp(E) ,
Spz-..p(1 -E)
= h p* (S(1- E)-•+z . S71(E) - Sz--•(1 = L(pz) •
-E )
• L(pz) • L(z)) . exologp
e2iamp
5.2 Structure theorem In this section, we show that the functions L. are C-linearly independent and we deduce that the Q-algebra generated by coloured polylogarithms L,,, is isomorphic to the shuffle algebra ShQ(X). Lemma 5 .1 We have the following power series expansion: e 2i,, xo = 1+2i7rxo+Ro, e2i vr
m1 = 1 - 2i 7r
e2i7, mp =
x1
+R1,
1 -2i7rx#+Rp
where the series Ro, R1 and Rp are of order at least 2. Corollary 5.1 For any w in X * and xO, xp, xp, xQ in X, we have: (Mo - Id) Lwxo = 2 i 7r L. + R (Mo - Id)Lwxp = 0
(Mp - Id) L,,,xo = R' (M p - Id) Lwxo = -2 i 7r Lw + R"(19)
(Mp-Id)Lwx. =R"', a0p
R, R', R", R"' are linear combinations of polylogarithms L. with Jul < JwJ. Proposition 5.2 The functions Lw, with w in X* are C-linearly independent. That is
E awLw=O==,',dwEX*, aw=O wEX*, finite
47
Proof By induction on the length of w and using the relations (19). Let the following induction hypothesis: (Hn)
E awLw =O^aw =0
forallwsuch that jwl
lwl
• This is true for n = 0 (i.e. w = e), since Lf = 1. • Suppose that the hypothesis Hn is true. Now, any linear relation F= EawLw=0 Iw1
can be written in the form: F = aw Lw + E aw Lw = aux Lux + aw Lw xEX juj=n-1
lwl=n lwl
jwj
By applying respectively the operators Mo - Id and Mp - Id to F, and the relations (19), we obtain finally: (Mo - Id) (F) = 2i7r aux,, Lu + F1 = 0 Iuj=n-1 E auxp Lu + F2 = 0
(Mp - Id)(F) = - 2i7r
lul=n-1
where the two remainders F1 and F2 are linear combinations of polylogarithms L„ where lvj < n - 1. We deduce that aw = 0 for all w s.t. awl = n. And then the initial relation F was in fact restricted to the words of length strictly smaller than n. The result follows by induction hypothesis. Theorem 5 . 1 (Structure theorem) The Q-algebra CLI generated by coloured polylogarithms {Lw; w E X*} is isomorphic to the shuffle algebra ShQ(X). That is CLI is a commutative polynomial algebra generated by the infinite set {LI; I E Lyndon{X}}. Proof We consider the morphism 0: ShQ (X) --4CLI of commutative algebras defined by O(w) = Lw for any w E X*. Then for any P E ShQ(X), we have:
O(P) = 0
b
(PIw)O(w) = 0 t-=* wEX*
(Piw)Lw = 0
wEX*
Hence, by Proposition 5.2, P is in ker (b) if and only if (P1w) = 0 for any w E X*, i. e. if and only if P = 0. Thus 0 is an isomorphism . Consequently, since ShQ(X) is a commutative polynomial algebra over Lyndon{X}, then CLI is a commutative polynomial algebra over the set {LI I I E Lyndon{X}}.
48
References 1. M. Bigotte, G. Jacob, N.E. Oussous, and M. Petitot. Lyndon words and shuffle algebras to generate the coloured multiple zeta values relations tables. In Proc. WORDS-99, Rouen (France), September 20-25 1999. 2. J.M. Borwein, D.M. Bradley, and D.J. Broadhurst. Evaluation of k-fold Euler/Zagier sums: a compendium of results for arbitrary k. Electronic J. Combin., November 1996. 3. J.M. Borwein, D.M. Bradley, D.J. Broadhurst, and P. Lisonek. Special values of multidimensional polylogarithms. Technical report, CECM, Departement of Mathematics and Statistics, Simon Fraser University, May 1998. 4. D.J. Broadhurst. Massive 3-loop Feynmann diagrams reductible to SC* primitives of algebras of the sixth root of unity. Technical report, Physics Department, Open University, U.K., 1998.
5. K.T. Chen. Algebras of iterated path integrals and fondamental groups. Trans. A.M.S., 156(3):359-379, May 1971. 6. V.G. Drinfel'd. On quasitriangular quasi-Hopf algebras and a group closely connected with Gal(Q/Q). Leningrad Math. J., 2(4):829-860, 1991.
7. L. Euler. Meditationes circa singulare serierum genus. In Opera Omnia, volume 15, pages 217-267, Berlin, 1927. B.G. Teubner. 8. A.B. Goncharov. Multiple polylogarithms at roots of unity and motivic Lie algebras. In Proc. Arbeitstagung, Bonn, June 1997. 9. M. Hoang Ngoc, M. Petitot, and J. Van Der Hoeven. Shuffle algebra and polylogarithms. In Proc. FPSAC'98, 10th International Conference on Formal Power Series and Algebraic Combinatorics, Toronto, June 1998. 10. M. Hoang Ngoc, M. Petitot, and J. Van Der Hoeven. Computation of the monodromy of generalized polylogarithms. In Proc. ISSAC'98, International Symposium on Symbolic and Algebraic Computation, Rostock, August 1998.
11. M.E. Hoffman. Quasi-Shuffle products. J. Algebraic Combin., vol. 111:49-68, January 2000. 12. L. Lewin. Polylogarithms and associated functions. North Holland, New York-Oxford, 1981.
13. R. Ree. Lie elements and an algebra associated with shuffles. Ann. Math, 68:210-220, 1958. 14. C. Reutenauer. Free Lie algebras, volume New Series-7 of London Mathematical Society Monographs. Oxford Science Publications, 1993.
PLOTTING ALGEBRAIC SPACE CURVES BY CLUSTER COMPUTING* WOLFGANG SCHREINER, CHRISTIAN MITTERMAIER, FRANZ WINKLER Research Institute for Symbolic Computation (RISC-Linz), Johannes Kepler University, Linz , Austria E-mail: FirstName.LastNameOrisc . uni-linz.ac . at • http ://www.risc.uni- linz.ac.at We describe a parallel solution to the problem of reliably plotting a space curve defined by the intersection of algebraic surfaces . The original sequential program is implemented in the software library CASA on the basis of the computer algebra system Maple . The new parallel version is based on Distributed Maple, a distributed programming extension written in Java. We evaluate the performance of the program on a cluster of workstations and PCs, on a massively parallel multiprocessor , and on a cluster that couples workstations and multiprocessor.
1 Introduction We describe a parallel solution to the problem of reliably plotting an algebraic space curve. The starting point of our work is the software library CASA (computer algebra software for constructive algebraic geometry) which has been developed since 1990 by various researchers under the direction of the third author'. CASA is built on top of the computer algebra system Maple. For parallelizing a number of CASA functions, we have developed "Distributed Maple", a system that allows to implement parallel algorithms in Maple and to execute them in any networked environment2. The core of this system is a scheduler program written in Java which is in charge of coordinating the activities of multiple Maple kernels running on various machines. The system has evolved from our own experience in the development of parallel computer algebra environments3 and from the experience of other researchers in adapting Maple to the use on multiprocessors and computer networks 4,5,6,7 . The presented solution is derived from a sequential algorithm that applies a hybrid combination of symbolic and numerical methods. A related solution for the plotting of plane curves was presented elsewhere', the algorithm for space curves is based on a similar concept but the details and the parallelization are crucially different. In the following sections, we present the problem, describe the sequential algorithm, illustrate the parallelization idea, describe the parallel programming environment, and present experimental results. 'SUPPORTED BY THE FWF PROJECTS P11160-TEC (HYSAX) AND SFB F013/ F1304.
49
50
Figure 1. CASA ssiPlot
2 Plotting Surface-to-Surface Intersections The basic objects of the software library CASA are algebraic sets represented e.g. as systems of polynomial equations'. Algebraic sets represented by trivariate polynomials model surfaces in the Euclidean space; intersections of two such surfaces define space curves. An important problem is the reliable plotting of such curves. Conventional numerical methods often yield qualitatively wrong solutions, i.e., plots where some "critical points" (e.g. singularities) are missing. On the contrary, the CASA function ssiPlot produces reliable plots such as the one of the curve defined by the intersection of the surfaces (x2 + y2 + z2)2 - 4x2 - 4y2 and x2 + xy2z - 1 shown in Fig. 1. ssiPlot applies a hybrid combination of exact symbolic algorithms for the computation of all critical points and of fast numerical methods for the interpolation between these points9. Still the computation time of the symbolic methods dominates the total plotting time and even on fast workstations only curves with total degree up to 5 or so can be plotted in acceptable time. Our goal is therefore to speed up this function by parallelization. ssiPlot proceeds in three steps to plot a space curve a (see Fig. 2 that illustrates the idea with a plane curve): 1. Compute the critical points of a in the z-direction and sort them according to their z-coordinates. 2. Intersect a with the horizontal planes that lie in the middle of the 3D stripes determined by the z-coordinates of the critical points.
3. Trace a from each intersection point in both directions towards the border points of the stripe. Step 1 of the algorithm is a symbolic pre-processing phase that applies exact (arbitrary precision) arithmetic to compute those points that determine the topological structure of a. These critical points are the singularities
51
Simple Branch
Critical Points
Figure 2. The Plotting Algorithm
(roughly speaking, points where two or more branches intersect each other) and the extrema in one coordinate direction. Step 2 of the algorithm uses the 3D stripes determined by these points to decompose a into branches that are "simple" in the sense that they do not self-intersect and have only points where the derivative of a does not vanish. Step 3 can safely plot each such branch by linear approximation. The algorithm spends most of the computation time in Step 1, the computation of the critical points of a. The problem of this step is, given two surfaces f (x, y, z), g(x, y, z) E Q[x, y, z], to find every real solution ("root") (x, y, z) E 1l of the system S:= If = O, g = 0, Jy (f, g) = 0}, where
JJ(f,g) = (a &Y
a
8x )
denotes the Jacobian of f and g with respect to y and z. Since exact arithmetic in R is not possible, each root (x, y, z) is actually "isolated" by a triple of intervals ([x', x"], [y', y "], [z', z"]) with x', x", y', y", z', z" E Q such that (x, y, z) is the only root of S with x' < x < x", y' < y < y", and z' < z < z". These isolating intervals are determined by first computing the determinant j (x, y, z) E Q[x, y, z] of JJ, then computing the Dixon resultant (see below) d(z) E Q(z) of f, g, and j, and finally isolating the real roots of d: P := criticalPoints ( f (x, y, z ), g(x, y, z)): j(x,y,z) := det(J.(f,g)) d(z) := dresultanty,z (f, g, j) P := realroot(d) end
52 d(z) := dixon(D): r := rows(D)
c := columns(D) d(z) := 1 for k from 1 to min(r, c) do d(z) := d(z) * Dk,k (z) for i from k + 1 to r do t(z) := simplify(Db , lzl ) for j from k + 1 to c do Di,j (z) := simplify(Dij (z) - t * Dk,j (z)) end Di,k (z) 0 end end
end Figure 3. Computation of Dixon Resultant
The time-critical part of this algorithm is the computation of the Dixon resultant which eliminates several variables of a polynomial system while preserving the common roots. The Dixon resultant d(z) is the determinant of the Dixon matrix D which is formed from the coefficients of the so called Dixon polynomial which in turn is constructed from the input polynomials f , g, and j (for mathematical details, see the diploma thesis of the second authorlo) The Dixon resultant is computed from the Dixon matrix D by Gaussian elimination as depicted in Fig. 3. In this subalgorithm of the critical point computation, ssiPlot spends 60-80% of the total execution time. It is this function that we most urgently need to speed up by parallelization. 3 The Parallelization Approaches In order to speed up ssiPlot, we may apply parallelism in various subalgorithms (with focus on the computation of the Dixon resultant). Dixon Resultant The only significant potential for parallelism in the computation of the Dixon resultant d(z) from the Dixon matrix D is in computing, in iteration k of the outer loop, all the (k - r) * (k - c) new elements of D in parallel. Having selected the number of tasks t (which is usually greater than the number of processors to improve load balancing), we thus
53
C Figure 4. Dixon Resultant Tasks
start a task for every (r-k)*(c-k ) elements (see Fig. 4). While the number of matrix elements per task thus decreases with increasing k, the coefficient sizes of the corresponding polynomials increase and polynomial arithmetic (-, *) and polynomial simplification ("simplify") become more complex. Thus the overall task grain size actually grows which allows to exploit the available parallelism efficiently. Real Root Isolation Another building block (which accounts for about 10% of the computation time) is the isolation of the real roots of the Dixon resultant d(z) by Uspensky's method, a recursive divide and conquer search. A naive parallelization of this algorithm yields poor speedups due to the narrowness of the highly unbalanced search tree. A parallelization of the arithmetic in each recursive invocation step is only feasible for tightly coupled multiprocessors. Therefore our approach is to broaden and to flatten the search tree (to a certain extent) by applying speculative parallelism" Initial Points The second step of ssiPlot after the computation of the critical points is the computation of the intersection points of the curve and of the horizontal planes determined by the critical points as starting points for the visualization. The basic problem in this step (which accounts for another 10% of the total computation time) is, after the isolating intervals for the xcoordinates and the isolating intervals of the y-coordinates of these points have been determined, to find the matching interval pairs. This requires the testing of all y intervals with respect to every x-interval; these tests are independent of each other and can be performed in parallel. Simple Branches In large examples, also the generation of the simple branches originating in the initial points contributes significantly to the total execution time; these branches can be generated independently in parallel.
Based on these four ideas, we have implemented in Distributed Maple a parallel variant of ssiPlot.
54
Figure 5. Distributed Maple Architecture
4 Distributed Maple Distributed Maple is an environment for writing parallel programs on the basis of the computer algebra system Maple2. It allows to create tasks and to execute them by Maple kernels running on various machines of a network. Each node connected to a session comprises two components (see Fig. 5): Scheduler The Java program dist. Scheduler coordinates node interaction. The initial process (created by the Maple kernel attached to the user frontend) reads all system-specific information from file dist . systems; it then starts instances of the scheduler on other machines. Maple Interface The file dist.maple read by every Maple kernel implements the interface between kernel and scheduler. Both components use pipes to exchange messages which may embed any Maple objects. After a session has been established, every scheduler instance accepts tasks from the attached computation kernel and schedules these tasks among all machines connected to the session. During the session , additional socket connections between remote scheduler instances are established on demand. The user interacts with Distributed Maple via a (text or graphical) Maple frontend. Maple commands establish a session in which tasks are created for execution on any connected machine, e.g.:
55 > read `dist . maple`; Distributed Maple V1 .0.7 (c) 1998 Wolfgang Schreiner (RISC-Linz) See http ://www.risc . uni-linz . ac.at / software/distmaple > dist(initialize]([[ gintonic , linux], [andromeda,octane]]): connecting gintonic... connecting andromeda... > dist[all](" Integrate := proc ( e, x) int ( e, x) end:"): > ti := dist[start]( Integrate , x'n, x): > t2 dist[start ](Integrate , x-n, n): > dist[wait](ti) + dist[wait](t2);
The file dist. maple implements the interface to the distributed backend as a Maple package dist. The command dist [initialize] asks the system to start the distributed backend and create two additional Maple kernels on machines gintonic andromeda , respectively. The following operations represent the core programming interface: dist [all] ( command ) lets the statement command be executed on every Maple kernel connected to the session. If this command refers to a particular file, this file must be visible on every machine of the session. dist [start] (f, a, ...) creates a task evaluating f(a, ...) and returns a task reference t. Tasks may create other tasks; arbitrary objects (including task references) may be passed as arguments and returned as results. dist [wait] (t) blocks the execution of the current task until the task represented by t has terminated and returns its result. Multiple tasks may independently wait for and retrieve the result of the same task t. This parallel programming model is based on functional principles which is sufficient for many kinds of computer algebra algorithms3. The environment also supports non-deterministic task synchronization for speculative parallelism and shared data objects which allow tasks to communicate via a global store (distributed across the network). 5 Experimental Results We have systematically benchmarked the parallel variant of ssiPlot implemented in Distributed Maple with four random curves for which the sequential program takes 2119s, 475s, 1523s, and 5973s, respectively. These times refer to the execution on a PIII@45OMHz PC which is for this computation the fastest machine available to us. The parallel variant has been executed in three system environments consisting of 24 processors each:
56
• The cluster of our institute which comprises 4 Silicon Graphics Octanes (2 R10000@250Mhz each) and 16 Linux PCs (various Pentium processors) linked by a 100 Mbit switched (full duplex point-to-point) Ethernet; • a Silicon Graphics Origin multiprocessor (64 R12000@300 Mhz, 24 processors used) with 20 GB main memory located at the university campus to which our network is connected by a high-bandwidth ATM line;
• a mixed configuration consisting of 8 machines from the cluster and 16 processors of the Origin multiprocessor. The total computational performance (as measured by a representative Maple benchmark) of cluster, Origin, and mixed configuration is 19, 22.6, and 22.6 times the one of a PIII@450MHz processor. In the cluster and in the mixed configuration, the frontend Maple kernel was executed on an Octane. The top diagram in Fig. 6 generated from a trace file illustrates a sample execution in the cluster configuration with 24 processors; we see the Dixon resultant computation phase followed by the phases for real root isolation, initial point computation, and branch computation. The number of tasks in the later stages of the first phase is limited by the number of matrix elements to be updated. The increased complexity of each matrix element computation however yields tasks of much larger grain size than in the beginning. The table lists the execution times for each input in each environment with varying processor numbers. The first row of diagrams illustrates the absolute speedups T , the second row illustrates these speedups multiplied with T. n;
(where pi denotes the relative performance of processor i), the third row illustrates the scaled efficiency T. T 1 n.. The markers +, ❑ , and x denote execution on cluster, Origin, and in the mixed configuration, respectively. Apparently, the speedups for larger examples are better than for smaller ones; for Example 1, the Cluster/mixed configuration gives an absolute speedup of 12 but only a speedup of less than 5 for the small Example 2. Example 3 gives a speedup of 10 and the large Example 4 a speedup of 12. Actually, the examples yield too good results: for processor numbers up to 4 or even 8, we get scaled efficiencies between 1 and 2. These super-linear speedups are caused by the increased amount of heap memory in all Maple kernels which reduces the garbage collection times correspondingly. Only for larger processor numbers, the parallelization overhead outweighs these gains. In most cases the cluster/mixed configuration gives results that are as good as or even better than on the Origin. This indicates that the capacity of the 100 Mbit switched Ethernet is for this computation sufficiently high and/or that Distributed Maple on the Origin is comparatively less efficient.
57
Di-
MYRo k"
Example 1 2119s)
System Cluster Origin Mixed Cluster (475s) -TOrigin Mixed 3 (1523s ) Cluster Origin
4 (5973s)
Mixed Cluster Origin Mixed
1 4166 2053 4166 677 420 677 2725
2 935 784 935 237 227 237 649
4 522 459 499 143 172 146 332
8 280 330 280 98 169 95 213
16 216 269 241 96 156 93 178
24 184 242 200 104 155 98 163
1430
696
370
312
245
223
2725 12026 5764 12026
649 2152 2297 2152
334 1089 1228 1028
242 638 754 683
175 639 543 601
157 560 493 478
3: Absolute Speedup
1: Absolute Speedup 16 14 12 10 8 6 4 2 0
1
124 8 16 24 1: Scaled Speedup
2: Scaled Speedup
14 12
14 11 0 8 8 6 6 4 4 Er a E3 2 2 0 0 124 8 16 24 124 8 16 24 1: Scaled Efficiency 2: Scaled Efficiency
124 8 16 24 124 8
16 24
124 8 16 24
124 8 16 24
3: Scaled Speedup
4: Scaled Speedup
16 14
16 14
10
10
6
6 4
4 2 0
124 8 16 24
124 8
16 24
3: Scaled Efficiency
4: Scaled Efficiency
124 8
124 8
16 24
Figure 6 . Experimental Results
16 24
58
6 Conclusions Also in distributed environments the parallel implementation of a computer algebra algorithm can achieve significant speedups which compete with those on a massively parallel multiprocessor. Our work presents the third major function of the CASA library (besides the plotting of a plane algebraic curve and the computation of its neighborhood graph) that we have parallelized on the basis of Distributed Maple (together with a number of parallelized Maple functions). We will continue in this direction to yield a library of parallel implementations of CASA functions. References 1. M. Mnuk and F. Winkler. CASA - A System for Computer Aided Constructive Algebraic Geometry. DISCO'96, volume 1128 of LNCS, pages 297-307, Karsruhe, Germany, 1996. Springer, Berlin. 2. Wolfgang Schreiner. Developing a Distributed System for Algebraic Geometry. EURO-CM-PAR'99, Barry H.V. Topping (ed.), pages 137-146, Weimar, Germany, March 20-25, 1999. Civil-Comp Press, Edinburgh. 3. Hoon Hong, Andreas Neubacher, and Wolfgang Schreiner. The Design of the SACLIB/PACLIB Kernels. JSC, 19:111-132, 1995.
4. Bruce Char. Progress Report on a System for General-Purpose Parallel Symbolic Algebraic Computation. ISSAC'90, pages 96-103, Tokyo, Japan, August 20-24, 1990. ACM Press, New York. 5. Kurt Siegl. Parallelizing Algorithms for Symbolic Computation Using IIMAPLEII. Principles and Practice of Parallel Programming, pages 179186, San Diego, California, May 19-22, 1993. ACM Press, New York. 6. Angel Diaz and Erich Kaltofen. FoxBox: A System for Manipulating Symbolic Objects in Black Box Representation. ISSAC'98, O. Gloor (ed.), 1998. ACM Press, New York. 7. Laurent Bernadin. Maple on a Massively Parallel, Distributed Memory Machine. PASCO'97, pages 217-222, Maui, Hawaii, July 20-22, 1997. 8. Wolfgang Schreiner, Christian Mittermaier, and Franz Winkler. On Solving a Problem in Algebraic Geometry by Cluster Computing, Euro-Par, Munich, Germany, August 29 - September 1, 2000. Springer, Berlin. 9. Tran Quoc Nam. A Hybrid Symbolic-Numerical Approach in Computer Aided Geometric Design (CAGD) and Visualization. Ph.D thesis, Johannes Kepler University, Linz, 1996. 10. Christian Mittermaier. Parallel Algorithms in Constructive Algebraic Geometry. Diploma thesis, Johannes Kepler University, Linz, 2000.
GROBNER BASES IN POLYNOMIAL RINGS OVER VON NEUMANN REGULAR RINGS - THEIR APPLICATIONS (EXTENDED ABSTRACT) Y. SATO Department of Mathematical Sciences , Ritsumeikan University, 1-1-1 Nojihigashi, Kusatsu, Shiga, 525-8577, Japan E-mail: ysatoOtheory . cs.ritsumei.ac.jp
A. SUZUKI Department of Welfare Business , Kinki Welfare University, 1966-5 Shiota, Takaoka, Fukusaki-cho, Kanzaki-gun, Hyougo, 679-2217, Japan E-mail:
[email protected]
1 Introduction A commutative ring R with the following property is called a Von Neumann regular ring: VaER3bERa2b=a. Grobner bases of polynomial rings over such rings are first introduced by Weispfenning6 and more detailed properties are studied in several papersl,2,3,4 All the applications discussed there, however, are restricted to very simple examples of Von Neumann regular rings such as boolean rings or finite direct products of finite fields. In this paper, we propose an application of Grobner bases for more complicated examples of Von Neumann regular rings. Given a Von Neumann regular ring R, a quotient ring R[X]/(X2 - X) also becomes a Von Neumann regular ring. This observation leads us to have alternative type of comprehensive Grobner bases which are originally introduced in the paper? by Weispfenning. Given ( A , ,.. ... , Am, Xi, ... , Xn) (i = 1... k) in a polynomial ring H[X1,... , Xn] over a Von Neumann regular ring H = R[A,, ... , Am]/(A' - A,,..., A,2n - Am), calculate a Grobner basis G of the ideal (f,,. .. , fk) in H[X,,... , Xn]. Then G can be considered as a kind of comprehensive Grobner basis in the following sense. An instance G(al,... , am) = {g(ai,... , am, Xi,... , Xn) I g E G} given by substituting each Ai with an idempotent element ai in R also becomes a Grobner basis of the ideal (f,(a,,...,a,n,X1,...,Xn),...,fk(a,,...,am,Xi,...,Xn))
59
60 in R[X1i ... , Xn]. Since an instantiation is restricted to only idempotent elements, we call them discrete comprehensive Grobner bases. Though the restriction seems to be too severe, our discrete comprehensive Grobner bases have at least two nice properties which do not hold in standard comprehensive Grobner bases. One is that a discrete comprehensive Grobner basis itself is in a form of a Grobner basis, so we can define its monomial reductions. Another one is that an instantiation also preserves the above monomial reductions.
In this paper, we show our main results that enable us to have our discrete comprehensive Grobner bases. We assume the reader is familiar with Grobner bases of polynomial rings over Von Neumann regular rings. The reader is referred to the paper by Weispfenning6 or Sato3. 2 Discrete Comprehensive Grobner Bases The first theorem gives us nontrivial examples of Von Neumann regular rings. Theorem 2.1 Let R be a Von Neumann regular ring. Then the quotient ring R[X]l(X2 - X) also becomes a Von Neumann regular ring. In fact, R[X 1 i ... , X.]/(Xi - X1'...' X,2 - Xn) is isomorphic to R^2'^i .
Proof Let aX + b (a, b E R) be an element of R[X]/(X2 - X). Since R is a Von Neumann regular ring, we can pick elements c, d E R such that (a + b)2c = a + b and bed = b. Let f E R[X]/(X2 - X) be f = (c - d)X + d. Then (aX + b)2 f = aX + b holds. The above proof actually use a ring isomorphism o from R[X]/(X2 - X) to R2 given by 0(aX + b) = (a + b, b). By this isomorphism, the second assertion follows. ❑ Using the above Von Neumann regular rings , we can calculate special types of comprehensive Grobner bases. Theorem 2.2 Let R be a Von Neumann regular ring and H be the quotient ring defined by H = R[A1, ... , A,,,]/(A2 - Al, ... , Ala - A,,,). Note that H also becomes a Von Neumann regular ring by Theorem 2.1.
We are given a finite set of polynomials F=
Ifl( A,,..., Am, Xl,...,Xn),..., fk( A 1,..., Am,X1) ...,Xn)}
in H[X1,. .. , Xn]. Let f ,91(A1,.... Am,X1,...,X„)} G= {91(A1i...,Am,X1,...,X„),...
be a Grobner basis of F in H[X1 i ... , X„] such that each element gi is boolean closed. Then, we have the following properties.
61
(1) For idempotent elements al, ... , an E R,
G( al ,...,am)
_
{91(al,...)am,X1,... , Xn),... . 91(a 1,....
am,X1,...,Xn)}
is a Grobner basis of F(a l,...
, am) _ if, ( a l, ... )
am, Xl.... ,
Xn),... , f k (a,,. .., am, X1, ... , Xn)}
in R[X1, ... , Xn]. Moreover, G(al i ... , am) becomes a stratified Grobner basis,
in case G is stratified. (2) For any polynomial h(A1, ... , Am, X1,.. . , Xn) E H[X1i ... , Xn], we have NG) (a,, ... , am, Xl,... , Xn) = h(a1,... , an, X1, ... , Xn)4.G(ai,...,am,Xi,...,X„)-
(4G is a normal form of h by
-PG,
i.e. h
-G
4G and 4G is irreducible by
-4G.)
Proof We give a sketch of proof. Observe that any instantiation by idempotent elements is actually a ring homomorphism from H[X1,... , Xn] to R[X1,... , Xn]. So each element of G(al,... , a,n) is boolean closed unless it vanishes. It is also easy to check that G(al,... , am) and F(al, ... , am) generate the same ideal in R[X1, ... , Xn]. Therefore, in order to see that G(al,... , am) is a Grobner basis in R[X1,... , Xn], it suffices to show that G(al,. .. , am). SP(f, g) iG(al.... . .. „a) 0 for any pair f and g of polynomials in (See Theorem 3.2 in the paper3 by Sato or Theorem 2.6 in the paper 6 by Weispfenning.) It follows from the following two properties. The homomorphism also preserves monomial reductions that is p(a1,...,a.,X1,...,Xn) -3G(a1,...,a,,,)
q(a1,...,am,X1,...,Xn
in case p(A1,...,Am,X1,...,Xn) -+G q(A1,...,Am,X1,...,Xn). The homomorphism also preserves S-polynomial constructions that is equal to is SP( f(al,...,a,n ,Xl,...,Xn), 9(al,...,am ,Xl, ...,Xn)) SP(f(Al,...,Am,Xl,...,Xn),9(Al,...,A.,Xl,...,Xn ))(a,,.... am). The last assertion of (1) follows immediately by the definition of a stratified Grobner basis . ( See Definition 3.7 in the paper3 by In order to prove ( 2), it suffices to show that for any Sato .) polynomial h(A1,... , Am, Xl, ... , Xn) E H[X1, ... , Xn] irreducible by G, h(a1 , ... , am, Xl, ... , Xn) is also irreducible by G(al,... , am) in R[X1,... , Xn] for idempotent elements a1,.. . , am in R . It follows from the = 0 in H fact that if p(A1i... , An, X1i... , Xn)t(Al, ... 7 Am, Xi,... , Xn)
62 then p(al, ... , am, Xi,. .. , Xn)t(al, ... , am, X1, ... , Xn) = 0 also holds in R for each element p and t of H and idempotent element al, . . . , am in R. O By the property (1), G can be considered a s a special type of comprehensive Grobner basis, where Al, ... , Am are parameters but instantiations are restricted to only idempotent elements. Because of this restriction, we call G a discrete comprehensive Grobner basis. Note that in standard comprehensive Grobner bases we can not define monomial reductions before instantiation. In our discrete comprehensive Grobner bases, we can define monomial reductions, furthermore they are preserved by any instantiation. References
1. Sato, Y. (1996). Application of Grobner basis in constraint of nonnumerical domains. Presented at the 2nd IMACS Conference on Applications of Computer Algebra. 2. Sato, Y. (1997). Set constraint solver - Grobner bases for non-numerical domains. International Symposium on Symbolic and Algebraic Computation (ISSAC 97), Poster Abstracts, pp. 13-14. 3. Sato, Y. (1998). A new type of canonical Grobner bases in polynomial rings over Von Neumann regular rings. International Symposium on Symbolic and Algebraic Computation (ISSAC 98), Proceedings, pp. 317-321.
4. Sato, Y. and Suzuki, A. (1999). Parallel computation of boolean Grobner bases. The Fourth Asian Technology Conference in Mathematics (ATCM 99), Proceedings, pp. 265-274. 5. Saracino, D. and Weispfenning, V. (1975). On algebraic curves over commutative regular rings, Model Theory and Algebra, a memorial tribute to A. Robinson, Springer LNM 498, pp. 307-387. 6. Weispfenning, V. (1989). Grobner bases in polynomial ideals over commutative regular rings, EUROCAL '87 (J. H. Davenport, ed.), Springer LNCS 378, pp. 336-347. 7. Weispfenning, V. (1992). Comprehensive Grobner bases, J. Symb. Comp. 14/1, 1-29.
ANOTHER ATTEMPT FOR PARALLEL COMPUTATION OF CHARACTERISTIC SETS* IYAD A. AJWA Dept. of Math. and Comp. Sci., Ashland University, Ashland, OH 44805, USA
PAUL S. WANG Dept. of Math. and Comp . Sci., Kent State University, Kent, OH 44242, USA DONGDAI LIN Institute of Systems Science, Academia Sinica, Beijing 100080, China
1 Introduction The Characteristic Sets (CS) method was first introduced by J. F. Ritt in the context of his work on differential algebra in 1930s1, and was independently rediscovered and further developed by Chinese mathematician Wen-tsiin Wu in the late 1970s through his famous work on mechanical geometric theorem proving2. In the past two decades, the CS method has developed very fast. Now it can be used not only in the field of geometric theorem proving, but also in the field of multivariate polynomial equation system solving, theoretical physics, CAGD, robotics, astronomy and so on. There are several sequential implementations of the CS method. One successful, efficient, general (not for a special application), and complete implementation of the CS method is due to Dongming Wang7. He implemented the CS method using Maple user-level commands. Algebraic algorithms like the CS method, which are universal for a broad class of problems, are very compute intensive. High speed is therefore essential for using this method in practical cases. Although, the sequential versions of the CS method have been improving over the years, the algorithm is still time and space consuming and hence is prime candidate for parallel computation. Unfortunately, only a few parallel experiments by Dongming Wang have been reported in the literature 6. In CS method, the algorithm contains natural sources of parallelism. Further, they produce a lot of mutually independent subproblems that may be treated in parallel by slave sessions at different nodes. We believe that the power of the CS method could be enhanced by use of parallel processing. * WORK REPORTED HEREIN HAS BEEN SUPPORTED IN PART BY THE NATIONAL SCIENCE FOUNDATION UNDER GRANT CCR-9721343 AND GRANT INT-9722919.
63
64 In the CS method, the concept of characteristic set is very important. The characteristic set of a polynomial set contains information about the zeros of the related polynomial set. In fact, the most essential part of the CS method is to compute the characteristic set. Readers who are not familiar with this theory can consult Wu's original work2.
For a given polynomial set PS, the computation of its characteristic set can be illustrated in the following scheme: QS1 = PS QS2 = PS u RS1 QSn = PS u RSn_1 BS1 BS2 ... BS,, = CS
RS, RS2 RS,, = 0 where BSi is the basic set of polynomial set QSi and RSi is the set of all nonzero pseudo-remainders of the polynomials of QSi\BSi. There are theorems to assert that the above procedure will terminate after a finite number of steps, that is, we certainly can come to a point that RS,, = 0. The final basic set BS,a(let it be CS) is the characteristic set to compute. From the scheme we can see that the basic operation in the CS method is the pseudo-division of polynomials. Analysis and experiments have shown that many costly pseudo-divisions are needed to form RS (note that RS does not have the subscript i, usually we omit it if the discussion is not for a specific step or iteration of the above scheme), and so the computations of the set RS is the most time consuming task, especially when the intermediate polynomials become large. Thus the computation of the remainder set RS is a prime candidate for parallelization. In fact, it is the right point suited for parallelization. In any step of the above scheme, in order to form RS, every polynomial of the set QS\BS will be picked and a pseudo reduction with respect to BS will be carried out independently. During the computation of RS, QS and BS remain unchanged. So, we can divide QS\BS into several disjoint subsets of polynomials, and then pseudo-reduce these subsets in parallel. In this paper, we will present the details and some experimental results of our parallel implementation of the CS method under the environment of PVM5'8 and SACLIB4. PVM is used for data conversion, task scheduling and inter-task communications. SACLIB is used for developing the basic algorithms of CS method. In our parallel implementation of the CS method, a master-slave model of star topology is used, that is, there is one master process and several slave processes in the parallel computation scheme. Master process performs a special task such as initialization, coordinating the work of slave processes, collecting data and printing out the computation results, the slave processes perform the actual computations such as pseudo-reduction.
65 2 Data Structures Computation of characteristic set consists of performing pseudo-reduc-tions of polynomials with respect to a (ascending) set of polynomials. Each pseudoreduction represents a job in the bag-of-jobs: a data structure maintained by the master process. The bag-of-jobs is an array of job structures. Each job in the bag-of-jobs is represented by a structure of three fields: job-id, job-descriptor, and a union of two variables: basic-set-and-more and single polynomial. Now, each of these variables is a structure by itself. The basic-set-and-more structure consists of five fields: var num and par_num are two integers representing the number of variables and parameters respectively, var_list is a SACLIB list representing the list of variables involved, basic-set representing the computed Basic Set, and polynomials representing the set of polynomials to be pseudo-reduced. The single polynomial structure consists of one field called polynomial which represents one single polynomial from the m polynomials as explained above. 3 Parallel CS Method: Master Process and Slave Process The master process computes and maintains the basic sets, sends copies of the current basic set to slave processes, sends subsets of polynomials to slave processes, receives pseudo-remainders from slave processes, maintains the set QS, and forms the set RS. The job of the master process terminates when forming a new set RS fails. Each slave maintains a copy of the current basic set. A slave computes the pseudo-remainders of an assigned set of polynomials with respect to the current basic set (the pseudo-reduction). Once done, the slave sends the computed set of pseudo-remainders back to the master and may receive a new set of polynomials to process. A slave terminates when the master program gives it no more jobs. 4 Experiments and Timing Data Experiments have been conducted on a network of workstations with several examples from the literature. The workstation cluster consists of six SUN Ultra 1 workstations of different memory size (64-128 MB), connected through a local area network supporting a (NFS)-shared file system. All six machines run under the Solaris 2.6 UNIX operating system. In Table 1, we give the timing data for parallel CS method . In our timings, we have used UNIX gett imeof day () routine. All timings are given in seconds.
66 The experiments have demonstrated the significant gains of using parallelism for CS method. The parallelization of CS method in this paper is natural and quite obvious, it is just start of related research. The future work can include exploring new and efficient parallel method according to function decomposition, implementing the parallel method in the newly developed ELIMINO system9 which is designed specially for CS method.
2
Number of Processors 3 4 5
Ex
Sequential Time Tl
T2
T3
T4
T5
T6
1
4.45
3.00
1.73
1.39
1.39
1.29
3.49
2 3 4
2.37 1.23 0.76
1.57 1.39 1.03
0.98 0.87 0.63
0.82 0.83 0.61
0.75 0.82 0.61
0.75 0.77 0.59
3.14 1.59 1.27
14.08
12.94
11.23
7.79
5.72
3.35
4.20
19.07 55.38
5.27 6.71
5
6 11 7
100.58 95.77 79.26 56.81 29.13 234.12 300.12 1 1371.611 1 11 1 1 201.96 1 1 134.33
6
Speedup Achieved T1 / T6-
References 1. Ritt, J.F., Differential Equations from the Algebraic Standpoint, Amer. Math. Soc., New York (1932). 2. W.A. Wu, Basic Principles of Mechanical Theorem Proving in Elementary Geometries, J. Syst. Sci. Math. Sci. 4, 207-235 (1984). 3. I. Ajwa and P. S. Wang, Applying Parallel/Distributed Computing to Advanced Algebraic Computations, Proc. NAECON'97, pp. 156-164 (1997). 4. B. Buchberger et al., SACLIB 1.1 User's Guide, RISC-Report No. 93-19, Johannes Kepler University, Linz, Austria (1993). 5. A. Geist et al., PVM: Parallel Virtual Machine, A User's Guide and Tutorial for Networked Parallel Computing, The MIT Press (1994).
6. D. Wang, On the Parallelization of Characteristic-Set-Based Algorithms, Proc. 1st Int. ACPC Conf., Springer LNCS 591, pp. 338-349 (1991). 7. D. Wang, An Implementation of the Characteristic Set Method in Maple, Automated Practical Reasoning, pp. 187-201, Springer, Wein (1995). 8. P. S. Wang, Tools to Aid PVM Users, The Fourth U.S. PVM Users' Group Meeting (1996) [http://www.cic-8.lanl.gov/pvmug96]. 9. D. Lin, J. Liu and Z. Liu, Mathematical Research Software: ELIMINO, Proc. ASCM'98, pp. 107-114 (1998).
ZERO DECOMPOSITION ALGORITHMS FOR SYSTEMS OF POLYNOMIAL EQUATIONS D. K. WANG Institute of Systems Science, Academia Sinica, Beijing 100080, P. R. China E-mail: dwang @mmrc.iss.ac.cn This paper presents zero decomposition algorithms based on characteristic sets. The main algorithms include those for computing characteristic sets and the zero decomposition algorithm by factorizing multivariate polynomials over the rational number field. We also give a brief description of wsolve which is an implementation of the above algorithms and use it to solve a system of polynomial equations as an example.
1 Introduction
In this paper, we discuss how to give the zero decomposition of a system of polynomial equations of the following form P1(x1 ,x2,...,xn) = 0 P2(x1ix2,...,xn) = 0
j
Pm(x1i x2) ... , xn) = 0
where K is a field of characteristic 0 and x1i x2, ... , xn are indeterminates. P1i P2, ..., P. are polynomials in the ring K[x1, x2, ... , xn]. Systems of polynomial equations of the above form arise in many theoretical and applied problems . Solving such a system is one of the central problems of computer algebra. To solve this kind of polynomial equations, one important classic method is the resultant of n homogeneous polynomials in n variables , a tool for deciding whether these polynomials have nontrivial common solutions. In addition to the resultant method , such systems of polynomial equations can be solved by the Grobner basis method, especially in the case of dimension 0. Another method is Wu's method , also called the characteristic set method , which can , be used to solve such systems for dimension 0 or higherl 3,a In this paper, we give algorithms which are based on the characteristic set method for computing the zero decomposition.
67
68 2 Wu's Algorithms For a polynomial system PS, Wu gave an algorithm to compute its characteristic set CS, which is in a triangular form4, such that
Zero(CS/J) C Zero(PS) C Zero(CS),
Zero(PS) = Zero(CS/J) U U1 Zero(PS, Ii), in which CS = {C1i C2,..., C,,}, Ii = Initial(C1), and J = 11' , (ii). Wu also gave an algorithm to compute the following zero decomposition. Zero Structure Theorem For a polynomial set PS, the zero set of PS has the following decomposition: Zero(PS) = U Zero(ASk/Jk), k
in which ASi is an ascending set and Jk is the product of the initials of the polynomials in ASk. Theoretically speaking, the mechanical method explained above is complete. D. M. Wang has given a complete implementation of Wu's method for the general purpose in the Maple system3. For some complicated problems, it is not so efficient because of the very big size of the polynomials which appear in the computation of characteristic sets. For the irreducible decomposition, factorization over extension fields is needed. The factorization over algebraic extension fields is also time consuming. In our algorithms, we factorize every multivariate polynomial over the rational number field, for which the algorithm is very efficient in the existing symbolic computation software, such as Maple and Mathematica. The size of the polynomials will be reduced after factorization so that it can improve the efficiency greatly sometimes. 3 Two Main Algorithms Factorizing polynomials over the rational number field is one of the most efficient techniques to improve the efficiency of the zero decomposition algorithm. We notice that, if there is a polynomial F E PS and F = F1 • F2 then F1 and F2 have lower degrees and generally small sizes than that of F, and Zero(PS) = Zero(PS, F1 /F) U Zero(PS, F2/F).
If we factorize every polynomial in the computation process, we have: Algorithm (SCS) Input: a polynomial set PS;
Output: a series of sub-characteristic sets.
69
1. Find the basic set BS = BasicSet(PS). If BS is contradictory then return BS. 2. Compute the remainder set RemainderSet (PS, BS) of PS w.r.t. BS. If RS is empty then return BS. 3. Factorize the polynomials in RS = {R1, R2, ... , R8}. Suppose that Rl = R1... R", R2 = R2 ... RZ 2, ... , B8 = RB ... R"' . 4. Give all the possible combinations of the form RSj = {Ri', R2, . , R8° } for j = {jl,...,j8};ji < ni.
5. Let PSj = PS + RSj of which RSj is of the above form. Return Uj SCS(PSj). From the above algorithm SCS, we have the following: Theorem 1 For a polynomial set PS, there is an algorithm which can compute a series of ascending sets ASi such that Zero(PS) C UYZero(ASi), Zero(AS2/Ji) C Zero(PS), Zero(PS) = UiZero(ASS/Ji) U Ui,jZero(PS, Iij), where ASi = {Ail, Ail, ... , A2,i„ } is an ascending set, Iij is the initial of Aij, and Ji = fj Iij.
Algorithm SCSS Input: a polynomial set PS; Output: a sequence of ascending sets. 1. Find a series of ascending sets ASi of PS and the enlarged polynomial set PS; obtained in algorithm SCS: ASi = {Ail, Ail, ... , Air, }. 2. For each i, let Iij = Initial (Aij), Ii = UjIij and PSij = PS! +Iij, and return Ui(CSi) Uj SCSS(PSij). From Algorithm SCSS, we have: Theorem 2 For a polynomial set PS, the zero set of PS has the following decomposition: Zero(PS) = U Zero(ASk/Jk), k
in which each ASi is an ascending set.
70 4 A Maple Package for Solving Systems of Polynomial Equations According to the above algorithms, a package wsolve based on the computer algebra system Maple has been implemented. In the program, there are four modes: standard sense, weak sense, quasi-sense and resultant-sense, which can be selected by the user. The specification of wsolve is as follows: Tlist +- wsolve(PS, X)
Input:
PS is a list of polynomials; X is a list of ordered indeterminates.
Output: Tlist is either NIL, which implies Zero(PS) = 0, or a list, which consists of a finite number of ascending sets ASZ such that Zero(PS) = U2 Zero(AS2/JZ), where J2 is the product of the initials of the polynomials in AS2. If PS has only finitely many solutions, then Zero(PS) = U2 Zero(AS2). Example Consider the set PS of the following three polynomials Pl = a2bc + ab2c + abc2 + ab + ac + be, P2 = a2 b2 c + ab2 c2 + bc2 + c + a + a2 b, P3 = a2b2c2 +b 2C2 + c2 + 1 + a2 +a 2 b 2.
By wsolve, we can get the zero decomposition wsolve(ps,[a,c,b]):= [[1+b2, -12bc + 2bc3 - c4, -ab + 2ac - be + 2c2 - abc2 + bc3], [-1 - 4b2 + 6b4 - 4b6 b8, -5 + 7b2 - 5b4 - b6 - 12bc + 14b3c - 8b5c - 2b7c, a + b], [1 + 4b2 - 6b4 + 4b6 + b8, b+ c, -a + 2b - 2b3 - ab4]]. References
1. Chou, S.C. and Gao, X.S. Techniques for Ritt-Wu Decomposition Algorithm, MM Research Preprints No. 5 (1990), 88-111. 2. Wang, D.K. Polynomial Equations Solving and Geometric Theorem Proving, Doctoral thesis, Academia Sinica, China (1993). 3. Wang, D. An Implementation of the Characteristic Set Method in Maple, Automated Practical Reasoning: Algebraic Approaches , Springer-Verlag (1995), 187-201. 4. Wu, W.-t. Basic Principles of Mechanical Theorem Proving in Elementary Geometries, J. Sys. Sci. FY Math Scis. 4 (1984), 207-235.
INTEGER ROOTS FOR INTEGER-POWER-CONTENT CALCULATIONS D. J. JEFFREY, M. W. GIESBRECHT, AND R. M. CORLESS The University of Western Ontario, London, Ontario, Canada E-mail: D. Jeffrey, M. Giesbrecht, R. Corless Ouwo. ca In this extended abstract, we outline investigations of the application of Newton and Halley iteration to the computation of nth roots of an integer. We give an analysis that reduces the number of iterations by guaranteeing the number of correct digits obtained at each iteration. The initial application is to the calculation of the integer-power content of an integer.
1 Introduction The integer-power content of a E 7G is defined' to be the largest n E Z such that a = bn for some b E Z. We write ipc(a) = n. Also, b = ipf(a) is the integer-power free base for a. Clearly we have a = ipf (a)`Pc(a). Any algorithm that finds the integer-power content and base is called a perfect-power classification algorithm by Bernstein2. The first step in such an algorithm will be what Bernstein calls a perfect-power decomposition algorithm, that is the finding of any integer n, not necessarily maximal, such that a = P. Algorithms for computing n have been given by Bach and Sorenson3, by Bernstein2, and others. The computer algebra program Maple has a function iperf pow which computes a perfect power. In Maple 6, this function does not compute the integer-power content, as can be illustrated by the maple session > iperfpow(256); 16 A critical part of all the algorithms is the computation of the integer root of an integer, together with a test of whether this is an exact root. The Maple command iroot (a, n) will compute the integer closest to a'/n, for a, n E Z, but the command does not offer any test for an exact root. Most algorithms proposed for root extraction use iterative schemes based on Newton iteration. One exception is the algorithm used by the iroot function in Maple release 6. The function iroot (a, n) rounds the result of the floating-point computation of exp ('-n Ina). The algorithm of Bach and Sorensen uses a novel form of Newton iteration based on taking the floor of all intermediate results. We show that although this algorithm is attractive, it is not well suited to the Maple environment, and in general will become less efficient as the integers in question become larger. The algorithm of Bernstein 71
72 is based on a progressive-precision Newton iteration. The use of progressively increasing precision at each step of an iteration is something that is obvious and instinctive to human computers working by hand, and was enunciated in a computer setting by Brent4. As well as examining the efficiency of existing algorithms, including p-adic methods, this paper considers in detail the control loops used in programming progressive-precision iteration. We also consider Halley iteration as an alternative to Newton iteration. Our considerations are also influenced by the specifics of the Maple computing environment, in particular the fact that Maple offers a radix 10 number system. 2 Newton and Halley Iteration In this section, we give a uniform treatment of the Newton and Halley iterations.
2.1 General iteration formulae Consider solving the equation f (x) = 0, given an initial estimate x0 for the solution. We expand f (x) as a Taylor series around X. f (x) = f (xo)+( x-xo)J' (xo)+2 (x-xo )2 f"(xo)+s (x-xo)3 f'"(xo)+... (1)
Setting h = x - x0 and assuming f (x) = 0, we can solve for h by using the Lagrange inversion theorem. Abbreviating f (xo) to f for clarity, we write
h - - 1/ f - f
f2 +
3( f„)2
3 f 2(f) 6(f
,)
5 , fill f3 +...
(2)
The series is written as shown to emphasize that it is a series in powers of f (xo). The classical Newton iteration is obtained by taking one term of this series , and the classical Halley iteration is obtained by converting the series to a continued fraction and taking terms to 0(f2). The continued fraction form of (2) is _f
(3)
h= -f 2f ' /f " +
3f'(f")2/(3(f")2 - 2 f' f...)
and dropping higher-order terms and reverting to standard iteration notation, we get Halley's method as xktl =
f(xk) Xk - f'(xk ) - 2f(xk) f"(xk)/f'(xk) (4)
73
2.2 Rate of convergence The accuracy of the iteration can be analyzed in terms of forward and backward error. If the exact solution to f = 0 is denoted xe7 then an estimate xo gives a forward (absolute) error of Ixe - x' I and a backward error of If (xo) I. Maple users are accustomed to specifying accuracy by setting ` Digits', in other words specifying the number of correct digits in the answer. This is essentially the forward error. The present root-finding problem also requires a guaranteed forward error. The popular rules of thumb are that Newton `doubles the number of correct digits each iteration', and Halley `triples the number of correct digits'; the theorems below show that these rules are approximations. Theorem With the above notation, let x0 be a d-digit approximation in radix B to xe. So I xe - x'I /I xe I = bB-d+l, where 0 < b < 1. Then one step of a Newton iteration gives xln) accurate to / Ixe -
x 1I
-
I b2B- 2d+2xo f11( ^[ )I
I x el for some x0 < ^ <
xe.
Ixlh) -
xci
Ixe I
I 2 f'I
(5)
The improvement in one step of a Halley method is 3d+3X2fiii(e)I I (x,, - xo )3 f...(e)I I b 3 B-
I6x0f'(x0) I I6f'( xo) I (6)
3 Algorithms for Root Extraction One standard algorithm for extracting a root is the p-adic algorithms. This has not been used by any of the other papers studying perfect powers, the reason being that a p-adic iteration returns an integer, even if the root being calculated is not exact. A separate test must then be made to detect this. An integer-based algorithm has been given by Bach and Sorenson3. In the Maple programming language, computing x = alb" can be simplified to irootBachSor :=proc( a,n,flag) x:=a; f:= x"n-a; while 0
For a = 10100' and n = 2, this takes 30 sec. in Maple 6 on a pentium system. Most of this time is due to the poor starting approximation, but even with a starting point with 1 digit correct, the time is 0.6 sec . The main cost being that every iteration works with 1000 digit integers.
74
Bernstein works with floating point numbers, and progressive precision. Certainly in a Maple context, and perhaps others, progressive precision is more efficiently programmed using floating point numbers rather than integers. Our interest in this algorithm lies in the control of the iterative loop. In progressive precision calculations this is typically programmed as (the program fragment below is not Bernstein's; it is a simplification used for explanation). irootFloat:=proc(a,n,flag) '/, Digits is global tol:= Float(1,-Digits ); x:=start; xnew :=0; UserDigits:=Digits; Digits:=1; while abs(x-xnew )> tol do Digits:=min(2*Digits,UserDigits); x:= xnew; xnew := x- (x"n-a)/(n*x"(n-1)); od; x; end; This fragment assumes that a start value for x can be computed. The inefficiency with this method is the fact that the last iteration does not improve the accuracy, but simply verifies that the calculation is complete. This is in contrast to p-adic methods in which the number of iterations is known in advance and no extra ones are performed. Using (5) and (6), we have programed Newton and Halley iteration so that no extra iterations are performed.
3.1 Limitations of Newton and Halley iteration Evaluating (5) for f = xn - a, it can be shown that the improvement in accuracy per step deteriorates with increasing n. In current Maple, the existing iroot is faster for n > 100, and Halley iteration is faster for n < 100. References 1. D.J. Jeffrey, D.E.G. Hare, and R.M. Corless. Exact rational solutions of a transcendental equation. C.R. Math. Rep. Acad. Sci. Canada, 20:71-76, 1998. 2. D.J. Bernstein. Detecting perfect powers in essentially linear time. Mathematics of Computation, 67:1253-1283, 1998. 3. E. Bach and J. Sorenson. Sieve algorithms for perfect power testing. Algorithmica, 9:313-328, 1993. 4. R.P. Brent. Fast multiple-precision evaluation of elementary functions. J. Association Computing Machinery, 23:242-251, 1976. 5. J. von zur Gathen and J. Gerhard. Modern Computer Algebra. Cambridge University Press, 1999.
SEMI- ALGEBRAIC APPROACH TO PIANO MOVERS' PROBLEM NATEE TONGSIRI AND DANIEL RICHARDSON Department of Mathematical Sciences , University of Bath, Claverton Down, Bath, BA2 7AY, England E-mail: ntOmaths . bath . ac. uk; dsrOmaths . bath. ac. uk
1 Introduction The Piano movers ' problem or spatial planning problem involves placing an object among other objects (Findspace) or moving it from one place to another while avoiding collision with other objects in the process (Findpath).1 Several previous attempts to solve simple two dimensional movers' problem using quantifier elimination were unsuccessful because of excessive computational resource requirement. 2,3,4 We investigate the use of spatial subdivision and pruning, together with the projection operator (existential quantifier elimination ) as a means of solving the Findspace problem . We also suggest an extended version of Constructive Solid Geometry ( CSG) having projection and boundary formation as operators , as well as the usual Boolean ones . We focus on solving the movers' problem using the idea of Configuration Space ( C-space).',' This can be simply represented as a projection in semi -algebraic form.? The C-space approach reduces the problem from finding intersections of objects to dealing with a point relative to a set of objects . C-space obstacles are a set of points corresponding to the configurations which cause objects to overlap . This, effectively, is the solution to Findspace problem. Semi-algebraic sets are subsets of some R' defined by Boolean combinations of a finite number of polynomial equations and inequalities . Tarskis showed that every set which can be defined using Boolean operators and quantifiers starting with polynomial equalities and inequalities in some R", is semi-algebraic . Existential quantifiers correspond to geometric projection thus semi-algebraic sets are closed under finite union , intersection, negation and projection . Geometric objects can be built not only from Boolean combinations of equations and inequalities but also with projection. This makes it possible to represent objects and their motion constraints.9 CSG objects are built using Boolean combinations of simple objects or primitive . Objects are represented as a tree which has primitives at the leaves and operators at the nodes . Interval arithmetic10 is used to determine how 75
76
each primitive relates to the space. This method is called pruning.1' We eliminate quantifiers in order to represent the semi-algebraic solution in CSG with purely Boolean operators. We note that the objects are usually globally complicated but locally simple and that elimination of quantifiers has computational difficulty which increases much more than linearly with complexity of formula. We therefore we explore the possibility of using a spatial subdivision preprocessing technique before eliminating quantifiers. Results of some preliminary experiments are discussed.
2 Methods We present 2 approaches to solve the Findspace problem. Given a two dimensional piano P, the reference point of P, denoted by convention as re f p, is a fixed point in P coinciding with the origin of the global coordinate frame. The authors assume the reference point is inside P and that P is bounded. If P is allowed to translate in both dimension and rotate about re f p, the configuration of P can be specified by three parameters (x, y, 9) where (x, y) is the position of refp and 9 is the rotation about refp relative to the original orientation. The configuration space of P is a 3-dimensional space R2 x [0, 21r].12 It is clear that a position of P is impossible if and only if, there is a point (z, w) in P such that, if this point is translated by (x, y) and rotated about refp by 9, it will be in O. Such a point represents the overlapping of the piano and the obstacle. The collection of these points forms a Cspace obstacle. We can represent the above statement in quantified form as: 3z3w (P(z, w) A O (x + (z cos 9 - w sin 9), y + (z sin 9 + w cos 9)) ). This is the first method. The second method assumes that P is connected. P is also always either entirely outside the obstacle or entirely inside the obstacle or is intersected with at least an edge of the obstacle. Thus the position of the object P is also impossible if and only if, either there is a point (z, w) in P such that , if this point translated and rotated, it will be on the edge of the obstacle, or the reference point of P is in the obstacle. We can represent the collection of these points as: O(x, y, 9) V Sz3w(P(z, w) A edge(O(x + (z cos 9 - w sin 9), y + (z sin 9 + w cos 9)))). By using quantifier elimination on the above representations, we obtain an extended semi-algebraic representation of the C-space obstacle in (x, y, 9). This allows us to say that we can represent the C-space obstacle, as the result of a projection from the 5 dimensional space with coordinates (z, w, x, y, 9) to the three dimensional space, with coordinates (x, y, 0). We project out the
77
variables z and w. 3 Experiments We construct C-space obstacles of different pianos avoiding the same set of obstacles. The subdivision process were based on the size of the space. The time and number of formulae are reported. (See full paper.) In many cases, results in non-quantified form cannot be obtained and the time were omitted. Example 1 A two dimensional piano allowed to translate in only one dimension avoiding two dimensional obstacles. Example 2 A two dimensional piano allowed to translate in both dimension but not allowed to rotate avoiding two dimensional obstacles. Example 3 A two dimensional piano allowed only to translate and rotate avoiding two dimensional obstacles. 4 Results and Conclusion In many cases the quantifier-free output cannot be obtained due to limitations of the quantifier elimination software used.a There are two important factors that need to be taken into consideration, namely the time for the computation and the size of the non-quantified output. Both of these vary in an unstable way depending on the precise formulation of the problem. The authors believe that spatial subdivision and pruning, if done correctly, can be useful as a pre-process to quantifier elimination. In the third example the quantifier elimination only succeeded if it was preceded by spatial subdivision and pruning. The edge formulation computing time is better than the basic formulation, since the set to be projected is of lower dimension. The authors suggest this computation can be done more efficiently if it is preceded by spatial subdivision and pruning. No matter how it is done, the quantifier elimination is computationally hard, and the output in extended semi-algebraic representation is large and cumbersome. It seems we could learn to work directly with the representation of C-space obstacles as a projection, in an extended CSG system. In any case however, if the moving object or part of the obstacle is not algebraic, we must represent the C-space obstacle as a projection, since the elimination of quantifiers may not be possible. "The experiment was conducted using computer logic system REDLOG 2.013,14,15 as part of computer algebra system REDUCE 3.7 running on Intel Pentium II - 400 MHz with 128Mb of memory. The operating system was RedHat Linux 6.2.
78 References 1. J. T. Schwartz and M. Sharir. On the piano movers' problem I: The case of a two-dimensional rigid polygo nal body moving amidst polygonal barriers. Comm on Pure € Applied Maths, 36:345, 1983. 2. J.H. Davenport. On a "piano movers" problem. ACM SIGSAM Bulletin, 20(1-2):15-17, 1986. 3. J.H. Davenport, Y. Siret, and E. Tournier. Computer Algebra. Academic Press, 1988. 4. M. Kalkbrener and S. Stifter. Some examples for using quantifier elimination for the collision problem. Technical Report 87-22, Research Institute for Symbolic Computation, J. Kepler University, 1987. 5. T. Lozano-Perez. Spatial planning: A configuration space approach. IEEE Transactions on Computers, 32(2):108-119, 1983.
6. O. Bottema and B. Roth. Theoretical Kinematics. North-Holland Publishing Company, Amsterdam, 1979. 7. R. Benedetti and J.-J. Risler. Real Algebraic and Semi-Algebraic sets. Hermann, 1990. 8. A. Tarski. A Decision Method for Elementary Algebra and Geometry. University of California, Berkeley, 1951. 9. J. F. Canny. The Complexity of Robot Motion Planning. MIT Press, Cambridge, Mass., 1988.
10. E. Ramon Moore. Interval Analysis. Prentice-Hall, Inc., 1966. 11. J Woodwark. Geometric Reasoning. Clarendon Press, Oxford, 1989. 12. M. de Berg, M. van Kreveld, M. Overmars, and O. Schwarzkopf. Computational Geometry: Algorithms and Applications. Springer-Verlag, 1997. 13. A. Dolzmann and Th. Sturm. Redlog-computer algebra meets computer logic. Technical Report MIP-9603, Fakultat fur Mathematik und Informatik, UniversitatPassau, 1996. 14. A. Dolzmann and Th. Sturm. Redlog user manual. Technical Report MIP-9616, Fakultat fur Mathematik and Informatik, Universitat Passau, 1996. 15. A. Dolzmann and Th. Sturm. Redlog user manual. Technical Report MIP-9905, Fakultat fur Mathematik and Informatik, Universitat Passau, 1999.
QUANTUM SELF-DUAL CODES AND SYMMETRIC MATRICES VLADIMIR D. TONCHEV Department of Mathematical Sciences , Michigan Technological University, Houghton, MI 49931, USA • E- mail: tonchevOmtu. edu It is proved that a subclass of self-dual quantum-error-correcting codes of length n obtained from binary linear codes of length 2n defined by symmetric matrices, contains codes that meet the Gilbert-Varshamov bound.
1 Introduction In a recent paper Calderbank, Rains, Shor and Sloane' described a method of constructing quantum-error-correcting codes from ordinary binary or quaternary codes that are self-orthogonal with respect to a certain inner product. We use this relation to show that a class of binary formally self-dual codes defined by symmetric matrices give rise to quantum codes with error-correcting capacity proportional to the code length. 2 A Gilbert-Varshamov Bound for a Class of Binary Codes Theorem 2 .1 The class A of binary linear codes of length 2n and dimension n defined by generator matrices of the form (I, A) where A is a symmetric matrix, contains codes with minimum Hamming distance d > 0.22n. Proof Let C E A be a (2n, n) code with a generator matrix (I, A), where
A=AT Then (A, I) is a parity-check matrix of Cwrt the ordinary inner product 2n
- xiyi (mod 2). (1) i- 1 A vector x = ( X I ,- .. , x20 is in C if and only if (A, I)xT = 0, that is xy =
allxl + a12x2 + ... + alnxn = xn+l, a12x1 + a22x2 + ... + a2nxn = xn+2,
(2)
a1nx1 + a2nx2 + "' + annxn = X2n.
Now fix x and consider ail (i < j) as unknowns: allxl + a12x2 + a13x3 + "' + alnxn
=
xn+1
a12x1 + 0 + ... + a22x2 + a23x3 + "• + a2nxn = xn+2 a13x1
+
"'
a1nx1 + ...
79
+ a23x2 + = xn+3
= X2n
80
The coefficient matrix of this system of linear equations for x1 x2 X3
ai.7
is
x4 ... xn 0 0 0 ... 0 0 ... ... 0 ... 0 x2 x 3 x4 ... xn0 ... ...0
0 x1 0 0
M= 0 0 x1 0 ••• 0 0 x20 ••• 0 x3•••xn ...... 0 0 0 0 0 ... X1 0 0 0 ... X2 0 ... X3 ...... xn Every xi, 1 _< i < n, appears exactly once in every row of M, and the only (possibly) nonzero entries in the column corresponding to ai3 are x3 (in row i) and xi (in row j), j > i. It follows that if x1 = x2 = • • • = xr_1 = 0, Zr # 0, the matrix M contains a minor of order n of the form Zr
0 Zr 0 0 xr
0 0 0
••• Zr
Therefore, M is of rank n for every x = (x1i x2, ... , x2n ) E GF(2)2n such that (x1,. .. , xn) is nonzero . Consequently, the system of equations (2) has at most 2(°2')-n solutions , and x is contained in at most 221)-n codes from A. The total number of vectors in GF(2)2n of Hamming weight k and at least one nonzero component among the first n coordinates is +. _. + (n) ) (n),
n (1) (k - 1) + (2) (k n 2)
while the number of all such vectors of weight k < d (for a given d) is d-1 k
EE(i)(k k ( )C k=1 i=1
The number of codes in A that contain all such vectors of weight less than d is smaller or equal to 2(n +1)_n
k1 i1
n n i k - i)
(3)
If (A, I)xT = 0 and (B, I)xT = 0 then (A- B, 0)xT = 0, and the total number (XI, .. , x2n) of the last system is 22n-r, where r is the rank of solutions x =of A - B over GF(2). Thus, if A # B the codes generated by (I, A) and (I, B) ..+1
are distinct, and the total number of codes in A is 2 2 . Therefore, if d-1 k
n -i) i (k i k=1 i=1 \
<
2n,
(4)
81 then A contains a code with minimum Hamming weight at least d . We have d-1 k d - 1 k d-1 1 k=1 i=1
i (k ()
i) <
()
k=1
(k
) i=0
k =1
(2
J
<
2 2nH(f)
ford < n, where H(x) = -xlog2 x-(1-x) 1092 (1 - x) is the entropy function. Therefore, (4) holds true if
2nH(d-1 ) < n.
(5)
Since H(0.11) < 2, the class A contains codes with minimum weight d >_ 0.11(2n) = 0.22n. 3 Quantum Self- dual Codes Calderbank, Rains, Shor and Sloane' established a relation between quantumerror-correcting codes of length n and linear subspaces of the 2n-dimensional binary space GF(2)2n equipped with the symplectic inner product
((aib),(a'lb' ))= a•b'+b•a', (6) where (alb) = (al, ... , an, bl, ... , bn), (a'Ib ') = (a, ... , an, bl, ... , bn), ai, bi, a', bi E GF(2). The symplectic weight w8 of a vector ( al, ... , an , b1, ... , bn) E GF(2)2n is defined as the number of indices i such that at least one of ai and bi is nonzero. The symplectic weight w8 and Hamming weight wh of a binary vector (alb) are related by 2wh((a l b)) < w8 ((al b)) <-
wh((al b))•
(7)
The following result shows that binary symplectic self-orthogonal codes can be used for the construction of quantum-error-correcting codes. Theorem 3 . 1 ' Suppose S is an (n - k)-dimensional linear subspace of GF(2)21 which is contained in its orthogonal subspace S1 (with respect to the inner product (6)), and is such that there are no vectors of symplectic weight < d - 1 in S1. Then by taking the eigenspace (for any chosen linear character) of S, one obtains a quantum - error- correcting code mapping k qubits to n qubits which can correct [(d - 1)/2] errors. Consider now a binary (2n, n) code C E A with a generator matrix (I, A), where A is a symmetric n x n matrix. Since (A, I) is a generator matrix of the dual code with respect to the ordinary inner product (1), the code is formally
82
self-dual, that is, the Hamming weight distribution of the code and its dual coincide. Some formally self-dual codes have greater minimum Hamming distance than any self-dual code with the same parameters4. Lemma 3 .2 Any binary (2n, n) code C E A is self-dual (C = C') with respect to the symplectic inner product (6). Proof If G = (I, A) is a generator matrix of C, the inner product of the ith and jth row of G is ai.1 + aji = 0 (mod 2).
Now 2.1, 3.1, 3.2 and (7) imply the following Theorem 3 .3 The class of quantum-error-correcting codes of length n obtained from binary codes from A via Theorem 3.1 contains codes that can correct [(d - 1)/2] errors, where
d > 0.11n. Remark 3 .4 The bound d > 0.lln can be derived also from the known Gilbert-Varshamov bound for quaternary linear or additive self-dual codess,s and the result from' that relates quaternary codes of length n with quantum codes with n qubits. However, the class A is much smaller that any of these two classes. For example, the total number of quaternary additive self-dual codes of length n is n
n
j j(2i + 1) > 11 2i = 2('21) _ IAA. i=1
i=1
References 1. A.R. Calderbank, E.M. Rains, P.W. Shor, and N.J.A. Sloane, Quantum error correction via codes over GF(4), IEEE Trans. Information Theory 44 (1998), 1369-1387.
2. A.R. Calderbank, E.M. Rains, P.W. Shor, and N.J.A. Sloane, Quantum error correction and orthogonal geometry, Physical Review Letters 78/3 (1997), 405-408. 3. A. Ekert and C. Macchiavello, Quantum error correction for communication, Physical Review Letters 77/12 (1996), 2585-2588. 4. G.T. Kennedy and V. Pless, On designs and formally self-dual codes, Designs, Codes and Cryptography 4 (1994), 43-55. 5. F.J. MacWilliams, N.J.A. Sloane, The Theory of Error-Correcting Codes, North-Holland, Amsterdam (1977). 6. E.M. Rains and N.J.A. Sloane, Self-dual codes, in: A Handbook on Coding Theory, V.S. Pless and W.C. Huffman (eds.), Elsevier, Amsterdam (1998), pp. 177-294.
SINGLE AXIOMS: WITH AND WITHOUT COMPUTERS WILLIAM MCCUNE Mathematics and Computer Science Division, Argonne National Laboratory, Argonne, Illinois 60439, USA E-mail: mccuneemcs . anl.gov • Web: http://wvw.mcs.anl.gov /-mccune
1 Introduction This note is an (incomplete) summary of results on single equational axioms for algebraic theories. Pioneering results were obtained decades ago (without the use of computers) by logicians such as Tarski, Higman, Neumann, and Padmanabhan. Use of today's high-speed computers and sophisticated software for searching for proofs and counterexamples has led to many additional results. Considered here are equationally defined algebras, and the goal is to find simple single equations (1-bases) that axiomatize algebras that are ordinarily presented with sets of equations. For example, a standard way to define group theory is as an algebra with a binary operation, a unary operation, and a constant e satisfying the three equations e•x=x x-1 •x=e (x.y)•z=x•(y•z) What is the shortest equation, if any, that is equivalent to the preceding 3basis? Unfortunately, there is no single equational axiom for group theory in terms of product, inverse, and e.1 However, there are single axioms in terms of product and inverse alone. The shortest is2 (x . (y • (((z • z-1) • (u . y)-1) • x))-1) = U.
Although the identity e is not mentioned in the preceding axiom, one can prove that a constant with the appropriate properties exists. The focus in this note is on group-like algebras such as groups, Abelian groups, Boolean groups, and loops, and on lattice-like algebras such as lattices, weakly associative lattices, and Boolean algebras. Also considered are nonstandard operations for these algebras. For example, groups can be defined in terms of a single binary operation that can be thought of as division, x/y = x • y-1, and Boolean algebra can be defined in terms of just the Sheffer
83
84
stroke (or NAND), xly = x' + y'. Although a single axiom for group theory in terms of division is not strictly equivalent to the 3-basis above, it is definitionally equivalent. Substantial interest in single axioms also exists for Hilbert-style sentential systems which use modus ponens rather than equational reasoning, but we shall not consider those systems in this note.
2 Results without Computers Most of the results presented here, although obtained without the use of computers, are easily proved by an equational theorem proving program such as Otter.3,4
2.1 Group-like Algebras In 1938, Tarski presented the following axiom for Abelian group theory in terms of division:5 (x/(y/(z/(x/y)))) = z (1) In 1952 , Higman and Neumann gave the following single axiom for (ordinary) group theory in terms of division:6 (x/((((x/x)/y)/z)/(((x/x)/x)/z))) = y (2) More generally, Higman and Neumann presented a, single axiom schema that allows one to construct a single axiom for any subvariety of group theory that can be specified with an equation 6 = e, for some term 6. In 1981 , Neumann presented the following axiom for (ordinary ) groups in terms of product and inverse:' 1 . u) , (y , u)-1)-1) = z (3) (x . (((y-1 . (x-1 . z ))At the same time, Neumann presented a single axiom schema (analogous to the schema for division ) for groups in terms of product and inverse. For example , a single axiom for Abelian groups can be obtained by plugging (x y) • (y • x)-' into the schema.
In 1969 , Padmanabhan presented an axiom for inverse loops in terms of division,7 (u/u)/((x/y)/(z/(y/x))) = z, (4) along with an axiom schema. The schema generalizes the Higman and Neumann schema for groups in terms of division, because group theory is a subvariety of inverse loops.
85 In 1968, Meredith and Prior gave the following axiom for Boolean groups (that is, groups in which x • x = e):s (((y-x).z).(y.x))=x
(5)
2.2 Lattice-like Algebras
Results on single axioms for lattice-like algebras are less extensive than results for group-like algebras. In 1973, Padmanabhan and Quackenbush' presented a method for constructing a single axiom for any finitely based theory that has particular distributive and permutable congruences. Lattice theory (and therefore Boolean algebra) has these properties. However, straightforward application of the method usually yields single axioms of enormous length. In fact, a simple calculation shows that a straightforward application of the method to Boolean algebra in terms of the Sheffer stroke would produce a single axiom with more than 40 million symbols! If the construction method is applied to ternary Boolean algebra, that is, Boolean algebra in terms of a ternary operation f (x, y, z) = xy + yz + zx, the
following axioma is produced:'° f(f(x,4 y), (f(f(z, (f(f(u,v,w),v6,f( u,v,v7)))', AV, f (V7, vs, w) , u)), v8, z )) ', z) = y
(6)
3 Computer-aided Results Results in this section were obtained with assistance from automated deduction systems. Programs such as Otter3 were used to search for proofs, and programs such as MACE" and SEM12 were used to search for counterexamples. In addition, special-purpose symbolic computation software was written in several cases. 3.1 Group-like Structures In 1993, I presented the 4-variable axiom2 (x.(y.(((z•z-').(u•y)-1).x))-1)=u (7) aThis axiom was found as part of a project that used computers , but we include it here because it is the result of a straightforward application of the Pixley polynomial reduction method.
86 for group theory in terms of product and inverse. To find axiom (7), tens of thousands of candidate identities were constructed (nonexhuastively), and given to the theorem prover Otter to search for proofs of known bases. At about the same time, Kunen presented the 3-variable axiom for the same theory:13 (((z ' (x ' y)-1)-' . (z . y-1)) ' (y-1 ' y)-1) = x (8) More important, Kunen proved that there is no axiom shorter than axiom (7) for group theory in terms of product an inverse by constructing countermodels (by hand and with computers) for all shorter group identities.
In 1993, I gave the axiom (((x ' y) ' z) ' (x ' z)-1) = y (9) for Abelian groups in terms of product and inverse,2 simplifying the results of Neumann.' In 1995, Kunen and I found the schemal4 (('Y • z)-1 • y) ' ((a ' (z ' x))-1 ' y)-1 = x
(10)
for group theory in terms of product and inverse, simplifying and generalizing the Neumann schema.' In Equation (10), the subvariety is specified by ry = 6. In 1995, for inverse loops, Padmanabhan and I presented the schema15 x ' ((((x ' y-1) ' y)-1 ' z) ' ((S ' u)-' ' ('Y . u))) = z
(11)
and the corresponding axiom x ' ((((x ' y-1) ' y)-1 ' z) (v.-' u)) = z (12) The schema 11, although longer than the schema 10, is more general in the sense that groups are a subvariety of inverse loops. A group of exponent n is a group satisfying x" = e. For example, groups of exponent 2 are the Boolean groups. A shortest single axiom for Boolean groups was already known.8 In 1992, the Wos and I presented a schema for short axioms for groups of odd exponent.16 For exponent 3 groups, the schema produces the axiom x' ((x' (x' (y' (z' z))))' z) =Y.
(13)
In 1995, Kunen presented the axiom 14 (y ' ((y ' ((y ' y) ' (x ' z))) ' (z ' (z ' z)))) = x for groups of exponent 4 and proved that there is none shorter.
(14)
87 3.2 Lattice-like Structures
In 1995, Padmanabhan and I presented the axiom" f (.f (x, x', y), (f (f (z, u, v), to, f (z, u, v6)))', f (u, f(v6, to, v), z)) = y
(15)
for ternary Boolean algebra. It was found using Otter to derive identities from Equation (6), and then using Otter again for each identity to search for a proof of a known basis. In 1996, Padmanabhan and I presented the single axiom17 (((xny) V (y A (x V y))) A z) v (((x A (((x1 A y) V (y A X2)) V y)) V (((y A (((xi V (y V X2)) A (x3 V y)) A y)) V (u A (y V (16) (((Si V (y V X2)) A (x3 V y)) A y)))) A (x V (((xl A y) V (y A X2)) V y)))) A (((x A y) V (y A (x V y))) V z)) = y
for lattice theory. It was found by optimizing, with various automated reasoning techniques, the Pixley polynomial reduction procedure.' In addition, a single axiom schema was presented for subvarieties of weakly associative lattices.17 Just this year, a short axiom was found for Boolean algebra in terms of the Sheffer stroke, xjy = x' + y'. Stephen Wolfram had sent us a set of identities that were under investigation as being possible single axioms, and we proved two of them to be single axioms, including the following: 18
(x I ((y I X) I X)) I (y I (z I x)) = y (17) The proofs were quite difficult, and several interesting 2-equation bases were found along the way. Finally, also this year, the following short single axiom was found for Boolean algebra in terms of disjunction and negation:18 (((x + y)' + z)' + (x + (z' + (z + u)')')')' = z (18) An extensive and complex search was required to find this axiom (and several others of the same size). The general technique was to: 1. Generate well-formed equations under a set of constraints. 2. Apply a truth-table procedure to extract Boolean identities. 3. Build a set of finite non-Boolean algebras. These were found by applying the model-searching programs MACE" and SEM12 to search for nonBoolean (e.g., noncommutative or nonidempotent) models of candidate identities. The non-Boolean algebras have up to eight elements.
4. Eliminate candidates that are true in any of the non-Boolean algebras.
88 Acknowledgments I have worked with many on these problems, including R. Padmanabhan, Larry Wos, Bob Veroff, Rusty Lusk, Branden Fitelson, Kenneth Harris, Andrew Feist, and Ken Kunen. This work was supported in part by the Mathematical, Information, and Computational Sciences Division subprogram of the Office of Advanced Scientific Computing Research, U.S. Department of Energy, under Contract W31-109-Eng-38. References 1. B. H. Neumann. Another single law for groups. Bull. Australian Math. Soc., 23:81-102, 1981. 2. W. McCune. Single axioms for groups and Abelian groups with various operations. J. Automated Reasoning, 10(1):1-13, 1993.
3. W. McCune. Otter 3.0 Reference Manual and Guide. Tech. Report ANL94/6, Argonne National Laboratory, Argonne, IL, 1994. 4. W. McCune. Otter. http:// www.mcs .ani.gov/AR/otter/, 1994. 5. A. Tarski. Ein Beitrag zur Axiomatik der Abelschen Gruppen. Fundamenta Mathematicae, 30:253-256, 1938. 6. G. Higman and B. H. Neumann. Groups as groupoids with one law. Publicationes Mathematicae Debrecen, 2:215-227, 1952. 7. R. Padmanabhan. Inverse loops as groupoids with one law. J. London Math. Soc., 2(144):203-206,1969.
8. C. A. Meredith and A. N. Prior. Equational logic. Notre Dame J. Formal Logic, 9:212-226, 1968. 9. R. Padmanabhan and R. W. Quackenbush. Equational theories of algebras with distributive congruences. Proc. of AMS, 41(2):373-377, 1973. 10. R. Padmanabhan and W. McCune. Single identities for ternary Boolean algebras. Computers and Mathematics with Applications, 29(2):13-16, 1995. 11. W. McCune. MACE: Models and Counterexamples. http://www.mcs.anl . gov/AR/mace /,1994. 12. J. Zhang and H. Zhang. SEM: A system for enumerating models. In Proceedings of the International Joint Conference on Artificial Intelligence, 1995.
13. K. Kunen. Single axioms for groups. J. Automated Reasoning, 9(3):291308,1992. 14. K. Kunen. The shortest single axioms for groups of exponent 4. Com-
puters and Mathematics with Applications, 29:1-12, 1995.
15. W. McCune and R. Padmanabhan. Automated Deduction in Equational Logic and Cubic Curves, volume 1095 of Lecture Notes in Computer Science (AI subseries). Springer-Verlag, Berlin, 1996. 16. W. McCune and L. Wos. Application of automated deduction to the search for single axioms for exponent groups . In A. Voronkov, editor, Logic Programming and Automated Reasoning , volume 624 of Lecture Notes in Computer Science (AI subseries), pages 131-136. SpringerVerlag, Berlin, 1992. 17. W. McCune and R. Padmanabhan. Single identities for lattice theory and weakly associative lattices . Algebra Universalis, 36(4):436-449, 1996. 18. W. McCune, R. Veroff, B. Fitelson , K. Harris , A. Feist, and L. Wos. Single axioms for Boolean algebra. Preprint , Argonne National Laboratory, Argonne, IL, 2000.
HOMOMORPHISM THEOREM AND UNREACHABILITY FOR w REWRITING SYSTEMS K. AKAMA Center for Information and Multimedia Studies, Hokkaido University , Sapporo, 060-0811 , Japan • E-mail: akama@cims. hokudai. ac. jp
H. MABUCHI Faculty of Software and Information Science, Iwate Prefectural University, Takizawa, 020-0173, Japan • E-mail: mabuOsoft .iwate-pu.ac.jp
Y. SHIGETA System ULSI Engineering Laboratory, Toshiba Corporation , Kawasaki, 212-8520, Japan • E-mail: Yoshinori . shigeta0toshiba.co.jp Given two terms and their rewriting rules, an unreachability problem proves the non-existence of a reduction sequence from one term to another. This paper formalizes a method for solving unreachability problems by abstraction , i.e., reducing an original concrete unreachability problem to a simpler abstract one and then solving it to prove the original problem 's unreachability. Rewriting systems for concrete and abstract reachability in this paper are called w rewriting systems. They include very important systems such as term rewriting systems, string rewriting systems, semi-Thue systems, and Petri Nets. w rewriting systems are defined on axiomatically formulated base structures , called w structures , which are used to formalize the concepts of "terms," "substitutions," and "contexts" that are common to many rewritten objects.
1 Introduction An unreachability problem on a rewriting system is to prove the non-existence of a reduction sequence from one term to another. Throughout this paper we use a "coffee bean puzzle" as an unreachability problem for explanation of the theory, which is a modification from the one in the book by Dershowitz and Jouannaud5. [Coffee Bean Puzzle] Imagine a sequence of white and black coffee beans, e.g., "wwbbwwbb," where "w" denotes a white bean and "b" a black one. When there is a subsequence "bb" in the sequence, we can replace it with "w." When there is a subsequence of the form "bXw" in the given sequence, we can replace it with "Xb," where X is an arbitrary string on {w, b}. The question is whether a sequence of black beans, for example, a sequence of 99 black beans, can be changed by these operations into a single white bean. Solving unreachability problems by "brute-force search"' can take much 90
91 time and space, since many paths must be checked before all paths turn out not to reach the one arrangement from the other arrangement. A better method is to try to map the original concrete unreachability problem to a simpler abstract one, with the aim of deriving useful information for the solution of the original problem. Such a technique is often applied to complicated problems in computer science and artificial intelligence s,9,s,4. The aim of this paper is to formalize such a method to solve unreachability problems for a class of rewriting systems. In order to formalize the coffee bean puzzle, we introduce a string rewriting system R1 with the following two rules:
bb -- w, bXw -4 Xb, which formalize the possible operations. The coffee bean puzzle is the un99 reachability problem of b99 (= bbb . . . b) into w by the rules in R1. For an abstract problem, we also consider a number rewriting system R2 with the following two rules:
2-+0, (1+X)-4(X+ 1), obtained by counting the numbers of "b" in the strings in the rules in R1. These two rewriting systems have different domains; one rewrites strings and the other numbers. However, both systems have the same structure. They have terms (strings and numbers), substitutions, and contexts (string pairs and numbers). Contexts change terms to other terms. Rewrite rules are pairs of terms and produce immediately-reachable pairs by application of substitutions and contexts. A reachability relation is a reflexive and transitive closure of an immediately-reachable relation. This class of rewriting systems was first introduced in the paper by Akama2 and each of them is called an w rewriting system. Since numbers in all reduction sequences by R2 remain unchanged or decrease by 2 by application of the rules, it is obvious that 0 can not be reached Rz from 99. Intuitively, the unreachability 99 /-+, 0 implies the unreachability Ri
b99 f-->,, w. Thus, a sequence of 99 black beans cannot be changed by the given operators to a single white bean. The main concern of this paper is justification of such an intuitive inference. Section 2 reviews w structures and w rewriting systems. Section 3 introduces homomorphisms and a homomorphism theorem. Section 4 proves an unreachability theorem for w rewriting systems. Unreachability of the coffee bean puzzle is proven using the unreachability theorem. Section 5 gives
92 concluding remarks.
2 w Structures and w Rewriting Systems 2.1 w Structures In order to capture the common base structures of term rewriting systems and other rewriting systems, a structure, called an w structure, was introduced2. Definition 1 Let Trm, Sub, and Can be arbitrary sets, e an element in Sub, and ❑ an element in Con. Let Dom be a subset of Trm. Let fss be a mapping from Sub x Sub to Sub, fcc a mapping from Con x Con to Con, fTs a mapping from Trm x Sub to Trm, fTc a mapping from Trm x Con to Trm, and fcs a mapping from Con x Sub to Con. Then, the eleven-tuple (Trm, Dom, Sub, Con, e, ❑ , f SS, fcc, frs, fTc, Tc, fes)
is called an w structure when it satisfies the following requirements: D1 Vt E Trm : fTs(t, E) = t, D2 Vt E Trm : fTc (t, ❑) = t, 1 D3 Vt E Trm,`d91i92
E Sub : fTS(fTS( t ,01),02 ) = fTS (t,
D4 Vt E
E Con : fTc(fTc(t,cl),c2) = fTc(t,fcc(clc2)),
Trm,Vcl,c2
fSS(01,02)),
D5 Vt E Trm,`dc E Con, `d9 E Sub : fTs(fTc(t, c), 0) = fTc(fTS(t, e), fcs(c, 9))
Application of the mappings fss, fcc, fTs, fTc, and fcs is usually denoted in a more readable manner: fss (91i 92 ) is denoted by 9192i fce(c1, c2) by c1c2, fTs(t, 9) by t9, fTc(t, c) by tc, and fcs(c, 9) by CO. Hence, fTc(fTs(t,9),c) is denoted by (t9)c. Left associativity is assumed for such notation. For instance, (• • • ((tcl )c2) ... c,2), which is the result of successive application of c1, c2, • • • , c,, to t E Trm, is denoted by tcic2 • • • c,b.
Thus, the five requirements in Definition 1 can be restated as follows: D1 dtETrm:te=t, D2 VtETrm:tD=t,
D3 dt E Trm,`d91i92 E Sub : t9192 = t (0192), D4 Vt E Trm, dcl, c2 E Con : tc1c2 = t (cjc2), D5 WE Trm, be E Con, `d9 E Sub : tc9 = t9(c9).
93
2.2 Rewriting Systems on w Structures A rewriting system R on an w structure F f2 = (Trm, Dom, Sub, Can, c, ❑ , fSS, fCC, fTS, fTC, fcs)
is a subset of Trm x Trm. A rewriting system R on an w structure is called an w rewriting system . An element (1, r) in R is called a (rewriting) rule. Definition 2 A term v E Dom is immediately reachable from u E Dom by a rule (1, r) E R, denoted by u (1'r v, iff there are 9 E Sub and C E Can such that u = lOc and v = r9c. Definition 3 A term v E Dom is immediately reachable from u E Dom by a rewriting system R, denoted by u -+ v, iff there is a rule (1, r) E R such that (1,r)
u v.
Definition 4 A term v E Dom is reachable from u E Dom by a rewriting system R, denoted by u -4. v, iff Dom includes terms s, , s2i • • •, s„ (n > 1) such that The rewriting relation -* is the reflexive and transitive closure of - R. For an arbitrary w rewriting system R, the set of all pairs (x, y) such that x-4 „ y will be denoted by [R], i.e., [R] _ {(x, y) I x -4. Y}-
2.3 The Class of all w Rewriting Systems An w rewriting system is defined on an axiomatically formulated base structure, called an w structure, which is used to formalize the concepts of "terms," "substitutions," and "contexts" that are common to many rewritten objects. The class of all w rewriting systems includes very important systems',2 such as term rewriting systems, string rewriting systems, semi-Thue systems, and Petri Nets.
3 Homomorphism 3.1 Definition of Homomorphism The concept of a homomorphism from an w structure to an w structure is introduced. Definition 5 Let SZl and S22 be w structures: Q, = (Trml, Dom,, Sub,, Con,, el,
fssi, fccl, fTsl, fTCl, fcsi),
Q2 = (Trm2 i DOm2, Sub2, Con2, E2, 02, fSS2, fCC2, fTS2, fTC2, fCS2)
94 Let hT be a mapping from Trm1 to Trm2i hs a mapping from Sub, to Sub2, and he a mapping from Can, to Con2. A triple of mappings (hT, hs, hc) is a homomorphism from 52, to 522 if 1.
hT(fTC1( fTS1(t,9),c))
=
fTC2(fTS2(hT(t), hs(9)),h c(c))
for all t E Trm1 i 9 E Sub,, and c E Con,. 2. hT(Dom,) C Dom2 Using the notational convention mentioned earlier, the first requirement for a homomorphism is denoted simply by
hT(tOc) = hT(t)hs(O)hc(c). In the sequel, a triple of mappings (hT, hs, hc) is assumed to be a homomorphism from an w structure
52, = (Trmi, Dom,, Sub,, Con1, E1, 01)
fSS1 , foci, fTS1, fTC1, fcsi)
to an w structure 522 = (Trm2i Dom2, Sub2, Cion2, e2, ❑ 2) fss2, fcc2, fTS2, fTC2, fCS2)• Since hT is a mapping from Trm1 to Trm2i it can naturally be extended into the following mappings:
hT : Trm, x Trm, -a Trm2 x Trm2, (x, y) --+ (hT(x), hT(y)), hT :2 Trm,xTrmi 2Trm2 xTrm2 '
S r-4 {(hT(x), hT(y)) I (x, y) E S}. Note that, for the sake of simplicity, all these extensions are referred to by the same name hT. In particular, a rewriting system on 52, is transformed into a rewriting system on SI2 by the mapping h
T :2Trm,xTrmi
-+2Trm2xTrm2
In other words, if R is a rewriting system on 521, then hT(R) is a rewriting system on 522. 3.2 Homomorphism Theorem Proposition 1 Let (hT, hs, hc) be a homomorphism from an w rewriting system 52, to an w rewriting system 522 . Let R be a rewriting system on 521. R
If x --+ y, then hT(x) h-) hT(y).
Since x -R+ y, we have x E Dom,, y E Dom,, and there is a rule (1, r) in R such that x ^Lr y. Hence, there are c in Con, and 9 E Sub, such that x = lOc and y = rOc. Application of hT to these equalities yields hT(x) = hT(l9c) and hT(y) = hT(r9c). Since (hT, hs, hc) is a
Proof
95
homomorphism from 521 to 112, we have (1) hT(x) E Dome,
(2) hT(y) E Dome, (3) hT(lOc) = hT(1)hs(B)hc(c), (4) hT(rOc) = hT(r)hs(B)hc(c)• Therefore, from (3) and (4), it follows that hT(x) = hT(l)hs(B)hc(c), hT(y) = hT(r)hs(B)hc(c)• Hence, hT(y) E Dome is immediately reachable from hT(x) E Dome by the rule (hT(l), hT(r)) in hT(R). Thus, hT(x) hl-(-R+) hT(y) is obtained. ❑ A homomorphism theorem for w rewriting systems is now readily obtained from Proposition 1. Theorem 1 Let (hT, hs, hc) be a homomorphism from an w rewriting system 521 to an w rewriting system 522 . If R is a rewriting system on 5l1i then
(1) (x, y) E [R] -+ (hT(x), hT(y)) E [hT(R)], (2) hT([R]) C [hT(R)]. Proof u1, u2,
(1) Assume that (x, y) E [R]. • , un (n > 1 ) in Dom1 such that
x=u1 4u2Proposition 1 yields
".
Then, there is an n step path
4Un=y•
hT(x) = hT(ul) ham) hT(u2) h-4) ... h(R) hT(un) = hT(y)• Thus, it follows that
(hT(x), hT(y)) E [hT(R)]. (2) Assume that ( x2, y2 ) E hT([R]). Then, there is (x1i y1) in [R] such that hT(x1) = x2 and hT(y1) = Y2• Since (x1i y1 ) in [R], we have, by (1), (hT(xl),hT(yl)) E [hT(R)],
which is equivalent to (x2, y2 ) E [hT(R)]•
❑
4 Unreachability of w Rewriting Systems
4. 1
Unreachability Theorem for w Rewriting Systems
Unreachability with respect to an w rewriting system R is determined by the set [R]; i.e., v is not reachable from u if and only if (u, v) ¢ [R]. Thus, the unreachability theorem is obtained.
Theorem 2 Let (hT, hs, hc ) be a homomorphism from an w rewriting system
96
52, to an w rewriting system 12. Let R be an w rewriting system on 521. Then, v in Doml is not reachable from u in Dom, by R if hT(V) in Dome is not reachable from hT(u) in Dome by hT(R). Proof v in Dom is not reachable from u in Dom by R if (u, v) ¢ [R]. Similarly, hT(v) is not reachable from hT(u) by hT(R) if (hT(u), hT(V)) $ [hT(R)]. Since (u, v) ¢ [R] is implied from (hT(u), hT(v)) ¢ [hT(R)] by (1) in Theorem 1, this theorem is obtained. ❑
4.2 w Structure for the Concrete Domain The coffee bean puzzle can be solved by using Theorem 2. Let T = {b, w}. Let V be a set {X, Y, Z, • • .} that is disjoint from T. Each element in V is called a variable. Let Trm1-be the set of all strings on V U T. Let Dom, be the set of all strings on T. Let Sub, be the set of all substitutions on V and Trm1. Let Can, be the set of all pairs of strings on V U T. Let e1 be the empty substitution {} and ❑ 1 the empty-string pair (A, A). Let fssl : Sub, x Sub, -3 Sub,, fcc, :,Con, x Con, -* Con1, fTS1 : Trm1 x Sub, -+ Trm1i fTcl : Trmi x Con, -+ Trm1i fcsl : Con1 x Sub, -4 Con, be defined as follows: fssl (/01, B2)) = 9192, fcC1((Q1, 01), (a2, 02)) = (a2 o a,, Ni 0 02), fTSl (t, 0) = t9, fTC1(t, (a, N)) =
a o t o 0,
fcsl ((a, 13), 9) = (a9, p9).
Then, since the requirements from D1 to D5 are readily proved, the eleventuple tatr (T) = (Trmi, Dom1, Sub,, Con1, e i, 131, fssi, foc i, fTs1, fTcl, fcsi) is an w structure.
4.3 w Rewriting System for the Concrete Problem Let R = {bb -* w, bXw -> X b}. Then, R is a rewriting system on 4^etr (T) and formalizes rewriting rules for the coffee bean puzzle: 1. A term v E Dom, is immediately reachable from u E Dom, by a rule (bb, w) E R, if there are 0 E Sub and c E Con such that u = (bb)9c and
97
v = wOc, which is equivalent to the existence of strings a and /3 such that u = abb,Q and v = aw/3. 2. A term v E Dom is immediately reachable from u E Dom by a rule (bXw, Xb) E R, if there are 9 E Sub and c E Con such that u = (bXw)Oc and v = (Xb) Oc, which is equivalent to the existence of strings a, /3, and ry such that u = abryw/3 and v = aryb/3. The coffee bean puzzle formally becomes: Is w reachable or not from b99 by R?
4.4 w Structure for the Abstract Domain In order to solve this problem, we introduce an w structure for the abstract domain.
Let Z be the set of all integers. The quotient set Z/2, which consists of [0]2 and [1]2 is closed under addition ®. [0]2 ® [012 = [012, [012 ® [1 12 = [1]2, [112 ® [0]2 = [1 12, [112 ® [1]2 = [0]2• Let formula(2, V) be the set of all formulas composed, by addition ®,
of [012, [1]2, and variables in V. The set formula(2, V) includes [012, [112, X, X $ [112, X ® [1]2 ® [1]2 ® Y, and others. Expressions el and e2 in f ormula (2, u) are equivalent (el = e2) if el and e2 are always equal for all instantiation of variables. For instance, [012 = [112 ® [112, X ® [112 = [112 ®X, X ® Y = Y ® X ® [012, and so on. We identify all equivalent expressions in
f ormula(2, u). Let Trm2 be the set formula(2, V), Dome the set of formula(2, { }), Sub2 the set of all substitutions on V and Trm2i Cone the set f ormula(2, V), Let e2 be the empty set and ❑2 = [0]2. Let fss2(01, 92) = 9192, fCC2(cl, c2) = C1 ® C2, fTS2 ( t, 9) = t9 , fTC2 (t, c) = t ® c, and fcs2 (c, 9) = c9, where application and composition of substitutions are defined in the same manner as those of the term domain. Then, since the requirements from D1 to D5 are readily proved, 4^red (2) = (Trm2i Dom2, Sub2, Con2, e2, ❑2, fSS2, fCC2, fTS2, fTC2, fCS2) is an w structure.
4.5 Homomorphism Let hT : Trm, -* Trm2i hs : Sub, -* Sub2, and he : Con, -* Con2 be defined by hT(t) = occ(b, t),
hs(9) = {(v , t') I t' = occ(b, t), (v, t) E 9},
98 he ((a, /l)) = occ(b, a o #). where occ(b, t) is the expression that is determined as follows. a is an arbitrary string and X is an arbitrary variable. occ(b, A) = [0]2, occ(b, wa) = [0]2 ® occ(b, a),
occ(b, ba) = [1]2 ® occ(b, a), occ(b, Xa) = X ® occ(b,a).
Let t be a string in Trml, 0 a substitution in Sub,, and c = (a, /3) a context in Con,. 1. hT(fTC1(fTSl( t,0),C)) = hT(afTSl (t, 9)0) = occ(b , a o (tO) o 0)
= occ(b, t9) ® occ ( b, a o ,6)
= fTC2 ( occ(b, tO), occ (b, a o /3)) (t), hs(0)), h c (c)).
= fTC2(fTS2(hT
2. Since occ(b, t) is (equivalent to) either [0]2 or [1]2 when t is a string on T, hT(t) (= occ(b,t)) is in Dom2 for all tin Dom,. Thus, (hT, hs, hc) is a homomorphism from 4g, (T) to (P,,d (2).
4.6 Unreachability The problem can now be solved easily by the unreachability theorem (Theorem 2). We have hT(bb) = [1]2 ® [1]2 = [012, hT(w) = [0]2i hT(bXw) = [1]2 ® X
[0]2 = [1]2 ® X, hT(Xb) = X ® [1]2 (1) hT(R) = { ([012, [012), ([112 hT (2)
=
[1]2 ® X. Therefore, X, [1]2 (D X)},
(bs9) = [1]2,
(3) hT (w) = [012 Since hT(R) includes only non-changing rules (i.e., the left and the right hand sides of each rule are the same), it follows that hT(w) is not reachable from hT(b99) by hT(R). Therefore, by Theorem 2, w is not reachable from b99 by R. 5 Concluding Remarks This paper proposes a theoretical foundation for solving unreachability problems, proving the homomorphism theorem and the unreachability theorem for w rewriting systems. The theory comprises the following elements; two w structures, two w rewriting systems, two reachability relations on the two
99
w rewriting systems, a homomorphism between two w structures, a homomorphic relation between the two w rewriting systems, the homomorphism theorem, and the unreachability theorem. Many important rewriting systems, including term rewriting systems, semi-Thue systems, and Petri Nets, are w rewriting systems. They have been discussed separately, since no unified theoretical basis has been developed. However, in order to solve unreachability problems, separate theories are not convenient, since the base domains of abstract rewriting systems must often be defined as domains that differ from the domains of original concrete rewriting systems. Therefore, adoption of the class of w rewriting systems is essential to establish the present theory of homomorphisms and unreachability. References 1. K. Akama, Common Structure of Semi-Thue Systems, Petri Nets, and Other Rewriting Systems, Hokkaido University Information Engineering Technical Report, HIER-LI-9407 (1994). Revised version in IEICE Trans. of Information and Systems, E80-D (12), pp. 1141-1148 (1997). 2. K. Akama, An Axiomatization of a Class of Rewriting Systems, Hokkaido University Information Engineering Technical Report, HIER-LI-9409 (1994). 3. B. Buchberger, History and Basic Features of the Critical-Pair / Completion Procedure, J. Symbolic Computation 3, pp. 3-38 (1987). 4. P. Cousot and R. Cousot, Abstract Interpretation and Application to Logic Programs, J. Logic Programming 13 (2&3), pp. 103-179 (1992). 5. N. Dershowitz and J. Jouannaud, Rewrite Systems, Handbook of Theoretical Computer Science, Chapter 6, pp. 243-320 (1990). 6. C.A. Knoblock, A Theory of Abstraction for Hierarchical Planning, Change of Representation and Inductive Bias, pp. 81-104, Kluwer (1990). 7. R.E. Korf, Planning as Search: A Quantitative Approach, Artificial Intelligence 33, pp. 65-88 (1987).
8. E.D. Sacerdoti, Planning in a Hierarchy of Abstraction Spaces, Artificial Intelligence 5, pp. 115-135 (1974). 9. A. Unruh and P.S. Rosenbloom, Abstraction in Problem Solving and Learning, Proc. of IJCAI-89, pp. 681-687 (1989).
LOGIC PROGRAMMING - TAKING ADVANTAGE OF SYMMETRY JINZHAO WU Universitat Mannheim, Fakultat fur Mathematik and Informatik, D7, 27, 68131 Mannheim, Germany E-mail: wuOpi2. informatik.uni-mannheim.de We argue that taking into account some symmetric structure in a logic program may enhance the declarative ability or expressive power of some semantics. We first define a symmetric group associated with a given logic program . Since usually the canonical models used to reflect the common -sense or intended meaning are minimal or completed models of the program , we then expose the relationships between minimal models and completed models of the original program and its so-called G-reduced form newly derived via the symmetric group . Using this Greduced form as a standard , we introduce a rule to assume negative information termed G-CWA, which is in fact a generalization of the GCWA. We develop the concepts of G-definite , G-hierarchical and G-stratified logic programs , which are more general than definite, hierarchical and stratified logic programs, and extend some well-known declarative and procedural semantics to them , respectively.
1 Introduction In general logic programming techniques do not take advantage of symmetry. This paper is the initial work to show how to utilize some symmetric structure as a useful factor in logic programming. As is known, two criteria to evaluate a semantics are its declarative ability to reflect the common-sense or intended meaning and the expressive power of the language characterized by it. We show that the introduction of some symmetric structure in a logic program may enhance the declarative ability of GCWA and the expressive power of SLD-resolution , completion procedure, SLDNF- resolution and standard model semantics. The GCWA7 does not allow any elementary facts in the minimal models to be negative . So the corresponding declarative semantics sometimes fails to reflect the common-sense or intended meaning of the logic program. Taking the symmetric structure into account , we present a proposal termed G-CWA to deal with negative information , which is more powerful from the viewpoint of declarative ability. It indeed is a generalization of the GCWA. The SLD-resolution , SLDNF-resolution 6 , and the standard model (iterative fixed-point ) semantics' are generally effective respectively for definite, hierarchical and stratified logic programs . The completion procedure 6 may lead to inconsistency for non- stratified logic programs . Therefore they are 100
101
restrictive from the point of view of expressive power. Making use of the symmetric structure, we define three classes of logic programs named G-definite, G-hierarchical and G-stratified logic programs, which are more general than definite, hierarchical and stratified logic programs, respectively. We extend the SLD-resolution, SLDNF-resolution, as well as the standard model semantics to them, and show that the completion of a G-stratified logic program is consistent. As a matter of fact, a lot of work has been done to achieve these goals. On various sophisticated formalizations and extensions, the reader may consult relevant references2"10. Our work on model and procedural semantics is not covered by previous results. This is actually not theoretically important. The main point is that a methodology is proposed. We can similarly consider, for example, by taking the symmetric structure into account, the careful CWA, various semantics for strict, locally stratified, and call-consistent logic programs. So, another purpose of this paper is to suggest using some symmetric structure as an involved factor when dealing with semantic issues. This paper is organized as follows. Section 2 presents some notations which are necessary for our following discussions. In Section 3, we first define a symmetric structure in a logic program. Removing this symmetric structure, we obtain a new logic program which can be used as a standard to introduce various semantics. We see the influences of this removing on minimal and completed models in Section 4. In Section 5, we introduce the G-CWA to assume negative information, define G-definite, G-hierarchical and G-stratified logic programs, and propose semantics for them. For simplicity, most of the results are given in the propositional logic framework. They are extended to the predicate case in Section 6. We conclude the paper in Section 7. For the limitation of space, we omit all the proofs and informal explanations. These and some examples to illustrate our results may be found in a recent paper" by the author. 2 Notations For some basic notions in the theory of symmetric groups, for instance, permutations, symmetric group SR on a non-empty set R, and its orbits, the reader may consult the books by Rotman. We call the subgroups of SR symmetric groups for convenience here. Suppose that 01,..., 0,,, constitute a partition of R. For any al E Sol , ... , Q„a E So, let o' be the following permutation on R: a(r) = vi (r), if r E O. By G = So, x ... x Som we denote the set of all such permutations. We use Fix(G) to represent the set of all the elements of R fixed by G9.
102 To be clear, for the major part of this paper we are concerned with the propositional logic. Throughout the paper P represents a normal program, and R the set of all atoms appearing in P. As usual we represent an interpretation I by I = {r I I(r) = 1}, where r is an atom. For an expression T, we use a(T) to denote the expression obtained from T by replacing any atom r occurring in T by o (r). For G C SR, G(T) = {Q(T) I a E G}. Obviously P is stratified[hierarchical, definite] if a(P) is stratified[resp. hierarchical, definite]. For a literal L and a literal set M, let Ln = n 1L(L° = 1), where n is a natural number, and M+[M-] be the set consisting of the atoms occurring in the positive[resp. negative] literals in M. For a clause C = (A Y , Ai) A (nj=1(- Bj)) -3 B, Mc denotes the set consisting of -iAi, Bj and B,,, (i = 1, ... , u, j = 1, ... , v). When we write C in the form C = (AZ 1A") A (Aj=1(_lBj)bi) -+ B,,,, we suppose that ai, bj are natural numbers, B,,, is an atom, Ai are atoms different from each other, and so are Bj. 3 Symmetric Structures in Logic Programs Here we define a symmetric group G associated with P, and construct a new program called G-reduced form of P. We also present two examples to illustrate that there do exist such theoretically non-trivial symmetric groups. 3.1 Definition Let 0k,. .. , 0,,,, constitute a partition of R. We say that for P this partition is well-arranged if for any C E P it meets the following condition: If MC nOi # 0 for some Oi, then there exist Oj and two different r1, r2 E Oj, such that r1, r2 E MC; Otherwise, for an arbitrary r1 E MC, if r1 E Oi then Oi C M, . If for P, 0i,. .. , 0,,,, constitute a well-arranged partition of R, then we call G = Sol x . . . x So_ a symmetric group associated with P. The main reason why we define G is that we need the action of G to resume exactly the minimal or completed models of P. Except for the expressive convenience and the computational interest, the property that G is a group is unessential . It is easy to see whether there are non-trivial symmetric groups associated with P is decidable if P is finite. 3.2 G-reduced forms of logic programs From now on G represents a symmetric group associated with P, and 01, ..., 0,,,, are all the orbits of G. The following is a formal description of the procedure to construct a new program G(P).
First, in each orbit Ok of G choose an atom rk, and call it the represen-
103
tative of this orbit. Let C(O) = C; For k > 1 , assume
C(k-1) =AAB->B.,A=A ,Aa. B=^^_1(lB^)bs If there exists Ai, such that Ai E Ok and Ok is proper, then let E(C) = 0; Otherwise, let E(C) = {C(m)}, where C(m) is the clause derived in the following way: Suppose that B31,. .. , B,,8 (j4 0) are all the atoms occurring in B such that each Bji E Ok. Let Boo,, _ A,E(v_J) (,Bj)bi, where J = {jl,..., js},V = {1, ... , v}. Obviously J C V. For r E R define b(r) 1, if there exists j, such that Bj = r; 0, otherwise.
If B,,, Ok, then C(k) = A A (B\o,,) A (-irk) -+ By,. If B,,, E Ok, then C(k) = A A (B\o,,) A (-'rk)b(B-) -+ rk. Let G(P) = UCEpE(C). G(P) is called a G-reduced form of P. In the procedure above, some clauses and literals are removed from P. The number of the atoms appearing in G(P) is clearly m. In the case when G is not trivial, the number of the clauses or atoms occurring in G(P) is less than that of P. Notice that G(P) is not deterministic. However, a G-reduced form of P is stratified[hierarchical, definite] if all the G-reduced forms of P are stratified[resp. hierarchical, definite]. Now assume PA = {C E P I Mc V= Fix(G)}. For any proper orbit 0 of G, if there exist r E 0 and C E P - PA such that r is the head of C, then in the procedure to form G(P), choose this r as the representative of 0. Otherwise, choose an arbitrary element of 0 as its representative. We call such a derived G(P) keep heads. 3.3 Examples In this section we develop two theoretically non-trivial examples. For more details and some concrete examples, see the two papers11,12 by the author. Disjunction-invariant symmetric group Let Gc = {o' E SR I a (Mc) = Mc} for C E P. Gc consists of all the permutations keeping invariant the disjunction form of C. It is a symmetric group on R. Let G = fCEpGC. G is again a symmetric group on R. All the disjunction forms of the clauses in P are preserved under G. We call this G the disjunction-invariant symmetric group of P. Let 01i . . . , 0,,,, be all the orbits of G. Then it is not hard to prove that for P, 01,. .. , 0m constitute a well-arranged partition of R, and G= Sol x • . . x So_. Therefore G is a symmetric group associated with P. Sequential disjunction -invariant symmetric group Now we construct a "bigger" (in contrast to the size of orbits) symmetric group associated with P from
104
a sequence of the disjunction-invariant symmetric groups defined above. Let Po = P, and Go the disjunction-invariant symmetric group of P. For k > 0, while Pk 54 0 and Gk is non-trivial, let Pk+1 be a Gk-reduced form of Pk, and Gk+1 the disjunction-invariant symmetric group of Pk+1 if Pk+1 # 0.
This procedure terminates since when Gk is not trivial the number of elements of Pk+1 is less than that of Pk. Upon the termination, we obtain a symmetric group sequence Go, ... , Gn. Let 0 = Uk=o{O 10 is an orbit of Gk}. We define a binary relation H on 0: For O, O' E O, O O' if 0 fl O' 54 0. H is reflexive and symmetric. Let H* be its transitive closure. t-+* is thus an equivalence on O. Let Oi(i = 1,.. . , m) be all the equivalence classes of ++*, and Oi = UOEO2 O. Then Oi (i = 1, ... , m) constitute a partition of R which is well-arranged for P. Thus G = Sol x • • • x Som is a symmetric group associated with P. It is independent of the choices of symmetric group sequence Go, ... , Gnll. We call this G the sequential disjunction-invariant symmetric group of P. 4 Minimal and Completed Models of Logic Programs Now we investigate the relationships between the minimal models, and the completed models, of P and G(P). Lemma 4 .1 Suppose that 0 is an orbit of G, and I a minimal model of P. For two different r1, r2 E 0, if r1 E I then r2 ¢ I. Lemma 4 .2 (1) If IG is a minimal model of G(P), then IG is a minimal model of P; (2) If I is a minimal model of P, then for any a E G, a(I) is a minimal model of P.
By these two lemmas , we have Theorem 4 .3 If I is a minimal model of P, then there exist a minimal model IG of G(P) and a E G such that I = a(IG); If IG is a minimal model of G(P), then for any a E G, I = a(IG) is a minimal model of P. Theorem 4.3 indicates that the actions of the permutations in G on all minimal models of G(P) lead to all minimal models of P. To get the minimal models of P, we only need replace atoms in the minimal models of G(P) by those in the same orbits of G.
Now let 01 and C(1) be defined as in the procedure to derive G(P), and P1 = UCEP{Ci (1)}.
Lemma 4.4 If Il is a model of Comp(P1), then there exist al E Sol such that al (I,) is a model of Comp(P).
Lemma 4.5 Suppose that P is hierarchical, I is a model of Comp(P), and 0 is an orbit of G. For two different rl, r2 E 0, if r1 E I then r2 ¢ I.
105
By these two lemmas, we have Theorem 4.6 (1) If IG is a model of Comp(G(P)), then there exist a E G such that a(IG) is a model of Comp(P); (2) If P is hierarchical and G(P) keeps heads, then Comp(p) and Comp(G(P)) are logically equivalent. So, up to some permutations in G the completed models of G(P) are completed models of P. As a corollary, Comp(P) is consistent if Comp(G(P)) is consistent.
5 Applications: Negative Information and Semantics We first describe a rule to tackle negative information termed G-CWA by combining G into the GCWA. Then we define G-definite, G-hierarchical, and G-stratified programs by combining G into the definitions of definite, hierarchical, and stratified programs, and extend some well-known semantics to them, respectively. 5.1 G-CWA Assume that Oi(i = 1, ... , m) are all the orbits of G. For each Oi, let O, be a set consisting of an arbitrarily chosen element of Oi, and Oa = Oi - O$ . In the sequel, r denotes an atom, and a disjunction means a disjunction of finitely many atoms. Let NF, = {-,r I There exists Oi r E Oi }, NF2 = {-ir I There exists Oi : r E Oz, and for any disjunction D, P= D V r implies P= D}.
Let G-CWA(P) = P U NF, U NF2. -'r is said to be derivable from P under the G-CWA (w.r.t. Ot) if G-CWA(P) -r. Theorem 5 .1.1 The G-CWA preserves consistency. Namely G-CWA(P) is consistent. Lemma 5 .1.2 P = r if G(P) r and r E Fix(G). By Lemma 5.1.2 we can prove The next theorem, which shows that although new positive facts might be deduced by applying the G-CWA, we are able to recognize the situation very easily. Theorem 5 .1.3 P = r if G-CWA(P) r and r E Fix(G). The declarative description of G-CWA is that, -,r is derivable from P under the G-CWA if r is in no minimal model of G(P). Indeed, the G-CWA is just running the GCWA on G(P). It is stronger from the declarative point of view. Also, in the procedure to formulate the G-CWA, if we choose each Ot as an arbitrary non-empty subset of Oi, all the results above still hold. Especially, when Ot = Oi the G-CWA coincides with the GCWA. It also
106
coincides with the CWA8 when it is consistent. So the G-CWA is actually a generalization of the GCWA. It makes the GCWA more powerful. 5.2 G-definite , G-hierarchical and G -stratified logic programs P is said to be G-definite[G-hierarchical, G-stratified] if G(P) is definite [resp. hierarchical, stratified]. From the construction of G(P), we know that definite[hierarchical, stratified] programs are G-definite[resp. G-hierarchical, Gstratified]. G-definite and G-hierarchical programs are G-stratified. G-definite logic programs We mainly show that the SLD-resolution can be used for G-definite programs and definite goals without losing the soundness and completeness. Let r be an atom. If P is G-definite, then G(P) is definite. Let IG be the least model of G(P). Lemma 5 .2.1 Let P be G-definite. The followings are equivalent: (1) {r I P = r}; (2) IGnFix(G); (3) jr I there is an SLD-refutation from G(P)U{r -+ }} n Fix(G). By Lemma 5.2.1, we have
Theorem 5 .2.2 Let P be G-definite, and Q a definite goal. P = -'Q if there exists an SLD-refutation from G(P) U {Q} and R(Q) C Fix(G). This theorem demonstrate that the SLD-resolution is sound(Of course we need test whether R(Q) _C Fix(G) in advance) and complete for G-definite programs and definite goals. It is clearly independent of the choice of G(P). On the other hand, if P is definite, the results of SLD-resolution from PU {Q} coincide with those from G(P) U {Q}. As a matter of fact, in this case the least model of G(P) is exactly that of P. G-hierarchical and G-stratified logic programs We demonstrate that the SLDNF - resolution is complete for G-hierarchical programs in some sense. We also extend the standard model semantics and the interpreter proposed by Apt and othersl to G-stratified programs. Let H be the set of all atoms appearing in the heads of the clauses in P - PA (The definition of PA is in Section 3.2), 01, ... , O, be all the orbits of G whose intersections with H are non-empty, and GH = So, nH x . • x SoknH X IHR, where IHR is the trivial symmetric group on HR = R - Uk 1(Oi n H). If Q = Ai Li --> is a normal goal, we use GH(Q) to denote the normal goal Ai naEGH o(Li) -3 . Now suppose that G(P) keeps heads. We say that Q is correct wrt P if Comp(G(P)) 1 -'GH(Q). Q is said to be computed wrt P (under a safe computing rule) if there exists an SLDNF-refutation from G(P) U {GH(Q)}. Remark that GH is trivial when P is hierarchical. Therefore by Theorem 4.6(2), the definitions of Q being correct and computed wrt P coincide with
107
the usual ones. Theorem 5 .2.3 Suppose that P is G-hierarchical, and Q is a normal goal. Q is correct wrt P if Q is computed wrt P. G-hierarchical programs may allow some recursion. From the above remark, we know that Theorem 5.2.3 is indeed a generalization of Clark's completeness result of the SLDNF-resolution for hierarchical programs. We turn to G-stratified programs now. By Theorem 4.6(1), we have the following theorem, which generalizes the result that the completion of a stratified program is consistent'. Therefore, the completion based proposal(We infer the negation of an atom if it follows from the completion of the program) to deal with negative information is suitable for G-stratified programs. Its expressive power is thus increased. Theorem 5 .2.4 If P is G-stratified, then Comp(P) is consistent.
Let P be G-stratified, and G(P) keep heads. We call the standard models of a(G(P))(for any a E GH) the standard models of P. When P is stratified, GH is trivial, and by Theorem 4.3 and the procedure to get G(P) which keeps heads, we can prove that the standard model of P is exactly that of G(P). For an atom r, we say P ^=SM r if r is in the intersection of the standard models of P, P HSM -r if r is not in the union of the standard models of P. Although a G-stratified program may not have the unique standard model, the interpreter described by Apt and others' does apply. Also, we need not apply the interpreter to all the G-reduced forms of P keeping heads. We only need to fix one. In fact we have the following Theorem 5 . 2.5 Suppose that P is G-stratified, G(P) keeps heads, and L is a literal. P ISM L if for any a E GH, G(P) ^=SM a(L). Remark that the previous related results do not cover Theorem 5.2.3 and 5.2.4. For details see the paper" by this author.
6 Generalizations to the First-order Case We denote by ri (ti) an atom in which ti is an n-tuple of terms if ri is an n-ary predicate symbol. Let R and R(M) be the sets of all the predicate symbols appearing in P and an atom set M, respectively. In first-order predicate case, we say that for P a partition 01,..., O„z of R is well-arranged, if for any C E P it meet the following condition: If some predicate symbol occurring in R(MC) is in a proper Oi, then there exist Oj and two different -irl (tl ), -1r2 (t2) E MC, such that rl, r2 E Oj
108 and tl = t2; Otherwise, for an arbitrary rl (t1) E Me +, if rl E Oi then for any M. r2 E Oi, r2 (ti) E Mc'
The symmetric group G associated with P and the G-reduced form G(P) of P(keeping heads) can be thus defined analogously. Moreover, a clause set has minimal models, which are strictly defined in the reference4. Now let I be an interpretation, DI be the domain of I, and RI the predicate symbol assignment of I. For an n-tuple d E DI and a E G, let I(d) = {RI(r)(d) I RI(r)(d) E I},o,(Id) = {RI(a(r))(d) I RI(r)(d) E I}. Then Theorems 4.3 and 4.6 can be rephrased as the following two theorems respectively. Theorem 6.1 If I is a minimal model of P, then there exist a minimal model IG of G(P) and ad E G such that I = Udad(IG(d)); If IG is a minimal model of G(P), then for any ad E G, I = Udod(IG(d)) is a minimal model of P. Theorem 6 .2 (1) If IG is a model of Comp(G(P)), then there exist Ord E G such that Udad(IG(d)) is a model of Comp(P); (2) If P is hierarchical and G(P) keeps heads, then Comp(P) and Comp(G(P)) are logically equivalent.
Accordingly, all the results in Section 5 hold in the first-order predicate case. Of course, to avoid floundering, in Theorem 5.2.3 we usually require that P U {Q} is alloweds. 7 Concluding Remarks We need not limit ourselves to the symmetric structures on predicate symbols. We can also similarly consider, for instance, those on function symbols and constants (Egly5 has applied this kind of symmetric structures to theorem proving), and consider the actions of them or their combinations. The third criterion to evaluate a semantics is obviously the computational issue. We did not pay more attention to this in this paper. Instead, we mainly concentrated on the expressive power or declarative ability of semantics. The introduction of symmetric structures in logic programs may make some computation procedures simpler". How difficult it is to find a symmetric group associated with a program remains unsolved. In the computational regard, several authors have taken advantage of symmetric structures to simplify the resolution based methods in first-order theorem proving3'5. The symmetric groups utilized in this paper is generally smaller than those in the paper3 by Benhamou and Sais . This is quite understandable because basically in theorem proving one only cares about the preservation of the satisfiability rather than the preservation of some further properties of a clause set. Obviously logic programming is more complicated from the viewpoint that the compu-
109
tations are often involved with some semantics beyond the classical inference rules. Furthermore, a logic program induces a number of "bigger" symmetric group structures". It is interesting to explore the behaviors of a program under them or their combinations. We believe this is meaningful. References
1. Apt, K. R., Blair, H. A. & Walker, A., Towards a Theory of Declarative Knowledge, in: Foundations of Deductive Databases and Logic Programming, Minker, J. (ed.), Morgan Kaufmann, Los Altos, 1988, 89-148. 2. Apt, K. R., Bol, R. N., Logic Programming and Negation: A Survey, J. Logic Programming, 19/20, 1994, 9-71. 3. Benhamou, B., Sais, L., Theoretical Study of Symmetries in Propositional Calculus and Applications, Proc. 11th Int. Conf. on Automated Deduction, 1992, 281-294. 4. Bossu, G., Siegel, P., Saturation, Nonmonotonic Reasoning and the Closed World Assumption, Artificial Intelligence, 25, 1985, 13-63. 5. Egly, U., A First Order Resolution Calculus with Symmetries, in: Proc. Int. Conf. on Logic Programming and Automated Reasoning, 1993, 110121. 6. Lloyd, J. W., Foundations of Logic Programming, Springer-Verlag, Berlin Heidelberg New York London Paris Tokyo, 1987. 7. Minker, J., On Indefinite Databases and the Closed World Assumption, in: Readings in Nonmonotonic Reasoning, M. L. Ginsberg (ed.), Morgan Kaufmann, Los Altos, 1987, 326-333. 8. Reiter, R., On Closed World Data Bases , in: Readings in Nonmonotonic Reasoning, M. L. Ginsberg (ed.), Morgan Kaufmann, Los Altos, 1987, 300-310. 9. Rotman, J. J., An Introduction to the Theory of Groups, Springer-Verlag, New York, 1994. 10. Shepherdson, J. C., Negation as Failure, Completion and Stratification, in: Handbook of Logic in Artificial Intelligence and Logic Programming, Dov M. Gabbay et al. (eds.), Vol. 5, 1998, 356-419. 11. Wu, J., Symmetries in Logic Programs, Research Report MPI-I-1999-2005, Max-Planck-Institut fir Informatik, Germany, 1999 (also available at http://www.mpi-sb.mpg.de/-wu/papers/publications.html). 12. Wu, J., Symmetric Structures in Logic Programs, submitted (available at http://www.mpi-sb.mpg.de/-wu/papers/publications.html), 1999.
THE DEGREE OF CERTAINTY IN AUTOMATED UNCERTAINTY REASONING - SUMMARIZING EXPERIENCE AND MAKING OPTIMUM DECISIONS QUANTITATIVELY GUODING HU Nankai Institute of Mathematics , Tianjin 300071, PRC E-mail: gdhu@nankai . edu.cn In this paper , we introduce new definitions for information and information quantity which include those in communication theory as special cases. Then we apply them to the uncertainty reasoning which plays a central role in artificial intelligence: A1, A2, ... , An -' X. Using our definition of information quantity, we study the uncertainty reasoning in the general case. From the relational database, we recover the probability field and then use it to make information reasoning. We can use it to design software for managers to make optimum decisions.
1 Introduction The concept information was introduced in the fundamental work ' of communication theory by Shannon in 1948 . During the past half century, the term information is used widely by people who may not understand Shannon's information theory. However, the development of Shannon's information theory is restricted in the field of communication . It does not relate to the information understood by most people. The author gives new definitions of information and information quantities such that they have sense in communication theory. However , they can be applied to a wider field. In this paper, we discuss uncertainty reasoning which plays an important role in artificial intelligence, that is, reasoning from several evidences A1, A2i ... , A, to the conclusion X: A1, A2, ... , An X. We describe it using the new information quantities and call it information reasoning. In his works3 -7, G. Polya used the so-called plausible reasoning to study creative thinking and his work had great impact . However , Polya 's discussion is qualitative . We can use our information reasoning to give a precise and quantitative discussion of plausible reasoning (see the author's paper '). Moreover, we can also use information reasoning to discuss the methodology of creative thinking (see another paper2 by the author). Without probability field, it is difficult to apply information reasoning. Relational database is often used to store a laxge amount of data in computers. In this paper , we will show that the probability field can be recovered from 110
111
the relational database and then all kinds of uncertainty reasoning can be carried out based on it, especially information reasoning by using the results in this paper. We show that information reasoning can be applied to data mining. Thus we get a quantitative method for summarizing experience and making optimum decisions. In the field of commerce, this provides a way for managers to make optimum decisions using the relational database. 2 Information and Information Reasoning 2.1 Definition of information and information quantity For simplicity, we assume our universal set fI is finite. In traditional logic, a sentence has its intension VA( ) and its extension A, where A is a subset of 0, and VA O is the function on Il defined by cPA(w)
_ true, w E A false, w E Q \ A
The intension is nothing but the reflection of the attribute of an object. cOA ) is called predicate in logic. Thus, a sentence can be expressed by not only the extensional form w E A but also the intensional form cpA(w) = true. Example 2.1 Peter is John's father. He wants to know John's grade at school and he is told that the student John's grade is excellent. Here, f2 is the collection of all students in the school. The sentence `the student John's grade is excellent' has its intension cpA( ) and its extension A, where A is the collection of the students whose grade are excellent and _ true, w E A
^A (w) false, w E SZ \ A Peter is the subject and John is an object. Information that Peter gets from the sentence `the student John's grade is excellent' is the reflection of the attribute cpA() in his brain. Definition 2.1 Information of an event A is the reflection of the unknown attribute c°A( ) of objects in I in the subject. In brief, information of an event A is the attribute cpA( ). We use the probability of an event A to measure the extension of a sentence precisely: A "the number of w in A" p(A) ,the number of w in Il"
112
Example 2.2 Tom tells Peter that John's grade is regular (i.e., excellent or good). Jack tells Peter that John's grade is excellent. Here, the intension of the sentences are WA, ( ) and WA2 ( ), respectively, where Al is the collection of the students whose grade are regular (i.e., excellent or good) and A2 is the collection of the students whose grade are excellent. That John's grade is excellent implies that John's grade is regular. Therefore, the attribute cpA2 ( ) of objects is stronger than the attribute WA, ( ) of objects. Peter (subject) gets more information from Jack than from Tom. Generally speaking, the stronger the attribute of objects is, the more information is. From the above example, we have the following concept. We say the attribute cOA, ( ) is stronger than or equal to the attribute cOA2 ( ) if WA, (w) = c°A2 (w), that is, if cOA, (w) is true, then WA2 (w) is true (w E 1). We denote this relation by WA, () t WA2 ( ).
In order to measure the intension of a sentence precisely, we are going to introduce a non-negative monotonically increasing function K(WA( )) such that WPA,()^: WA2()=K(coA^())?K(co 2( ))We define the information quantity of an event A to be the reflection of the strength K(WA( )) of the unknown attribute of objects in the subject. In brief, information quantity of an event A is K(coA( )). We can write K(cOA( )) = J(p(A)) for some function J. According to common sense, information quantity J(p(A)) should satisfy the following conditions: (i) Non-negativity: J(p(A)) > 0. (ii) Monotonicity: p(Al) > p(A2) J(p(Al)) < J(p(A2)). (iii) Additivity: when Al is independent of A2, that is, when p(Al, A2) _ p(Al)p(A2), we have J(p(Ai, A2)) = J(p(Al)) + J(p(A2)). The three properties (i), (ii), (iii) of information quantity J(p(A)) can be regarded as the axioms of the concrete representation of information quantity. One can prove the following:
Theorem 2.1 If the information quantity J(p(A)) satisfies the above three conditions (i), (ii), (iii), then J(p(A)) = log pA Since there is an isomorphism between the family of information {WA( )} and the family of complementary set {A}, we can also represent the information of A by A. Therefore, the information quantity J(p(A))=K(WA( )) of the event A can be also represented by the function I(A) _° J(p(A))=K(WA( )) of the information A. Example 2.3 In Example 2.3, let the probability of Al be p(Al) = 1000 and the probability of A2 be p(Al) = loon • (Refer to Example 3.1). Then the
113
information quantities are I(Al) = log to and I(A2) = log Imo, respectively. Hence Peter gets more information from Jack than from Tom. Example 2 .4 In a school , let Al be the collection of the students whose grade are excellent , A2 be the collection of the students whose grade are good and A3 be the collection of the students whose grade are bad . Their probability are p(Al) = loon , p(A2) = loo and p(A3) =logo, respectively. (Refer to Example 3.1). When an educational official wants to know the grade of the students in the school , he randomly investigates the students . Therefore, the educational official (subject ) gets the mean information quantity E3 ( i=1p(A i) log pA1: of the attribute ( 1 e • , grade) of the students (objects). This is the information quantity (entropy) in traditional Shannon's information theory. It is easy to see that the new information quantities are more fundamental than the old information quantity (entropy). Therefore , it can apply to not only communication but also a wide fields including artificial intelligence. The information quantities of the events A1, A2 are I(A1) = log p al I(A2) = log p FA. y, respectively, and the information quantity of Al n A2 is I(A1, A2) == I(A1 U A2) = log p A, A2 = log a^nA2 . Following the properp ties of additive set functions , we introduce the so called define the generalized information quantities I(A1\A2), I(A2\A1), I(A1 n A2 ) as follows:
I(Al\A2) I(Al U A2) - I(A2) 1011,X2) - I(A2), I(A2\Al)
I(4 UA2) - I(A1) I(A15 A2) - I(Al),
I(A1 n A2) I(Al) + I(mo) - I(Ai U A2) I(Al)+I(A2) I(Al,A2)Here, I(A1\A2) is called the degree of difference of information of Al by A2. I(A2\A1) is called the degree of difference of information of A2 by A1. I(A1 n A2) is called the degree of similarity of information of Al and A2. We have I (A1 \A2) = 109 I(A2\Al)
p(Al UA2)'
= lo9 p(A2IA,)'
114 I(X1 n X2) = log p(Ai I A2) = log p(A2I A1) = log p(Ai, A2) p(Ai) p(A2) p(Al)p(A2) where p(A1I A2)
p AA )2 (resp.p(A2I A1) = p `(A )2) is the probability of
Al(resp.A2) under the condition A2(resp.Al), I(Xl\X2) (resp. I(X2\X7)) is the information quantity of Al (resp . A2) under the condition A2 (resp. Al). 2.2 Information reasoning
Definition 2.2 We define the degree of credibility H(A ti+ X) of an uncertainty reasoning A -+ X from the known evidence A to the unknown hypothesis X as the ratio of the extracted information AnX in the unknown information X: H(A, X) i(A n X) I(X) The above uncertainty reasoning is also called information reasoning in this paper. When p(X I A) > p(X), the evidence A has positive net influence on X. So I (A n X) is positive. We say A is a positive evidence of X, and A ti+ X is a positive reasoning. We denote this by A _+_+ X.. When p(X I A) < p(X ), the evidence A has negative net influence on X. So I (q n X) is negative. We say A is a negative evidence of X, and A -'--+ X is a negative reasoning. We denote this by Ati+ X. When p(X I A) = p(X), the evidence A has no net influence on X. So I (A n X) = 0. We call A is an invalid evidence of X, and A --+ X is an invalid reasoning. We denote this by A °+ X. Based on the above discussion, the degree of credibility H(A- X) can be also called the degree of net influence of A on X or the degree of certainty of Ati+ X. Example 2.5 Any deductive reasoning A -+ X has the property H(A X) = 1, and A is a sufficient condition of X. Example 2.6 Any inductive reasoning A F- X has the property 0 < H(A ti+ X) = I(X) < 1. In order to guess the hypothesis X from two evidences (A1, A2), we use I ((A1, A2) n X) log p Al,A2)p(X H((A,,A2) X) = I(X) - log 1
115
to measure the net influence of the two evidences (A1, A2) on the hypothesis X: When H ((A1, A2) fl X) > 0, (A1, A2) are positive evidences of X. We denote this by (A1, A2) > X.
When H ((A1, A2) fl X) < 0, (A1, A2) are negative evidences of X. We denote this by (A1i A2) - X. When H ((Al, A2) fl X) = 0, (A1, A2) are invalid evidences of X. We denote this by (A1i A2) ° X. By using the generalized information quantities on three events , we have
H((A1, A2) X) = H(A1 X) + H(A2 X) - I(A'
n A2 n X) I(X)
= H(A1 + X) + I((A2 n X)\Al) I(X) Definition 2.3 Al + X, (Al, A2) -+ X is called a monotonic positive reasoning if H((A1i A2) -+ X) > H(A1 -w X). Al -+ X, (A1, A2)
X is called a strongly monotonic positive reasoning
if H((A1, A2) -+ X) > H(A1 '+ X) + H(A2 -+ X). We have Theorem 2 .2 (1) Al -+ X, (A1, A2)
X is a monotonic positive reasoning
if and only if I((A2 n Y) \X,-) > 0. (2) Al -+ X, A2 -+ X, (A1, A2 ) -+ X is a strongly monotonic positive reasoning if and only if I (A1 fl A2 fl X) < 0. Theorem 2 . 3 Let Al -+ X, A2 -+ X, (A1, A2) + X be positive reasonings. Suppose they are inductive reasonings. Then (i) Al -+ X, (A1, A2) + X is a monotonic positive reasoning. (ii) I ((A1 U A2) fl X) is larger than I (Al fl X), and their difference is equal to the degree of difference I(A2\A1) of information of A2 by A1. Similarly, we can study the information reasoning (A1, A2i • • • , An) --, X.
3 Data Table 3.1 Data table and probability field Given a data table:
116
number of student w
gender x1(w)
grade X2 (W)
health x3 (w)
20
al
bl
Cl
30
al
bl
15
al al
bl
C2 C3
b2 b2
Cl C2
200 300
al
30
al
b2
C3
10
al
b3
Cl
5
al
b3
C2
5 10
al
b3
C3
a2
b1
Cl
15
a2
bl
C2
20
a2
bl
c3
100 200 20 15
a2 a2 a2 a2
b2 b2 b2 b3
c1 C2
5
a2
b3
C2
0
a2
b3
C3
c3
Cl
Here, a student w has eight attribute values: al = male, a2 = female, bl = excellent, b2 = good, b3 = bad, cl = good, c2 = fair, c3 = bad. Example 3 .1 The probability of the event Al o "collection of the student w whose grade is excellent, that is, x2 (w) = bl" is p(Al) _ (20+30+15)+(10+15+20) = 110 1000 1000 The probability of the event A2 =° "collection of the student w whose grade is good, that is, x2 (w) = b2" is p(A2) _ (200 + 300 + 30) + (100 + 200 + 20) - 850 1000 1000 The probability of the event Al U A2 = "collection of the student w whose grade is regular (i.e. excellent or good), that is, X2(w) = b1 or b2" is 960
p(Al U A2) = p(Al) +p(A2) = 000 Generally speaking, the probability of the event A = {wIF(xi(w) : i = 1, 2, 3) = true} is
_ the number of elements in A p(`4) the number of elements in Sl'
117
where F(xl, x2, x3) : Vl x V2 x V3 -* {true, f alse} is a predicate and V is the range of xi (w) (i = 1, 2, 3), respectively. 3.2 Data table in relational database
The relational data table in a relational database is as follows:
sttribute
XI (W)
X2 (W)
...
xn-1(W)
xn(W)
W1
x11
x21
...
...
xnl
W2
x12
x22
•••
•••
xn2
Wm
xlm
X2m
...
...
xnm
CIItlt
where the range of xi (w) is a finite set Vi, that is, xi j == xi (wj) E Vi (i E {1, 2, • • • , n}, j E {1, 2, • • • , m}). It can be briefly characterized by the set [xij]nm = {(x1j,x2j,...,xnj) : j = 1,2,...,m} which consists of m data rows (X1 j, x2 j, • • • , xn j) : j = 1, 2, .. • , m.
Example 3 .2 In an enterprise, the attribute xn represents the benefit and the attributes x1, x2, ... , xn-1 represent all kinds of factors of the benefit. This relational data table [xij]nm is slightly different from the data table in 3.1, which may be called compact data table. The rows of a compact data table are arranged in the lexical order according to the values of attributes, while the rows in a relational data table can be arranged in any order. Thus, the rows of a relational data table can be repeated but the rows of a compact data table are different from each other and there is an additional attribute the number of entity in it. A compact data table can be transformed into a relational data table, and vice versa. It is more convenient to use compact data table to calculate the probability field. 4 Uncertainty Reasoning Using Data Table Once the probability field of a system, which is characterized by the data table [xij]nm, is given, we can make the following two kinds of uncertainty
118 reasoning from the known event A =_ {wJFA(xi(w) : i E I1 ) = true} to the unknown event X = _ {wIFx(xi(w) : i E 12) = true } using the probability field, where 11, I2 are two disjoint subsets of I = _ {1 , 2, ... , n}. We can use both the conditional probability p(X IA)
Pp A
and the
degree of credibility H (A -,-+ X) = io p XA to measure the degree of certainty of the reasoning A - + X. Here, p(A) p{wIFA(xi(w) : i E Ii) = true}, p(X) = p{wIFx(xi(w) : i E 12) = true}, p(A,X) =A p{wIFA(xi(w) : i E I,) = true, Fx(xi(w) : i E I2) = true} For example, in the data table [xij]n,n of some supermarket, the attribute xi (w)
the quality of personnel, the attribute x2 (w)
goods, the attribute
x3 (w) ===the date of stock, the attribute x4 (w) ==benefit. We can make uncertainty reasoning from A =_ {w I (X1 (W), x2 (w), x3 (w)) = (x1'i , x2, x3) } to the event X {wIx4(w) > x4}, that is, we guess the benefit x9(w) > x9 from known quality of personnel x1 (w) = xi, goods x2 (w) = x2, the date of stock x3 (w) = x3. The degree of uncertainty of reasoning is measured by p(X IA) in probabilistic reasoning and by H(A --^ X) in information reasoning. The former reflects the conditional probability of the event "the benefit is larger than x4 under the conditions of the quality of personnel xi, goods x2', the date of stock x3"; the latter reflects the degree of net influence of the three factors (xi, x2, x3) on the event `the benefit is larger than x4' . It is necessary to point out that H(A -y X) is different from p(X IA) since it reflects the difference between p(XIA) and p(X). In an enterprise, let the attribute xn be the benefit and the attributes x1i x2, ... , xn_i be all kinds of factors of the benefit. When summarizing the experience, the manager of the enterprise naturally want to know those xi, x2*,. .. , xn-1i xn such that the benefit is the largest. Here, the degree of credibility H(xl, x2,... ,xn-1^a xn) reflects the reliability of the decision. For example, if H(xi, x2,... ,xn_i- xn) = 0.8 = 80%, then the factors which are not included in the data table have 0.2 = 20% effect on the benefit x,,. This will urge the manager to find out the new factors of increasing the benefit. In fact, above we disclose the principle how the managers make optimum decisions by using database and the software of optimum decision is making. We have mentioned that the so called information is the attribute of the event and the multi-attribute F(xi(w) : i E I) is the "relation" among
119
the attributes xi(w) (i E I). A relational database may be looked as an information database. We know that the values xi (w) of attributes in a real system are often real numbers in some intervals (ai, bi ) (i E I). For each i E I, we define xi (w) as follows: divide (ai, bi) into finitely many subintervals (aik), aik+l)) where (1) (k) (k+1) (K;) _ a ai = ai, ai < ai , ai - bi, (k = 1, 2, (k) (k+1)
°` +a if xi(w)
E (aik),
ai k +i)).
Ki - 1). We define xi (w)
_
The set of midpoints of subintervals is Vi.
The system characterized by the data table [xijjn,n is a rough reflection of the real system. We can then make all kinds of uncertainty reasoning using [xij ]nm •
References 1. Hu, G., On information and information reasoning, to appear, 2000. 2. Hu, G., Uncertainty reasoning in relational database and image thinking, to appear, 2000. 3. Polya, G., Mathematics and Plausible Reasoning, vol. 2, Patterns of plausible inference, 1954. 4. Polya, G., Mathematics and Plausible Reasoning, vol. 1, Induction and analogy in mathematics, 1954. 5. Polya, G., How to Solve It, 1957. 6. Polya, G., Mathematical Discovery, vol. 1, 1962. 7. Polya, G., Mathematical Discovery, vol. 2, 1962.
8. Shannon, C. E., The mathematical theory of communication, Bell Syst. Techn. Journ., 27, 379-423, 623-656, 1948.
AUTOMATED THEOREM PROVING IN PROJECTIVE GEOMETRY WITH BRACKET ALGEBRA HONGBO LI AND YIHONG WU Institute of Systems Science, Academia Sinica, Beijing 100080, China E-mail: hli, yhwuOmmrc . iss.ac.cn We present a method which can produce readable proofs for theorems of constructive type involving points, lines and conics in projective geometry. The method is based on Wu's method and further develops the area method of Chou, Gao and Zhang in the framework of projective geometry.
1 Introduction Bracket algebra was used to prove projective geometric theorems mechanically by several authors in the last decade. Sturmfels and Whitely9 proved that the algorithm of straightening laws3 is a special algorithm to compute Grobner bases for polynomials of brackets. Mourrain and Stolfi7 proposed a theorem proving method that extends Wu's method"," to bracket algebra using the Cramer's rule. Crapo and Richter-Gebert2's proposed a method based on bi-quadratic final polynomials. Chou, Gao and Zhang's area method' can also be used to prove theorems in projective geometry, since the areas can be understood as brackets. The method of straightening laws can be applied to all projective geometric theorems, while the latter three methods are applied mainly to incidence theorems. However, proofs produced by the latter methods are remarkably short. Can we get even shorter proofs? Can we extend the methods to theorems involving projective conics? The two problems are the focus of our research on applying bracket algebra to theorem proving. The following are what we have achieved so far: first, we further develop the elimination rules in the area method to produce shorter proofs for incidence theorems; second, we propose a set of elimination rules for theorems involving conics; third, we propose a powerful technique called contraction to reduce the size of polynomials of brackets. All these innovations are put together to form a theorem proving method featuring automated production of delicate elimination rules and simplification by contraction. We have implemented the method with Maple V Release 4 and have tested over fifty theorems in projective geometry.
120
121
2 Expansion and Contraction in Bracket Algebra The definition and basic properties of bracket algebra can be found in the book" by Sturmfels. There are two transformations in bracket algebra that are used frequently in this paper. They are both derived from the following Grassmann-Plucker relations n+1
E
(_1)k[X%1
... Xin-
k=1
^Xjb][Xil ... Xil-^X7a +l ... Xj„+1
(1)
1
where X1, ... , X,,, are vectors in Vn, m > n. The first tranformation is called expansion. Let Al, A2, A3 be three vectors in R3 that are not in the same two-dimensional subspace . Let X be a vector in R3 and p be an expression of brackets involving X. By expansion of X in p with respect to {A1, A2, A3}
we mean setting for every bracket [XYZ] in p [XYZ] = [XA2A3][YZA1] + [XA3A1][YZA2] + [XAlA2][YZA3] [A1A2A3] The second transformation is called contraction. A1,.. . , A5 in R3, we have
(2)
For any five vectors
[AlA2A5][A3A4A5] + [A1A3A5][A4A2A5] = [A1A4A5][A3A2A5]• (3) Let p be a polynomial of two terms, each term being the product of at least two brackets. If p is reduced to a monomial of brackets by a suitable form of the identity (3), we say p is contracted. The contraction of polynomials of two monomials can be extended to polynomials of any finitely many monomials. 3 Elimination Rules
Let X be a point in the projective plane. The following are typical constructions for a point: P1. X is a free point. P2. X is a semifree point on a line. P3. X is the intersection of two lines. P4. X is a semifree point on a conic. P5. X is at the intersection of a line and a conic. P6. X is at the intersection of two conics.
Assume that p is a polynomial of brackets involving point X.
122
El. Eliminate a free point. Assume that X is a free point. Let A, B, C be the first three free points other than X having the largest number of occurrences in p. Then expand X with respect to {A, B, C} in p. The nondegenerate condition is [ABC] 54 0. E2. Eliminate a semifree point on a line. Assume that X is on line AB. Let C be the free point outside line AB that has the largest number of occurrences in p. Then expand X with respect to {A, B, C} in p. The nondegenerate condition is [ABC] # 0.
E3. Eliminate the intersection of two lines. Assume that X is the intersection of lines A11A12 and A21A22. For every bracket [XA31A32] in p, if [AllA31A32][Al2A31A32] = 0, set [XA31A32] = [AllA21A22][Al2A31A32] - [A12A21A22](All A31A32]; (4) else if [A21A31A32][A22A31A32] = 0, set [XA31A32] = -[A21A11A12][A12A31A32] + [A22A11A12][A11A31A32]; (5) else if [All A12A31][All A12A32][A21A22A31][A21A22A32] = 0, set [XA31A32] = [All A12A31][A21A22A32] - [All A12A32][A21A22A31]; (6)
else, let #A be the number of lines passing through point A in the geometric configuration , then if #Ail + #Ai2 = max(#Ajl + #A3211 < j < 3), let i, j, k be an even permutation of 1, 2, 3, set [XA31A32] =
[ A i1A31A32][Ai2 Ak1Ak2]
- [Ai2Aj1A32][AilAklAk2]• (7)
There is no nondegenerate condition. E4. Eliminate a semifree point on a conic. Assume that X is on conic AlA2A3A4A5. There are two steps in establishing an elimination rule for X. The first step is to set up a suitable equation e = 0 for X. Ordering the A' s as follows , called canonical order. Ai -< Aj if Ai precedes Aj in the list of construction types P1-P6, or Ai, Aj are of the same construction type but Ai occurs more than Aj in p. Let Ail -< Ai, -< Ai, - Ai, -< Ai, for some permutation il, ... , i5 of 1, ... , 5. Then e [Ail Ai2 Ai4][Ail Ai2 Ai5] [Ai3 Ai4 Ai5] [XAil Ais] [XAi2 Ais] -[Ail Ai, Ai4] [Ail Ais Ai5] [Ai2 Ai4 Ai5] [XAil Ail] [XAi2 Ai3] (8)
+[Ail Ai4 Ai5 ] [A i2
A i3 Ai4] [Ai2 Ai3 A i5 ] [X Ail A22 ] [XA il Ai3 ]
The second step is called reduction. It occurs when {Ai4, Ai5 } contains intersections of lines or semifree points on lines. Such points are eliminated
123
from e by rules E3 and E2 , and then e is contracted and bracket factors not involving X are removed. The result is still denoted by e. To eliminate X from p, there are two steps. The first step is to expand X with respect to {Ail , A22, Ai3 } in p and obtain a polynomial p' from p after removing the common denominator. The second step is to make pseudodivision to p' by e, taking one of [XAi,Ai2], [XAi,Ai3], [XAi2Ai3] as the leading variable. The nondegenerate condition is composed of [Ai, Ai2 Ai3 ] 0 0, the factors removed during establishing the elimination rule being nonzero, and the leading coefficients for the pseudo-division being nonzero. E5. Eliminate a point at the intersection of a line and a conic. Assume that points X, A are at the intersection of line AB and conic AA1A2A3A4. There are two steps in establishing an elimination rule for X. The first step is to set up two suitable equations el = 0, e2 = 0 for X. Let Ai, - Ai2 -< Ai3 -< Ai, be a canonical order of A1, A2, A3, A4, then
el = [AAi, B] [XAAi2 ] - [AAi2 B] [XAAi, ], e2 = [AAi, A28][AAi1Ai4][Ai2Ai3A24][AAi2B][XAi1Ai2] (9) - [AAi2 Ais ] [AAi2 Ai4 ] [Ai, Ai3 Ai4 ] [AAi1 B] [XAii Ail ] +[AAi3 Ai4 ] [Ai, Ail Ai3 ] [Ail Ail Ai4 ] [AAi2 B] [XAAii ] The second step is the reduction of {Ai3, A147 B}. The result will be
e1 = A1[XAAi2] - A2[XAAi,], (10) e2 = A3[XAi,Ail] - A4[XAAii] where the A's are polynomials of brackets not involving X. To eliminate X from p, there are two steps. The first step is to expand X with respect to {A, Ai,, Ail } in p and obtain a polynomial p' from p after removing the common denominator. The second step is to set [XAAi2] = A2A3, [XAi1Ai2] = A1A4, [XAAi,] = \1/\3 (11) and obtain a polynomial p" from p'. The nondegenerate condition is composed of [AAi,Ai2] # 0, the factors removed during establishing the elimination rule being nonzero, and the leading coefficients for the pseudo-division being nonzero. E6. Eliminate a point at the intersection of two conics. Assume that X, A1i A2, A3 are at the intersection of conics A1A2A3B1B2 and A1A2A3C1C2. There are two steps in establishing an elimination rule for X. The first step is to set up two equations e1 = 0, e2 = 0
124
for X: el = A2[XA1A3] - Al[XA1A2] e2 = A3[XA2A3] -Al[XA1A2]
(12)
where Al = [AlA3B1][AlA3B2][A2B1B2][AlC1C2][A2A3C1][A2A3C2] -[A1B1B2][A2A3B1][A2A3B2][A1A3C1][A1A3C2][A2C1C2], A2 = [A1C1C2][A2A3C1][A2A3C2][A1A2B1][A1A2B2][ A3B1B2]
-[A1A2C1][A1A2C2][A3C1C2][A1B1B2][A2A3B1][A2A3B2], A3 = [A1A3C1][A1A3C2][A2C1C2][A1A2B1][A1A2B2][ A3B1B2] -[A1A2C1][A1A2C2][A3C1C2][A1A3B1][A1A3B2][A2B1B2]•
(13) The second step is the reduction of {B1i B2, C1, C2}. The result will be in the same form as (12). To eliminate X from p, there are two steps. The first step is to expand X with respect to {A1,A2,A3} in p and obtain a polynomial p' from p after removing the common denominator. The second step is to set [XA1A3] = A1A3, [XA2A3] = A1A2, [XA1A2] = A2A3 (14) and obtain a polynomial p" from p'. The nondegenerate condition is composed of [A1A2A3] # 0, the factors removed during establishing the elimination rule being nonzero, and the leading coefficients for the pseudo-division being nonzero. Among the six elimination rules, El-E3 further develops the corresponding elimination rules in the area method, with closer attention paid to the geometric configuration related to the expression p, and E4- E6 follow a routine process: first establish a suitable set of equations depending on p, then simplify the equations by the elimination rules E3 and E2. 4 A Theorem Proving Algorithm Below we present a theorem proving algorithm based on El-E6 . The algorithm is complete for the class of theorems in two-dimensional projective geometry whose constructions of points belong to P1-P6.
Input . An order of points for both construction and elimination, and a list of constructions of the type P1-P6 . Free points are required to precede other points. A conclusion that can be expressed as conc = 0, where conc is a polynomial of brackets.
125
Step 1. [Preprocess] Change every collinearity constraint in the constructions into a computing rule bny setting the corresponding bracket to be zero. Change the conclusion into the polynomial conc.
Step 2. [Eliminate non-free points] Let ord be the sequence of non-free points. For X from the last element to the first in ord, do sequentially: i. If X is a semifree point on a line, contract cone and denote the result by conc as well . If it equals zero, go to the Output. ii. Eliminate X in conc according to its construction type. The result is still denoted by conc. If it equals zero, go to the Output. iii. Remove monomial factors from conc when there are also polynomial factors in conc. Step 3 . [Eliminate free points] contract conc. If the result (conc) is zero, go to the Output; otherwise let A, B, C be the first three free points having the largest number of occurrences in conc, then expand all free points other than A, B, C in cons with respect to {A, B, C}. The result must be zero because what is being proved is a theorem. Output. Print the proving procedure, including the original conc, every elimination and the corresponding elimination rules, every successful contraction, every expansion and every removal of monomial factors. Provide the nondegenerate condition, which is a set of inequalities. The completeness of the algorithm is guaranteed by Step 3, where essentially a global coordinate system of 7Z3 is used. Step 2 (c) is not essential for the algorithm, but can contribute to simplifying later process. In our experiments, it never occurs that the conclusion polynomial is reduced to zero because some monomial factor turns out to be zero when there also exist non monomial factors at the same time. We have implemented the algorithm with Maple V.4 and have tested over 50 theorems. It appears that generally a proof can finish before free points are eliminated, and most strikingly, sometimes even before semifree points on lines are eliminated. Below we give two examples. The first is an incidence theorem, and the second is a theorem on conics. Two proofs are produced for the first theorem, both of which finish before a semifree point on a line is eliminated. Four proofs can be produced for the second theorem, all of which finish before free points are eliminated. In the proving process, factors that are to be removed are underlined, and the leftover after each removal appears on the right-hand side of the symbol .
126 Example 1 [Desargues Theorem]. 1, 2, 3, 4, 5 are five free points in the projective plane. Point 6 is on line 13, and points 7, 8, 9, 0 are intersections of line pairs 45 and 12, 15 and 24, 38 and 56, 49 and 23, respectively. Then 6, 7, 0 are collinear. Proof.
[670]
Rules 0 9
[679] = -[368][667]
[234] [679] - [467] [239] -[234][567][368] - [467] [356] [238]
[239] = [366][238]
8
[368] = -[124][366]
[234] [124] [356] [567] - [467] [356] [125] [234]
[238] = [125][234]
- "." [124] [567] - [ 125] [467] 7
[567] = -[125][456]
-[124][125][456] + [124][456][125]
[467] = -[124][456]
0. There is no nondegenerate condition. There is an alternative elimination rule for 0. It leads to the second proof of the theorem, which is one step longer because contraction is needed. [670]
Rules 0 [349] = [356][348]
9
[267] [349] - [367] [249] [267] [356] [348] - [367] [568] [234]
[249] = [588][234]
[348] = -[145][234]
8
-[267](356][145][2341 + [367] [234 ] [245] [156]
[588] _ -[245][156]
CG1ROV-factors -[267][356][145] + [367] [245] [156] [267] = [245][126]
7
-[245][126][356][145 ] - [145] [236] [245] [156]
[ 367] = -[145][236] remove factors contract
-[126][356] - [236] [156]
0.
Example 2. 1, 2, 3 , 4, 5 are five free points in the projective plane. Point 6 is the intersection of lines 34 and 15, point 7 is the intersection of line 26
127
and conic 12345 other than 2, points 8, 9, 0 are intersections of line pairs 13 and 45 , 14 and 35, 25 and 17, respectively. Then 8, 9, 0 are collinear. Proof.
Rules
[890] 0
- [127][589] + [157][289]
9
( 589) _ [145][358]
-[127][145][358] - [157] [135][248]
[289] = [346][198]-[136][748]
+[157][345][128] (358] = -[346][136]
8
[127] [145] [345] [135]
[248] _ -[134][746] [178] = [173][146]
+[157][135][134)[245] +[157][345][123][145] [136][145] (734] [346][177] [173] [174] (346] 7 [167]
7 [234] ([123
-[134]2[ 245][235)[1571
][ 124][345]2
-[134]2[235][245] +[134][135][234][245] +[123][145][234][345]) =f"`tore [123 ][ 124][345] 2 - [134] 2[235][245] +[134][135][234][245] +[123][145][234][345] [174][346 14-[ 146][734 1 = [ 134][746]
contract
[123] [345] [ 134] [245]
[134][736 ]-[ 136][734 ] = [ 173][346]
-[134][245][123][345]
0. The elimination rules of 7 are obtained as follows: [126][257] - [256][127]
el [ 176] = -[176][134]
6
- [125] [134] [257] - [125] [345] [127]
[766] = [176][345] remove factors
-[134][257] - [345][127],
128
e2
=
(128] = -[146](164]
6
[123] [124] [345] [256] [157] +[134] [245] [235] [126] [157] -[135] [145] [234] [256] [127] [123] [124] [345]2 [125] [157]
(268) = [125][345]
-[134]2 [245] [235] [125] [157] - [135] [145] [234] [125] [345] [127] [123][124][345]2 [157] - [134] 2[245][235][157] - [135] [145] [234] [345] [127]. The order of free points when eliminating 7 is: 2 - 1 -< 5 -< 3 -< 4. The nondegenerate condition is {[125] # 0, [234] # 0}. 0 and 9 each have an alternative elimination rule. They lead to three other proofs of the theorem. The second proof is much the same as the first one. The third and the fourth are much the same, and are each one step longer than the first proof because expansion is needed. The beginning of the third proof is as follows, the later steps are the same with those of the first proof.
[890]
Rules 0 ( 7891 = [478 ][ 135]+[345)[178]
9
- [125][789] + [257][189] -[125][478][135] - [125] [345] [178]
[189] = -[148][185]
-[257][148][135] [148] = -[1341[145] [4781 = [134][457]
-[125][134][457][135]
(178] = -[137][145]
+[125][345][145][137] +[257][134][ 135][145] [1251[1371 = ( 123][157 ]+[ 135)(127]
.nd 7 [127] [145] [345] [135]
1125)[4571 = -[245 )[ 157]+[145][257]
+[157][135][134][245] +[157][345][123][145]
129
References 1. S.-C. Chou, X.-S. Gao and J: Z. Zhang. Machine Proofs in Geometry - Automated Production of Readable Proofs for Geometric Theorems. World Scientific, 1994.
2. H. Crapo and J. Richter-Gebert. Automatic Proving of Geometric Theorems. In: Invariant Methods in Discrete and Computational Geometry, N. White (ed.), 107-139, 1994. 3. P. Doubilet, G. C. Rota and J. Stein. On the Foundations of Combinatorial Theory IX: Combinatorial Methods in Invariant Theory. Stud. Appl. Math. 57, 185-216, 1974. 4. H. Li and M.-T. Cheng. Proving Theorems in Elementary Geometry with Clifford Algebraic Method. Chinese Math. Progress 26(4): 357371, 1997. 5. H. Li. Vectorial Equation-Solving for Mechanical Geometry Theorem Proving. J. Automated Reasoning, 2000. 6. H. Li and Y. Wu. Outer Product Factorization in Clifford Algebra. In: Proc. of ATCM99, Guangzhou, China, 255-264, 1999. 7. B. Mourrain and N. Stolfi. Computational Symbolic Geometry. In: Invariant Methods in Discrete and Computational Geometry, N. White (ed.), 107-139, 1994.
8. J. Richter-Gebert. Mechanical Theorem Proving in Projective Geometry. Annals of Math. and Artificial Intelligence 13, 159-171, 1995. 9. B. Sturmfels and W. Whitely. On the Synthetic Factorization of Homogeneous Invariants. J. Symbolic Computation 11, 439-454, 1991.
10. B. Sturmfels. Algorithms in Invariant Theory. Springer, Wien New York, 1993. 11. W.-t. Wu. On the Decision Problem and the Mechanization of Theorem Proving in Elementary Geometry. Scientia Sinica 21, 159-171, 1978. 12. W.-t. Wu. Basic Principles of Mechanical Theorem Proving in Elemen-
tary Geometries. J. Sys. Sci. Y Math. Sci. 4, 207-235, 1984.
EQUI-CEVALINE POINTS OF TRIANGLES LU YANG* AND ZHENBING ZENG Chengdu Institute of Computer Applications, Chinese Academy of Sciences, Chengdu 610041, China E-mail: yang- lu0china. com, zeng0mail.sc. cninfo. net In this paper we introduce a new property about the equi-Cevaline points and the smallest circumscribed ellipse of a triangle found by computer aided reasoning with computer algebra.
1 A Property of Triangles Discovered by Computer Aided Reasoning Many significant approaches have been proposed for automated geometry theorem proving in the past decades. Succeeding the pioneer work' of Wen-tsdn Wu in the 1970s, several different methods have been developed for verifying most known results in Euclidean geometry with computers. Among them, a geometric invariant method2>3 established by Zhang and others has been used to prove and discover the theorems both in Euclidean and non-Euclidean spaces. Completely new theorems and some generalizations of existing results have also been found by human-machine interactive inference, see for example the references4'5. In this paper, we introduce an interesting property about the focuses of the smallest circumscribed ellipse of triangles obtained by symbolic computation and computer aided reasoning. Let us begin with a triangle ABC. A point P in the plane (where the triangle is) can be associated with three so-called Cevalines as follows: connecting point P and vertex A, intersecting edge BC at point D, then AD is called a Cevaline of the triangle. The other two Cevalines BE, CF are constructed analogously. And P is called an equi-Cevaline point if the three Cevalines through P are of the same length. It is obvious that if ABC is an equilateral triangle then its barycenter is an equi-Cevaline point. It is natural to ask if for any triangle there exists an equi-Cevaline point? Using Cartesian coordinate one may transform this problem into equation-solving and easily prove the existence of the equi-Ceveline point. In fact, the answer is better than one expected: Thoerem 1 If triangle ABC is not equilateral, then there exist two points Pl, P2 through which the six Cevalines are of the same length. 'CONCURRENTLY, GUANGZHOU UNIVERSITY, GUANGZHOU 510405, CHINA.
130
131
Do these two points have any other interesting properties? Is there any connection to other known special points such as incenter, circumcenter or barycenter of the triangle? The answer is quite surprising: Thoerem 2 Assume triangle ABC is not equilateral. Let F1, F2 be the focuses of the smallest circumscribed ellipse of ABC. Then, the six Cevalines through F1, F2 are of the same length, 3/4 of the major axis of the ellipse. The so-called "smallest circumscribed ellipse" means an ellipse which circumscribes the triangle with the smallest area. The above properties on equi-Cevaline points were discovered by the authors in the winter of 1994 and had been communicated with people in some occasions afterwards. As so far we have not found this result in literatures and reports, it might be worth to be introduced in a formal publication. We will prove Theorem 1, the existence of equi-Cevaline points, in the next section, and Theorem 2, the connection of these points with the smallest circumscribed ellipse, in Section 3.
2 The Existence of Equi-Cevaline Points In this section , we prove the existence of two equi-Cevaline points for nonequilateral triangles. Let ABC be the a triangle , a = BC, b = CA, c = AB the lengths of the edges , and P a point in the same plane. Construct a barycentric coordinate system such that A = (1, 0, 0 ), B = (0, 1, 0) and C = (0, 0 , 1). Recall that the homogeneous barycentric coordinate (x, y, z) of point P is x : y : z = SAPBC : SEPCA : SL\PAB,
where S/PBC is the oriented area of triangle PBC, with convention SoPBC > 0 if and only if the orientation of OPBC is counter-clockwise (see the work by Brands or Olmsted7 for more details about barycentric coordinates). Suppose that the Cevalines through P are AD, BE and CF. Then, we compute the lengths by the law of cosine: AD2 = (y + z)2 (c2y2 + b2z2 + (b2 + c2 - a2)yz) 1 BE2 = (z + x)2(a2z2 + c2x2 + (c2 + a2 - b2)zx)
CF2 = (x + y)2
(b2x2 + a2y2 + (a2 + b2 - c2)xy)
132
If P(x, y, z) is an equi-Cevaline point, say, AD = BE = CF = 1, then x, y, z satisfy the following homogeneous equations:
h fi = -(y + x)212 + c2y2 +b2z2 + (b2 + c2 - a2)yz = 0
f2 = -(z + x) 212 + a2z2 +c2x2 + ( c2 + a2 - b2 )zx = 0 (1) 1 fa = -(x + y) 212 + b2z2 +a2y2 + (a2 + b2 - c2)xy = 0 It is clear that each real solution (x, y, z) of (1) determines an equi-Cevaline point of ABC, and vice versa. Using the following Maple procedure to eliminate x, y, z g1:=resultant(f1,f3,y); g2:=resultant ( g1,f2,x); g3:=resultant (f1,f2,z); g4:=resultant ( f3,g3,y); g:=factor ( gcd(g2,g4)); the last step gives a necessary condition on the parameter l for (1) having a nontrivial solution (x, y, z): g(l) = 14(12 - a2)2(12 - b2)2(12 - c2)2(h(1))2 = 0,
where h(l) =l4- 2(a2+b2+c2)l2+ 16(a+b+c)(a+b-c)(b+c-a)(c+a-b). In other words, every value of parameter 1 such that system (1) has a solution must be a positive roots of equation g(l) = 0, that is, a, b, c and the positive roots of h(l) = 0. It is easy to compute the discriminant of h(l) by Maple command: A = coeff (h,1, 2)2 - 4 coeff(h, 1, 4) coeff(h, 1, 0)
= a4 + b4 + c4 - a 2 b 2 - b2c2 - c2a2 = 1((
a2 - b2 ) 2 + (b2 - c2 ) 2 + (c2 - a2)2) > 0.
This shows that if ABC is equilateral, then equation h(l) = 0 has a unique positive root: 2 1 a2 r+ b2 + c2 = 2 otherwise, it has two distinct positive roots 11i12: l1 = 4 (a2 + b2 + c2) - 2 a4 + b4 + c4 - a2b2 - b2c2 - c2a2,
133
2 = 4 (a2 + b2 + c2 ) + l2
a4 + b4 + c4 - a2b2 - b2c2 -c2a2.
In more detail, we may denote system (1) by S(l) to emphasis parameter 1. We will decompose Theorem 1 into two lemmas. Lemma 1 If the triangle is not equilateral and h(a)h(b)h (c) # 0, then, system S(12) has two distinct real solutions (xi, yi, zi) and ( x2, y2, z2), that is, there exist two points through which the six Cevalines are all equal to 12, where 12 is the greater positive root of h(l) = 0. Moreover, S(11) has no real solutions where 11 is the smaller positive root of h(l) = 0. Proof. Since ABC is not equilateral, we assume b # c without loss of generality. Set z = 1 in S(li) (i = 1, 2) and convert the system to a triangular form: hi=z-1=0, h2=(li-c2 ) y2+(2l^+a2 - b2-c2 ) y+l?% -b20, T(12) : h3 = ((l: - c2)(-2lq + a2 + b2 - c2)y (2) +(b2 - l:)(-b2 + c2 + a2 - 21 ))x
+(li - a2)(-b2 + l= - y2l? + y2c2) = 0. The discriminant of h2 with respect to y is Ay (1j) _ (21Z + a2 - b2 - c2)2 - 4 (1; - c2)(la - b2) =4a 21,,+a4+b4+c4 -2a2b2 -2b2c2 -2 c2 a2. Clearly, Jy(li) < Ay(l2). And, using equation h(l) = 0 we have Ay(li)Ay(12) = -(b - c)2(b + c)2(a + b + c)(a + b - c)(b + c - a)(c + a - b)
< 0. The above inequalities imply Ay(ll) < 0 < Ay(l2). (recall b # c.)
Since Ay(l2) > 0 and 12 54 c, equation h2(y,12 ) has two distinct real solutions, namely, yl, y2. (12 = c contradicts h(a)h(b)h(c) 54 0, the hypothesis of this lemma.) The equation h3 (x, yj, 12) = 0 has a real solution xj if and only if
(12 - c2)(-212 + a2 + b2 - c2 )y^ + (b2 - l2)(-b2 + c2 + a2 - 2l2) 54 0 (3) Otherwise, by p(y„ 12) denote the polynomial on the left hand side of (3). From p(yj, l2) = 0 , h2(y„ l2) = 0 and h(12) = 0 eliminate yj and 12, we have h(a)=5a4-2a2b2-2a2c2-3b4+6b2c2-3c4=0, which contradicts h(a) i4 0, the hypothesis of this lemma . So inequation (3) holds , thus each yj determines a real solution of h3 (x, yj , 12) = 0, namely, xj
134 (j = 1, 2), and the system S(12) has two real solutions, (x1, y1, 1), ( x2i Y2, 1). That correspond to two equi-Cevaline points through which six Cevalines are all equal to l2. Moreover, 0y (ll) < 0 implies h2 (y, l1) = 0 has no real solutions, so has S(ll). This completes the proof of Lemma 1. Lemma 2 If the triangle is not equilateral and h(a)h(b)h(c) = 0, then, there exist two points through which the six Cevalines are of the same length. Proof. We need only give a poof in the case of h(a) = 0. In detail, h(a)=5a4-2a2b2-2a2c2-3b4+6b2c2-3c4=0,
(4)
It is easy to verify that there exits triangles satisfying h(a) = 0. Using the following procedure ha:=5*a"4-2*a"2*b"2-2*a"2*c"2-3*b"4+6*b"2*c-2-3*c"4; hu:=subs ({a=1,b=u°(1/2),c=v"(1/2)},ha); hp:=expand ( subs ({u=(p+q)/2,v=(p-q)/2},hu)); sp:=solve (hp=0,p);
sq:=subs ( p=sp,subs ({u=(p+q)/2,v=(p-q)/2},[u,v])); sq:=map ( sgrt,map (factor,sq)); [a,sq[1]*a,sq[2]*a];
we proved that any solution of h(a) = 0 can be represented in form b= 2
(5-3q)(1+q)a, c= 2 (5+3q)(1-q)a,
for some appropriate q. Substituting it into system S(a), we get (y + yq - z + zq)(3yq - y + z + 3zq) = 0, x(1 + q) (3 xq + 4z - x) = 0, x(-1 +q)(3xq+x - 4y) = 0.
This system (homogeneous to x, y, z) has the following three solutions: I x1=0, 1x2=0, 1x3=4, y3=1+3 q, y1=1+3 q, y2=1-q, z3=1-3q. z2=1+q, z1=1-3q, Obviously, among the three solutions, at least two are distinct. That means, there exist at least two points through which the Cevalines are all equal to a. The cases of h(b) = 0 and h(c) = 0 can be treated analogously. This completes the proof of Lemma 2, and hence Theorem 1.
135
3 The Smallest Circumscribed Ellipse of a Triangle To prove Theorem 2, we need the following observation: If £ is the smallest circumscribed ellipse of triangle ABC, then ABC is of the greatest area among all triangles contained in ellipse £, and the tangent lines of £ at points A, B, C are parallel to BC, CA, AB, respectively. This result can be obtained by an affine transformation which converts £ to a circle, and ABC to an equilateral triangle. Proof. Without loss of generality, we represent the smallest circumscribed ellipse £ in the following parametric form,
x=mcos(9), y=nsin (g),
(0
and the Cartesian coordinates of A, B, C are (m cos a, n sin a), (m cos ,6, n sin 0), (m cos y, n sin y) (0 < a < ,6 < y < 2ir). As mentioned above, the tangent line of ellipse £ at A is parallel to BC, that is, m sin a _ m (cos,6 - cosy) n cos a n(sin /3 - sin y) which can be simplified to
tan a=tan )32y. And the tangent lines of £ at points B and C are parallel to CA, AB, respectively, which imply that tan/3=tang 2 a, tan g=tan 2 Q Combining with the assumption 0 < a < < y < 27r we obtain 6+y _ y+a a+/3 2 2 - ir+a , 2 that is, 2 4 6=a+27r, y = a + 31r. Let the coordinates of F1, F2 be (-me, 0), (me, 0), where e is the eccentricity of the ellipse, i.e. e = 1 m
(m2 - n2). We compute the length of the
136
Cevaline determined by A and F1. The equation of the line through points A, F1 can be written as follows, x y 1 mcos a nsina l =0, -me 0 1
that is, sina•--(cos a+e)•-+esina=0, while the equation of the line BC can be written as x y 1 m cos(a + a 7r) n sin(a + 2 ir) 1 =0, mcos(a + f 7r) n sin (a + f a) 1
that is, cosa •-+sina •-+2 =0.
Let D1 be the intersection of these two lines. The coordinate of D1 is (-m
sin 2 a+ 2 cosa + le -2 sina + e sina cos a l +ecosa 'n 1+ecosa )
Thus, the length of the Cevaline through A and F1 is cosacosa )2 (m cos a + m sin2 a +2 cosa + 2 e )2 + (n sin a - n 2 sin i a + + eesin
1
ecosa
a
_ e+ cosa 2 2 sina 2 VM +n (1+ecosa) 2 1+ecosa)
3 = 2m. The computation can be done by the following Maple procedure: AD1:=(A[1]-D1[1])"2+(A[2]-D1[2])"2; SIM:=simplify (normal ( subs(n=m*(1-a"2)"(1/2),expand (AD1))),trig); sqrt(SIM); With analogous argument, we can prove that the two Cevalines through B, F1 and C, F1 are also of the same length 2 m. The same argument is applied to other focus F2. Finally, we see that the six Cevalines through F1, F2 all are equal to 3/4 of the major axis of C. Theorem 2 is proved.
137
This theorem tells us that the focuses of the smallest circumscribed ellipse both are equi-Cevaline points of the triangle, but the converse is not true. In the case of h(a) = 0, we see that there are, sometimes, three equi-Cevaline points, two of which are on the edges of the triangle. 4 Conclusion In this paper we talk about an interesting result about a triangle with its smallest circumscribed ellipse. We failed in making the reasoning in an automatic mode without human intervention. It was reported that some program8 can prove automatically the theorems involving conics. Can it do this? We expect. Acknowledgments This work is supported in part by NKBRSF-(G1998030602). The second author gratefully acknowledges the support of K. C. Wong Education Foundation, H. K. References 1. W.-t. Wu, On the decision problem and the mechanization of theorem proving in elementary geometry, Scientia Sinica 21, 57-179 (1978). 2. S.-C. Chou, X.-S. Gao and J.-Z. Zhang, Machine Proofs in Geometry, World Scientific, Singapore (1995). 3. L. Yang, X.-S. Gao, S.-C. Chou and J.-Z. Zhang, Automated production of readable proofs for theorems in non-Euclidean geometries , in Automated Deduction in Geometry, D. Wang (ed.), LNAI 1360, SpringerVerlag, 171-188 (1997). 4. L. Yang, A new method of automated proving , in The Mathematical Revolution Inspired by Computing, Oxford University Press, 115-126 (1991). 5. G. Cairns, M. McIntyre and J. Strantzen, Geometric proofs of some recent results of Yang Lu, Math. Magazine 66:4, 263 (1993). 6. L. Brand, Vector and Tensor Analysis (1947). 7. J. M. H. Olmsted, Advanced Calculus (1961). 8. H.-Q. Yang, S: G. Zhang and G.-C. Feng, A Clifford algebraic method for geometric reasoning , in Automated Deduction in Geometry , X.-S. Gao, D. Wang and L. Yang (eds.), LNAI 1669 , Springer-Verlag, 111-129 (1999).
HIGHER ORDER PRE-UNIFICATION ON INTUITIONISTIC PROOF NETS (EXTENDED ABSTRACT) SATOSHI MATSUOKA Department of Electrical and Computer Engineering, Faculty of Engineering, Nagoya Institute of Technology, Gokiso, Showa-Ku, 466-8555, Japan E-mail:
[email protected] This paper concerns higher order pre-unification on proof nets. First we present the intuitionistic implicational multiplicative fragment of proof nets. Second we define an equality on the fragment. The equality is based on the notion of approximations to proof nets. The notion is similar to Bohm-trees in A-calculus. Third we define the unification problem on the equality. Fourth we present a higher order preunification procedure for the problem and we show that the procedure always terminates and is sound and complete for the unification problem.
1 Introduction Higher order unification has been studied in an extensive literature on theoretical computer science, e.g., by Huet3, Snyder and Gallier7. As a part of implementations of theorem provers (e.g., the work of Paulson6) and higher order logic programming languages (e.g., the work of Nadathur and Miller5), it has been used (more precisely, higher order pre-unification algorithm has been used). Higher order unification is a procedure that finds a substitution B for a pair of two lambda terms (s, t) such that Os and Ot are equal under a equality relation. The idea of the procedure may be summarized as follows : first the procedure tries to unify the heads of s and t and if the attempt succeeds, then the procedure tries to unify all arguments of s and t. In this extended abstract, we sketch our definitions of the unification problem on the the intuitionistic implicational multiplicative fragment of proof nets (for short IIMLL proof nets) and of a higher order pre-unification procedure for the fragment. We also sketch a proof of the termination, soundness, and completeness of the procedure for the unification problem. Higher order pre-unification for the intuitionistic implicational multiplicative fragment of Linear Logic has been already studied using linear A-calculus in the paper by Cervesato and Pfenning', but the work of Cervesato and Pfenning does not have any proof of the termination on the fragment. Moreover our work can be a basis of higher order pre-unification procedures for larger fragments of proof nets including exponentials, which are richer than linear Acalculus, since proof nets with exponentials have the ability to share subterms, 138
139
F+-7-1
A+ A
A+ B
A B+
Cut Cut-link
AOB tensor-link
ATB+
ID-link
A
A A l .... An T+
par- link T-box
f:A+ constant
Figure 1. The links we use in this paper.
while linear A-calculus does not have the ability.
2 IIMLL Proof Nets and Our Equality on Them Figure 1 shows the links we use in this paper , where A, B, A ® B, APB, and T are called formulas, and + and - polarities. The intuitionistic implicational multiplicative fragment of proof nets (for short IIMLL proof nets ) is inductively constructed from these links. In general proof nets including Cut-links are considered redundant: we say that IIMLL proof nets that do not include Cut-links are normal. We define three rewrite rules that eliminate Cut-links (see Fig. 2). We can identify an IIMLL proof net 0 including Cut-links with the IIMLL proof net obtained from O by iteratively eliminating Cut-links using these rewrite rules. Moreover we use another rewrite rule: the rewrite rule is called 77-long (see Fig. 3). The rewrite rule makes us identify an IIMLL proof net with a different IIMLL proof net that can be considered extensionally equal to it. Next we define an equality =p„ on IIMLL proof nets . The equality =pn is based on the notion of approximations to IIMLL proof nets. The notion is similar to Bohm-trees in A-calculus. 3 The Higher Order Unification Problem on IIMLL Proof Nets Next we define substitutions for IIMLL proof nets and applications of these substitutions to IIMLL proof nets. In order to define them we need the notion of names that are assigned to occurrences of maximal formulas with --polarity in IIMLL proof nets. A substitution is a multiset of IIMLL proof nets whose maximal formulas with +-polarity have unique names. For an IIMLL proof net 0 and a substitution 0, the application of 0 to 0 is to link 0 to IIMLL proof nets in 0 by using Cut-links on a condition about names. Next we define the unification problem on IIMLL proof nets using the equality =p„ and the notion of substitutions above. A summary of the unification problem has been given in Introduction.
140
A+ A^+L°+J X
j A Z B+ X
T-box
L -B T+ A®B B L^ n -"A
!
cut
cut
ID rewrite rule nU putative rewrite rule
n I
!
T rewrite rule
T-box L
C
B
T`
Figure 2. Three rewrite rules that eliminate Cut-links
A®B A'8B
I
eta-long rewrite rule
A B A B+ A®B A'9B
Figure 3. f7 rewrite rules
4 A Higher Order Pre- Unification Procedure on IIMLL Proof Nets Next we define our higher order pre-unification procedure on IIMLL proof nets. It is a set of transformation rules, which transform multisets of pairs of IIMLL proof nets to another multisets of them. These transformation rules are classified as follows: 1. The procedure removes a pair in which both IIMLL proof nets are equal under =pn (removal);
2. The procedure decomposes a pair in which the approximations to both IIMLL proof nets are equal into a multiset of pairs of their subproof nets (SIMPL);
141
3. The procedure tries to approximately equalize a pair (generations of partial bindings); 4. The procedure eliminates a name from a multiset by applying a substitution to the multiset. The substitution is constructed from a pair of IIMLL proof nets generated by transformation 3 (name elimination). With regard to the procedure we can show the following properties: 1. For any input, the procedure terminates ( Termination); 2. For a given input (i.e., a pair of IIMLL proof nets), when the procedure successfully terminates and outputs a substitution, the substitution unifies the input ( Soundness);
3. For any input which has unifiers, the procedure always successfully terminates and finds substitutions which unifies the input (Completeness). References 1. I. Cervesato and F. Pfenning. Linear Higher-Order Pre-Unification. In Proc. LICS'97, 1997. 2. J.-Y. Girard. Proof-Nets : The Parallel Syntax for Proof-Theory. In Ursini and Agliano , editors , Logic and Algebra. New York, Marcel Dekker, 1996. 3. G. Huet. A Unification Algorithm for Typed A-Calculus . Theoretical Computer Science , 1:27-57, 1975. 4. S. Matsuoka. Some Applications of Linear Logic to Automated Theorem Proving and Logic Programming (in Japanese). Dissertation , Department of Electrical and Computer Engineering , Faculty of Engineering, Nagoya Institute of Technology, March 2000. 5. G. Nadathur and D. Miller . An Overview of AProlog. In Fifth International Logic Programming Conference, pages 810-827, 1998 . MIT Press. 6. L.C. Paulson . Natural Deduction as Higher -order Resolution . Journal of Logic Programming, 3:237-258, 1986.
7. W. Snyder and J.H. Gallier . Higher Order Unification Revisited: Complete Sets of Transformations . Journal of Symbolic Computation, 8:101140, 1989.
EFFICIENT IMPLICITIZATION OF RATIONAL SURFACES BY MOVING PLANES MING ZHANG, RON GOLDMAN Department of Computer Science, Rice University , Houston TX 77025, USA E-mail : { mzhang, rng}Ocs.rice. edu
ENG WEE CHIONH School of Computing, National University of Singapore, Singapore 117543 E-mail:
[email protected] Resultants are a standard tool for solving the implicitization problem for rational surfaces. For a rational tensor product surface of bi-degree (m, n), the implicitization matrix constructed by the bi-variate Sylvester resultant is sparse with simple repetitive entries but has order 6mn, whereas the implicitization matrix constructed by the Dixon resultant has order 2mn but the entries are very complicated and distinct. Here it is shown that the method of moving planes provides an efficient implicitization technique by constructing an implicitization matrix with the style of the Sylvester resultant (simple repetitive entries and sparse) and the order of the Dixon resultant (2mn).
1 Introduction In Computer Aided Geometric Design (CAGD), surfaces have two standard representations: parametric and implicit. The parametric representation is convenient for rendering surfaces, whereas the implicit representation is useful for checking whether or not a point lies on a surface. Both representations are important. But many surface design systems start from parametric representations. Implicitization is the process of converting surfaces from parametric form into implicit form. Resultants are a standard tool for solving the implicitization problem for rational surfaces','. The resultant of three bi-variate polynomials is a polynomial in the coefficients of these three bi-variate polynomials; the vanishing of the resultant signals a common root of the three original polynomials. For a generic rational tensor product surface of fixed bi-degree, the implicit equation can be obtained by taking the resultant of three auxiliary polynomials of the same bi-degree (see Section 2). There are two well-known resultant representations for three bi-variate polynomials of bi-degree (m, n): the Sylvester resultant and the Dixon resultant'"5'8. The Sylvester resultant is the determinant of a sparse 6mn x 6mn matrix whose entries are simple and repetitive. The Dixon resultant is 142
143
the determinant of a 2mn x 2mn matrix whose entries are very complicated and distinct3. Ideally we would like to compute the implicit equation from a matrix that has the style of the Sylvester resultant (simple repetitive entries and sparse) and the order of the Dixon resultant (2mn). This goal can be achieved by applying the method of moving planes7. A moving plane is a family of parameterized planes. For each fixed value of the parameters, the moving plane is the implicit equation of a plane. In this paper we shall introduce a new, efficient way to compute the implicit equation of a generic rational tensor product surface of bi-degree (m, n) from a specific set of 2m or 2n moving planes. The resulting implicitization matrix has the style of the Sylvester resultant (simple repetitive entries and many zeros) and the order of the Dixon resultant (2mn). The rest of this paper is structured as follows. Section 2 recalls the construction of the implicitization matrix by the Sylvester and Dixon resultants for three tensor product polynomials of bi-degree (m, n). Section 3 reviews the method of moving planes, and Section 4 shows how to construct an implicitization matrix by the method of moving planes that has the style of the Sylvester resultant and the order of the Dixon resultant. Section 5 examines the computational costs of the new method. 2 Implicitization by Resultants
Consider three polynomials of bi-degree (m, n) m
n
m
n
m
n
E r ( E E f (s, t) = E ai,jsiti, g(s, t) = L: b2js'tj, h s, t) = ci js't, i=0 j=0 i=0 j=0 i=0 j=0
It is well known that these three polynomials f, g, h have n2 common roots at s = oo and m2 common roots at t = oo. We shall be interested in common roots other than these m2 + n2 canonical roots. Thus by a common root we shall mean either an affine root or an extra root at s = oc or t = oo. The resultant of f, g, h has many different representations2'5'8. Here we review two of these representations: the Sylvester resultant and the Dixon resultant. The Sylvester resultant is the determinant of the coefficients of the polynomials
11
If, g, h,. .., to-1(f, g, h ), ... , s2m -1(f, g, h), ... , s2m-l tn-1(f, g, h) I
That is, the Sylvester resultant matrix is defined by f g h
... s2m-ltn-1(f g h)
144 = f j ... t2n - 1 ... s3m-1
... 33m-lt2n
-1 ] . Syl(f, g, h).
The polynomials f, g, h have a common root if and only if I Syl (f, g, h) I = 0. The Dixon resultant of f, g, h is the determinant of the coefficient matrix Dix (f, g, h), where Dix (f, g, h) is defined by 1
1 1T f (s, t) g(s, t) h(s, t) f (a, t) g(a, t) h(a, t)
t2n-1
f (a„0) g(a„f) h(a, Q) (a - s)(Q - t)
Dix(f,g,h) sm-1
a2m-1
8 m-lt2n - 1,
La 2m-l/fin-1 I
Again the polynomials f, g, h have a common root if and only if IDix(f,g,h)I = 0. The non-zero entries of Syl(f, g, h) are very simple to compute, since these entries come directly from the coefficients of f, g, h. These entries repeat since multiplying f, g, h by the monomials sitj only shifts the columns, but does not alter the values of the entries. The matrix Syl (f, g, h) is also sparse, which expedites computations. But Syl(f, g, h) is very large - of size 6mn x 6mn. On the other hand, the matrix Dix(f, g, h) is much smaller - only of size 2mn x 2mn - but Dix(f, g, h) has very complicated entries3.
To see why resultants arise naturally in implicitization, consider a rational surface X
x(s, t) 1, y(s, t) Z = z(s, t) w(s, t)' w(s, t)' w(s, t)'
(1)
where m x(s, t) =
n
E E ai,jsiti, i=0 j=0 m n
z(s, t) = E F, ci, j 8it'i, i=0 j=0
M
n
y(s, t) _ E E bsj s't'' i=0 j =0 m n
w(s, t) = L L dij sitj i=0 j=0
are polynomials of bi-degree (m, n). Throughout this paper, we will consider only rational surfaces (1) without any base points in excess to those that are intrinsic to bi-degree surface parametrization. Recall that a base point for surface (1) is a pair of parameters (so, to) such that
x(so,to ) = y(so,to ) = z(so,to ) = w(so,to) = 0.
145
As discussed earlier, the bi-degree patch ( 1) always has m2 + n2 base points due to the m2+n2 canonical roots at infinity. So when we say surface (1) has no excess base points , we mean that the surface does not have any additional base points.
To obtain the implicit representation F(X, Y, Z) = 0, for surface ( 1), we introduce three auxiliary polynomials (in s, t): X • w(s, t) - x(s, t), Y • w(s, t) - y (s, t), Z • w (s, t) - z(s , t). (2) The resultant of these three polynomials vanishes if and only if they have a common root, i.e. if and only if the point (X, Y, Z) satisfies the three equations X • w(s, t) - x(s, t) = 0 , Y • w(s, t) - y(s, t) = 0, Z • w(s, t ) - z(s, t) = 0, for some value of s, t. Since , by assumption, surface ( 1) has no excess base points , (X, Y, Z) makes the resultant of X • w(s, t) - x(s , t), Y • w(s, t) - y (s, t), Z • w(s, t) - z(s, t) vanish if and only if (X, Y, Z) is on surface ( 1). So setting the resultant to zero yields the implicit equation of the parametric surface. Since both the Sylvester resultant and the Dixon resultant have certain advantages, ideally we would like to construct an implicitization matrix that has the style of the Sylvester resultant Syl (f, g, h) and the size of the Dixon resultant Dix (f, g, h). This goal can be achieved by applying the method of moving planes.
3 The Method of Moving Planes A moving plane of bi-degree (al, o2) is an implicit equation of the form 01 02
EE(Ai,jx+B1,jy+Ci,jz+Di,jw) •siti = 0. i=0 j=o
(3)
For each fixed value of s and t, Equation (3) is the implicit equation of a plane in C.
The moving plane (3) is said to follow surface (1) if 01 02
'2 j = 0. (4) `Ai jx(s, t) + Bi,jy(s, t) + Ci ,j z(s, t) + Di,jw( s, t)) . 8zt L: i=0 j=0
By equating the coefficients of all the monomials sitj in Equation (4) to zero, we obtain a system of linear equations in the indeterminates {Ai,j, Bi,j, Ci, j, D i, j }, 0 < i < al, 0 < j < Q2. Solving this system gives us a collection
146 of moving planes that follow surface (1). For certain special values of a,, o,2, it turns out that we can find (01+1)•(02+1) linearly independent moving planes. The original method of moving planes then constructs the implicit equation of the parametric surface (1) by taking the determinant of the coefficient matrix of the (ol + 1) • (02 + 1) linearly independent moving planes that follow the parametric surface7. Specifically, we can choose 01 = 2m - 1, 02 = n - 1. Then from Equation (4) we obtain a homogeneous linear system of 6mn equations with 8mn unknowns. This system has at least 2mn linearly independent solutions: 2m-1 n-1
p1 = E E (Ai1 x +Bi'iy+C(1)z+D(')w ) sztj = 0, i=0 j=0
2m-1 nn[-1 E j^(A^ ^"'n)x + B1j "'n)y + C(, mn)z + D^ ^"`n)w)sitj = 0. P2mn = i=0 j=0
Each of these solutions is a moving plane that follows surface (1). Therefore the determinant of the coefficients of sitj of these 2mn moving planes, i.e. A(') x + B(1) C( l ) z + Dhow 0,0 0,0y +0,0
... Alm-l,n-1x + ... + D2(')-l,n-lw
Ao2o n)x+...+Do2o n>w
... A2mii,n-1x+...+D22 in-lwI
vanishes whenever (x, y, z, w) lies on the surface. Hence if this determinant does not vanish identically, then it must be the implicit polynomial of surface (1) because it is of degree 2mn in x, y, z, w, which is the generic degree of surface (1). Notice that the auxiliary equations X • w(s, t) - x(s, t) = 0, Y • w(s, t) - y(s, t) = 0, Z • w(s, t) - z(s, t) = 0, are three moving planes of bi-degree (m, n) that follow surface (1). Thus the standard resultant technique for finding the implicit equation of surface (1) employs three moving planes of bi-degree (m, n) that follow the surface. Using the Sylvester resultant generates 6mn moving planes of bi-degree (3m 1, 2n - 1), whereas using the Dixon resultant generates 2mn moving planes of bi-degree (m - 1, 2n - 1).
147
4 Efficient Implicitization by Moving Planes Invoking the method of moving planes to construct an implicitization matrix of order 2mn does not give us anything essentially new, since we can find such an implicitization matrix more directly by taking the Dixon resultant of the auxiliary polynomials in Equation (2). In this section, we show how to implicitize rational tensor product surfaces efficiently by using the method of moving planes to construct an implicitization matrix that has the style of the Sylvester resultant and the order of the Dixon resultant. This construction mimics a similar result for rational curves presented in the paper4 by Chionh and others.
Consider the moving planes of bi-degree (m - 1, n) m-1 n
E E (Ai,jx + Bi,jy + Ci,jz + Di,jw) sitj = 0 (5) i=o j=o
that follow the bi-degree (m, n) surface (1). Substituting x = x(s,t), y = y(s, t), z = z(s, t), w = w(s, t) into Equation (5), and setting the coefficients of skti, 0 < k < 2m - 1, 0 < l < 2n, to zero generates a linear system of 2m(2n + 1) equations with 4m(n + 1) unknowns. Therefore, there are always at least 4m(n + 1) - 2m(2n + 1) = 2m linearly independent solutions to this linear system. Suppose that there are exactly 2m solutions. From these 2m solutions, we can construct 2m moving planes that follow surface (1): m-1 n
pi = (AZ^x+BZ^1)y+CZ^)z+D(^w) Sits =0, i=o j=o
m -1 n [[
p2m =
L^ (AZ 2m )x
+ Bz2m)y + Ci m)z + DZ ^m)W) sitj = 0.
i=o j=o Let M be the matrix whose columns consist of the coefficients of s1'ti, 0 < l < 2n - 1, 0 < k < m - 1, of the 2mn moving planes pj, ... , to-1 pj, 1 < j < 2m (see Fig. 1). Thus M is a square matrix of order 2mn, and the entries of M repeat since multiplying pj by ti simply shifts the entries in the corresponding column. Moreover, M is sparse, since there are lots of zero entries. Hence M is a matrix in the style of the Sylvester resultant with the order of the Dixon resultant. It is easy to see that IMF = 0 whenever a point (x : y : z : w) lies on surface (1), since each column represents a moving plane that follows surface
148
4 x+•••+Dolow Ao,jx+.+Dollw A0(l0)x+ +D(1) Aolnx+.+Dolnw
Aoll x + ... + D(1)1W '$ A(')x+...
+Do1nw
A;,1) 1 ox + . + D()- 1 ,ow A(m) 1 1x + ... + DM1) 1 , 1w
Am (1) 1 ,Ox + ... + DM - l ow A((')
1nx+...+
Dm1)
1nw
A(ml) 11x+...+D(n1) 11w ,
A((')
1,nx
+ ... +
D(,1)
1 nw
Figure 1. The matrix M consisting of the coefficients of sktt of the 2mn moving planes p,,...,to-lpj, 1 < j < 2m. The rows of M are indexed by 1,..., t2n-1, s, ..., t2n-1, 8m-1e •• f Sm-lt2n-1
( 1). Moreover , EMI is at most degree 2mn in x, y , z, w, because the entries of M are linear in x, y , z, w. Since , by assumption, surface ( 1) has no excess base points , the irreducible implicit equation of surface (1) is of degree 2mn; thus IMI = 0 must be a constant multiple of the implicit equation if EMI 0. Below we shall show that IMI - as a polynomial in x, y , x, w - is not, in general, identically zero. By construction, fi,j,k,i (a,
IMI =
k l b, c, d) x i y'x w ,
i+j+k+1=2mn
where the functions { fi,j,k,i(a, b, c, d)} are polynomials in the coefficients au,,,, bu,,,, cu,,,, du,,,, 0 < u < m, 0 < v < n, of x, y, z, w. Thus I M I can vanish identically only if the polynomials { fi,j,k,i(a, b, c, d)} vanish identically. To
149
show that this does not happen, we need only exhibit a single surface for which IMF $- 0. Consider the surface x=3m, y = tn, z=smtn +1, w=1.
(6)
Substituting these formulas into Equation (5) and setting the coefficients of sitj to zero, we obtain, for 0 < i < m - 1,
Ci,o + Di,0 = ... = Ci,n-1 + Di,n-1 = 0, Ci,1 = ... = Ci,n = 0, Bi 1 = ... = Bi ,n = 0, Ci,n + Di,, + Bi,o = 0.
Inserting these values into Equation (5) yields the moving planes m-1
(-Ci,o(w-z+xtn)+Bi,o(y-wtn))s'=0, 0
Thus , there are exactly 2m linearly independent moving planes of bi-degree (m - 1, n) that follow surface (6). We may take these 2m linearly independent moving planes to be li = (-z + W)si + xs'tn,
0
ri = ysi - wsitn,
Placing the coefficients of the monomials skt`, 0 < l < 2n - 1, 0 < k < m - 1, of the polynomials tali, tiri , 0 < j < n - 1, 0 < i < m - 1, into a matrix, we obtain I \ (-z + w)In yIn XIn -WIn
C
(-z + w)In yIn XIn -WIn
where In is the identity matrix of order n, and the columns of M are indexed by to-lr l m-1,•••, to-ll r m-1,•••, to-1T to-ll l 0,•••, m-1, m-1• 0,T 0,•••, 0 ,•••,
Hence in this case , IMI = (wz - w2 - xy)mn. Thus as a polynomial in au,v, bu,v, cu,v, du,v, IMI 0 0. It may still happen that for some specific choices of the coefficients au,v, bu,v, cu,v, du,v, the polynomials { fi,j,k,i} all vanish simultaneously and hence, in these cases, IMF is identically zero. These particular coefficients, satisfying
150 the equations f:,j,k,t (a, b, c, d) = 0, form a low dimensional variety in the high dimensional space of all rational surfaces of bi-degree (m, n) with no excess base points and exactly 2m linearly independent moving planes that follow the surface. Since this low-dimensional variety has measure zero, IMF almost never vanishes identically. Hence I M I = 0 is almost always the implicit equation of the tensor product surface (1), when surface (1) has no excess base points, and has exactly 2m linearly independent moving planes of bi-degree (m -1, n) that follow the surface. Moreover, surface (1) contains excess base points or has more than 2m linearly independent moving planes of bi-degree (m-1, n) that follow the surface, only if the coefficients au,v, bu,v, cu,v, du,v satisfy some polynomial conditions; hence these coefficients again form a low dimensional variety of measure zero in the space of all rational surfaces of bi-degree (m, n). Therefore, generically IMI = 0 is the implicit equation of the rational tensor product surface (1). Thus we have the following Theorem 1 The method of moving planes computes the implicit equation of a generic rational surface (1) from a determinant in the style of the Sylvester resultant with the size of the Dixon resultant. 5 Efficiency and Computational Complexity The computational complexity of constructing the new implicitization matrix M comes from computing the 2m moving planes of bi-degree (m - 1, n) we need to solve a linear system of size (4mn + 2m) x (4mn + 4m). Thus, the computational complexity is O(m3n3). On the other hand, the most efficient way of constructing the Dixon implicitization matrix has computational complexity min(O(m3n2), O(m2n3)) (see the reference3), so the construction of the Dixon implicitization matrix is slightly more efficient. However, the new implicitization matrix is sparse; hence computing its determinant will be much easier than computing the dense Dixon resultant. Thus computing the implicit equation from the implicitization matrix M will be more efficient than computing the implicit equation from the Dixon resultant. Moreover, when many points need to be checked for whether they lie on a surface, the determinant of the implicitization matrix IMI or the Dixon resultant will be computed many times. In this case, the new implicitization matrix M will be even more efficient than the Dixon resultant. To construct the implicitization matrix, we used 2m moving planes of bi-degree (m - 1, n) that follow the rational surface (1). We can also use 2n moving planes of bi-degree (m, n - 1) that follow surface (1) - the proof is much the same. Using the bi-degree (m - 1, n) moving planes, we need to
151
solve a (4mn + 2m) x (4mn + 4m) linear system so the implicitization matrix has 2mn - 2m repetitive columns and 2m2n2 - 2m2n zeros built in. Using the bi-degree (m, n-1) moving planes, we need to solve a (4mn+2n) x (4mn+4n) linear system so the implicitization matrix has 2mn - 2n repetitive columns and 2m2n2 - 2mn2 zeros built in. Linear systems with smaller size, and implicitization matrices with more repetitive entries and more zero entries all save computation. Therefore, when n > m the bi-degree (m - 1, n) moving planes are more efficient, but when n < m the bi-degree (m, n - 1) moving planes are superior. Acknowledgments
Eng-Wee Chionh is partially supported by grant R-252-000-065-112 (ARF). Ming Zhang and Ron Goldman are partially supported by NSF grant CCR9971004. References 1. E. W. Chionh and R. N. Goldman . Using Multivariate Resultants to Find the Implicit Equation of a Rational Surface. The Visual Computer, 8:171-180 (1992). 2. E. W. Chionh and R. N. Goldman . Elimination and Resultants: Part 2 - Multivariate Resultants. IEEE Computer Graphics and Applications, 15:60-69 (1995). 3. E. W. Chionh , M. Zhang , and R. N. Goldman . Fast Computation of the Bezout and Dixon Resultant Matrices . Submitted to Journal of Symbolic Computation (2000). 4. E. W. Chionh, M. Zhang, and R. N. Goldman. Implicitization Matrices in the Style of Sylvester with the Order of Bezout . Curve and Surface Design: Saint-Mato 1999, edited by Pierre-Jean Laurent, Paul Sablonniere, and Larry Schumaker , 17-26 ( 2000). 5. A. L. Dixon . The Eliminant of Three Quantics in Two Independent Variables . Proc. London Math. Soc., 7:49-69 ( 1908). 6. D. Manocha and J. F. Canny, Implicit Representation of Rational Parametric Surfaces . Journal of Symbolic Computation, 13:485-510 (1992). 7. T. W. Sederberg and F . L. Chen. Implicitization Using Moving Curves and Surfaces . Proceedings of SIGGRAPH95, 301-308 ( 1995). 8. M. Zhang , E. W. Chionh, and R. N. Goldman . Hybrid Dixon Resultants. The Mathematics of Surfaces VIII, edited by R. Cripps, Information Geometers Ltd., Winchester, UK, 193-212 (1998).
FAST COMPUTATION OF DISTANCE BETWEEN TWO DISJOINT 2D CONVEX REGIONS WITH CURVED BOUNDARIES WENPING WANG Department of CSIS, University of Hong Kong, Pokfulam Road, Hong Kong, China E-mail: wenpingOcsis .hku.hk BRIAN A. BARSKY Computer Science Division , University of California, Berkeley, California 94720-1176, U.S.A.
E-mail: barsky @cs.berkeley. edu • http : //www.cs. berkeley. edu/-barsky XUEQING LI Department of Computer Science, Shandong University, Jinan, Shandong, China E-mail: xqliOcsis . hku.hk The problem of computing the distance between two disjoint 2D convex regions with curved boundaries is discussed . Existing methods for this problem use numerical methods to produce approximate solutions . There is, in general , a lack of analysis of numerical behaviors of these methods , and the rate of convergence of these methods is relatively slow. For example , the method of Gilbert and Foo4 has linear convergence . In this paper, we present a new two-step method with quadratic convergence for fast computation of distance between two disjoint convex regions. The first step of the method identifies a pair of boundary elements that contains a pair of witness points from the boundaries of the two regions that realizes their distances . In the second step , Newton 's root finding technique is used to determine the accurate locations of the witness points on the identified boundary elements. It has been verified by experiments that the performance of our method is superior to the method of Gilbert and Foo.
1 Introduction The distance between 2D convex regions or 3D convex bodies is useful information in many applications in robotics , CAD/CAM , and computer graphics. In this paper , we focus on the problem of computing the distance between two disjoint 2D convex regions bounded by piecewise regular curves. Our method aims to compute a witness pair that realizes the distance between two disjoint 2D convex regions bounded by piecewise regular curves. Like most other these methods , our method applies only to disjoint 2D convex regions . Our method comprises two main steps : In the first step , it finds a pair of boundary elements from two given regions that contains a witness
152
153 pair. Here, a boundary element refers to a line segment, a curve segment, or a joining point of two segments, called a vertex, on a boundary curve. In the second step, Newton's method is used to accurately locate the witness pair by applying certain criteria to guarantee the convergence of the process. In the remainder of this paper, we begin with a review of related previous work and preliminaries in Section 2. In Section 3 we discuss how to determine a pair of boundary elements that contains a witness pair. In Section 4 we consider how to accurately locate the witness pair. Experimental results and a comparison with the method of Gilbert and Foo4 are presented in Section 5.
2 Previous Work and Preliminaries The computation of distance between various geometric entities has been studied widely in the literature 2,3,4,6,7 The method of Gilbert, Johnson, and Keerthi3 is well known for computing the distance between two disjoint convex polytopes in any dimension. We will refer to it as the GJK method, after the initials of the authors' last names . The GJK method is extended in the paper4 by Gilbert and Foo to handle objects with curve boundaries. We will refer to this extended method as the GF method. The GF method can be used to compute the distance between general 2D convex regions as well as between general 3D convex bodies. An efficient implementation of the GF method is presented in the paper? by Turnbull and Cameron for 2D convex regions bounded by NURBS curves and 3D convex bodies bounded by NURBS surface patches. The reader is refered to the paper4 by Gilbert and Foo for the details. A point set in E2 is compact if it is bounded and closed'. Let IntX and 8X denote the interior and the boundary of a compact set X C E2, respectively. A set X C E2 is said to be regular convex if (i) X is convex and compact, (ii) IntX $ 0, and (iii) aX consists of a finite number of piecewise regular curves; a regular convex set will also be referred to as a convex region. In addition, we assume that all the line segments or curve segments on OX are directed counterclockwise with respect to X. If a curve segment Cx on 8X is parameterized by x(u), u E [u8, ue], we assume that the direction of x'(u) is the same as the direction of CX. Let P and Q be two compact convex sets in E2, two-dimensional Euclidean space. The distance between P and Q is defined by
dist(P,Q) = min{d (p, q)lp E P, q E Q}, where d(., •) is the Euclidean distance. If two points p* E P and q* E Q
154
satisfy d(p*, q*) = dist(P, Q), then p* and q* are called witness points, or equivalently, a witness pair, and the vector v* = q* - p* is called the witness vector (see Fig. 1). Note that for two disjoint convex regions a witness pair is not necessarily unique, but the witness vector is.
P Q Figure 1. The witness vector.
Figure 2 . Supporting points.
The problem we solve in this paper is : given two regular convex sets P and Q in E2 with P n Q = 0, compute a witness pair that realizes the distance between P and Q. We will refer to such P and Q as two disjoint regular convex sets, or equivalently, two disjoint convex regions. Let P and Q be two disjoint 2D convex regions . For a non-zero vector w, the points p E P and q E Q are called supporting points of P and Q with respect to w if w•p=max { w•xlxEP} and w•q=min{w •ylyEQ}. See Fig. 2. Clearly, the vector w is parallel to the witness vector if and only if a pair of supporting points with respect to w is a witness pair. A boundary element of a convex region can be either a line segment, or a curve segment , or a vertex which is the joining point of two segments. These three types of boundary elements will be denoted by L, C, and V, respectively. We form an ordered pair of boundary elements and denote its type by (p, A), where p and A assume symbols L, C, or V.
Let X C E2 be a regular convex set. The normal direction set of a point p E OX is defined by Nx({p})_{vIv ER2,Ivy=1, and v•(x -p) <0,`dxEX}. Geometrically, Nx (p) is the set of the outward unit normal vectors of all the supporting lines of X at the point p E OX.
155
Let Cx be a line segment or curve segment on OX. Let n(p) be the outward unit normal vector of Cx at a point p on Cx. The normal direction set of the segment Cx is defined by Nx(Cx) = { n(p)Ip E Cx}. Thus , Nx (Cx) is a single-element set if Cx is a line segment, and it is an interval on the unit circle Si centered at the origin if Cx is a curve segment. Finally, we define
Nx(Cx)={-vI vENx(Cx)} for any Cx C OX; i.e., all the unit vectors in Nx (Cx) are negated to form the set NX (Cx ). The notation NX (Cx) is introduced to simplify the statement of some conditions to be derived below.
Figure 3. A witness pair between a vertex and a curve segment.
3 Determining a Pair of Boundary Elements The theorem below characterizes a witness pair as two points on the boundaries of two regions. Due to the space limit, only the cases involving a curve segment will be discussed, and the proofs of all the theorems in this paper are omitted. Theorem 1 [Type (V, Q. Let p be a vertex on the boundary OP and CQ a curve segment on the boundary OQ (see Fig . 3). Suppose NN (CQ) C Np({p}). Let q8 and qe be the starting point and ending point, respectively, of CQ. Let q(v), v E [v8,ve], be a regular parameterization of CQ such that q(ve) = q8 and q(ve) = qe. Suppose that the line segments pq8 and pqe do not intersect the curve segment CQ except at the points q8 and qe. Then the vertex p and the curve segment CQ contain a witness pair if and only if (i) (q8 - p) . q' ( v8) : 0 and (ii) (qe - p) . q'(ve) > 0.
156 Remark: One of the conditions in Theorem 1 is that NQ (CQ) C Np({p}). Given a point p E OP and a curve segment CQ C 8Q, if NQ (CQ) nNp({p}) = 0, then the curve segment CQ can be discarded since it does not contain a witness point ; otherwise , CQ can be subdivided so that one of its sub-segments CC satisfies NQ (CQ) C Np({p}).
Cp
Figure 4. A witness pair between a line segment and a curve segment.
Figure 5. A witness pair between two curve segments.
Theorem 2 [Type (L, Q. Let Lp be a line segment on the boundary 8P and CQ be a curve segment on the boundary 8Q (see Fig. 4). Let p8 and pe be the starting point and ending point, respectively, of Lp. Let q8 and qe be the starting point and ending point, respectively, of CQ. Suppose Np(Lp) C NQ (CQ). Let 4 be a point on the curve segment CQ such that NN(q) = Np(Lp). Define wp - Pe - p8. Then the line segment Lp and the curve segment CQ contain a witness pair if and only if (i) (4 - p8) • wp > 0 and (ii ) (4 - Pe) • wp < 0.
Remark: Although Theorems 1 and 2 refer only to a pair of boundary elements of type (V, C) or (L, C), the symmetric cases of type (C, V) or (C, L) can be treated in a similar manner. Consequently, the details are omitted. Theorem 3 [Type (C, Q. Let Cp and CQ be two curve segments on the boundaries 8P and 8Q, respectively (see Fig. 5). Let the curve segment Cp be parameterized by p(u), u E [u8, ue], with p(ue) = p8 and p(ue) = pe. Let the curve segment CQ be parameterized by q(v), v E [v8, ve], with q(v8) = q8 and q(ve) = qe. Suppose that p'(u8) is parallel to -q'(v8) and that p'(ue) is parallel to -q'(ve); i.e., Np(Cp) = NQ (CQ). Suppose further that the line q, do not intersect the curve segments Cp or CQ except segments P8g8 and F,at their endpoints . Then the curve segments Cp and CQ contain a witness pair if and only if (i) (q8 - P8 ) . q'(v8) < 0 and (ii) (qe - Pe ) - q'(ve) >_ 0.
157
4 Computing the Witness Pair In the previous section, we showed how to identify a pair of boundary elements that contain a witness pair . Now we consider computing the exact locations of the witness pair on the identified pair of boundary elements. This is a straightforward task if the pair of boundary element does not contain a curve segment; that is, it is of one of the types (V, V), (V, L), (L, V), and (L, L). Thus, in the following, we will only discuss the cases where the pair of boundary elements includes a curve segment . There are essentially three different cases : (V, C), (L, C), and (C, C); the other cases of type (C, V) and (C, L) can easily be reduced to the cases of type (V, C) and (L, C), and be treated similarly. When we compute a witness pair on a pair of boundary elements, we form an equation or equations that characterize the witness points as the root of the equation (s), and apply Newton 's method to solve for the root. There are three issues we need to address in applying Newton 's method in this context : 1) we need to check a nonsingularity condition to ensure that Newton 's iteration can be performed; and 2) we need to ensure the points generated by the intermediate results of Newton 's iteration fall inside the boundary elements under consideration . This second issue is related to the the problem of choosing an initial value for Newton 's method ; 3) we need to guarantee that Newton 's iterations have local convergence (to be explained later).
4.1 Types (V, C) and (L, C) Suppose that the witness pair is contained in a vertex p E OP and a curve segment CQ C 8Q. Let q, and qe be the starting point and ending point, respectively, of CQ. Assume that the point p and the curve segment CQ meet the requirements stated in Theorem 1; that is, NQ (CQ) C Np({p}), and that the line segments pq, and pqe do not intersect the curve segment CQ except at the points q, and qe7 respectively. Let q(v), v E [v„ ve], be a regular parameterization of CQ. Define the function f (v) = (q(v) - p) • q' (v), v E [v„ V,]. Given an initial value vo E [v„Ve], Newton's iterations, defined by vz+1
=
v2
_ f (Vi) __ f' (
v;
) ,
2
0, 1, 2, ... ,
can be used to compute the subsequent approximations to the root D of f (v) _ 0. In general we cannot guarantee that these iterations converge. However, if f(v) # 0, then Newton's method is locally convergent; that is, there exists a
158
neighborhood of V in [v8, ve] such that Newton iterations converge to v with any initial value vo in that neighborhood (Corollary 6.15 in the books by Kress). Theorem 4 Let V be the root of f (v) - (q(v) - p) • q' (v) = 0 in [v8, ve]. Then f'(v) # 0. The strategy we use is to start Newton's iterations with a curve segment CQ, which is obtained by applying Theorem 1. Before a solution with acceptable accuracy is found, the iterations are terminated in one of the following three cases: 1) some computed value vi is outside the interval [v8, ve]; 2) f(vi) = 0; 3) the iteration exhibits tendency of slow convergence. The last case depends on user-specified criteria. We regard the iteration to have slow convergence if two successive values of the iterations still differ by more than 10-4 after 4 steps; i.e., IN - v5I > 10-4. Once the iteration is terminated in one of these three cases, we will subdivide CQ and re-start the iteration with a sub-segment of CQ that contains the witness point.
The case of type(L,C) can be treated in a similar way.
4.2 Type (C, C) Suppose that the witness pair is contained in two curve segments Cp C 8P and CQ C 8Q. Suppose further that Cp and CQ meet the requirements in Theorem 3. Then there exists a parameter value u E [u87 ue] and V E [v8, Ve] such that p(u) and q(v) form a witness pair. That is, [q(V) - p(u)] . p'(u) = 0, [q(V) - p(u)] . q'(v) = 0. Consider the vector function F(u, v) = (g(u, v), h(u, v)) : R2 -* R2, where g(u, v) = [q(v) - p(u)] . p'(u), h(u, v) = [q(v) - p(u)] . q (v). Then (u, v) can be solved for as a root of F(u, v) = 0 by applying Newton's methods, using (ui +1 ,
vi+l ) = (u2, vi ) -
F(ui, vi)J-1 (ui, vi),
where J(u, v) is the Jacobian matrix of F(u, v); i.e., 8g u,v 8h u,v
J(u, v) =
e u v en u,v 8v 8v
159
Let (ii, v) be the root of F(u, v) = 0 in [u87 ue] x [v8, ve], corresponding to the witness points. The above iterations have local convergence in a neighborhood of (u, v) if J(u, v) is nonsingular. (Corollary 6.15 in the books by Kress). Hence, we wish to find conditions under which J(u, v) is nonsingular. Theorem 5 Let (u, v) be the root of F(u, v) = 0 in [u8, ue] x [v87 ve]. Then J(u, v) is singular if and only if p(u) and q(v) are curvature -vanishing points on the curve segments Cp and CQ, respectively. Unlike the case of type (V, C), the local convergence of Newton's iterations in the case of type (C, C) is, in general, not guaranteed. As a preprocessing step, we must find all curvature vanishing points on boundary curves and use them as cutting points to subdivide the boundary curves so that no curve segment has curvature-vanishing points in its interior. Hence, Newton's method can be applied with guaranteed local convergence, according to Theorem 5. The stragety for handling early termination and re-start of Newton's iteration in the case of type (C, C) is similar to that in the case of (V, C) as discussed in Section 4.1. Consequently, the details are omitted. 5 Experiments and Comparison
5.1 Outline of the algorithm Now we give an outline of our algorithm. Given two disjoint convex regions P and Q, we first subdivide their boundary curves so that (1) for each curve segment Cx C 8P, there is either Np(Cx) C NQ 1(Cy) or Np(Cx) C Sl NQ 1(Cy) for any Cy C 8Q. We call this a compatible boundary subdivision. Then a linear search is performed to identify a pair of boundary elements that contains a witness pair, with the help of conditions derived in Section 3. Once the boundary elements containing a witness pair is found, the procedure in Section 4 is followed to compute the witness pair.
5.2 Comparison Let wk denote the candidate witness vector generated at step k, k = 0, 1, 2, ... , that converge to the witness vector w. Let vi = Iwk - WI. In the actual test of computing the distance between two curve segments, since the exact witness vector w is often unknown, we used IF(u, v) I as the error measure, where the vector function F(u, v) is defined in Section 4.3. It can be shown that IF(u,v) I is of the same order as IviI.
When Newton's method is applied to a pair of boundary elements that contains a curve segment, our method has quadratic convergence for locating
160
the witness pair. Hence the error of our method at step k is O(c 2k) for some constant c > 0. In contrast, the GF method4 has linear convergence at best. To see this, we consider the case of applying the GF method to two disjoint circular regions, with their corresponding Minkowski representation of the process shown in Fig. 6. Clearly, in this case, the GF method reduces to a procedure of bisecting the circular arc between the preceding two candidate points on the circle in each step. Hence, the error of approximation of the GF method is 0(2-k), where k is the number of iterations. This implies linear convergence.
Figure 6. The case of a point and circle.
Figure 7. The case of two Bezier curves.
Table 1 shows the error of approximation versus the number of iterations performed with our method and the GF method on the same pair of input regions as illustrated in Fig. 7. NS stands for the number of steps performed. The GF method is denoted by "GF" and our method by "Newton". Note that, due to its relatively large numerical errors, the error of approximation of the GF method cannot be improved beyond 10-4 even after 15 steps. In contrast, the error of approximation of our method achieves 10-10 within 4 steps.
6 Summary We presented a method for fast computation of distance between two 2D convex region with curved boundaries. This method is based on Newton's iterative method for root finding, so has quadratic convergence, which is much faster than the existing methods, such as the method of Gilbert and Foo4 with linear convergence. An open problem is to extend our method to handle 3D convex bodies with curved boundaries.
161
NS
Error
NS
Error
NS
Error
NS
Error
1
1.57x101
1
3.01x102
6
6.80x10-1
11
3.30x10-2
2
2.78x10-1
2
1.07 x 102
7
1.90x10-1
12
2.02x10-3
3
1.80x10-5
3
1.40x101
8
6.07x10-1
13
5.64x10-3
4
7.97x10-11
4
4.08 x 101
9
3.7x10-2
14
1.81x10-3
5
1.60 x 10-14
5
1.29 x 101
10
1.03 x 10-1
15
1.10 x 10-4
Table 1. Newton.
Table 2. GF.
References 1. R.G. Bartle and D.R. Sherbert, Introduction to Real Analysis, Second Edition, John Wiley & Sons, Inc., New York, 1992. 2. S. Cameron, Computing minimum and penetration distance between convex polyhedra, Proceedings of the 1997 IEEE International Conference on Robotics and Automation, pp. 3112-3117.
3. E.G. Gilbert, D.W. Johnson, and S.S. Keerthi, A fast procedure for computing the distance between complex objects in three-dimensional space, IEEE Transactions on Robotics and Automation, vol. 4, pp. 193-203, 1988. 4. E.G. Gilbert and C.P. Foo, Computing the distance between general convex objects in three dimensional space, IEEE Transactions on Robotics and Automation, vol. 6, pp. 53-61, 1990. 5. R. Kress, Numerical Analysis, Springer, 1998. 6. C.J. Ong and S. Cameron, The Gilbert-Johnson-Keerthi distance algorithm: a fast version for incremental motion, Proceedings of the 1997 IEEE International Conference on Robotics and Automation, pp. 11831189. 7. C. Turnbull and S. Cameron, Computing distance between NURBSdefined convex objects, Proceedings of the 1998 IEEE International Conference on Robotics and Automation, pp. 3685-3690.
G1 CONTINUOUS CONDITIONS OF BICUBIC B-SPLINE SURFACES XIQUAN SHI AND YAN ZHAO Department of Mathematics , Dalian University of Technology, Dalian 116024, China E-mail: xgshiOdlut. edu.cn NURBS is the industrial standard to represent curves and surfaces. Recently, with the development of reserve engineering, NURBS becomes more and more important. B-spline as a special kind of NURBS is the most often used method in the industrial world. In this paper, the necessary and sufficient conditions of GI continuity between two bicubic non-uniform B-spline surface patches are obtained, and the intrinsic conditions of the control vectors of the common boundary curves are presented. These conditions are directly represented by the control vectors of the two non-uniform B-spline patches.
1 Introduction The construction of parametric surfaces such as Coons patches, Bezier patches and B-spline patches is a fundamental issue in geometric modeling and CAD fields. B-spline surfaces have become the most popular geometric representation in these fields due to its local support and global approximation properties. Recently, with the development of reverse engineering, scientists pay more and more attention to the research of B-spline since it is an important tool in reserve engineering for the reconstruction of complex curves and surfaces. But the research of using B-splines or NURBS to construct arbitrary topological type surface is just at its beginning step. For constructing smooth surfaces, a very important problem is to ensure smoothness along the common boundary curves of two adjacent patches. Smoothness can often be satisfied with geometric continuity. Meanwhile, as for some practical software, such as Pro/E and Geomagic Studio, they only accept bicubic B-spline with interior single knots. Because of this, the research to the bicubic B-spline becomes more and more important. In recent years, the conditions of geometric continuity between two adjacent parametric surface patches have been extensively studied in the literature',',', but none of them studied the conditions of geometric continuity of non-uniform B-spline surfaces. In the papers by Shi and Wang, the necessary and sufficient conditions of G' continuity between two bicubic B-spline surface patches are presented, and the intrinsic conditions of the control vectors of the common boundary curve are obtained as well. In this paper, our study only concentrates on 162
163
bicubic non-uniform B-spline surface patches. These conditions are directly represented by the control vectors of the two non-uniform B-spline patches. 2 Preliminary For two bicubic B-spline surfaces Sl (u, v) and S2 (u, v) defined over I2 = [0,1] x [0 , 1] with the common boundary curve C(v) = Sl (0, v) = S2 (0, v) as follows n
n
n
n
S1(u,v) = 1: 1: Pi,jNi,3(u)Nj,3(v),S2(u,v) = E1: Qi,jNi,3(u)Nj,3(v) i=0 j=0
i=0 j=0
(1)
with the knot vectors U= V = {0, 0, 0, 0,t4 , t5,...,tn , 1,1,1,1}
where ti < ti+l • m : n+4 (n > 3). In this paper we have assumed that both Sl (u, v) and S2 (u, v) have the same knot vectors in both U and V directions. But the method is also effective for general case. If n = 3 , then there are not the interior knots in U and V, and Sl (u, v) and S2 (u, v) are just two bicubic Bezier patches with the knot vectors U = V = {0, 0, 0, 0, 1, 1, 1, 1}.
Now we define three curves n
3
OS1(u, v)
E(Pl,j - PO,j)Nj,3(v), t4 u=0 j=0
8u
n
8S2 (u, v)
Ou OS1(u, v) 8v
3 t4 ^(Ql,j - QO,j)Nj,3(v), u=0 j=0 n-1
v E [0, 11, (2)
= 3 ` Po,j+1 - Po,j Nj,2(v), u= 0
=
tj+4 - tj+l
j =0
n
C, (V) = 3 E P i Nj, 3(v),
n
C2 (v) = 3 1: Qj
t4 t4 j=0 j =0 n-1
Co(v) = 3 E t 4T't j=0
7+
7+
Nj,3(v), (3)
1Nj,2(v),
where Pj = P1 ,j -P0,j, Qj = Qi,j -Qo,j and Tj = Po,j+i -P0,j. C1(v) and C2(v) are two cubic B-spline curves with the knot vector V; and Co(v) is a quadratic B-spline curve with the knot vector V' = {0, 0, 0, 4, ... , tn ,1,1,1}.
164
T ]( ^ `-^5--S (u,t)
Figure 1. G° Continuity of two adjacent B-spline patches
Inserting the element of 4, 4, ... , tn, to into V for the quadric B-spline curve Cl (v) and C2 (v), we have A
/
n
4 jCl(v)=4EPN 3(y), (4) ,3(y), C2 (V ) = 4 Nj,
j=0
7=0
where n = 3 (n - 2), then C, (v) (C2 (v)) is a cubic B-spline curve with the knot vector
V = {0,0,0,0, t4,t4 , t4,...,tn , tn,tn ,1,1,1,1}. Similarly inserting the elements of 4, ... , to into V' for Co (v) gets
3 2(n-2) Co (v) _
t4
T j Nj,2 (v).
(5)
j=0
Pjs(Qjs) and Tjs will be defined later. 3 The Determination of P j (Q j) and Tj Case n = 3 (i.e., there are no interior knots): P:=P:, i=0,1,2,3; T,=Ti, i=0,1,2. (6)
Case n = 4: Po = P0, Pi = P1, P2 = t4P2 + (1 P3
t4)P1,
= t4P3 + 2t4(1 - t4 ) P2 + (1 - t4)2P1,
P4 = t4P3 + ( 1 - t4)P2 ,
P5 = P4, P6 = P5;
(7)
165
To = To, T1 = t4T1, T2 = t4T1 + t4(1 - t4)T2, T3 = t4T2, i4 = 1 4 T3
(8)
Case n > 5: P1 = P1, P2 = a2P1 + ( 1 - a2)P2 p 2 P3 = a3P1 + ( 1 - a3 - /33 ) P2 +993P3 a3 = t e t , Po = Po ,
a2=1-tt, 5 qq =t, h'3 L
5
P3j = a33Pj + (1 - a3j - Q3j) Pj+l +,33jPj+2, _ (ti+4-ti+s ) 2 a3J (tj+4 - tj+l)(ti+4 - tj+2)'
193j =
(tj+s - tj+2)2
.^ = 2, ... , n - 4,
( ti+4-tj + 2)(tj+s-tj}2),
3+1 = t,+5-t,+s = 1 n - 4 , 1 - a3'+1)P P37' + 1 = a3J'+ 1P 7' + l + (J 7 + 2, a3J , j , ..., ,
P 37' +2 = a 3J'+ 2 P 7' + 1 + (7 1 - a3+2)P 7 + 2, a3J +2 =
tj +5 -tj +4
'^
P3(n-3 ) = a3(n-3 ) Pn-3 + (1 - a3(.-3) - N3(n-3)) Pn-2 +
0
1-tn 2 //^^ (tn-to-1) 2 a3(n-3) _ ( 1-tn-1 )(1-tn-2 , Y3( n-3) = (1-tn 1)2
= 1 n - 4, ,...,
,
3 ( n-3)Pn-1,
P3(n-3)+1 = a Pn-2 + (1 a )Pn - 1, a3 3 ( n-3)+1 3 (-n-3)+1 +1 = 1-t„ ( n-3 ) 1-tn-1 P3(n-3 )+ 2 = Pn-1, P3(n-2) = Pn-
(9) (9.5) dose not exist when n = 5. In this paper (m.n) always means the nth equation of equations (m). And
T1
To = To ,
T2
= a1T1
= a2T1 +Q2 T2
T2j+1 = a2j+lTj+l R T2j = a2jTj + ,3 2jTj+1,
al t5 4 (4 - 4 ) 2 = t ^ 132
t2
= t
a2j + 1 = tj+54t'•+2 j = 1, ... , n - 4, t t4ltj+4 - tj+3 )
a2j = (tj+4 - tj+1)(tj+4-tj+2) t4(tj+s-tj+2)
02j - (ti+4 - ti+2)(ti+5-ti 2) +
= 2, ... , n - 4,
(10)
T2(n-3 ) = a2(n-3 ) Tn-3 + Q2 ( n-3)Tn-2, a2(n-3 )
t4(1-tn ) ( 1-_1 )( 1-t_2 )
t4(tn-tn-1) 132(n-3) _ t4
T2(n-3 )+ 1 = a2(n-3)+ITn-2 a2(n-3 )+ 1 = 1-tn-1 '
t
T2(n-2) = a2(n-2)Tn-1 a2(n-2) = 1-T
(10.5) does not exist when n = 5. 4 Details of Deducing G' Continuous Conditions The restrictions of Cl (v), C2(v) and Co(v) on the interval [tj+3, tj+4], j = 0,1, ..., n - 3 with t3 = 0, to+1 = 1 are respectively C1,j(t)
Li=o P3j+iBi,3(t)),
Co,j (t)
Ei=o T2j+iBi,2(),
C2,j (t) := Q3j+iBi,3(t),
166 t-tit and Bi,p(t^) = CPt'(1 - t)P-i. where t = t +1and Co, j for j = 0, ... , n - 4 are G1 smooth joint if there exist Cl, j, C2, j hj (t), f j (t) and gj (t) such that three functions 3
hj(t)
3
> Q3j +iBi,3 (t) i=0
2
t)
E P3j +i B i,3(t ) + gj(t' E i=0 i=0
= fj(
T 2j+iBi,2(t)
(11) where h j (i f j (t) < 0. In almost all the existing literature related to constructing G1 surface models, it is usual to set hj(t) =1, fj(t)=-1, gj(t)=bj(1-t)+cjt. (12) So we use (12) to yield Q3j = -P3j
1
+ bjT2j,
3Q3j+1 = -3P3j+1 + 2bjT2j+1 + cjT2j, 3Q3j +2 = -3P3j+2 + bjT2j+2 + 2cjT2j+1,
j = 0,...,n - 3. (13)
Q3j+3 = - P3j+3 + CiT2j+2,
If n = 3, it follows from (6) that Qo = -Po + boTo, 3Q1 = -3P1 + 2boTi + coTo, 3Q2 = -3P2 + boT2 + 2coT1, Q3 = -P3 + coT2,
(14)
and (14) is a set of GC1 conditions between two Bezier patches.
Figure 2. G1 Continuity of two adjacent B-spline patches
If n > 4, from the first and the last equations of (13), we get bj+l = cj,
j = 0,...,n - 4.
(15)
Rewrite (13) as the following forms Q3j = 43j +bjT2j,
1
3Q3j+1 = -3P3j+1 + 2b^T2j+1 + cjT2j, 3Q3j +2 = -3P3j +2 +bjT2j+2 + 2cjT2j+1, j = 0, ... , n - 3, cn-3T2(n-2). Q3(n-2 ) = 4 3(n -2 ) +
(16)
167 If n = 4, substituting (7) and ( 8) into (16), we obtain Qo = -Po + boTo, 3Q1 = -3P1 + 2bot4T1 + coTo, 3[(1 - t4 ) Ql + t4Q2] = -3 [( 1 - t4)P1 + t4P2] + bOt4 [( 1 - t4)Ti + t4T2] + 2cot4T1,
(17) and (1 - t4)2Q1 + 2t4(1 - t4)Q2 + t4 Q3 = -[(1 - t4)2P1 + 2t4(1 - t4)P2
+t4 P3 + CON [(1 - t4 ) T l + t4P2],
3[(1 - t4 ) Q2 + t4Q3] = -3 [( 1 - t4)P2 + t4P3] + 2cot4T2 + Cit4 [( 1 - t4)Tl + t4T2], 1
3Q3 = -3P3 + 1 coT3 + 2clt4T2, Q4 = -P4 + 14CiT3• t4
(18) From (17.3), (18.1) and (18 .2), we have Co = (1 - t4 ) bo + t4C1.
(19)
If co # 0, (17) and ( 18) equal Qo = -Po + boTo, 3Qi = -3P1 + 2bot4T1 + cOT0, z 3Q2 = -3P2 + c1t4T1 + 1 (2co - t4C1 ) Tz - (1 coT3, (20) 3Q3 = -3P3 + 1 coT3 + 2cit4T2, Q4 = -P4 + 14c1T3, 1 t4
and -(1 - t4)3To + t4(1 - t4)2T1 - t4(1 - t4)T2 + t4 T3 = 0. (21) (21) is called the intrinsic compatibility equation of GC1. If n = 5, substituting (9) and (10) into (16), we obtain Qo = -Po + boTo, 3Q1 = -3P1 + 2boa1 T1 + coTo, 3[a2Q1 + (1 - a2)Q2] = -3[a2Pi + ( 1 - a2)P2] +bo (a2Ti +$2T2) +2coa1T1, (22) a 3Qi + ( 1 - a3 +CO(a' T1
13 3 ) Q2
+ /9 3Q3
= -[a3P1 + ( 1 - a3 -
j33)P2
+ 03P3]
+ /3; T2),
3[a4Q2 + (1 - a4)Q3] = -3[a4P2 + (1 - a4)P3] + 2coa'T2 + ci(a2T1 + 12T2), 3[a5Q2 + ( 1 - a5)Q3] 3[a5P2 + ( 1 - a5)P3] + CO ( a4T2 + $4T2) + 2C1a3T2,
(23) a6Q2 + (1 - a6 - 06) Q3 + 06Q4 = -[a6P2 + ( 1 - a6 -,36 )P3 +,66P4] +cl(a4T2 +,B4T3),
3[a7Q3 + ( 1 - a7)Q4 ] = - 3[a7P3 + ( 1 - a7)P4 ] + 2cia5T3 + C2(a4T2 + ,BT3), 3Q4 = -3P3 + cla6T4 + 2c2a5T3, Qs = -P5 + c2a6T4•
(24)
From (22.3), (23), (24.1) and (24.2), we have co = a3 bo +
13 C1, 6 c2• (25) cl = as CO + '8 a2 1-a4 a5 1-a7
168
If cocl # 0, (22)-(24) equal Qo = -Po + b0To, 3Q1 = - 3P1 + 2600'11 Tl + coTo, a / (1-ab ) Q2 = -P2 + g a4 a5) C1T1 +
2a ' (1-a5 )- ai (1-a4 ) 2(1-a4 ) a -^ ( c1]T2 3 a4-a5 CO - S a4 -a5 3
0 (1-a4) 3 a4-a5
COTS,
' a 1 2a a _P QS = S - 3 aa44--155) IT3 + [ 3( 1111 5 )
-351 )- S Q a4 Cl - CO T2 + 4-a5 Co Ts, -3('4-a54.
3Q 4 = -3P 4 + c1a6T4 + 2c2a5T3, Q5 = -P5 + c2a6T4,
(26) and ^2- 2a - (2a' a2-a ' )a2 2a3 ( 1-as)-a4 ( 1-a4) az0' ] ] Tl - [ a4 - a5 - a3 1-a2 ]T2 1_02 TO + [ 1-a2 as 1_a2 +0a(1-04 ) T3 = a4-ab a2a5
20,04 - 0205
( 2a'a5 - a,a4)a5
2
-
a40/a5
_ ag-a5 T1 + [ 4-05 _ 05 a4-05 ]T2 - [ a7 ag 04-05 7T3 ae(1-a7) J l 1 + a7 T4=0.
(27) Likewise , if n > 6 substituting (9) and ( 10) into (16), we obtain Qo = -Po + boTo, 3Q1 = -3P1 + 2boaT1 + coTo, 3[a2Ql
+ ( 1 - a2)Q2] = -3 [ a2P1 + ( 1 - a2)P2] +bo (a 2T1 + ,82T2 ) + 2coa1T1,
(28) a3Q1 + ( 1 - a3 - 133 ) Q2 + 03Q3 = -[a3P1 + ( 1 - a3 - $3 ) P2 + $3P31 +co(a2T1 + ,82T2), a4Q2 + ( 1 - a4)Q3 = -[a4P2 + ( 1 - a4)P3] + 3 coa3T2 + 3 C1(a2T1 +02T2), a5Q2 + ( 1 - a5)Q3 = -[a5P2 + ( 1 - a5)P3] + 3C 0(a4T2 +,64T3) + 3c ia3T2,
(29) a3j Qj + ( 1 - a3j - $3j ) Qj+1 + /33jQj + 2 = -[a3j P j + (1 - a3j - ,8 31)Pj+1 +,83jPj+21 +cj-l ( a2jTj +02jTj+1), a3i+lQj + 1 + (1 - a3j+1 ) Qj+2 = +2 al 1 +3021+1Cj-1Tj+1 + 3Cj ( a2jTj a3i+2Qj+1 + ( 1 - a3j+2 ) Qj+2 =
-[a3i + lPj+1 + ( 1 - a3j+1)Pj+2] ' +SzjTj+1), 7 = 2,...,n - 5,
(30)
-[a3i+2Pj + 1 + (1 - a3j+2 ) Pj+2]+
Cj-l(a2(j+1 ) Tj+l +162 ( 1+l)Tj + 2) + 23Cja^ 2j+lTj+1,
a3(n-4)Qn-4 + (1 - a3(n-4 ) - $3(n-4 )) Qn-3 + 03 (n-4)Qn - 2 = -[a3(n-4)Pn-4+ (1 - a3(n-4 ) - 0 3(n-4)Pn-3 + 03( n-4)Pn - 2] + Cn-5 (a2(.n_4 ) Tn-4 +,82 (n_4)Tn-3, a3(n-4 )+ lQ ' n-3 + ( 1 - C13(n-4)+1)Qn-2 = -[a3(n-4 )+ 1Pn-3 + ( 1 - a3(n-4)+1) ( Pn-2] + 23a2 ( n-4)+1Cn-5Tn - 3 + 13Cn-4 ( a^2(n_4 ) Tn-4 +Q2^n-4)Tn-3), a3(n-4 )+ 2Qn-3 + ( 1 - a3(n-4)+2)Qn-2 = -[a3(n-4 )+ 2Pn-3 + ( 1 - a3(n-4)+2) 1 I I Pn-21 + SCn-5(a2(n-3 ) Tn-3 + 02 ( ii_3)Tn-2) + gCn-4a2(n-4)+lTn-3,
(31)
169
a3(n-3 ) Qn-3 + (1 - a3(n-3) - ,B3(n-3 ) )Qn-2 + 03(n-3 ) Qn-1 = -[a3 ( n-3)Pn-3 +(1 - a3(n - 3) - $3(n - 3) )Pn-2 + 03(n-l)Pn - 17J + Cn-4 (a2(n _ 3) Tn-3 + 162(n_3) Tn-2, 3[a3(n - 3)+1Qn - 2 + (1 - a3 (n-3)+1)Qn - 1 = -3Ia3 ( n-3)+lPn-2
+(1 - a3(n - 3)+1)Pn - 1 J + 2a2 (n-3)+l Cn - 4Tn-2 + cn-3(a2 ( n_3) Tn - 3 + Q2(n _ 3) Tn-2), 3Qn-1 = - 3Pn_1 + a2(n_2)Cn - 4Tn_1 +2a2(n-3)+1Cn-3Tn-2 Qn = -Pn + a2(n-2 ) Cn-3Tn-1•
(32) (30) does not exist when n = 6. From the third equation of (28) and the first two equations of (29), it follows that
03
(33)
CO = 013 bo + Cl 012 1 - 014
Similarly, the following holds c7 =
03(j
013(7+1) C'-1 +
9 = 1, ... , n - 4. (34)
+1) c7 +1,
0137+2 1 - 013(7+1)+1
If n > 6, and c7 # 0 (28)-(32) are the same as follows Qo = -Po + boTo, 3Q3 = -3P1 + 2boaT1 + coTo, 2(1_4 )s _9 2 (1_5) (1-5) 2. (1-014 ) Cl]T2 Q2 = -P2 + 3-4 -5c1T1 + [ 014 Q5 c0 - 3 ( .4-"J5 ) 9 (1-014) -3 L-4-015 c0Ts, ( 1--7) 5 a)- ' 2 (1-'7)'S- 9 / (1-013) ( 1-013 _ (1-a8) 2 ° ' Qs = -P3 + 3 °7_ 013 C2 T2 + 7-Q3 Cl - C2]T3 9 (1-^7) -3 ^7_a3 c1T4, Qj+z -P.,+
2(j+1) (1-a3( j+1)+2) 2 ° 2 (1+ 1 ) +l (1-°3 (i+1)+2) )+2 c^+1 T^+1 + s °3(i+1)}1-a3(i+l)+2
2 + g °3(i+1 )+ 1-Q3(i+l
_ 2 ( j+2 ) (1-Q3(i+1 )+ l) 2(1-°3 (i+l)+1)°z(i+l)+1-92 3 013(2+l )}1-°3(i+l)}2) CJ 3 n3( i+l)+1-Q3 (i+1)}2) T ^a i+2 (1-^s(i+1)}1) c T 2, ... ,
s, ^+z - s 013 (2+1)+1--s(i+1)+2 >+ 9 =
+1)+2) ci+ 1]
n - 6;
( _4 ) +1(1 _ 3(_4)+2) S + n2 n - 4 (1-°3(n-4)}2) Cn-4 n - 4 + r2 Qn-9 = -Pn 3 ( a3(n - 4)+1-°3(n-4)+2 T s °S(n-4)}1 °3 ( n-4)+2 _
a3(n-4 )+ 1) 2(1-°S ( n-4)+1)a2 ( n-4)+1-02 n_4)(1-°3 ( n-4)+2) ( -Cn-5 2 S a3 n-4)+1-°3 ( n-4)+2 ( (1- - 3 ( n-4 )+ 1) cn-4]Tn- 9 - 2 (, - - Cn-5Tn-2, 2(n-3)(1
9 °3(n-4 )+ 1-°3(n-4 )+
3Qn-2 = -3Pn- 2 + a3(n -3)+1 cn-3Tn- 3 + *3(n- S )+1 Cn_4 (
n-2)(1-°3 ( n-3)+1)
2.2(n-3)+1(1-as n-s)+1)-92 n-3) a2( cns ]Tn -2 - Cn-4Tn -1, (
3Qn-1 = -3Pn_1 + a2 (n_3)cn - 4Tn-1 + 2a2(n_3)+ lcn-sTn-2, Qn = -Pn + 1 + a2(n - 3)C'n_STn-1.
(35)
170
(35.5) and (35.6) do not exist when n = 6, and ( 2a2a -- 2x4 ( 1-¢5)-°q(1 - a4) 3 l_ ] a2 1=a2 TO - [2" 12 as(1-°a ] Tl + a4-°5 °li-Q21 T2 -94(1-64)T3 = 0, a4a - S - 192 n5 _ (2a q, :5-° :4)'5 ]T2 + a2°5 Ti - [2na4 a4-O'S a8 ( aq-a5) a4-a5 - ,,
8 ) Q g(1-°T) a7-
8
la 4-ab )IT3 - a7-a8 0e( 1- T4 = 0, - a6 4 +1a3j}1 52i"3j }2 - (2a 2i+1a3j + 2-a2(i+1 ) asi+1 ) asi a 2ia3i+2 -[ 2a2i +2] a3i+l - aSi}2 7 a3i+1-a3i + 2 a3(i + 1) a3j+1-"3i+2
T
2a2(
T'+1
1-a3(i+l )+ 1) a3i + 102(1+1)a3j+2 i+ 1)+ 1('-a3(i+1 )+ 2)-a2(i+2 )( +[ a3 ( i+l)+1-a3 ( j+1)+2 a3 ( i+l) aSi+1-a3i+2 ]
Tj}2 - Q1-a3(i+l)+1)92(1+2 ) Ti+s = 0, = 2, ... , n - 6. 3(i+l)+1 -a S ( i+1)+2 2(n-5)
3(n-5 ) }2 2a2 ( n-5)+1 a3 ( n-5)+l_92 ( n-5)a3 ( n-5)}22 Tn-5 - a3 ( n-5)+1-a3 ( n-5)+2 a S(n-5 )+ 1-a3(n-5 )+ 4 a3(n-5 )+ 1)a3(n-5 )+ (2a2(n-5 )+ 1 '3( n-5)+2-a2 n 2 ]Tn-4 a 3(n-4 ) as(n-5 )+ 1-a3(.-5)+2 }1(1_a3 ( n-4)+1) a8 ( n-5)+192(n_4)a3 ( n-5)+2 _3) (1-a3 ( ( n-4)+2)-a2 2a2(n_4 ) +[
a3(n-4 )+ 1-a3(n-4 )+ 2
a3(n-4)(3 ( n-5)+1-a3 ( n-5)+27]
(1-as(n-4 )}1)92(n-3)
Tn-3
T - '3 ( n-4)+1 _a 3 ( n-4)+2 n_2 = 0, 2a2(n - 4)+1a3 (n-4)}l_92( n-4)a3 (n-4)}2,.)+ 1-a3(n-4)+2 / 4 - a3(n-4 n-3)+1 4) +1 a3 ( n-4)+2-a2 n-3 ) a3(' -4 )+ 1)a3(n -4)+2 ]T, -s + [2a2( a3 ( n-3)+l a3(, -3 ) a3(n-4)+1-a3(n - 4)+2
2(n_4 ) a3(n-4 )+ 2
a3(n-4)+1-a3 ( n-4)+2 T (22 ( ,
a8(n-4 )+ 192 n_3 a3 ( n-4)+2 (1-a3(n-3 )+ 1)a2(n -2) Tn-1 = 0. ]Tn-2 n-S)+1 3(,-S) a3 ( n-4)+1-a S ( n-4)+2 a3 (
(36) (36.3) and (36.4) do not exist when n = 6. (21), (27) and (36) are called the instinct equation of G' about the smoothness condition. Theorem 1 For the G1 condition (11), the boundary control points of two G1 adjacent bicubic patches have to satisfy the equations (21), (27) and (36) in the case ci 0 0, i = 0,... , n - 4, i.e. in the case not being simple collinear. The intrinsic equations are the special phenomena of B-spline and do not exist in Bernstein-Bezier patches. Considering the complexity of G1 continuity around the corner P, we adopt the following method to solve it. First, around the corner P, determine the control points A3, Bj and Ij. Second along each boundary, determine the remaining control points. Finally, determine the other control points. We call the scheme a local scheme.
Denote the coefficient matrix of (36) by A. Matrix A is a matrix of (n 3) x n, and a sub-matrix B formed by its last n - 3 rows is a lower triangular
171
Figure 3. G1 Continuity of N-patches meeting at a common corner
matrix of order (n - 3). The diagonal elements of B are t4 (ti+4 - ti+3 )
i = 0,...,n - 4.
(ti+6 - ti+4)(ti+7 - ti+4)
We know that ti # t3 (i # j), so ai,i+3 does not equal zero for all i = 0, ... , n - 4. Hence (36) is full ranks and there are three free variates. Similar to the Bezier case and referring to Fig. 2, we know that the first and the last three control vectors of each boundary ri have to be chosen freely in order to construct a local scheme, i.e. To, T1, T,i_2, Tn_1 have to be chosen freely. Hence, a local scheme of constructing G1 smooth surface models by using bicubic B-splines with the single interior knots do not exist. References 1. Y. Liang, X. Ye and X. Fang, G1 smoothing solid objects by bicubic Bezier patches, Eurographics'88, 1988. 2. D. Liu and J. Hoschek, GC' continuity conditions between adjacent rectangular and triangular Bezier surface patches, Computer Aided Design, 21(4), 1989, pp. 194-200. 3. L. Ma and Q. Peng, Smoothing of free-form surfaces with Bezier patches, Computer Aided Geometric Design, 12, 1995, pp. 231-249.
4. L. Piegl and W. Tiller, The NURBS Book (Second Edition), Springer, 1997. 5. X. Shi and T. Wang, G1 continuity conditions of B-spline surfaces-(in preparation) .
ALGEBRAIC SURFACE BLENDING USING WU'S METHOD FALAI CHEN, JIANSONG DENG, AND YUYU FENG Department of Mathematics, University of Science and Technology of China, Anhui, Hefei 230026, People 's Republic of China E-mail: chenfljdengjsIfengyytustc.edu.cn In this paper, we apply Wu's method to blending algebraic surfaces with (piecewise) algebraic surfaces - an important problem in geometric design . This new approach can find the lowest degree algebraic blending surfaces in most cases , and it is much more efficient than previous methods such as the Grobner basis method. Examples are provided to illustrate the algorithm.
1 Introduction Blending is a method to construct a smooth transitional surface between given surfaces, and the study of constructing blending surfaces is one of the important problems in Geometric Modeling. In the past decades, a lot of research literature has focused on this problem, and many methods such as the rolling ball method', Liming skills and potential methods are proposed to solve the problem. However, these methods generally produce high degree algebraic blending surfaces which are unsatisfactory in subsequent geometric operations . The algebraic surface blending problem can also be tackled by Grobner basis', and generally this method can find the lowest degree algebraic blending surfaces. However Grobner basis are very expensive to compute. In the paper'2 by Wu and Wang, an entirely different approach based on irreducible ascending sets and pseudo division algorithm is put forward to solve the algebraic surface blending problem. This new approach is much more efficient than Grobner basis method and it can find the lowest degree algebraic blending surfaces in most cases. However, this method has still some drawbacks. First, the idea in that paper is not easy to generalize to the case where the blending surface and the initial surface have a high order contact. Second, the intersection curves at which the blending surface and the initial surfaces meet are required to be irreducible. Third, a single piece of algebraic surface is used to blend given surfaces, which may result in high degree algebraic blending surfaces. In this paper, we put forward the idea of Wu and Wang12 one step further. We can get rid of many of the restraints imposed by their method. Namely, the order of contact of the blending surface and the initial surfaces can be arbitrarily high; the intersection curves at which the blending surface touches
172
173 the initial surfaces can be reducible; and low degree piecewise algebraic surfaces can also be used as the blending surfaces, if necessary. These properties make our method more flexible and useful in constructing blending surfaces. The paper is organized as follows. In the next section, we recall some basic knowledge about ascending sets and pseudo division algorithm which are the core parts of Wu's method. In Section 3, the main theoretic foundation and the algorithm are developed. In Section 4, several examples are given to illustrate the algorithm. Finally, in Section 5, we make some discussions and conclude the paper. 2 Preliminaries We first recall some fundamental knowledge in Wu's method, and a basic concept about geometric continuity of two algebraic surfaces. Let K be the basic field of characteristic 0, and xi, ... , xn be independent indeterminate. K[xi, ... , xn] denotes the polynomial ring over K. Given two polynomials f, g E K[xl, ... , xn], write them in the form: f =fdlxn1+...+flxn+fo
9=9d2xn2 +•••+91xn+9o where fi, gi E K[xi,... , xn-1]. xn is called the leading variable, and fdl, gd2 the initial term of f and g respectively. Using xn as the main variable, divide g by f results in fd19 = of + r (1) where q, r E K[xi,... , xn], degyn (r) < deg, (f) and s is a nonnegative integer. r is called the pseudo remainder of g divided by f, denote it by r = Prem(g, f, xn). (1) is called the pseudo division formula10. Pseudo division algorithm is a key part of Wu's method. Another important concept in Wu's elimination method is ascending set. Definition 110,11 Let AS = {P1,... , Pm} be a set of polynomials in K[xi,... , xn], and Pi = Ic;,oxd; + Ic.,ixai -1 + ... + Ic:,d;, i = 1, ... , m, which satisfy the following conditions: 1.0
],
174
3. Vi > j, deg.; (Pi) < deg., (P3). then AS is called an ascending set. Given a polynomial g E K[xl,... , xn], g can be divided by AS as follows: 8,, Ic,,.,o9 -QmPm+Rm-1
I$--' R P cm_i,o m-1 = qm-1 m-1 + Rm-2 I,'i,0Ri = 4i Pi + Ro From above equation, we get I^8i,o...ics o .g=QiPi+...+QmPm+R (2) where si are some nonnegative integers, Qi E K[xl,... , xci], i = 1.... , M. R E K[xl,... , xn] is called the pseudo remainder of g divided by AS, and we write it as R = Prem(g/AS). It is easy to know R has the following property: degx^i (R) < degx,; (Pi),
i = 1, 2, ... , m.
Given a set of polynomials A = {Al, ... , Ak }, we can always transform it into an ascending set by pseudo division algorithm (2). The details can be found the paperslo,ll by Wu. Next we review a definition about the geometric continuity of two algebraic surfaces meeting at a common space curve. An algebraic surface in R3 is defined as the zero set of a polynomial f E R[x, y, z], whose coefficients are over the real numbers. We often write it as f = 0 or V (f ). Given two algebraic surfaces f = 0, g = 0, the intersection of the two algebraic surfaces is an algebraic space curve C = V (f = 0, g = 0). If there exists some (xo, yo, zo) E C such that f = 0, g = 0 have different normals at (xo, yo, zo), then we say f = 0 and g = 0 intersect transversally along curve C. Definition 24 Suppose two algebraic surfaces f (x, y, z) = 0 and g(x, y, z) = 0 intersect transversally along a space curve C. Then f = 0 and g = 0 meet with GCk continuity along C if and only if there exist two polynomials a(x, y, z) and ,(3(x, y, z) such that 1. a and 0 are not identically zero on curve C; 2. All derivatives up to order k of a f - lag equal zero at all points along C. The above definition of geometric continuity coincides with our geometric intuition. For example, GC' continuity is the same as tangential continuity.
175
3 The Problem and the Method The surface blending problem can be stated as follows. Problem: Given m initial algebraic surfaces fi = 0 and another m auxiliary surfaces hi = 0, where fi, hi E R[x, y, z], i = 1, 2,... , m. Suppose fi = 0 and hi = 0 intersect transversally at curve Ci, i = 1, 2, ... , m. Find a (piecewise) algebraic surface g = 0 such that g = 0 meets fi = 0 with GCk continuity along curve Ci, i = 1, 2, ... , m. The main idea of our method to solve the above problem is based on pseudo division algorithm. We describe the algorithm as follows. Algorithm:
Step 1 Express polynomial g in the form: g = gaIVxayµzV o,
Step 2 Choose an appropriate monomial order of variables x, y, z. Construct ascending sets ASi from polynomial sets Ai fi, 0+1}, i = 1, 2, ... , m. Step 3 Divide g by each of the ascending sets ASi using pseudo division algorithm. Let Ri = Prem(g/ASi). Ri E R[x, y, z] is a polynomial whose coefficients are linear combinations of 9A v. Step 4 Set Ri = 0, i = 1, 2, ... , m, i.e., set all the coefficients of Ri to be zero. A system of linear equations with ga,,,, being unknowns is thus obtained. Step 5 Solve the system of the linear equations. If there is just one trivial solution gaµv = 0, then increase the degree of polynomial g and go to Step 1. Otherwise, select a suitable solution among all the solutions. We claim that the above algorithm produces a solution to the given problem. Theorem Let g be a solution obtained by the above algorithm . Then algebraic surface g = 0 meets with fi = 0 with GCk continuity.
176 Proof For any i (1 < i < m), let ASi = {Ail, Ai2}, where Ail, As2 E R[x, y, z]. By the algorithm to compute the ascending set of a polynomial set, we know there exist polynomials Iij, aij, fij E IR[x, y, z], j = 1, 2 such that I1'Ail - ailfi +pilhs+l,
(3)
122 Ai2 = ai2 fi + Ni2 hk+l,
where si j, j = 1, 2, are nonnegative integers . On the other hand, by
Prem (g/ASi) = 0, one has Ii `g = a1Ail + biAi2
(4)
where Ii, ai , bi E R[x, y, z]. From (3) and (4), we get Ig=afi+ih^+l
(5)
for some polynomials I, a, a E I8[x , y, z]. From Eq .(5), we immediately have di (Ig - a f i) I c, = 0, 1 = 0, 1, ... , k . If I and a are not identically zero along the intersection curve Ci, then by the definition of geometric continuity, g meets with fi = 0 with GCk continuity along Ci . This completes the proof.
4 Examples In this section, we provide several examples to demonstrate our method in constructing algebraic blending surfaces. In all the examples, fi = 0's represent the initial surfaces to blend, hi = 0's are the auxiliary surfaces, and g = 0 is the blending surface. Example 1 Given two circular cylinders whose axes are perpendicular to each other: fi:=y2+z2-1,
f2: =x2+y2-1=0,
and two auxiliary planes h1 : = x - 2 = 0 and h2 := z - 2 = 0, we are interested in finding a cubic algebraic surface g = 0 which meets fi with GC1 continuity along circular sections Ci := V (fi, hi), i = 1, 2. It is easy to check AS, := {hi, fl} and AS2 := J f2, h2} are the ascending sets under ordering x > y > Z.
Now let Prem (g/ASr) = 0 and Prem (g/AS2) = 0, we obtain 24 homogenous linear equations with 20 unknowns . The system of equations have a unique solution up to a constant factor: g = 4 + 3x + 3z - 4x2 -4 y2 - 4z2 - 4xz + x3 + x2z + xy2 + xz2 + y2z + z3.
177
Figure 1. Blending surfaces between two cylinders
Figure 2. Blending three cylinders.
The corresponding figure is shown in Fig. (1). Example 2 In this example, we use a quartic surface to GC1 blend three cylinders whose axes are perpendicular to each other: Ci : fi =Y 2 + z2 - 1,
hj = x - 2,
C2: f2=z2+x2-1, h2=y-2, C3:f3= x2+y2 -1, h3=z-2. Obviously, AS1 = {hi, f1}, AS2 = {h2, f2} and AS3 = {h3, f3} are ascending sets with respect to variable ordering x > y > z, y > z > x and z > x > y respectively. By letting Prem(g/ASi) = 0, i = 1, 2, 3, we obtain 48 linear equations with 35 unknowns. The system of linear equations has 2 families of solutions. One such solution is: g =4y - 28 + xz3 + y3x + x3y + x2yz + 12y2 - 4xyz + 12x2 - 4x3 +12z2 + yz3 + y3z + x3z - 4xy2 - 4z2y - 4x2y + 3xy + 3xz - 4x2z +3yz - 4xz2 -4 Y2Z -4 Y3 - 4z3 + z2xy + xy2z + 4z + 4x. Figure 2 is the corresponding figure. Example 3 Suppose C1 : fi =y2+z2- 1,
h1 =x-2,
C2 : f2 = y2+z2 - 1,
h2 =x+2,
C3: f3=x2+z2- 1,
h3=y-2,
C4: f4=x2+z2- 1,
h4=y+2.
178
Now both AS1 = {hi, fl} and AS2 {h2, f2} are ascending sets with respect to x > y > z, and AS3 = {h3, f3} and AS4 = {h4, f4} ascending sets with respect to y > z > x. A degree four algebraic surface g = 0 which GC' blends fi = 0 along Ci, i = 1,2,3,4, is given by g = x2z2 + y2z2 + x2y2 + 47 - 17x2 -17 Y2 - 14x2 + 2x4 +2 Y4 - z4.
Figure 3 shows the corresponding blending surface.
Figure 3. Blending four cylinders.
Figure 4. Blending along reducible curves.
Example 4 Now we consider the case where one of the initial surface is reducible. Let ) C1 : fi = ( y2+(z-2 2-1)(y2+ ( z+2)2-1 ), C2:f2=y2+z2- 2,
hi =x-2,
h2=x+2.
We are going to find a quintic surface g = 0 such that g = 0 blends fi = 0, i = 1, 2 with GC' continuity. For simplicity, we assume g = 0 is symmetric about planes xy and xz. Note that fl = 0 is the union of two cylinders and thus in reducible . The intersection curve V(fl, hl) is the union of two circles and is also reducible. Again , AS, = {h2, fl} and AS2 = {h2, f2} are ascending sets with respect tox>y>z.
The system of linear equations obtained has six families of solutions. g = - 88xy4 - 1604x - 176xy2z2 + 7x2z2 + 7x5 + 7x2 - 420x2 + 7x4 -1124 Y2 -88x24 - 169x2y2 + 484xy2 + 1188x22 - 28x3y2 - 28x322 +1260 gives one solution. Figure 4 depicts the blending surface.
179
Example 5 Our last example comes from Bajajl. Let C1 : f' = 10yz - 25z2 + 40z - y2 + 10xy - 8y - 25x2 + 40x - 16, hl=y-1, C2: f2 = 4z2 + 4xz - 12z + 4y2 + 4xy - 12y + x2 - 6x + 9, h2=x-1, C3: f3 = ( x- 1)2 +(y - 1)2-1, h3=z-1, where fl = 0 and f2 = 0 are two cones and f3 = 0 is a cylinder. Bajaj and others' use a quintic algebraic surface to GC1 blend the three surfaces fi = 0, and it is shown that the quintic surface has the lowest degree. Here we are going to use a piecewise quartic surface to GC' blend fi = 0, i = 1, 2, 3. Let pl = x - y, p2 = z - x, p3 = y - z. We want to construct three quartic algebraic surfaces 91, g2 and 93 such that
1. gi = 0 meets fi = 0 along Ci with GC' continuity, i = 1, 2, 3, and 2. gi = 0 meets gi+1 = 0 on pi = 0 with GC' continuity, i = 1, 2, 3, where the subscripts are moduled by 3. By condition 2, we can assume g2=91 +a, 1, 93 = 92 + a2p2, 91 = 93 + a3p3,
where ai = bo,i + bl,ix + b2,iy + b3,iz, i = 1, 2, 3. From these three equations, a consistency condition alpi + a2p2 + a3p3 = 0
(6)
must hold3. From { fi, h?}, i = 1, 2, 3, we compute three ascending sets AS, = { fl + 2 under y > x > z, h1, hi} under ordering z > y > x, AS2 = { f2 - h2 h2} AS3 = f f3, h3} under x > z > y. By combining Prem(gi/AS2) = 0, i = 1,2,3 and Eqn.(6), we get a system of linear equations with unknowns bij, i = 0, 1, 2, 3,j = 1, 2, 3. The solution of the equations has ten free parameters.
180
A suitable choice of free parameters gives gi =2z2xy + 2x2y - 580x2yz - 6496yz - 4306xy - 4842xz + 645x2z +1088xy2 + 1358xz2 + 3265y2z + 1708z2y + 1090x3y + 1425x3z + 1068y3x -538y3z - 737x2y2 - 1295x222 + 546y2z2 + 1425xz3 - 528yz3 -14146 - 15395x2 - 4657y2 - 9319x2 + 5710x3 - 2684y3 + 853x3 -1295x4 + 534y4 + 1471xy2z - 4274xyz + 19190x + 14538y + 16924z, 92 =g1 + 2(606x + 606y - 1212z + 5x2 - y2 - 7z2 + 9xy + 5yz - 11xz)(x - y)2, 93 =91 - 2(606x - 606y + 13x2 + y2 - z2 - llxy - 3yz + xz)(y - z)2.
Figure 5. Piecewise algebraic blending surfaces.
5 Conclusions In this paper, we made some attempts to apply Wu's method to constructing (piecewise) algebraic surfaces to smoothly blend given algebraic surfaces. Unlike previous approaches, Wu's method can find the lowest degree blending surfaces, and it is much more efficient than Grobner basis method. Examples suggest this new approach is powerful in constructing algebraic blending surfaces for various situations. Currently, we are relying on a trial-and-error approach to determine the degree of the blending surface. How to determine the degree of the blending surface in advance is a problem worthy further research. On the other hand, how to choose suitable parameters in the final solutions such that the resulting blending surface is satisfactory in practice also needs further study.
181
Acknowledgments This work is supported by NKBRSF on Mathematics Mechanization (grant G1998030600), the National Natural Science Foundation of China (grants 69603009 and 19971087), the Research Fund for the Doctoral Program of Higher Education, and a grant for Extinguished Young Teachers from Educational Committee of China. Jiansong Deng is also supported by an Intramural Youth Science Foundation of University of Science and Technology of China. References 1. C. Bajaj, I. Ihm, and J. Warren, Higher-order interpolation and leastsquares approximation using implicit algebraic surfaces, ACM Trans. Graphics, vol. 12, 327-347 (1993). 2. J. Bloomenthal, Introduction to implicit surfaces, Morgan Kaufmann Publishers, Inc., San Francisco, California (1997).
3. F.L. Chen, Geometric continuity, blending and intersection of algebraic surfaces, Ph.D Dissertation, University of Science and Technology of China (1994). 4. T. Garrity and J. Warren, Geometric continuity, Computer Aided Geometric Design, vol. 8, 51-65 (1991).
5. C. Hoffmann and J. Hopcroft, Quadratic blending surfaces, CAD, vol. 18, 301-307 (1986). 6. W.P. Lou, Algebraic surface blending using Grobner basis, Master thesis, University of Science and Technology of China (2000). 7. J. Menon, An introduction to implicit techniques, in Implicit Surfaces for Geometric Modeling and Computer Graphics - Siggraph'96 Course Notes. 8. A.E. Middleditch and K.H. Sears, Blending surfaces for set theoretic volume modeling system, Computer Graphics, vol. 19, 161-170 (1985).
9. J.R. Rossignac and A.G. Requicha, Constant radius blending in solid modeling, Comp. Mech. Eng., vol. 3, 65-73 (1984). 10. W.-t. Wu, Basic principles of mechanical theorem proving in geometries (Part on elementary geometries) (in Chinese), Science Press, Beijing (1984). 11. W.-t. Wu, On zeros of algebraic equations - an application of Ritt principles, Kexue Tongbao, vol. 31, 1-5 (1986).
12. W.-t. Wu and D.-K. Wang, On the algebraic surface-fitting problem in CAGD (in Chinese), Mathematics in Practice and Theory, vol. 3, 26-31 (1994).
FILLING HOLES WITH PIECEWISE ALGEBRAIC SURFACES CHANGSONG CHEN, FALAI CHEN, JIANSONG DENG, AND YUYU FENG Department of Mathematics , University of Science and Technology of China, Anhui, Hefei 230026, People's Republic of China E-mail: chencs0263.net chenflJdengjsJfengyy ®ustc.edu.cn Filling n-sided holes is an important problem in Computer Aided Geometric Design and Geometric Modeling. Many approaches using parametric surface patches to fill the holes have been developed in the past decade. In this paper, we use piecewise algebraic surfaces to the same problem. A general algorithm for filling holes is presented. The algorithm starts with the suitable partition of the 3D spaces into tetrahedrons or prisms. In each tetrahedron or prism, an algebraic surface patch is defined, and these surface patches are pieced smoothly together and join the boundary surfaces with certain order of contact. Examples are provided to demonstrate the algorithm and the usefulness of piecewise algebraic surfaces in Geometric Modeling.
1 Introduction In Computer Aided Design and Geometric Modeling systems, there often arises the situation where several surface patches surround a hole and a smooth surface is required to construct which pieces the boundary surfaces with certain order of contact. This kind of problems is called filling holes. Filling holes widely appears in mechanical design, geometrical modeling, computer graphics and animation. Early in the 1960s, Coons' already constructed surfaces which fills a foursided hole whose boundaries are two pairs of parametric curves. Filling n-sided polygonal holes with smooth parametric surfaces gets much research in the past decade. Gregory and others gave a tutorial report on filling n-sided holes with bicubic surface patches8, and some further research work was developed in later years9. However few research work has been done on filling holes with algebraic surfaces. Sederbergll used algebraic surfaces to G° interpolate points and curves in 3D space, and Bajajl extended the results to G' continuity. In an example, Bajajl smoothed out the corner of a table by first smoothing out the three edges with three quadratic surfaces and formed a 3-sided hole, then he construct a quintic surface to mend the hole. Algebraic surfaces generally have multiple sheets and singularities especially when the degree of the surface is relatively high. Therefore many researchers suggest to use low degree algebraic surfaces. In an early work, we
182
183
made our first attempt to tangentially blend three cylinders using piecewise algebraic surfaces5. The results show some advantages of modeling with piecewise algebraic surfaces. Firstly, the degree of the piecewise algebraic surface is relatively low compared with a single algebraic surface. Second, by adopting B-B representations of algebraic surface patches, it is possible to control the shapes of the piecewise algebraic surfaces geometrically. In this paper, we propose to use piecewise algebraic surfaces instead of a single algebraic surface to fill holes. Section 2 gives some preliminary knowledges about geometric continuity of algebraic surfaces and the geometric continuity conditions for several algebraic surface patches meeting at a common vertex. Section 3 presents a general algorithm for filling holes. In Section 4, two examples are provided.
2 Geometric Continuity of Algebraic Surface Patches Modeling with piecewise algebraic surfaces is based on the theory of geometric continuity. In this section, we provide some preliminary knowledge about geometric continuity of algebraic surfaces. 2.1 Geometric continuity of algebraic surfaces There are many definitions about the geometric continuity of algebraic surfaces, and most of these definitions are equivalent in nature7. For two algebraic surfaces, Warren12 gave a definition of geometric continuity called rescaling continuity between the two algebraic surfaces. Definition 2.1 Let V (f) and V (g) be two algebraic surfaces which intersect transversally at an irreducible algebraic curve C. V (f) and V (g) are called meet with Gk rescaling continuity along common curve C if
(1) V (f) and V (g) are smooth along C except at a finite points. (2) there exist polynomials a(x, y, z), b(x, y, z), where a, b are not identically zero on C, such that a f and bg are Ck continuous over C. The above definition of geometric continuity coincides with geometric intuition . For example , G' rescaling continuity is equivalent to tangent continuity ; G2 rescaling continuity is the same as curvature continuity . A general characterization of rescaling continuity is stated in the following theorem7. Theorem 2 . 2 Let f = 0 and h = 0 be two algebraic surfaces which intersect transversally at an irreducible algebraic curve C :_ If = 0} fl { h = 0}. Then
184
the surfaces f = 0 and g = 0 meet with Gk continuity along common curve C if and only if there are polynomials a(x, y, z ) 54 0 and /3(x, y, z) = 0 such that g = a f + Ohk+1. In practical applications, h = 0 is often assumed to be a plane. In this case , we have Corollary 2.3 Assume algebraic surface g = 0 of degree m and algebraic surface f = 0 of degree n (n < m) meet along common algebraic curve in plane it . If there exist polynomials a(x, y, z ) of degree m - n and /3(x, y, z) of degree m - k - 1 such that g = a f + fink +1, then algebraic surfaces g = 0 and f = 0 meet with Gk continuity along the common curve.
2.2 Geometric continuity of algebraic surface patches meeting around a common vertex In geometric modeling , especially in closed solid modeling , we often need to deal with the problem of smoothly joining several algebraic surface patches meeting around a common vertex V. Let S = {Si}Tin--1 be a set of algebraic surface patches which meet at the common vertex V , and Ci be the intersection curve of Si and Si+ 1 on the boundary, i = 1, 2,... , m. Here the subscripts are moduled by m. Obviously , Ci fl C, = V(i $ j). The shape of the collection of the surface patches {Si } m 1 looks like an umbrella , so we call S an umbrella4 . Umbrella S is called Gk continuous if Si and Si+ 1 meet with Gk continuity along Ci, i = 1, 2.... , M. We consider defining regions for an umbrella (figure 1 ) composed of tetrahedrons Ti = Z1 Z2Vi_1Vi, i = 1, 2,..., m with common edge Z1 Z2 , where the neighboring tetrahedrons Ti and Ti+ 1 share a same face 7ri = Z1 Z2 Vi.
Figure 1 . Defining region for an umbrella
185 In each tetrahedron Ti, an algebraic surface patch gi(x, y, z) = 0 of degree n is defined. If we construct gi in such a way that k+1 , i-1,2,...,m, (1) gi+1=gi +c; here, ai is polynomial with degree n - k - 1, then the set of algebraic surface patches gi = 0, i = 1, 2.... , m, forms a Gk continuous umbrella. Note that, the system of equations (1) implies a consistency condition: M aiirk+1 = 0. (2) i=1
Theorem 2 .4 The umbrella defined by (1)is Gk continuous , if and only if the consistency condition (2) has non-zero solutions.
3 Algorithms Given a hole surrounded by several algebraic surfaces, the process of constructing a piecewise algebraic surface to fill the hole mainly consists of two steps:
(1) Space partition, i.e., determine the defining region for the piecewise algebraic surface. (2) Construct the piecewise algebraic surface which meets the boundary surfaces with Gk continuity.
We will explore these two steps separately. 3.1 Space partition Space partition is to decide the defining region for each algebraic surface patches. It varies with different situations, and makes geometric modeling with piecewise algebraic surfaces quite difficult but flexible. Let fi = 0, i = 1, 2,... , m be the given algebraic surfaces which surround a hole, it = 0 are transversal planes which intersect fi = 0 at Ci = (fi = 0) fl (7ri = 0), i = 1, 2, ... , m. The neighbouring boundary curves Ci and Ci+1 meet at points Vi. We are required to construct a piecewise algebraic surface g = 0 which meets with each fi = 0 with GCk continuity. We first outline the algorithm to construct the defining region for the piecewise algebraic surface g=0.
186
(1) The defining region of g = Ois bounded by planes 7ri, i = 1, 2 ... , M. (2) For each boundary algebraic surface fi = 0, we need a corresponding algebraic surface patch gi = 0 such that gi = 0 and fi = 0 meets with G" continuity. On the other hand, for any two consecutive surface patches gi and gi+1, we use another transitional surface patch to smoothly joining gi and 9i+1• (3) When the transversal planes intersect at a common point, generally we use tetrahedron as the basic defining region for each surface patch. When the transversal planes intersect at infinity, we use triangular prisms as the basic defining region for each surface patch. (4) When the parameters are not enough to get a solution, we will subdivide the defining region into smaller blocks. In order to avoid cutting each of the boundary curves Ci into two segments and get more free parameters and fewer consistency conditions, we subdivide the defining region at vertices V. of the boundary curves as shown in figure 2. (5) Symmetry is also a consideration in partitioning the space. Generally, if the boundary algebraic surfaces and their positions have some symmetry, the corresponding partition should also have some symmetry.
Figure 2. Space partition for filling holes
3.2 Construction of the piecewise algebraic surface After determining the defining region of the piecewise algebraic surface g = 0, the construction of the surface can be achieved by solving some algebraic equations. Suppose we are given m boundary algebraic surfaces fi = 0, i = 1, 2, ... , m. The surface g = 0 consists of s surface patches gj = 0. We
187
assume the surface patches gj have the same degree n (n > deg (fi)). Since g = 0 meets each fi = 0 at Ci with Gk continuity, there exists some gj such that gj = 'Yi,fi + ai7fk+1
where ryi and /3 are polynomials, and deg(ryi) < deg(gj) - deg(fi) and deg (#j) < deg(gj) - k - 1. On the other hand, at each place where the partition has the structure of an umbrella, a consistency condition like (2) must be held. If there are t umbrella structures in the defining region, then there are t corresponding consistency conditions. Thus we get a system of algebraic equations with polynomials ai, Ni and ryi being unknowns. When we know the degrees of ai, ,di and ryi in advance, the above algebraic equations can be converted to a system of linear equations with the coefficients of ai, /3i and ryi being unknowns. After solving the system of the linear equations, the piecewise algebraic surface g = 0 can be constructed. 4 Examples In this section, we present two specific examples to demonstrate the process of constructing piecewise algebraic surfaces to fill a given hole. The original example comes from Bajaj2 where a table corner is smoothed out by using a quintic algebraic surface. In this paper, we will use piecewise algebraic surfaces to solve the same problem instead. In the first example, we use 3 patches of quartic algebraic surfaces to G1 mend the hole; and in the second one, we construct a piecewise cubic algebraic surfaces with 7 patches to fill the same hole. 4.1 Hole in Bajaj's table corner Consider a corner of three faces that consist of the first quadrants of xy, yz, zx planes2. The three edges are smoothed out by three quadratic surfaces: two cones fl = 10yz - 25z2 + 40z - y2 + 10xy - 8y - 25x2 + 40x - 16 = 0, f2 = 4z2 + 4xz - 12z + 4y2 + 4xy - 12y + x2 - 6x + 9 = 0, and a circular cylinder f3 = (x - 1)2 + (y - 1)2 - 1 = 0. These three surfaces, respectively intersected with F1 = y - 1 = 0, F2 = x - 1 = 0, F3 = z - 1 = 0, produces three circles Ci, i = 1, 2, 3. Now, we look for a surface g(x, y, z) = 0 which smoothly interpolates the three curves and fills the hole generated by the three curves. Also, g
188 respectively meets fi = 0 at the three curves with G1 continuity. 4.2 Filling hole with piecewise quartic surfaces
In this example, we define the defining region to be three tetrahedrons meeting at a common vertex as shown in Fig. 2 (left), and fill the hole with three quartic surface patches meeting at a common vertex. We select points V1 = (1, 1, -2), V2 = (1, -2,1), V3 = (-2,1,1), Vo = (0, 0, 0), Zo = (1,1,1). The transversal planes are: 1r1 = x - y = 0, 7r2 = x - z = 0, 7r3 = y - z = 0. {gi = 0} 1 is defined in tetrahedron ZoVoVi-1Vi• Since gi = 0 meets with fi = 0 at Fi with G1 continuity, we have
{
[[^^ 3 = Lei=1 ai7ri - 0,
-Y, f, y1f1
+ /31F1
+a1ir ='Y2f2
+ 0 1F1
-a37r3 = y3f3 + #3 Fs •
+/32F2,
(3)
Here, ai, Qi, ryi are polynomials of degree 2. We convert the system of equations ( 3) into a system of linear equations with the coefficients of monomials in ai, 0j , yi being unknowns. The system of equations contain 105 equations and 90 unknowns , and the resulting solutions have 13 free parameters . The following is one solution: gi=
ylfl+01F1
92 = 7212 +
1 93
/32
F2
(4)
= 73f3 + f3 F3
where yl =300x2 -2184 Y2 - 252xy - 300xz + 120yz - 720x + 3600y - 192z, /31 = - 68760x2 + 756y2 - 59040x2 + 16516xy + 39264xz - 5916yz
+ 116108x + 18948y + 120720z - 114444, 72 =7770x2 - 2370y2 + 4695xy + 1875xz - 750yz - 20235x + 5490y + 1200z,
02 = - 17546x2 - 58230y2 - 52320x2 - 32391xy - 18927xz - 16710yz + 80855x + 140826y + 112992z - 11444, y3 = - 7500x2 - 9480y2 + 57360x2 + 9300xy + 7500xz - 3000yz + 15000x + 31440y - 109920z, 03 = - 64860x2 - 73080y2 + 12x2 + 21672xy + 5500xz - 2988yz + 112628x + 158796y + 48024z - 11444. Figure 3 shows the corresponding surface.
189
Figure 3. Filling hole with three quartic surface patches
4.3 Filling hole with piecewise cubic surfaces In this subsection , we use piecewise cubic algebraic surfaces to fill the same hole. We use the space partition as shown in Fig. 2 (right ), where V1 = (1,1, -2), V2 = (1, -2,1), V3 = (-2,1,1), V1 = (4, -$, -g), V2 = (- $ , 4 , - 8) , V 3 = (- $ g ¢) , Z o = (1,1,1) , and
7r1 =-2x+3y-1 = 0, 7r2 = 3x-2y-1=0, 7r4 = -2x + 3z - 1 = 0, 7r3=3x - 2z-1=0 , 7r5 = -2y + 3z - 1 = 0, 7r6=3y - 2z-1=0, 7r7 = 3x + 3y - 5z - 1 = 0, 7r8 = 3x - 5y + 3z - 1 = 0, 7r9 =-5x+3y+3z-1 =0.
(5)
The system of equations obtained are: a57r5 + ag1r9 - ag7r8 - a474 = 0, a17r1 + a77r7 - a97r2 - a67r6 2 = 0,
a37r3 + agir8 - a77r7 - a27r2 =
0,
(6)
,Y1 f, + f1F1 + a17r2 = -y2 f2 + /92F2 + a2^2, 'Y2f2 + /32F2 + a37r3 = 73h + 03F3 + a47r4. Here , ai, /3z, ryi are linear polynomials.
The above system of equations have 5 solutions . The following is one solution: 91 ='YiIi +
01F1 ,
92 ='Y2 f2 +
02F2,
2 94 = 91 + a 17r i, 93 = 73f3 + fl3F3 , 2 2 96 = 93 + a575, 95 = 92 + a373 ,
1 97 = 94 + a77r7, 1
190
where ry1 = 20250(-y - z + 3), 01 = 50(80206x + 5211y - 77539z - 3099), rye = 648(5x + 7y + 5z - 2250), N2 = -47520x + 4283636y - 4185020z + 159504, rya = 16200(-5x - 5y - 5z + 20), N3 = 64800(x + y + z + 1), a1 = -698628x - 561268y + 778360z + 445896, a3 = -19440x - 734628y + 268092z + 450336, a5 = 40(-13711x - 999y + 2599z + 11220), a7 = -85197x - 90867y + 85500z + 81654. Figure 4 depicts the corresponding surface.
Figure 4. Filling hole with seven cubic surface patches
5 Conclusion In this paper, we use piecewise algebraic surfaces instead of a single piece of algebraic surface to smoothly fill holes surrounded by algebraic surfaces. Examples show that to achieve the same tasks, piecewise algebraic surfaces have the advantages of relatively low degree and have more free parameters to be used for controlling the shape of the surfaces. Currently, we are relying on a trial-and-error approach to determine the defining region and the degree of the piecewise surface. How to automate this process is a problem worthy further research. On the other hand, how to choose suitable parameters in the final solutions such that the resulting surface is satisfactory in practice also needs further study.
191
Acknowledgments This work is supported by NKBRSF on Mathematics Mechanization (grant G1998030600), the National Natural Science Foundation of China (grant 19971087), and a grant for Extinguished Young Teachers from Educational Committee of China. Jiansong Deng is also supported by an Intramural Youth Science Foundation of University of Science and Technology of China. References 1. C. Bajaj and I. Ihm, Algebraic surfaces design with Hermite interpolation, ACM Trans. Graphics, vol. 11, 61-91 (1992). 2. C. Bajaj, I. Ihm and J. Warren, Higher-order interpolation and leastsquares approximation using implicit algebraic surfaces, ACM Trans. Graphics, vol. 12, 327-347 (1993). 3. J. Bloomenthal, Introduction to implicit surfaces, Morgan Kaufmann Publishers, Inc., San Francisco, California (1997). 4. F.L. Chen, Geometric continuity, blending and intersection of algebraic surfaces, Ph.D dissertation, Department of Mathematics, University of Science and Technology of China (1994).
5. F.L. Chen and C.S. Chen, Blending pipe surfaces with piecewise algebraic surfaces, to appear in Chinese Journal of Computers. 6. S.A. Coons, Surfaces for Computer Aided Design, MIT, USA (1964).
7. T. Garrity and J. Warren, Geometric continuity, Computer Aided Geometric Design, vol. 8, 51-65 (1991). 8. J.A. Gregory, V.K.H. Lau and J.W. Zhou, Smooth parametric surfaces and n-sided patches, NATO ASI Meeting on Computation of Curves and Surfaces, Teneriffe (1989). 9. J.A. Gregory and J.W. Zhou, Filling polygonal holes with bicubic patches, Preprint, TR/05/91, Dept. of Math. and Stat., Brunel Univ. (1991).
10. T.W. Sederberg, Piecewise algebraic surfaces patches, Computer Aided Geometric Design, vol. 2, 53-59 (1985). 11. T.W. Sederberg, Techniques for cublic algebraic surfaces, Part Two, CG&A, vol. 10, no. 5, 12-21 (1990). 12. J. Warren, Blending algebraic surfaces, Trans. Graphics, vol. 8, 263-279 (1989).
GLOBAL SUPERCONVERGENCE FOR BLENDING SURFACES BY BOUNDARY PENALTY PLUS HYBRID FEMS Z. C. LI AND N. N. YAN Department of Applied Mathematics, National Sun Yat-sen University, Kaohsiung, Taiwan 80242 and
Institute of System Science, Academia Sinica, Beijing 100080, China In this paper, we consider biharmonic equations and 3D blending surfaces, and choose the finite element method to seek their approximate solutions. We pursue the global superconvergence originated in the work of Lin and his colleagues 16,17, and better numerical stability.
1 Introduction Algebraic surface blending methods are widely used in the shape design (see, for example, the papers',' in this volume). Instead of using algebraic methods, we use PDE (partial differential equation) methods to deal with blending problems in this paper. In our previous work",", we have used the boundary penalty finite element methods (BP-FEM) for biharmonic and 3D blending surfaces . The global superconvergence with 11e1I2,o = 0(h3) - 0(h4) has been achieved. However, the cost for this goal is numerical instability. Since the condition number is given by Cond. = 0(h-4)+ 0(h-1-2a), the requirements of a = 3 - 4 in the papers9"0 by Li and Chang lead to condition numbers as high as 0(h-7) - 0(h-9). This implies that the applicable rectangles must not be small under double precision. Such a drawback prevents greatly the BPFEM from applications in biharmonic equations and complicated 3D blending surfaces. In this paper, we study biharmonic equations invloving the natural conditions, and 3D blending surfaces discribed by a system of biharmonic equations. Usually, the tangent, (i.e., the normal derivative) boundary conditions are complicated, and need to be matched by the boundary techniques. When 0(h3.5) a = 1.5 is chosen, not only can the global superconvergence rate be obtained, but also the optimal condition number 0(h-4) may be retained. Since instability of numerical solutions for biharmonic equations is much more severe than that for the Poisson's equation, any reduction of condition number is crucial in applications. A summary of the choices of a, condition number, errors and comparisons are listed in Tables 1 (a) and (b). The organization of this paper is as follows. In the next section, we consider the biharmonic equation with the natual boundary condition, and 192
193
devolop the penalty plus hybrid techniques of finite element methods (BPHFEM) using bi-cubic Hermite functions for biharmonic equations. Error bounds are made to yield global superconvegence. In Section 3, the BPHFEM is applied to 3D blending surfaces, to achieve also superconvergence. We briefly provide optimal convergence and stability analysiss, but discuss in detail the global superconvergence. In Section 4, numerical results are given, to support the high superconvergence O(h3.5) involving the natural boundary condition, and an a posteriori estimates are also provided.
2 Finite Element Methods for Biharmmonic Equations 2.1 Description of the Method
Now consider the biharmonic equation on the unit square 1 AZU
(
OZ 02 Or2 + ^t2 u = f, (r,t) E 0, /2
(1)
with the mixed type of different boundary conditions: (1) the clamped boundary condition on r2 19U u=g, On =gi on r2;
(2)
and (2) the natural boundary condition on ro, m(u) = 0, p(u) = 0 on
ro,
(3)
where n is the outward normal of O1, and 1 is a unit square: H = { (r, t), 0 < r<1, 0
(4)
P(U) = O 0 u + (1 - p) 8 (urrrnrs + urt(rnts + rstn ) + utttnts), (5) On Os
where rn, to and r87 t8 are the direction cosines of the outnormal and tangent vectors , respectively. The motivation of study for this model is for 3D blending surface problems involving the natural boundary condition , shown in Fig. 1 and discussed in Section 3.
194
Define the spaces: H* = { v E H2( 1), satisfying uI = l r2
g
(6)
Ho = I v E H2(SZ), satisfying uIra = 0 (7) JJJ Ho = { v E H2(1), satisfying uI }(8) rz = unI r2 = 01. l Note that for the natural condition on r* we do not need any constraint on the admissible functions. The solution of (1)-(6) can be written as a weak form: To seek u E H* fl (un I r2 = gl) such that a(u, v) = f (v), Vv E Ho, (9) where a(u, v) =
ff A(u,v)ds , f (v) = fft fvds,
(10)
and A,,(u,v) = Au 0 v + (1 - u)(2urtvrt - UrrVtt - uttvrr), 0 < µ < 1, - 82u 82u
urr - erg and urt - eret' We fix the boundary condition ulr2 = g only, but relax the other bound-
ary condition en = gl on P2 by applying the boundary penalty plus hybrid techniques, which were described in the papers6,11,19 by Fairweather, Li, and Nitsche. Suppose that the solution domain Q can be divided into small quasiuniform rectangles Lij, i.e., SZ = Ph = UijAij. Denote by Vh C H* and Vh C Ho the finite collections of the piecewise cubic Hermite functions satisfying ulr2 = g and vlr2 = 0, respectively. The boundary penalty plus hybrid finite element method (BPH-FEM) involving integration approximation can be expressed by: To seek uh E Vh such that b(uh, v) = F(v), Vv E Vh , (11) where
b(u, v) =
ff
b(u, v) = Pa h
A. (u, v)ds + b(u , v) + E(u, v),
J r2 unvnde , E(u, V) = f
F(v) = f (v) + P o f 91vn de + f
r2
(12)
(m(u)vn + m(v ) un)di, (13) r2
91m(v)de, (14) r2
195
f (v) =
ff
fvds.
(15)
The Simpson's rule is chosen for T Y n, to lead to no errors for the integrals: ff 0Aµ (u, v)ds = ff 0Aµ ( u, v)ds , Vu, v E Vh . However , for integrals on I'o and r2, the following rules axe chosen, f f = o
J d= nde, or2 r 2
(16)
where h is the piecewise bi-cubic Hermite interpolation of v. By following the approaches of Lin and Yan17, the superconvergence can be proved for the rectangular mesh and the bi-cubic Hermite element. When the FEM approximation iih is obtained, we may construct an a posteriori Hermite interpolant fl uh of order 5 on Alt+1,2j+1 , where L2 +1,2j+1 is a 2 x 2 fashion of Hence S2 = S2h"2 = Ui,j L 2 +1,2j+ 1• An explicit formula for llPUh is given in the paper10 by Li and Chang . Below let us give a theorem and a corollary of superconvergence for IIpuh by following the work of Li9 (see the paper" by the authors for details).
Theorem 2 . 1 Suppose that for (11), the uniformly Vh elliptic inequality holds: CoIIvIIH :5 b(v,v), b'v E Vh°,, (17) where CO is a bounded constant independent of h and or . Then there exists the bound,
IIU - fPUhIIh < E,
(18)
where
E= {iu
+20
+(v - 3)h3 +°
+ hIf I ,o +h2+D, I u l 4,oo,o
a
4u
I O U l,r +
(19)
phv- 2 IUnlv,r + pRv ,
where for quasiuniform Lid, v = 3 and R3 = h2.5IuI4,r, and for uniform Did, v = 4 and 4
R4
=
h3 .5IUI5, r
+ h2 .5+a
E(Iu rrrr( Pi)I + utttt (Pi)1 ) i=1
Here uh and uj are the solution of (11) and the piecewise bi-cubic Hermite interpolant of u respectively.
196
Corollary 2.1 Let all conditions in Theorem 2.1 hold. Also suppose u E H°+2(0) n W4>°°(Il), f E H"( Il) and o = 1.5. For quasiuniform &aj and v = 3, there exist the bounds, IIu - llPUh IIh =
0(h 2.5),
Il JI5ilh) n - 91
IIO, r2
0(h4).
For uniform Lij and v = 4, there exist the bounds , IIu - fl ii hll h = 0(h3.5)
I
- 91
(1 5Uh ) n
II0 ,r2
0(h5).
3 The BPH-FEM for Blending Surfaces For blending surfaces , the interpolation techniques are used usually; a review and references are given by Lib. The pure interpolation techniques cause multiple solutions , illustrated in the book by Foley and others7 . We invoke from the papers by Li the partial differential equations(PDEs ) and their numerical solutions . Not only can the unique blending surface be obtained, but also the surface obtained has the minimal energy, (i.e, the minimal value of global second derivatives ), which is desirable in engineering designs. Let us consider a real 3D blending surface which is sought to join two given frame bodies Vl and V2 at the left boundary 8V1 and the right boundary 8V2 (see Fig. 2 and the references7'8"10 ). Suppose that 9V1 and 8V2 are disjointed to each other . Choose two parameters r and tin a unit solution area SZ = { (r, t), 0 < r < 1, 0 < t < 11 , and use the vector of three parametric functions, U = U(r, t) _ (x, y, z)' = (x(r, t), y (r, t), z(r, t))T , (r, t) E Q, (20) to represent the blending surface . We denote the boundary of l (see Fig. 1) by I' = an = Fo U r 2, where Fo = AB U CD, and F2 = AC U BD. Therefore, the displacement and tangent conditions of 3D blending surfaces along the joint boundaries 8V1 and 8V2 can be written as1o U1r2
=
(Un)AC = (Un)r=0 = a0U0,
g,
(21)
( U,-4) BD = (Un ) r=1 = alUU, (22)
where Un = e U, and n is the outer normal to the boundary O. The nonnull vectors Uo, U1, Uo (# 0) and Ui (54 0) are known , but the ratio functions ao(t)(i4 0) and al(t)(54 0) are arbitrary real functions . We may express (22) as yn = b10xn, zn = b20xn
on AC;
yn = b11xn , Zn = b21xn on BD, (23)
197
or simply as yn = blxn , zn = b2xn on T2, (24) where blo, b2o, b11 and b21 (or b1 and b2) are known. Let Ck (Sl) denote a space of functions having continuous derivatives of order k. Since functions x(r, t), y(r, t), and z(r, t) E C' (Q), and since the continuity of U and Un on Oil is described in (21) and (24), we may assume that the solution x, y, z(E C4 (S2)) satisfy the following biharmonic equations which resemble the placements in flexible thin elastic plates: L2U = F,
where F = (fx, fy, fz)T,
(25)
where the Laplace operator 0 = a + ay , and the biharmonic operator A2 = ( + a )2. The functions f, fy, and fx denote the external loading forces on the In plate and they can be chosen suitably based on practical experiments and requirements in engineering . (see page 486 of the book by Foley and others7). We consider the natural conditions on ro = to u Ti,
M(U) = qi, P(U) = q2, on F ,
(26)
where ql and q2 are known vectors of functions on T. The notations are
M(U) = - DU + (1 - µ) (Urrrs2 + 2Urtrsts + Uttta
(27)
J
P(U) = AU+(1-µ)581 U rrrnrs+Urt (rnts+rstn)+Utttnts
11
(28)
where it E [0, z ), rn, to and r8, t8 are the direction cosines of the outnormal and tangent vectors, respectively. There are only two boundary conditions in (24) on r*. We derived the other condition the paper9 by Li M(U) - BIr2 = 0,
(29)
where B = (1, b1, b2)T. The boundary conditions ( 26) as well as ( 29) are called the natural conditions; and Eqs. (21) and (24) are the essential conditions. Both the essential and natural boundary conditions should be implemented to the differential equation (25) to yield a unique solution U. We use the BPH-FEM to seek the approximate solution. For superconvergence , the variants of the BPH-FEM will be choose. Using the same methods of Section 2, we can also get the superconvergence results as in Section 2, and the condition number is only O(h-4) (see the paper14 by the authors for details).
198 Table 1 (b) lists values of o,, condition number and errors for 3D blending problems in the paper10 by Li and Chang and this paper, where "same" indicates the same results as those in Table 1 (a). To reach superconvergence 0(h3) for uniform Lid, the optimal Cond. = 0(h-4) can also be achieved by BPH-FEM; by contrast, Cond. = 0(h-7) is needed by BP-FEM in the paper10 by Li and Chang. This is a significant progress of stability for 3D blending surfaces.
4 Numerical Experiments and Applications
Consider the biharmonic equations with the mixed type of the clamped condition: A2u = f (r, t) in f2 ,
m(o)lt; = qi,
u
r2
= 9,
l
Ou = 91 , Or r2
p(u)lr 0
=
q2,
(30)
(31)
where f2=[0,1]x[0,1],r ={y=0,1,0<x<1}, t2={x=0,1,0
(32)
where the parameters a, b = 0 or 1. The uniform rectangles Aij are chosen where h = 1/N, and N = 4, 6, 8, 12 and 16. The BPH-FEM is applied only to the normal derivative boundary condition on I'2. Since the true solutions are known , we may compute the true errors. When µ = 0, a = b = 1 , PP = 10 and v = 1 .5, the error norms and condition numbers are listed in Table 2. It can be seen that
11611t ,cl
= O(h4- t),
hu h - urhht,Q = O(h4), f = 0, 1, 2,
(33)
where e = U - Uh. Note that when a = 1.5, not only can best superconvergence be retained, but also the optimal condition number is achieved. Amax(A) = 0(h-2),
Amin(A) = O(h2), Cond.(A) = O(h-4). (34)
This is a significant development from the paper9 by Li.
199
References 1. C. Chen, F. Chen, J. Deng and Y. Feng, Filling holes with piecewise algebraic surfaces, in this Proceedings. 2. F. Chen, J. Deng and Y. Feng, Algebraic surface blending using Wu's method, in this Proceedings. 3. P.G. Ciarlet, Basic error estimates for elliptic problems, in: P.G. Ciarlet and J.L. Lions (eds.), Handbook of Numerical Analysis, vol. II: Finite element methods (Part 1), North-Holland, pp. 17-351, 1991. 4. G.F. Carey and T.T. Oden, Finite Elements, A Second Course, vol. II, Prentice-Hall Inc., 1983. 5. P. J. Davis and P. Rabinowitz, Methods of Numerical Integration (2nd Ed.), Academic Press Inc., San Diego, 1984. 6. G. Fairweather, Finite Element Galerkin Methods for Partial Differential Equations, Marcel Dekker, Inc., New York, 1978. 7. J. D. Foley, A. van Dam, S. K. Feiner and J. F. Hughes, Computer Graphics, Principle and Practice (2nd Ed.), Addison Wesley Publishing Company, Reading, 1991.
8. Z.C. Li, Boundary penalty finite element methods for blending surfaces, I. Basic theory, J. Comp. Math., vol. 16, 457-480, 1998. 9. Z.C. Li, Boundary penalty finite element methods for blending surfaces, II. Biharmonic equations, Comp. Appl. Math., vol. 110, 155-176, 1999. 10. Z.C. Li and C.S. Chang, Boundary penalty finite element methods for blending surfaces, III. Superconvergence, stability and samples, Comp. Appl. Math., vol. 110, 241-270, 1999. 11. Z.C. Li, Combined Methods for Elliptic Equations with Singularities, Interfaces and Infinitives, Kluwer Academic Publishers, Boston, London, 1998. 12. Z.C. Li and N.N. Yan, New error estimates of bi-cubic Hermite finite element methods for bi-harmonic equations, Technical Report, National Yat-sen University, Kaohsiung, Taiwan, 2000. 13. Z.C. Li and N.N. Yan, Global superconvergence and stability analysis of boundary penalty plus hybrid FEMs for biharmonic equations, Technical Report, Department of Applied Mathematics, National Sun Yat-sen University, Kaohsiung, Taiwan, 2000. 14. Z.C. Li and N.N. Yan, Global superconvergence for blending surfaces, to appear. 15. Q. Lin, Interpolated finite elements and global error recovery, Contemporary Mathematics, vol. 163, pp. 93-109, 1994.
16. Q. Lin and P. Luo, Global superconvergence of Hermite bi-cubic element
200
for biharmonic equation , in Beijing Mathematics, vol. 1 (Part 2), pp. 52-64, 1995. 17. Q. Lin and N. N. Yan, The Construction and Analysis of Efficient FEM, Hebei University Publishing , pp. 54-67; 126-128, 1996. 18. J.T. Marti, Introduction to Sobolev Spaces and Finite Element Solution of Elliptic Boundary Value Problems , Academic Press , London, 1986. 19. J. A. Nitsche, Uber ein variationsprinzip zur losung von Dirichlet problemem bei verwendung von teilraumen, die keinen randbekingungen unterwofen sind , Adhes. Math. Sem. Univ., vol. 36 , 9-15, 1971.
blending surface Figure 1. A blending surface connecting V1 and V2 along partial 8V1 and 8V2.
Tech. Choice Cond. Error
Pen. a=2 O(h-)
Optimal Pen. plus Hyb. a=1.5 O(h-) O(h)
Super, Quasiuniform Pen. plus Hyb. Pen.9 a=1.5 o=2.5 O(h )) O(h-) 0(h'-')
Super, Uniform Pen." I Pen. plus Hyb. a=1.5 a=3.5 O(h- ) O(h-) 0(h )
Table 1. (a) The choices of a and condition numbers for biharmonic equations by using BP-FEM and BPH-FEM.
Tech. Choice Cond. Error
Optimal Pen.' I Pen. plus Hyb. a=1.5 a=2 same same same
Super, Quasiuniform Pen. plus Hyb. Pen.9 a=1.5 a=2.5 same same same
Super, Uniform Pen. plus Hyb. Pen.9 a=1.5 a=3 O(h- ) O(h-) 0(h
Table 1. (b) The choices of or and condition numbers for 3D blending surfaces by using BP-FEM and BPH-FEM, where " same" denotes the same results in Table 1 (a).
201
N max lei.7 l max (e_)ij max l(et ) i.7 I max I (e,rt)ij I
Ave. l eij I Ave.I (er)ij Ave. l (et )ij 1 Ave.I(e,.t )ijl
Iu h - uilo,oo,n Iuh - ulli,.,n
luh - u I 12,00,n ll u h - ul llo, n llu h - uI lll, n llu h - u1 112 , n 11I uh - ulo,oo,a III uh - uli, In uh - u12,.,0
lln uh - U1 0,0
111I
1111
uh - U1 1, n u h - u112,n
lelo,^,0 lel1,^,0 1e12,^,0
11e110,0 lle11l,n 11611 2, 0 ll(uh)r - gl llo r 11(uh)r - gl llo r Iu h - u llo,oo,r '
11th - ullo,r•
lm( u h - ui ) lo,oo,r' lm( u h - u l ) Jo,r• Amnx(A ) Amin(A)
Cond.(A)
4 0.568 (- 1) 0.225 0.179 1.25 0.308(-2) 0.190 (- 1) 0.926 (-2) 0.671 (- 1) 0 . 631(-1 ) 0.241 2.54 0.161 (- 1) 0.935(-1) 0.621 0 . 594(-1 ) 0 . 305 3. 58 0 . 153(-1 ) 0.978 (- 1) 1 . 19 0.970(-1 ) 0.568 12 . 0 0 . 282(-1 ) 0.265 5 . 20 0.124 0.780 (- 1) 0.639 (-1) 0.393 (- 1) 0 . 797 0.477
6 0.118(-1) 0. 546(-1 ) 0.430(-1 ) 0.381 0.616 (-3) 0.259 (-2) 0.214 (-2) 0.119(- 1) 0.127(- 1) 0.495(-1 ) 0.478 0.317(-2) 0.185 (- 1) 0 . 125 0.123 (- 1) 0 . 580(-1 ) 0.858 0.307 (-2) 0.187(-1) 0.246 0.201 (- 1) 0 . 140 5.51 0.571 (-2) 0.690(-1 ) 2.29 0. 248(-1) 0.167(- 1) 0.127(- 1) 0.782 (-2) 0 . 209 0 . 135
0.130 (4) 0.558(-2) 0.233 (6)
0.314(4) 0.232(-2) 0.136(7)
8 0.397(-2) 0.162(-1) 0.145 (- 1) 0. 133 0.140 (-3) 0.604(-3) 0.444 (-3) 0.301 (-2) 0.402 (- 2) 0.156 (- 1) 0 . 149 0.100 (-2) 0.586 (-2) 0.391(-1) 0.394(-2) 0.163 (- 1) 0.298 0.980 (-3) 0.586(-2) 0 . 786(-1) 0.634 (-2) 0. 559(-1 ) 3 . 06 0.182 (-2) 0.274 (- 1) 1.28 0.757(-2) 0.543 (- 2) 0.402(-2) 0.248 (-2) 0. 684(-1 ) 0. 487(-1 )
12 0.796 (-3) 0.333 (-2) 0.289(-2) 0. 272(-1) 0.156 (-4) 0.605 (-4) 0.585 (-4) 0.516 (-3) 0.785(-3) 0.310 (-2) 0 . 293(-1) 0.179(-3) 0.116 (-2) 0.758 (-2) 0.789 (-3) 0.321(-2) 0 .637(-1 ) 0.196 (-3) 0.116 (-2) 0.156 (- 1) 0.129 (-2) 0.162(-1) 1.43 0.360 (-3) 0.770 (-2) 0.570 0.160 (- 2) 0.109(-2) 0.798 (-3) 0.491 (-3) 0.143 (- 1) 0.107(- 1)
0.251(-3) 0.102(-2) 0.212(-1) 0.622(-4) 0.367(-3) 0.463(-2) 0.408(-3) 0.651(-2) 0.804 0.114(-3) 0.318(-2) 0.321 0.494(-3) 0.348(-3) 0.253(-3) 0.156(-3) 0.443(-2) 0.354(-2)
0.573 (4) 0.126 (- 2) 0.454(7)
0.131(5) 0.548 (-3) 0.240 (8)
0.235(5) 0.306(-3) 0.770(8)
16 0.250(-3) 0.103(-2) 0.933(-3) 0.905(-2) 0.447(-5) 0.148(-4) 0.137(-4) 0.104(-3) 0.253(-3) 0.957(-3) 0.926(-2) 0.626(-4) 0.367(-3) 0.238(-2)
Table 2 . The error norms and condition numbers of the natural condition on 1'0 * for µ = 0, Pc = 10 and a = 1.5 with a = b = 1 and for the model on Fig . 1, where e = u - uh.
EXTENSION OF MATHEMATICS MECHANIZATION THEORY IN ALGEBRAIC CASE TO DIFFERENTIAL CASE WEN-TSUN WU Institute of Systems Science, Academia Sinica, Beijing 100080, P. R. China E-mail: wtwuOmmrc. iss. ac. cn
Let PS be a polynomial set over a field of characteristic 0 in variables X = {x1, ... , xn} arranged in natural ordering. We may introduce a partial ordering first among polynomials and then among polynomial sets. There is an algorithm to deduce from PS a polynomial set CS, well-arranged in some sense , called characteristic set (abbr. char-set), of PS, according to the following scheme:
PS = PSo BSo RSo
PSi
BS1 RSl
• .. PSi • .. PSm . . . BSi • . . BS,, = CS ... RSi ... RSm = 0.
(1)
In the scheme each BSi is a subset of lowest ordering contained in PSi, called a basic set of PSi, each RSi is the set of non-zero remainders, if any, of polynomials in PSi \ BSi with respect to BSi, and PSi+i = PS0 U BSi U RSi. It is proved that the procedure should terminate at certain stage m with RS.. = 0 and the corresponding basic set BS,, is then a char-set of PS. The zero-set of PS is closely connected with that of CS by some Well-Ordering Principle. From scheme (1) and the Well-Odering Principle in proceeding further on we may get various kinds of Zero-Decomposition Theorems for Zero(PS) which permit one to solve arbitrary polynomial equations PS = 0 or equivalently to determine Zero(PS) at least in some theoretical sense. The Well-Ordering Principle as well as such Zero-Decomposition Theorems will then furnish a method of proving geometry theorems for which the hypothesis and conclusion are both expressed in form of polynomial equations. The above theory of Mathematics Mechanization in algebraic case can naturally be extended to differential case . Thus, let DF be a differential field and DPS a differential polynomial set on DF in independent variables X and functions Y = {yl, ... , y,n}. With some natural ordering of X,Y and derivatives of yi with respect to xj, we can extend the scheme (1) to a scheme (2) in the differential case:
202
203
DPS = DPSo
DPS1
DBSo
DBS1
DRISo DRIS1
•••
DPS DBS$
••.
DPS„L ••• . . . DBS„b = DCS . . . DRIS1 • • • DRISm. = 0.
(2)
In (2) DBS2 are differential basic sets of DPS;, defined analogously to BSi in algebraic case. On the other hand each DRIS2 consists of not only the non-zero remainders as in the algebraic case but also integrability polynomials in this differential case. From (2) we get a differential char-set DCS of DPS and also a Differential Well-Ordering Principle connecting the zero-sets of DPS and DCS. In proceeding from this Principle and (2) further we get as in the algebraic case various kinds of differential Zero-Decomposition Theorems which give methods for solving arbitrary systems of algebrico-differential equations in some theoretical sense . Moreover, they will furnish also various methods of proving theorems in various kinds of differential geometries. The Mathematics Mechanization Theory in this differential case is thus almost parallel to that in the algebraic case. However, owing to the appearance of integrability polynomials the computations will become extremely more complicated than those in the algebraic case. The theory of Riquier and Janet about multipliers and non-multipliers will greatly reduce the number of integrability polynomials to be considered and thus greatly reduce the labor of computations. Nonetheless it is still not an easy matter already in the case of n = 2. In fact, up to now the author has been able to prove quite non-trivial differential-geometry theorems only in the case of n = 1, i.e. in the case of curve theory. Hence improvements of the methods have to be sought in the general case. These are what we shall do in the near future. Reference Wen-tsiin Wu, On the foundation of algebraic differential geometry, MM Research Preprints, No. 3 (1989) 1-26.
ON THE DIFFERENTIAL-INTEGRAL ANALOGUE OF ZEILBERGER 'S ALGORITHM TO RATIONAL FUNCTIONS H. Q. LE Symbolic Computation Group, University of Waterloo, Waterloo , ON, N2L 3G1, Canada E-mail: hgleOscg.math . uwaterloo.ca We suggest a modified version of the differential-integral analogue of Zeilberger's algorithm to rational functions, and a heuristic to decide which version might lead to better performance . A complete Maple implementation of this heuristic decision procedure is also described.
1 Introduction Let F(x, y) be a hyperexponential function, i.e., the logarithmic derivatives D.F(x, y)/F(x, y) and DyF(x, y)/F(x, y) are rational functions in x and y. It has been shown2 that one can always construct a non-trivial linear differential operator L of order p with polynomial coefficients of the form
L = ap(x)Dy + • • • + ao(x)D2, ap(x) 54 0, ai(x) E C [x], 0 < i < p, (1) and a hyperexponential function G(x, y) = R(x, y)F(x, y), R(x, Y) E C (x, y) (2)
such that P
LF(x, y) _ ai(x)D'F(x, y) = DyG(x, y). i=0
(3)
The rational function R(x, y) is called the rational certificate of F(x, y). The algorithm, named hereafter as dZ, is the differential-integral analogue of the well-known Zeilberger's algorithm?. The construction of a dZ-pair (L, G), is the central part of the unified theory of differentiation under integral sign. It is also useful in proving theorems in the theory of special functions2.
Let F(x, y) be a rational function in x and y. Since the class of rational functions is a proper subset of the class of hyperexponential functions, there always exists a dZ-pair for F(x, y). Note that the situation is not the same for the cases of regular difference? and q-difference 5 where there is no guarantee of the existence of a pair (L, G) for F(x, y). The problem of determining a necessary and sufficient condition for the applicability of Zeilberger's algorithm 204
205 and its q-analogue on a given rational function is solved by Abramov and Le' and by Le 6, respectively.
In this paper, we suggest a modified version of dZ for the case when the input is a rational function, and a heuristic to decide which version might perform better. Section 3 describes a Maple implementation reflecting this heuristic. 2 To Reduce or Not to Reduce
2.1 Zeilberger 's algorithm: the original version The main part of dZ is the "Gosper's Algorithm Translated To The Continuous"2. For a given hyperexponential function F(x, y) in y, Gosper's algorithm finds a hyperexponential function S(x, y) also in y, if it exists, such that DyS(x, y) = F(x, y). (4) In step 1 of the algorithm, the polynomials p(y), q(y), r(y) E C (x) [y] are constructed such that Dy(F(y)/p(y)) _ q(y) F ' (y)/p(y) r(y) '
(5)
where q(y) and r(y) satisfy the condition gcd(r(y), q(y) - jDyr(y)) = 1 for every non-negative integer j. (6) In step 2, the problem is reduced to finding polynomial solution f (y) E C (x) [y] of the first-order linear differential equation with polynomial coefficients p(y) = (q(y) + Dyr(y))f (y) + r(y)Dyf (y)• (7) If such a solution exists, then the solution S(x, y) in (4) can be obtained via the relation S(x,y) = r(x,y)f(x,y)F(x,y)/p(x,y)•
(8)
Step 1 involves finding non-negative integer roots of the resultant of the two polynomials in (6). Step 2 is solved via the method of undetermined coefficients where the degree w.r.t. y of the polynomial p(x, y) plays the key role in determining an upper bound for the degree of the solution f (y) in (7). For a given guessed order p of the linear differential operator L in (1) where the coefficients ai(x), 0 < i < p are unknown, dZ evaluates the left hand side of (3) and applies Gosper's algorithm w.r.t. y. Since dZ is guaranteed to be successful, there exists a value of p such that the system of linear equations,
206 constructed as the consequence of solving (7), is consistent and we get the desired dZ-pair. It is noteworthy that since the left hand side of (3) already has the form of a polynomial times a hyperexponential function, the starting value po(y) of p(y) is not 1. It is clear that any attempt to improve dZ should try to minimize the degrees of the polynomials in (6), or in the ideal case to avoid completely the expensive computation in (6), and to minimize the size of the system of linear equations produced in (7) by minimizing the degree w.r.t. y of p(x, y) in (5). 2.2 Zeilberger's algorithm to rational functions: a modified version
For the rest of this paper, F(x, y) is restricted to being a member of the class of rational functions in both x and y. Lemma 1 Let (L1i G1), (L2i G2) be dZ-pairs for Fl (x, y), F2 (x, y) E C'(x, y), respectively. Then there exists a dZ-pair (L, G) for F = F1 + F2. Namely, L = lclm(Ll, L2) = Li o L1 = L2 o L2 for some Li, L2 E C'(x)[Dx], and
G = LiG1 + L4 G2. Proof Except for replacing the shift operator by the differential operator, the proof is exactly the same as that for Lemma 1, Section 2 in the papers by Abramov and Le. ❑ Consider the following modified version of dZ. Instead of applying dZ directly to F(x, y), we first apply a reduction algorithm such as Hermite reduction or Horowitz-Ostrogradsky algorithm3 to decompose F(x, y) into
F(x, y) = D,R(x, y) + T (x, y), R(x, y), T (x, y) E C (x) (y) • (9) We then apply dZ to T (x, y) to obtain a dZ-pair (L, G). Since a dZ-pair for D,R(x, y) is (1, R(x, y)), (L, LR(x, y) + G(x, y)) is a dZ-pair for F(x, y) as the consequence of Lemma 1. Example 1 Consider the rational function x5 F x, y) = x -3 (x2 + y)4. (x3 + y3)(1 + y3) ( Applying Hermite reduction w.r.t. y to F(x, y) yields (9) where x5
x2
R(x, y) _ (x2 + y)3 , T (x, y) _ (x3 + y3 Since (L, G) =
(
x
) (1 + y3)
2( s _ X 2y (x4 - x)Dx2 + (1 + 5x3 ) Dx + 3x2 3x
3y3
x 3 + y3^2
+
ys ) 1
is a dZ-pair for T (x, y) (See Example 2 ), a dZ-pair for F(x, y) is (L, LR + G).
207 2.3 A heuristic algorithm Now the question is which version is better. If the answer is inconclusive, then the next natural question is to investigate whether it is possible to come up with a heuristic algorithm to choose the one which might lead to better performance for a particular given input. Lemma 2 Let v(x, y) E C[x, y]. For any positive integer p, we have DP 1 _ u(x,y) X v(x
, y)
(10)
vP+l (x, y)
where u(x, y) E C[x, y] and degy u(x, y) < p degy v(x, y). Proof A proof can be done by using induction. Let n = degy v(x, y). For the base case where p = 1, we have Dx 1 _ -Dxv(x, y) u1 (x, y) , ul (x, y) E C [x, y]• v(x,y) v2(x,y) v2(x,y) It is easy to see that degy ul (x, y) < 1 n. Suppose that (10) is true for p. Then DP+1 1 = v(x, y) Dxu(x, y) - (p + 1)u(x, y) Dxv(x, y) (11) X v(x,y) vP+2(x,y) The denominator is of the form as expected. From the hypothesis, it is easy to see that the numerator is an element from C [x, y], and that the degrees w.r.t. y of the two terms in the numerator are both less than or equal to ❑ (p + 1) n. Let F(x, y) = v x, y)' u, v E C [x, y], degy u ( x, y) = ml, degy v (x, y) = n1. ( For any positive integer p , we have P / DPF(x, y) = Dy U(x , y) _ 1 P^ DX v( x y) D2-Zu (x, y) (12)
From Lemma 2 and (12), D
uP(x)
yPni+mi + 0 (yPni+mi-1)
iF'(x, y) v P= l +1 (x, y)
, o• E C [x].
Let the differential operator L be of the form (1), and po(y) be the initial value of p(y) in (5). We have +mi-1) + ...
+miv
LF = aP(x)up(x)yPnl
^((yy)1
(13)
+ ao(x) v^
x^ y)
208
From step 1 of Gosper's algorithm, po(y) is the numerator of (13), and hence po(y)
= Ai( x
) y Pni +mi
+ 0
(y Pni+mi-1)
, Al(x)
E C[
x]. (14)
The denominator of (13) is vP +1 (x, y). Let r (y) = 1/vP+l (x, y). Then Dyr(y) - -(p + 1)Dyv(x, y) 7(y) v(x,y) Therefore, the starting q(y) and r(y) in (5) have the form r = v(x,y), q = -(p + 1)Dyv(x, y).
(15)
Let T (x, y) in (9) have the form T (x, y) = c(x, y) , degy c(x, y) = m2, degy d(x, y) = n2. d(x, y) Similar to the case of F(x, y), when T (x, y) is used as the input to dZ, we have
r = d(x, y), q = -(p + 1) Dyd(x, y),
(16)
po(y) = Bl (x)yPn2+m2 + 0 (yPn2+m2-1) , B1(x) E C (X).
(17)
Additionally, as the result of applying a reduction algorithm, we have n2 < n1i m2 < n2.
Case 1: p > 0, i.e., the guessed order of L is positive. When T (x, y) is used as the input to dZ, the two polynomials in (6) are (r(y), q(y) - j Dyr(y)) = (d(y), -(p + 1 + j)Dyd(y)) Let v(y) = vl (y)v2 (y) . . vn (y) be the squarefree factorization of v(y). As a result of applying a reduction algorithm, d(y) is of the form d(y) = vi (y)v22(y)...vn°(y)
where bi takes on the values either 0 or 1, for 2 < i < n. Therefore, d(y) does not have repeated factors, and gcd (r(y), q(y) - j Dyr(y)) = gcd (d(y), Dyd(y)) = 1. (18) This means we can completely avoid the computation required in (5) and (6), i.e., there is no need for the resultant computation and non-negative integer root finding. Relation (18) also implies that deg p(y) = deg po(y) (in general deg p(y) > deg po(y).) Therefore, from (14) and (17), if pn2+m2 < pnl+mi, or equivalently, m2 < p(nl - n2) +m1, then the degree of p(y), when T(x, y) is used as the input to dZ, is less than or equal to that of its counterpart when F(x, y) is used as the input.
209 Case 2: p = 0. Let F(x, y) be the input to d8. Since the differential operator L is non-trivial, ao(x) # 0. If T (x, y) = 0, then (1, R(x, y)) is the computed dZ-pair. Otherwise, T (x, y) # 0 and in this case there does not exist a rational function G(x, y) E C (x, y) such that T (x, y) = DyG(x, y), i.e., there is no need to call Gosper's algorithm. It is clear that when the predicted order of the linear differential operator is zero (case 2) the trade-off is between performing a reduction algorithm versus Gosper's algorithm. When the predicted order is positive, we also need to take into account the fact that c(y), the numerator of T(x, y), can have very large coefficients in C (x). This case is not unusual when partial fraction decomposition is performed in Hermite reduction, for instance. Another important factor is the structure of the original input F(x, y). In step 1 of Gosper's algorithm, for a given input F(x, y), we first compute DyF(x, y)/F(x, y) in order to construct the polynomials p(y), q(y), r(y) in (5). Hence, we need to take care of the case when there are common factors between the numerator and the denominator of DyF(x, y)/F(x, y). Let H(x, y) _ 0'i (x, y) al, 0`2 E C [x, y], gcd(a1(x, y), o,2 (x, y)) = 1. (19) o2 (x+ y) , Set degy a1 = m, degy o2 = n. Define degy H(x, y) degy 0 *2 (x, y) . Consider the following simple procedure deg-comp: Input : H(x,y) = oi(x,y)lo2(x,y) procedure deg_comp(H(x, y)) compute
= degy of (x, y) +
D H(x, y) __ Q2 (x, y) Dyai (x, y) - ai (x, y)Dyo2 (x, y) D (x, y) = H(x, y) Qi (x, y) a2 (x, y) normalize D(x, y), i.e., remove the common factors in the numerator and the denominator of D(x, y). return degy D(x, y). Let d1 = deg_comp(F(x, y)), d2 = deg-comp(T(x, y)). We have d1 < 2m1 + 2n1 - 1, d2 < 2m2 + 2n2 - 1. Now suppose the inequality d2 < dl is imposed. This would imply m2 < p(ni - n2) + m1 (case 1). This also takes care of the case when there are common factors between the denominator and the numerator of DyF(x, y)/F(x, y), i.e., there are cases when m2 < p(nl - n2) + m1 but the original version is chosen (Example 4). In summary, a heuristic we would like to suggest is: For a given rational function F(x, y) E C(x, y), first apply a reduction algorithm to decompose F(x, y) into form (9). If the rational part R (x, y) is
210
zero, then choose the modified version to avoid the computation in (5) and (6). If R(x, y) is non zero and if dl < d2 then choose the modified version; otherwise, choose the original version. 3 Implementation This section describes a Maple implementation (in Maple V Release 6) of the algorithms discussed earlier. These functionalities are grouped together into a package dZeilberger: > eval(dZeilberger); module dZeilberger () export IsHyperexponential, HermiteReduce, Gosper, Zeilberger, dZ_verify; option package; description "Implementation of Gosper's algorithm and Zeilberger's algorithm for the differential case"; end module The exported local variables indicate the functions that are available. The main function of the package is Zeilberger. Its calling sequence is Zeilberger(F,x,y,Dx);or Zeilberger(F,x,y,Dx,'reduction'=true); or Zeilberger(F,x,y,Dx,'reduction'=false);
where F is a hyperexponential function in x and y, Dx is the differential operator on x. The output is a list of two elements [L, G] such that LF = DUG. When the input F is a rational function in x and y, if the first calling sequence is used, the heuristic algorithm (H) as described in Section 2 is invoked. For comparision purpose, the last two calling sequences are provided to give users the flexibility to invoke either the modified version (M) or the original version (0) directly. The routine dZ_verify with the calling sequence dZ_verify(F,pair, x,y,Dx); where pair is the computed [L, G] pair tests the result from Zeilberger. It returns true if LF = DUG, and false otherwise. Example 2 (completion of Example 1). > with(dZeilberger): > F := x"2/((x"3+y"3)*(1+y"3)); x2
F •(x3 + y3) (1 + y3)
> pair := Zeilberger(F,x,y,Dx); + 2x3 3 + s x2 xs - x2 + y3)2y y) + 3x2, 3 ( ( pair := [(x4 - x)Dx2 + (1 + 5x3)Dx ] x3
211
> dZ_verify(F,pair,x,y,Dx); true Example 3 Consider the rational function 8 y2 3x + 5x2+x + 5 -4xy2+4y2-xy-2x-4 F( x' y) - 8y (- 3xy^ ' 2+5x yy+ 5x2 ) + _ 5y^£ 3y2 + 4xy +2 .
Since d2 = 9, d1 = 21, Hermite reduction is performed. It takes the heuristic version (using Hermite reduction) 1.36 seconds to complete as opposed to 25.18 seconds when the original version is used (no Hermite reduction done) a Table 1 shows the degrees of the two polynomials in (6) and the size (number of equations, number of variables) of the system of linear equations to be solved (7) for each trial of the order of the differential operator.
Table 1. Comparision between the heuristic version and the original version. order 0
degree H 0 - 11,10)
size H 0 - (7,4)
1
- (5,4)
(6 , 6) (12,10)
2
- (5,4)
(9, 10) (17,16)
3
- (5,4)
(12 , 14) (22,22)
Example 4 Consider the rational function -2+5x+7y F(x,y) _ (7-7x+4y-8xy+2x2 +8y2)2 (7+8x-2y +3xy+6x2 -y2)2 We have m1 = 1, n1 = 8, m2 = 2, n2 = 4, and hence m2 < An, - n2) + m1, p E IN \ {O}. However the modified version is not chosen due to the "nice" structure of the input F(x, y), i.e., the common factors in the numerator and the denominator of DyF(x, y)/F(x, y) cancel out (d1 = 9, d2 = 11). It takes the heuristic method 2.65 seconds to complete as opposed to 285.96 seconds when the modified version is used (Hermite reduction done). Table 2 plays a similar role to that of Table 1, but for the heuristic version and the modified version. Example 5 In this example, we generated three sets of rational functions in x and y of the form F(x, y) = 0 Fii(x,y) F21(x,y) Oy F12(x,y) + F22(x,y) 'All the reported timings were obtained on 400Mhz, 1Gb RAM, SUN SPARC SOLARIS.
212 Table 2. Comparision between the heuristic version and the modified version. order 0 1 2 3
degree H M (5,4) (4,3) (4,3) (4,3) -
size H M (7,6) (11,11) (7,7) (15,16) (11,12) (19,21) (15,17)
Each set consists of 20 rational functions. Let deg F11 = m1, deg F12 = n1, deg F21 = m2, deg F22 = n2. Table 3 shows the total time and memory requirements for dZ to complete on each set. The modified version outperforms the original version which is not chosen in any of the examples when the heuristic algorithm is used.
Table 3. Comparison of time and memory requirements among three versions. Timing is in seconds. Memory usage is in bytes.
H 9.0
Timing M 8.4
0 72.9
H 42385224
Memory M 39594464
259655952
3
16.4
15.4
295.6
74061336
70221224
942078280
3
21.8
21.0
433.7
101376728
97885680
1391594416
ml 1
n1 2
m2 1
n2 4
2
3
2
4
3
4
Example 6 In this example, we generated two sets of rational functions in x and y of the form Fi1(x, y) F21 (X, y)al F22 (x, y)62
Each set consists of 20 rational functions. Let deg F11(x, y) = m1, deg F21 ( x, y) = n1 , deg F22 (x, y) = n2. In our experimentation, the value of m1 is 1 in the first set, and 2 in the second set . Table 4 shows the total time and memory requirements for dZ to complete on each set. Due to the "nice" structure of the input F(x, y), the original version outperforms the modified version.
213 Table 4. Comparison of time and memory requirements among three versions. Timing is in seconds . Memory usage is in bytes.
n1
1 2
61 2 1
n2 2 2
62 2 2
Timing H M 0 12.73 24.35 9.90 53.09 332.03 49.51
Memory H M 0 55773200 134242436 43200296 239909868 1449462384 218288716
4 Availability The Maple package dZeilberger is available and can be downloaded at the URL http:://daisy.uwaterloo . ca/-hgle/ code/dZeilberger.
Acknowledgements This work is supported in part by Natural Sciences and Engineering Research Council of Canada Grant No. CRD215442-98. The author is very grateful to Professor S.A. Abramov of the Computer Center of the Russian Academy of Science for his valuable suggestions and comments. He also would like to thank Professor K.O. Geddes of the University of Waterloo for his encouragement and support.
References 1. S.A. Abramov, H.Q. Le (2000): Applicability of Zeilberger's algorithm to rational functions. Proc. FPSAC'2000, Springer-Verlag LNCS, 91-102. 2. G. Almkvist, D. Zeilberger (1990): The method of differentiating under the integral sign . J. Symb. Comput. 10, 571-591. 3. M. Bronstein (1997): Symbolic Integration I. Transcendental functions. Algorithms and Computation in Mathematics, vol. 1, Springer-Verlag. 4. R. W. Gosper, Jr. (1977): Decision procedure for indefinite hypergeometric summation . Proc. Natl. Acad. Sci. USA 75, 40-42. 5. T.H. Koornwinder (1993): On Zeilberger's algorithm and its q-analogue. J. Comput. Appl. Math 48, 91-111. 6. H. Q. Le (2000): On the q-analogue of Zeilberger's algorithm to rational functions. Submitted to Programming and Comput. Software (Programmirovanie).
7. D. Zeilberger (1991): The method of creative telescoping. J. Symb. Comput. 11, 195-204.
A COMPUTER ALGEBRA APPROACH FOR SOLVING SINGULARLY PERTURBED INITIAL VALUE PROBLEMS R. KHANIN Department of Applied Mathematics and Theoretical Physics, Silver Street, University of Cambridge, Cambridge, CB3 9E W, UK E-mail: R.Khanin0damtp. cam. ac.uk Singular perturbation problems, also known as stiff, are not easily treated analytically or numerically, as the partition of the system on slow and fast subsystems in the vicinity of the singular point(s) is required. The most common analytical technique to study such problems is the method of matched asymptotic expansions which involves finding outer and inner solutions of the system and their matching. While this method is widely used in many areas, there is no general implementation of it in computer algebra. This paper discusses a computer algebra implementation (in Maple) of the formal algorithm proposed by Nipp9 for solving singularly perturbed initial value problems. A precise choice of scalings for an appropriate sequence of approximating systems is motivated by introducing a correspondence between a system of ordinary differential equations containing a small parameter e and a convex polyhedron.
1 Introduction There is a vast literature on singular perturbation methods both from the point of view of applications in different areas as well as the results concerning theoretical foundations (see for example the references6"10). At the same time, the literature on a systematic approach for solving a wider class of singular value problems is still scarce while many researchers are interested in treating such problems by constructive algorithms and methods. Thus, the modern Computer Algebra Systems (CAS) need capabilities for the analysis of such problems. One of the first attempts towards a general approach in this area has been made by Lagerstrom7. Later, Nipp9 developed an approach for solving a quite general type of singularly perturbed initial value problems. Nipp's algorithm combined both constructive and rigorous aspects including error estimates. For a class of singularly perturbed initial value problems wherein the righthand side are polynomials with respect to all variables, a correspondence between a system of ordinary differential equations containing a small parameter e and a convex polyhedron (a polyhedron algorithm) has been established. As singular perturbation techniques are applied to problems from different areas of science and engineering, The idea of implementing perturbation methods for solving ordinary and partial differential equations in Computer Algebra 214
215
is very attractive 4,5,10'11 In addition, there are numerous computer algebra implementations of perturbation techniques applied to particular problems in different areas of science and engineering. Despite the fact, that Nipp's paper provided a well defined algorithm for tackling a wide class of singular perturbation problems 20 years ago, analysis of these problems is still largely done on paper rather than in CAS. In this paper we consider mathematical and software developments needed for the effective analysis of singular perturbation initial value problems. Computer algebra implementation of the polyhedron algorithm is discussed together with the major difficulties arising with an automation of the singular perturbation solution procedure in modern CAS. 2 Basic Steps in Singular Perturbation Analysis Denote initial value problems (IVP) by P(y(x); e) = 0, where small parameter e << 1 represents nearly negligible physical influences. A regular perturbation problem P, (y,) = 0 depends on its small parameter a in such a way that its approximate solution yE (x) converges uniformly as e -+ 0 with respect to independent variable x in the relevant domain to the solution y(x) of the limiting problem PO (yo) = 0. A singular perturbation is said to occur whenever the regular perturbation limit yE (x) -+ yo (x) fails. Such a breakdown usually occurs in narrow intervals of space or short intervals of time. 2.1 Example To illustrate the singular perturbation solution procedure, let us consider a simple first-order linear initial value problemlo ex+x=1, x(0)=xo, O<e<<1.
(1)
We note here that the presence of a small parameter before the highest derivative(s) in the differential equation commonly signals the possibility of a singular perturbation problem. Eq. (1) is immediately integrated x(t) = 1 + (x(0) - 1)exp[t/e]. Provided x(0) # 1, x(t, e) has a discontinuous limit as a -+ 0: x(t; e) -4 {x(o) for t = 0, (2) 1, fort>0. The interval of nonuniform convergence is called an initial (or boundary) layer. The most common technique to deal with singular perturbation problems, the method of matched asymptotics expansion is based on solving the problem in
216 the inner region and outer region (t > 0) and then matching solutions on the edge using intermediate variable procedure . To deal with the singularity, new scalings of an independent variable (s) together with scalings of dependent variable are generally used in inner and outer regions (to the left and right of singularity). Introduction of new scalings in a boundary layer is not a straightforward task and intuitive trial-and-error approach rather than a constructive algorithm is more common . Quite often , authors of textbooks and scientific papers simply say " let us try these scalings" not bothering to mention how long it took them to find the right form for new variables . In a "toy" example (1), the stretched time in the inner region is easily determined : T = t/e (see the book by O'Malley10 for motivation ). For slightly more complex problems finding the appropriate scalings (and hence the sequence of approximating systems ) based simply on intuitive motivation is a difficult task. Description of the computer implementation of the formal algorithm for determining suitable shift scaling transformations9 is the main aim of this paper. The inner equation for Eq . ( 1) with the new scalings t = er, x = x is
di _
dT -(i - 1 ), i = x(0).
(3)
It has solution for all values of c x (T; e) = 1 + (x (0) -1) exp (- T) whose steady state is x ( oo; e) = 1 . An outer solution of eX + X = 1 has a smooth solution of X (t, e) = X°(t) = 1. The next important step in the singular perturbation solution procedure is to find whether the inner and outer solutions give the same result (i.e. match) in the transition region. In our example , the value of the function x as one comes out of the boundary layer (T -4 oo) is equal to the value of X as one goes into the boundary layer (t -> 0): limT^^x (T; e) = limt,oX(t, e). The importance of matching cannot be overemphasised . Numerous assumptions usually go into the derivation of inner and outer expansions, and matching is one of the essential steps that supports these assumptions. If solutions do not match , it is necessary either to insert new scalings , or if this it not possible , to go back and determine where an incorrect assumption was made. The matching (commonly done using intermediate variables technique) is a subtle procedures'7 and therefore is not easy to automate. The author is now working on developing Maple tools to ease the application of the intermediate variables procedure and construction of the composite expansion. In this paper , however , we will concentrate on the algorithm for finding the appropriate scalings in the vicinity of singularity.
217 3 Polyhedron Algorithm Let us present here an overview of the formal polyhedron algorithm 9 applied to a class of initial value singularly perturbed systems of ODEs. The ideas are demonstrated on a system of two scalar equations where the right-hand sides are polynomials with respect to all variables: dt > cijketxi yk x(O; e) = x0 i,j,k>O
=
dijketxl yk
y(0; e) = yo (4)
i,j,k>O
dt
A formal approximation to the IVP on interval J = [0, T] is chain of approximating systems such that the first one satisfies the initial conditions, each of the subsequent ones matches with its preceding one, and the last one has a singularity (greater than T). The motivation for precise choice of scalings is done by introducing a correspondence between a system of ODEs containing a small parameter a and a convex polyhedron.
If Eq. (4) is subject to the scaling transformation x = eax , y = eby' t = edt (5) and equations are multiplied by Cl and a-m respectively, we obtain a system of the form eL(a,b , d,l,m)dx = [^ CijkeLiib ( a,b,d,l,m)ijyk dt i,jj,kk>O M(a,b,d,1,m) dt = dijkE`11"b(a,b,d'l'm)yjyk (6) i,j,k>O
In order for the formal limit to exist as e -* 0 the linear functions with integer coefficients L, Lijk, M, Mijk have to be nonnegative:
L(a, b, d, 1, m) > 0, Lijk (a, b, d, 1, m) > 0 M(a, b, d,1, m) > 0, Mijk (a, b, d,1, m) > 0 (7) These linear inequality constraints define a convex polyhedron P in R5. There is a unique correspondence between the points of P and Eq. (6) with nonnegative L, Lijk, M, Mijk. The original Eq. (4) corresponds to the origin in R5. Let us define a principal system (PS) as a system corresponding to a vertex of P and a principal approximating system (PAS) as an approximating system obtained from a principal system by putting E = 0.
Given the correspondence between polyhedrons and Eq. (6) a formal approximation can now be constructed. Denote by X, (ti), Y1 (ti) the solution
218
of the first PAS. In general , this solution will have a singularity, S1 . Define J Sj , if Sl < +oo Tl l 0 , if Sj = +oo
X* X1 , if X1 < +oo (8) 1 l 0 if Xi = oo
where Xl = X1(S+) - Y1* is defined similarly. For all steps i > 1, new local variables are introduced by means of the shift transformation into the singularity: xi_i =
Xi 1
+
u i-1 ,
Yi-i =
Y
i* 1 + vi_i
,
ti-1 =
T* 1 + si-1 • (9)
After scaling transformation (u2_1 = eaxi, vi-1 = eb yi, si_ i = ecti) is applied to the principal system (PSi_1) at step i, a set of vertices adjacent to zero, Vi, is sought. The precise set of scalings Vil is a subset of Vi. It must satisfy the following conditions (at step i = 1 no extra conditions are imposed): a = A2_1d, if Ai-1 $ 0,
b = Bi_1d, if B2_1 # 0 (10)
Here A2_1 is the asymptotic exponent of U_1 ( si_1 i e) = -X'_ 1 +Xi_1(T* 1 + sZ_1 i e) as si_i -* 0- (if Si 1 < oo) or si_1 -+ oo (if S 1 = +oo). Similarly for B2_1 of VZ_1(s2_1,e). In addition, d _ < 0, if Si 1 is infinite a 0, if Xi 1 is infinite (11) - { > 0, if Si 1 is finite - { > 0, if X2 1 is finite Factor b is found similarly. For the case when there is no vertex of Pi adjacent to 0 satisfying the above conditions (i.e. Vil = 0), error estimates, motivation, as well as the construction of the fifteen approximations to the BelousovZhabotinsky equations see the paper by Nipp9. 4 Computer Implementation A set of Maple procedures implementing the method of matched asymptotic expansion wherein the scalings are sought using polyhedron algorithm is developed by the author. Computationally, the procedure for finding the appropriate scalings reduces to the Linear Programming problem of finding polyhedron vertices which are adjacent to zero (see for example the references1'2). We chose an algorithm which is based on Simplex methods. The Simplex method is designed for a classical Linear Programming problem wherein all variables are nonnegative. Therefore, the first step in our approach is to transfer the system of inequalities (7) to a classical problem of Linear Programming by introducing q new nonnegative variables a1, • • • , aq instead of the original unrestricted in sign variables. The algorithm for finding adjacent vertices' has
219
been implemented in the Maple procedure FindAdjacentVertices [] using the standard simplex package. Once all the adjacent vertices are found, the precise set of scalings has to be chosen. As the main idea for doing re-scaling near singularity is to retain a maximum number of terms, while having the best possible matching, the slowest time-scale is to be chosen. The scalings should also satisfy conditions (10) which involve asymptotic exponents. Therefore, asymptotic expansions of solutions are sought using either standard Maple procedures series, asympt or a general procedure gdev to perform asymptotic expansions12). Although gdev is much more powerful than built-in Maple capabilities, nontrivial changes of variables are sometimes needed together with a trial-anderror approach to obtain the result in an explicit form. Therefore, it does not seem possible to completely automate the procedure of finding asymptotic exponents. Quite often, however, more than one set of scalings satisfies the necessary conditions (10). In this case user should make the correct choice using either intuitive or physical motivation, or alternatively trial-and-error approach. In other cases, none of the vertices can satisfy the required conditions and a search for a hidden vertex should be done (details and examples are in the paper by Nipp9). To summarise, computer algebra approach to finding appropriate scalings in singular perturbation analysis involves solving linear programming problems, performing asymptotics, and allocating singularities. In many cases, the polyhedron algorithm either yields a precise answer or substantially narrows the search domain. In other cases, a search for hidden vertices of polyhedron is needed. Computer automation of the procedure of finding the right scalings looks plausible as human interaction will be needed. Therefore, a set of tools rather than an automated package will be developed to ease the task of performing the singular perturbation analysis. To demonstrate the polyhedron algorithm in action let us consider two simple examples. Here we only concentrate on finding the appropriate scalings rather than on a complete analysis.
5 Examples 5.1 Scalar relaxation oscillator The simple scalar equationlo 1 EX = x - 3x3 t , x(0) = xo >
(12)
possesses the characteristics of a relaxation oscillation. The analysis below
22 0 demonstrates the difficulties in doing the singular perturbation analysis using a modern CAS (in this case Maple). It is easy to see that this problem indeed has a singularity at t = 0: setting e = 0 yields restrictions on initial value xo: xo - 1/3x0 = 0. Inner region. Let us apply the polyhedron algorithm to show that an initial layer is indeed of thickness O(e) in time. In this case, of course, it is clear. The following Maple code applies the scaling transformation x = eaxi, t = ebtl to Eq. (12) (denoted by odeset), multiplies it by e-l, finds the conditions on exponents defining the polyhedron, eventually yielding two vertices adjacent to zero:
psi : = epstransform(odeset, [xi(ti)], ti, [x(t)], t); psi
: =g(-1+1-b+a) i1xl(tl) -E(-l+b)x1(tl)+ 3e'(-1+3a)x1(t1)3
+
e(-l+b)tl
=
0
(13)
ineqs : = Createlnequalities(psi); ineqs :=[0<-1+1-b+a , 0<-1+a,0<-1+3a ,0<-l+b] (14) vertices : = FindAdjacentVertices(ineqs, [b, a, 1]); vertices : = {b = -,a= 3, l = 3 }, {b = 1, a = 0, l = 0}] (15) The second vertex (with the corresponding system of full order) has to be chosen yielding the new scalings t = eti and x = x1 and the resulting approximating system: 8
[ - xi(ti) psi :=
1
1
- x1( 1) + 3 x1( 1)3
+etl
=
01.
(16)
Solution of the zero-th order e equation is found using dsolve: soli := 1/xi[0](ti)2 = 1/3+exp(-2t1)_Cl (17) where the unknown constant _C1 is to be determined from initial condition. Outer region . Outer equations are found by setting E = 0 in Eq. (12): PertEqs := createpertegs ([lhs(op(1, odeset))], x, t, `x2`, t, t = t)
orderO :3x2[0](12)3 - x2[0](t2) + t2 = 0 orderl
:
x2[0](12)2 x2[1](t2)
- x2[1](12) +
(^ 22 x2[0](12))
= 0 (18)
A real solution for the zero-th order equation is
x2[0] : = map( simplify , [solve (PertEgs[1][1],x2[01(t2))]);
221
x2[0].- 1 (-12t2+4 -4+9t2)2/3+4 (19) 2 (-12t2+4 -4+9t2)'/3 As the formula for x2 [0] holds true only for t2 > 2/3, there is a need for a transition layer. The first order e perturbation equation leads to the same conclusion: there is a singularity at t2 = 2/3, X2[0]* = 1. Finding series expansion of x2 [0] at t2 = 2/3 using series command yields an asymptotic exponent A = 1/2. Transitional layer . The shift transformation x2(12 ) = u3 (83) + 1;t2 = 33 + 2/3; (20) is first applied to an original Eq. (12). A set of potential scalings is sought in a usual way x2 = ea u3, t3 = eb s3 yielding a set of two scalings:
vertices := [{a = 3, b = 3, l = 3 }, {a = 0, b = 1, l = 1}] (21) The first vertex p satisfies condition (10) with A = 1/2 (a = Ab) resulting in the following principal equation: p83 : = subs (p, outerset3); ps3: _
[a 33 x3(t3)+ 361/3x3( t3)3 +x3 (13)2+t3]
(22)
The approximating zero-th order a equation is of Ricatti type pertegs3 := [a s x3[0](13) + x3[0](13)2 + t3 = 0]
(23)
and can be solved directly in Maple. However, to perform a further asymptotic analysis it would be helpful to obtain an answer in a slightly different form. The following substitution x3[0] = w(z)(t3)/w(z), z = t3 results in Airy equation w" + zw(z) = 0 which is also directly solved by Maple yielding result in Bessel functions. Matching of transitional solution with an outer solution on one side, and with an inner solution on the other, provides unknown constants. These procedures are not fully implemented in Maple, and still require some reasoning from the user.
5.2 Belousov- Zhabotinskii reaction Let us briefly consider the first approximating system in a formal approximation for the following well- known model of chemical reaction:
odeset at x(t) - x(t) - y(t) + x(t) y(t) + e3 q x(t)2 = 0, at y(t) - c (-y(t) - x (t) y(t) + f Z(t)) = 0, at Z(
t) - p (x(t) - Z(t)) = 0]
222 Function epstrans applies the scaling transformation x(t) = Ea x l(tl),
y(t) = El y,(t l),
Z(t) = ECZ1
(t l),
t = Edtl
resulting in epstranseqs := [E(1 +n-d-1)
x1(t1) -
at +6 (a+b-1)
x l (t1) Y l (t 1) +
E(3
(a -1)
x l(t1)
- '- (b -1) yi 41)
+2 a-1) q xl (tl )2 = 0,
+ E(1+a+b-m) E(b-d-m) a 11 y1(t1) + E(1+b-m) y1(t1) x1(tl) yl (tl ) - 6(1+C-m) f zl (t1) = 0,
E(C-d-n) a ll zl (tl) - pE(a-n) xl (tl) - pe(C-n) zl (tl) = 0]
Function FindAdjacentVertices() results in the following 4 vertices adjacent to zero: (1)
a -1
b 0
c -1
d 0
1 -1
m 0
n -1
(2) (3) (4)
0 0 0
0 0 0
1 -1 0
1 0 -1
0 0 0
-1 0 1
0 -1 0
(24)
The vertex with the slowest time-scale vertexl := [a = 0, b = 0, c = 0, d =
-1, 1 = 0, m = 1, n = 0] is chosen with the corresponding principal system: [E2
atl
xl(t1) - xl(tl) -
Y, (t1) +
x l(tl) y l( tl)
+ E3 q xl(tl)2 = 0,
at yl(tl) + y l( t l) + x1 (4)yl(t1) - f zl(tl) = 0, E
atl
zl(t1) - p X 1 (ti) - p zl(tl) = 0]
6 Summary Analytical study of singular perturbation problems involves several macrosteps. These steps include: identifying singularities, finding appropriate scalings in the vicinity of singularity, solving the resulting perturbation equations, matching with the preceding approximations (or with initial conditions for the first approximation), and starting all over again until the approximation of solution on an interval of interest is found. Some of these steps have constructive algorithms, others perform qualitative analysis which is still missing from
223
Computer Algebra Systems. Therefore, automation of a solution procedure of the singular perturbation problems is a very challenging task. This paper considered the present state of the author's work on computer implementation of an algorithm for finding the appropriate new scalings of the system in the vicinity of a singularity. The paper demonstrates the progress as well as difficulties for the computer implementation of singular perturbation analysis. Acknowledgements Raya Khanin is Royal Society Dorothy Hodgkin Fellow. References
1. W. Altherr, Computing 15, 181 (1975). 2. G.B. Dantzig, Linear Programming and Extensions, Princeton University Press (1963). 3. J. Grasman, Asymptotic Methods for Relaxation Oscillators and Applications, Applied Mathematical Series 63, Springer-Verlag, New York. 4. S. Kauffman, http://www.ifm.ethz.ch/ kaufmann/news.html. 5. J.P. Keener, Principles of Applied Mathematics, Addison-Wesley, Reading, MA (1988). 6. J. Kevorkian and J.D. Cole, Perturbation Methods in Applied Mathematics, Applied Mathematical Sciences 34, Springer-Verlag, New York (1981).
7. P.A. Lagerstrom and Casten, SIAM Rev. 14 (1972). 8. K.G. Murty, Linear Programming, John Willey & Sons, Inc. (1983). 9. K. Nipp, in Dynamics Reported 1 173, John Wiley & Sons, Inc. (1980). 10. R.E. O'Malley, Singular Perturbation Methods for Ordinary Differential Equations, Applied Mathematical Sciences 89, Springer-Verlag, New York. 11. R.H. Rand and D. Armbuster, Perturbation Methods, Bifurcation Theory, and Computer Algebra, Springer-Verlag, New York (1987).
12. B. Salvy and J. Shackell, J. Symbolic Computation 27, 543 (1999).
TRAVELLING WAVE SOLUTIONS TO THE TWO-DIMENSIONAL DISSIPATIVE-DISPERSIVE NONLINEAR SYSTEM WITH MAPLE ZHI-BIN LI Department of Computer Science, East China Normal University, Shanghai 200062, China E-mail: lizb Ocs. ecnu . edu. cn An algorithm allowing one to find exact solutions of nonlinear non-integrable equations by means of unknown function transformation is presented . With the aid of computer algebra system Maple the explicit travelling wave solutions are obtained for the system of nonlinear equations (ut + auux + bu,nx + cunx ) x + duyy = 0 (m, n: positive integers , a 0 0) in physically interesting but non- integrable cases.
1 Introduction Integrable systems, both classical and quantum mechanics, are a fascinating subject. Decades of research in this area have led to mathematical developments which are quite beautiful. However, not all systems posed in physics are integrable, for instance, the Korteweg-de Vries-Burgers (KdV-Burgers), Kuramoto -Sivashinsky (KS) and fifth-order dispersive Korteveg-de Vries (fifthorder KdV) equations. Therefore the direct methods to solve nonlinear systems appear to be more powerful and important. In this paper, we propose a direct method to obtain exact travelling wave solutions of a system of general two dimensional (2D for short) wave equations (ut + auux + bumx + cunx ) x + duyy = 0
(1)
where u,,,x := Omu/8xm, unx := 8nu/8xn, m, n are integers (m < n) and a, b, c, and d are constants (a 54 0). The Eq. (1) includes both integrable partial differential equations (the 2D Burgers and 2D KdV equations) and non-integrable partial differential equations such as 2D KdV-Burgers, 2D KS and 2D fifth-order KdV equations. In the case that m = 2 and n = 3, Eq. (1) is two dimensional generalization of KdV-Burgers equation served as a nonlinear wave model of fluid in an elastic tuber and turbulence2. An analytic solution of that is constructed by introducing a transformation3 u = q [log(f )]xx + p [log(f)]x
(2)
which is the linear combination of the Hirota's transformation and the ColeHopf transformation. By analyzing an ordinary differential equation, which
224
225
involves complex mathematical techniques, the same solution is also obtained by Mao. In the purely dissipative case (m = 2, n = 4), Eq. (1) reduces to two dimensional case of the Kuramoto-Sivashinsky equation describing a variety of phenomena such as chemical reactions, flame propagations and waves in viscous fluids. In the purely dispersive case (m = 3, n = 5), Eq. (1) is just the fifth order Kadomtsev-Petviashvilli equation, two dimensional generalization of fifth order KdV equation derived from full water wave equations with surface tension6. 2 Algorithm In order to search for travelling wave solutions of Eq. (1), we construct a transformation for arbitrary m and n in Eq. (1):
u = r + q [log(f)](n-1)x +p [log(f)1(m-1)x (3) which is the generalization of transformation (2), where p, q and r are constants to be determined. Transformation (3), which can be seen as the extended Cole-Hopf transformation, reduces Eq. (1) to a homogeneous equation in f and its various derivatives. For the homogeneous equation we can expect to seek for solutions of exponential function. Suppose f = 1 + exp(z),
z = kx + ly - wt + zo (4)
where k, 1 (the wave numbers in the x and y direction, respectively, k # 0) and w (the frequency) are constants to be determined, and zo is an arbitrary constant. Substituting the expression (4) into the homogeneous equation, we find that it is a solution of homogeneous equation, provided p, q, r, k, 1 and w satisfy some algebraic equations. Solving the algebraic equations using the Grobner basis method will give the travelling wave solution of Eq. (1). The algorithm above is tedious for human computation, but it is ideally suited to a computer algebraic system such as Maple. Now we give a simple Maple program to implement the algorithm. >Paras:=proc (m,n) local f, u,e,v,si , s2,s3,s4 , s5,s6,s7; >f:=1+exp (k*x+l*y-w*t+z0): >u:=r+q*diff(ln(f),x$(n-1))+p*diff(ln(f),x $(m-1)): >e:=diff (diff(u,t)+a*u*diff(u,x)+b*diff( u,x$m)+c *diff (u,x$n),x) +d*diff(u,y$2): >v:={p,q,r,k}: #choosing p,q,r,k as unknowns, l,w as free parameters >with( grobner): #loading the Grobner basis package
226 >sl:=subs ( exp(k*x+l*y-w* t+z0)=z,e): #substituting exp(k*x+l *y-w*t+zO)=z in e >s2:=numer(s1): #selecting the numerator of rational expression si >s3:=collect( s2,z): #bring s2 into polynomial in the indeterminate z >s4:=coeffs ( s3,z): #list all coefficients of power z in s3 >s5:=gbasis ({s4},v,plex,'Y'): #computing the minimal Grobner basis of s4 >s6:=convert ( s5,'set'): #converting the list s5 into a set >s7:=map ( s->s=0,s6): #expressing the pure polynomials s6 as equations >s8:=solve (s7,v): #solve and list parameters v in the equations s7 >end: 3 Examples Below we shall study some examples of various non-integrable wave equations to illustrate our method in details. 3.1 The 2D KdV-Burgers equation The KdV-Burgers equation, quoted as the most simple nonlinear dissipative and dispersive system, models fluid turbulence. In two dimensional case it is written as
(ut + auux + buy, + cuxxx)x + duyy = 0. (5) We use our method to look for travelling waves of Eq. (5). With the above procedure definition of Paras, it takes 12.7 seconds on PC with Maple V4.0 to compute the Paras(2,3). The unknown parameters p, q, r, k (1, w are chosed as free parameters) are found to be: {p=p, q=q, r=r, k=0},
{p=0, q=0, r=r, k=k}, (6) 5cw 662 _ 25c2dd2 _ 12c 126 k = T--L}. 5C 25ac abr ab ' {p - a , q = 5a , r From (3),(4) and (6), we obtain two exact non-trivial solutions of Eq. (5)
227
as follows: 6b2 uKdV-B (x^ y, t) _
25c2d12 5cw
3b2 2 Z z [sech (2) 2 tanh(2) 2]
ab + 25ac
25ac ab 2
(7)
where z = { S-x + ly - wt + z0, and 1, w are constants. When w = (-6b4 ± 625c3d12)/(125bc2), the solutions (7) was found by author3, which consist of a shock wave solution of the 2D Burgers equation and a soliton solution of the 2D KdV equation. 3.2 The 2D KS equation The KS equation is independently advocated by Kuramoto, in connection with reaction-diffusion systems, and by Sivashinsky, modelling flame propagation. In two dimensional case, it reads (ut + auux + buxx + cuxxxx ) x + du,, = 0. (8) Applying the same program as before, we arrive at Paras(2,4) = {p=p, q=q, r=r, k=0}, {p=0, q=0, r=r, k=k}, = 60b = 60c {p - 19a q a r
60b {p - 19a'
- 60c q - a
r =
30b b 19a 19c
w ^ 19c 19cd12 _ b (9) k - 19c } a V -° + ab
w /19c 19cdd2 30b /llb 19a 19c a V lib 11ab I
llb k=T 19c}
CPU-time = 11.8 seconds Hence four exact non-trivial solutions of 2D KS Eq. (8) read: z 15ck3 3 ( Z 30bk 15ck3 w dl2 19a - a )tanh( 2 )+ a tanh (2) (10) uxs(x,y, t) ak k2+ where z = kx + ly - wt + zo with 1, w arbitrary constants, and k satisfies k
2
_ b 19c or
2 11b 11 k = 19c* ( )
The solutions (10) represent a propagating shock. If we choose w = 3069 2 and d = 0 in (10), we see that KS equation, i.e. Eq. (8) with d = 0, admits the following solutions:
30bk
z
15ck3
z
z
u(x,t) = 19a [1+tanh(2)] - a tanh(2)sech2(2) (12) with z = k(x- 3JJk t)+zo, which are obtained by means of a different method7.
228
3.3 The 2D fifth-order KdV equation The so-called fifth-order KdV equation is obtained recently by Hunter6 from full water wave equation with surface tension. Equation
(ut + auux + buxxx + cuyyxxy )y + duyy = 0
(13)
is an extension of the fifth-order KdV equation for the two dimensional case just as in the relationship between the KdV equation and the KP equation. Repeating the same program as before we get the following results: Paras(3, 5) = {p=p, q=q, r=r, k=0},
{p=0, q=0, 2806 {p = 13a ,
r=r,
(14)
k=k},
280c 3662 13cdd2 w 13c q = a r = - 169ac + ab T a b ,
k - ::F 13c }
CPU-time = 19.8 seconds As in previous cases, we have two free parameters l and w. From (3),(4) and (14) we obtain two non-trivial travelling wave solution of Eq. (13): w d12 69bk2 210bk2 2 z 105bk2 4 z tank ( )+ tank ( ) (15) U5KdV (X, y, t) = - + 13a 2 13a 2 ak ak2 13a where z = kx + ly - wt + zo with 1, w arbitrary constants, and k satisfies
k2
13c
(16)
If we choose w = - 36b3k3 and d = 0, we see that the solitary wave solution found by Huang' is recovered from (15) and (16): 36b2 b 105b2 u(x,t)
169acsech4[ -52c(x+
169ct)+z0]. (17)
References 1. J. Canosa and J. Gazdag, J. Comput. Phys. 23, 393 (1977). 2. G. Gao, Science in China A5, 457 (1985) (in Chinese).
3. Z. Li and M. Wang, J. Phys. A: Math. Gen. 26, 6027 (1993). 4. W. Ma, J. Phys. A: Math. Gen. 26, L17 (1993). 5. Y. Kuramoto, Chemicl Oscillations, Waves and Turbulence, Springer, Berlin (1984).
6. J.K. Hunter and J. Scheurle, Physica D 32, 253 (1988). 7. N. Kazuhiro, J. Phys. Soc. Japan 56, 3025 (1987). 8. G. Huang, S. Luo and X. Dai, Phys. Lett. A 139 , 373 (1989).
DETERMINANT FORMULAS FOR INHOMOGENEOUS LINEAR DIFFERENTIAL, DIFFERENCE AND Q-DIFFERENCE EQUATIONS ZIMING LI Mathematics-Mechanization Research Center, Institute of Systems Science, Academy of Mathematics and Systems Science, Academia Sinica, Beijing 100080, China E-mail: zmli@mrc . iss . ac . cn This paper describes the gap-structure of subresultants in an Ore polynomial module, and the geometric explanation of isolated subresultants , which are peculiar to inhomogenous equations . As an application of the gap-structure, we present three determinant formulas extending the determinant formulas for the greatest common right divisor (gcrd ), least common left multiple (ldm), and Sylvester's resultant of two elements in an Ore polynomial ring.
1 Introduction Determinant formulas are useful in usual commutative polynomial algebras. Well-known examples are the Sylvester resultant and subresultants of two univariate polynomials$'3'4. Besides their theoretical interests, these determinant formulas are also useful in algorithmic aspects. For example, univariate subresultants describe the coefficient growth of polynomial remainder sequences of two polynomials, and the Sylvester resultants help us to prove that there are only a finite number of unlucky primes in modular gcd-algorithms. Ore polynomial rings12'2 establish a general setting for linear homogeneous differential, difference and q-difference polynomials. A subresultant theory for Ore polynomials7'9 is developed to manipulate Ore polynomials. The subresultant algorithm and determinant formulas for gcrd's, lclm's and resultants are useful to design efficient modular gcrd-algorithms, fraction-free lclm-algorithms, and to estimate the complexity of these algorithms. Ore polynomial modules extend Ore polynomial rings to describe linear inhomogeneous differential, difference and q-difference polynomials in one framework8, in which the gap-structure of subresultants in an Ore polynomial module is given as a corollary of the subresultant theorem. But the proof of the subresultant theorem is very technical because we need to find precise recursive relations among leading coefficients of non-zero subresultants, whereas, the gap-structure has nothing to do with these complicated formulas. To reveal the simplicity of the gap-structure, we give a direct proof. It is worthwhile because the gap-structure has many interesting applications. We wish that 229
230 the direct proof would split the subresultant theory8 into two parts: a simple part describing the gap-structure of a subresultant chain; and a technical part calculating the linear dependence among subresultants precisely. Becasue of the presence of inhomogeneous components, the gap-structure of the subresultant chain of two elements in an Ore polynomial module may contain an isolated suresultant, which is defective and is linear independent with any regular subresultant. The presence of isolated subresultants is due to the fact that the solution space of an inhomogeneous linear operational equation is no logner a vector space (see Corollary 5.4). We also generalize the notion of gcrd's, lclm's and resultants in Ore polynomial rings to Ore polynomial modules. The major difficulty for the generalization is that an Ore submodule may not be generated by one element. Recall that a left ideal of an Ore polynomial ring is always principal. We find that a right replacement of a gcrd of two elements in an Ore polynomial module is their last nonzero subresultant (see Propositions 5.1 and 5.3). The paper is organized as follows. Section 2 recalls the definition of Ore polynomial modules. Section 3 defines subresultants in an Ore polynomial module. Section 4 is devoted to describing the gap-structure of a subresultant chain. Section 5 presents some applications of the gap-structure. 2 Ore Polynomial Modules In this section we recall the definition of Ore polynomial modules. Because of the limit of space, the proofs of assertions made in the section are omitted. These proofs are all quite easy. The reader is refered to the author's doctoral thesis8 for details. Throughout the paper, let F be a commutative field and F[X] an Ore polynomial ring with conjugate operator v and pseudo-derivation 5. Consider the left linear space F[X] ®F over F. We define the degree of an element A ® a of F[X] ® F to be the degree of A if A is nonzero. For nonzero a E F, the degree of 0 ® a is set to be -1. The element 0 ® 0 is of degree -oo and denoted by 0 for brevity. An element A ® a of F[X] ® F is understood as A®a=a„.Xm+•••+a1X+aoXo+aX-1, where m = deg A ® a and the a's are in F.
Definition 2.1 An endomorphism O of the additive group F[X] ® F is said to be an Ore operator on F[X] ® F if the following hold: 1. O(Xn) = X'n+l, for n E N.
2. For every a E F, deg O(aX-1) < -1.
231
3. (Multiplicative rule) For every r E F and A 0 a E F[X] 0 F, 0(r(A O a)) = o,(r)0(A 0 a) + d(r)(A (D a). (1) The quadruple (F[X] (D F, 0, or, 6) is called an Ore polynomial module. Example 2 .2 Let F be C(t) and D = dt. Define the operator 0 on F[X]OF to be such that 0(rX") = rX"`+1 +D(r)X"and0(rX-1) = D(r)X-1, for all r E F and n E N. The F-module (F[X] 0 F, 0, 1, D) models the C(t)-linear differential space consisting of inhomogeneous linear differential equations in one unknown. Example 2.3 Let F be Q(t) and E be the shift operator on F sending t = t + 1. Define the Ore operator 0 on F[X] 0 F to be such that 0(rXn) = E(r)X"+1 and 0(rX-1) = E(r)X'1, for all r E F and n E N. (F[X] 0 F, O, E, 0) models the Q(t) -module of inhomogeneous shift equations in one unknown. In the rest of this paper, (F[X] (D F, 0, a, J) is assumed to be an Ore polynomial module and simply denoted by F[X] 0 F. If a submodule M of F[X] 0 F has the property that 0(M) C M, then M is called an Ore submodule. If N is a subset of F[X] 0 F, then the multiplicative rule (1) implies that the smallest Ore submodule containing N is the submodule [N] generated by all the elements of 0(N), which we call the 0-submodule generated by N. Two elements A and B of F[X] 0 F are said to be compatible if [A, B] does not contain any element of degree -1. Let A and B be in F[X] 0 F, with respective degrees m and n, where n > 0. A remainder of A and B is defined to be either A, if m < n; or C E F[X] 0 F such that deg C < deg B and A = Ea- on ri0'B + C, where ri belongs to F, for i = 0, 1, ..., m - n . The remainder just defined can be computed by a process analogous to the algebraic division. As deg(O'+1B) = deg(O'B) + 1, for all i E N, the remainder of A and B is unique. We denote the remainder of A and B by rem(A, B). For A and B in F[X] 0 F, define that A and B are similar if either both A and B are zero or A and B are nonzero and linearly dependent over F. The similarity is an equivalence relation and denoted by -. For Al i A2 E F[X] O F with deg(A1) > deg(A2) > 0, let A1, A2, ..., Ak be a sequence of nonzero elements of F[X] 0 F such that Ai - rem(Ai_2, Ai_1), for i = 3, ... k, and either deg(Ak) = -1 or rem(Ak_1, Ak) = 0. Such a sequence is called a polynomial remainder sequence (p.r.s.) of Al and A2. Just as in the algebraic case , Al and A2 are compatible if and only if deg(Ak) > 0. Because of the
232
existence of the Euclidean algorithm , an Ore submodule not containing any element of degree - 1 can always be generated by one element. Hence , [A1, A2] is generated by one element if and only if Al and A2 is compatible, and [A1] fl [A2] is always generated by one element. 3 Subresultants In this section , we define the subresultants of elements in an Ore polynomial module . Since an element of F[X]® F may have an inhomogeneous component we need to extend the notion of determinant polynomials1o,11
Definition 3.1 Let M be an r x c matrix with entries in F. If r < c, then the extended determinant polynomial of M is defined to be c-r-1
[.MJ = det(Mi)X2, (2) where Mi is the r x r matrix whose first (r - 1) columns are the first (r - 1) columns of M and whose last column is the (c - i - 1)th column of M, for i=-1, O, ..., c-r-1. The extended determinant polynomial of M just defined is the determinant polynomial of M "multiplied" by X` from the right-hand side. Note that LM] is (left) multi-linear and alternative w.r.t. its rows. Let A : A1, &..., An be a sequence in F[X] ® F. We denote by deg A the maximum of the degrees of the members in A. Let deg A = n > -1. The matrix associated with A is defined to be the m x (n + 2) matrix whose entry in the ith row and jth column is the coefficient of Xn+l-j in Ai, for i = 1, .... m, and j = 1, ... , n + 2. This matrix is denoted by mat (A). If m < n + 2, then the extended determinant polynomial of A is defined to be [mat(A)j, which is simply denoted by [AJ. Remark 3 .2 Notice that RAJ = Ek 1 rkAk, where rk E F. If RAJ is nonzero, then A1, ..., Ak are F-linearly independent. The proof is not difcult8 . Definition 3.3 Let A and B be in F[X] ® F with respective degrees m and n, where m > n > 0. For n - 1 > i > -1, the jth subresultant of A and B is defined to be
sresj (A, B) = [On-'-'A, ... , OA, A, O"`-j-1B, ..., OB, B1], n-.9
m-J
The nth subresultant of A and B is defined to be B. The sequence S(A, B) A, B, sresn_1(A, B), ... , sres_1(A, B) is called the subresultant sequence of
233
A and B. The next lemmas ,' records some properties of subresultants. Lemma 3 .1 If A and B are in F[X] ® F with respective degrees m and n, where m > n > 0, then 1. sresj (A, B) E [A, B], where n - 1 > j > -1; 2. deg(sresj (A, B)) < j, where n - 1 > j > -1; 3. sresn_1(A, B) - rem(A, B). 4 Gap-Structure of a Subresultant Sequence Notation To avoid endlessly repeating the same assumptions, in the rest of the paper we let A and B be in F[X] ® F, with respective degrees m and n, where m > n > 0. Let S,, be B and Si be sresj (A, B), for j = n - 1, n - 2, ... , -1. The subresultant sequence S(A, B) consists of Sn+1 = A, Sn = B, Sn_1i ..., So, S-1.
The proof of the following lemma is the same as that of Lemmas 4.2 in the paper7 by the author.
Lemma 4.1 If B - H and Sn_1(A, B) - G, then, for n - 1 > j S; ,,, LOm-?-1H,... , H, On-i-1G,... , GJ. (3) If deg S; = j, then S; is regular. Otherwise S; is defective. In particular, the nth subresultant Sn is always regular. The next theorem is the main result. Theorem 4.2 If S,+1 is regular and S3 has degree r, for some j with n -1 > j > 0, then the following hold:
1. If r < -1, then (j-1>i>-1).
(4)
(j-1>i>r+1),
(5)
Sr- Si,
(6)
Sr-1 -rem(SS+1,SS).
(7)
Si=0,
2. If r > 0, then Si=O,
an d
234 Proof We proceed by induction on n, the degree of S. If n = 0, then S_1 - rem(S1, So) by Lemma 3.1. The theorem is true since i can only be -1. Suppose that the theorem holds if deg B < n. Consider the case deg B = n. Since Sn_1 - rem(Sn+i, Sn) by Lemma 3.1, Lemma 4.1 implies that, for all i with n - 1 > i > -1,
Si ,,, where
Ri
=
R,,
(8)
LQ"i -1-iSn, ... , Sn, On-l- isn_1, ... , OSn_1, Sn_11 .
There are two cases. First, j = n - 1. If r < -1, then the degrees of both OSn_1 and Sn_1 are of degree -1. It follows from (8) that Si = 0 for n - 2 > i > -1. Equation (4) holds for j = n - 1. Assume now that r > -1. If n - 2 > i > r + 1, then deg Sn > 1 + deg On-1-iSn_1. Thus, Si = 0 by (8). If i = r, then deg Sn = 1 + deg On-1-2Sn_1. Thus, Rr - Sn_1, so that Sr - Sn_1 by (8). If i = r - 1 then deg Sn = deg On-1-iSn_1. Hence, Ri sresr_1 (Sn, Sn_1), so Si - sresr_1 (Sn, Sn_1) by (8) and Si - rem(B, Sn_1) by Lemma 3.1. The theorem holds for j = n - 1. It remains to consider the case j < n - 1. Actually, j < r since Sr is the regular subresultant next to Sn. Equation (8) and the fact Sn_1 - Sr just proved in the last paragraph imply that Si - sresi (Sn, Sr), for i = r - 1, r 2, ... , -1 because deg Or-1-iSn = On-1-iSn_1. The theorem then follows from the induction hypothesis on the subresultant chain of Sn and Sr: Sn, ❑ Sr, sresr-1(Sn,Sr), ..., sreso (Sn,S,), sres_1 (Sn,Sr)• The next definition is particular for elements in an Ore polynomial module. Definition 4.1 A defective subresultant of degree -1 is said to be isolated. The gap structure of S(A, B) is given in Fig. 1. Note that the gap-structure of S(A, B) is slightly more complicated than that of an algebraic subresultant sequence due to the possible presence of isolated subresultants.
Now, we extend subresultant sequences of the first and second kinds and prove that subresultant sequences of the first kind are p.r.s. Definition 4.2 The subresultant sequence of A and B of the first kind is the subsequence of S(A, B) that consists of A, B, and S, if Sj+1 is regular and S3 is nonzero . The subresultant sequence of A and B of the second kind is the subsequence of S(A, B) that consists of A, B and other regular subresultants of S(A, B). The subresultant sequences of A and B of the first and second kinds are denoted by S1 (A, B) and S2 (A, B), respectively.
235
A B - Sj+1 is regular. . Si is defective of degree r. Si=O (j>i>r). Sr is regular.
a regular subresultant a defective subresultant zero subresultants a regular subresultant
an isolated subres. if one exists. Figure 1. The gap structure of S(A, B)
At last, we prove Theorem 4 .3 Si (A, B) is a p. r. s. Proof Set A = Al and B = A2. Let A1, A2, ... , Ap be a p.r.s. Let S1(A, B) consist of Al A2 S;g, ... , S. We show that p = q and Sri - Ai, for i = 3, p. First, we consider the special case p = 2. Since rem (A,, A2) = 0, Sn_1 = 0 by Lemma 3.1. Theorem 4.2 then implies that Sj = 0, for all j < n, so that S1(A, B) consists of A1i A2. The theorem is true. Second, we consider the case rem(Al, A2) # 0. Since j3 = n - 1 by the definition of Sl (A, B), S;s = Sn_1 - A3 by Lemma 3.1. Assume that Ai Si,, for all i < k. Since S„p - rem (S„k_1+1,Sjk_1) by (7), Sik_,+1 - Sik_z by (6), and S2k-2 - Ak_2 by the induction hypothesis, we conclude Sjk - Ak. We have proved that SS; - Ai, for i = 3, .. . , p. It remains to show that q = p. If deg Ap = -1, then deg Sp = -1. Thus, Si = 0 for i < p, so p = q. Suppose now that rem(Ap_1i Ap) = 0. Let d = deg Ap. Applying Theorem 4.2 to (Sjp_1+1 i S3,-1) and (SAP+1 i SSP ), respectively, we derive Sjp_1 - Sip+1, Si = 0 for jp - 1 > i _> d + 1, and Sd - Si,,,. Since rem(Sjp_17Sjp) = 0, rem (S2p+1,Sjp) = 0. It follows from (7)' that Sd_1 = 0 Applying Theorem 4.2 to (Sd, Sd_1) yields Si = 0 for d - 2 > i > -1. Hence , S;p is a last member of Sl (A, B). ❑
236
5 Applications In addition to the notation convention made in the last section, we denote the last nonzero elements of S(A, B) by Sd. First, we study the Ore submodule [A] + [B]. Proposition 5.1 If deg Sd > 0, then [A, B] = [Sd]. Otherwise, A and B are not compatible. Proof Denote by Sj the last member of Si (A, B). If deg Sd > 0, then deg Sj > 0, so [A, B] = [Si]. Hence, [A, B] = [Sd] since Sd - S1 by Theorem 4.2 (applied to (Sj_1iSj)). If degSd = -1, then d = 1. It follows that A and B are not compatible. ❑ From Proposition 5.1 we see that Sd is a proper extension of the notion of gcrd's when deg Sd > 0. If deg Sd = -1, then [A, B] is generated by two elements j-and Si Si. Next, we extend the notion of resultants to Ore polynomial modules.
Corollary 5.2 Denote by rd the coefficient of Xd in Sd If d = -1, then [A, B] contains an element with degree -1 . Assume that d > 0. Then [A, B] is generated by Sd if and only if rd # 0. Proof If d = -1, then S-1 E [A, B]. Suppose that d _> 0. If rd # 0, then deg Sd = d > 0, so [A, B] = [Sd] by Proposition 5.1. If rd = 0, then Sd is isolated, for, otherwise, Sd would not be the last nonzero one by Theorem 4.2. ❑ Hence, A and B are not compatible. At last, we study [A] n [B]. Since the degrees of A and B are both nonnegative, [A] n [B] is generated by one element, which is an extension of the notion of lclm's. Indeed, any nonzero element with lowest degree in [A] and [B] is a generator. Proposition 5.3 The degree of a generator of [A, B] is (m + n - d). Proof Since Sd # 0, O"-d-'A, ... , A, E)--d-'B, ..., B are F-linearly independent. It follows that a generator of [A] fl [B] is of degree greater than (m + n - d - 1). So, the lowest degree of nonzero elements in [A] fl [B] is no less than (m + n - d). We consider two cases. First, assume that deg Sd > 0. In this case Sd is regular . Thus, deg Sd = d. Since Sd-1 = 0, expanding Sd-1 by Remark 3.2 yields
sn-den-dA + ... + soA + t,,-dOm-dB + ... + B = 0, (9) where the s's and i s belongs to F and sn-d is nonzero because Sd is regular. Let L = sn_dOn-dA + • • • + soA. The degree of L is (m + n - d). Since rem(L , B) = 0 by (9), L belongs to [A] fl [B]. Hence, [A] fl [B] = [L].
237 Second, assume that deg Sd = -1. Expanding Sd by Remark 3.2 yields sn-iO"-aA + . • • + soA + tm_iOm-iB + • • • + B = rX -1 (10)
where the s's, is and r belong to F, r is nonzero and sn_i is nonzero, where d + 1 < i < n. Applying O to (10) yields un-i+l On-'+'A+• • • + uoA + vm-i+1Om_i+1B + • • • + B = wX-1
(11)
where the u's, v's and to belong to F. In particular , un-i+1 is nonzero because it is equal to a(sn_i) by (1). Canceling the inhomogeneous components of (10) and (11), we find that run-i+j0n-i+lA + (run- i - wsn -i)On-'A+ • • • + (ruo - wso)A +rvm-i+l0m-i+1B+ (rvm- i - wtm-i )Om-'B ... + (rvo - wto)B = 0. As On-d-'A, ..., A, Om-d-1B, ..., B are F-linearly independent, i must be equal to (d + 1). Therefore,
L = run-dO n-d
+ (run-d-1 - wsn-d-1)O
n-d-1A + (ruo - wso)A
is a generator of [A] fl [B].
❑
A generator of [A] fl [B] is a proper extension of the notion of the lclm of two elements of an Ore polynomial ring. The equality deg A + deg B = lclm(A, B) + gcrd(A, B), where A, B E F[X], is generalized to deg A + deg B = deg L + d where L is a generator of [A] fl [B]. The proof of Proposition 5.3 points out how to express some generators of [A] fl [B] by determinants. At last, we describe a geometric meaning of isolated subresultant in differential case. Assume that F[X] ® F is given in Example 2.2. For an element G E F[X] ® F, the solution set of G in a differential closed field of F is denoted by VG. If deg G > 0, then VG is a translation of a C-vector space with dimension deg G. If deg G = -1, then VG is empty. Hence, deg G has some geometric meaning. Corollary 5.4 Let L be a generator of [A] fl [B].
1. Sd is regular
deg A + deg B = deg L + deg Sd.
2. Sd is isolated
deg A + deg B > deg L + deg Sd.
Proof The first assertion is immediate from Proposition 5.3. The second one ❑ follows from the fact that Sd is isolated if and only if deg Sd < d.
238
References 1. Abbot, J., Bronstein, M., Mulder, T. (1999): Fast deterministic computation of determinants of dense matrices, in: Proceedings of ISSAC'99, Dooley, S. (ed.), ACM Press, 197-204. 2. Bronstein, M., Petkovsek, M. (1996): An introduction to pseudo linear algebra, Theoretical Computer Science, 157, 3-33. 3. Brown, W.S. (1971): On Euclid's algorithm and the computation of polynomial greatest common divisors, J. ACM 18, 478-504.
4. Brown, W.S., Traub, J.F. (1971): On Euclid's algorithm and the theory of subresultants. J. ACM 18, 505-514. 5. Collins, G.E. (1971): The calculation of multivariate polynomial resultants, J. ACM 18, 515-532.
6. Collins, G.E. (1967): Subresultant and reduced polynomial remainder sequences, J. ACM 16, 708-712. 7. Li, Z. (1998): A subresultant theory for Ore polynomials with applications, in: Proceedings of ISSAC'98, Gloor, O. (ed.), ACM Press, 124-131. 8. Li, Z. (1996): A Subresultant Theory for Ore Polynomials and its Applications, Ph.D thesis, Research Institute for Symbolic Computation, Johannes Kepler University, Linz, Austria. 9. Li, Z., Nemes, I. (1997): A modular algorithms for computing greatest common right divisors of Ore polynomials, in: Proceedings of ISSAC'97, Kiichlin, W. (ed.), ACM Press, 282-298. 10. Loos, R. (1982): Generalized polynomial remainder sequence, in: Computer Algebra: Symbolic and Algebraic Computation, Buchberger, B., Collins, G.E., and Loos, R. (eds.), Springer, Wien, 115-137. 11. Mishra, B. (1993): Algorithmic Algebra. Texts and Monographs in Computer Science, Springer, New York. 12. Ore, O. (1933): Theory of non-commutative polynomials, Annals of Math. 34, 480-508.
SOME CONCLUSIONS FOR (2+1)-DIMENSIONAL GENERALIZED KP EQUATION: DARBOUX TRANSFORMATION, NONLINEAR SUPERPROSITION FORMULA AND SOLITON-LIKE SOLUTIONS ZHEN-YA YAN AND HONG-QING ZHANG Department of Applied Mathematics , Dalian University of Technology, Dalian 116024, P. R. China E-mail: zhanghgOdlut . edu.cn In this paper, the (2 + 1)-dimensional generalized KP equation is considered. The equation is transformed into the (1 + 1)-dimensional general KdV equation with the external force term by using a quasi-travelling wave reduction. Then based on the nonisospectral Lax pairs in Sl(2,C), a corresponding Darboux transformation is given. Moreover, a nonlinear superposition formula is obtained. Finally, as the applications of the obtained results above, a series of soliton-like solutions can be found.
1 Introduction As is well known, Lax pairs of nonlinear evolution equations play an important role in soliton theory and nonlinear dynamic systems.'-12 For instance, Lax pairs could be used to study symmetries and Hamiltonian structures of nonlinear evolution equations. 5-8 In order to apply the well-known inverse scattering method to solve nonlinear evolution equations, finding Lax pairs of nonlinear differential equations is a key step. 1-4,12 However, this old method is too complex to work. Generally speaking, Lax pairs of one partial differential equation are of the following two forms: one of them exists in one-dimensional vector space and the other exists two-dimensional vector space. 2,12 Recently, new Backlund transformation were found for many nonlinear evolution equations via the Riccati form of Lax pairs in one-dimensional vector space.9-11 Only if integration was needed, a series of explicit exact solutions could be derived step by step. A natural problem is that whether a Darboux transformation, which is required to apply easily, can be found via Lax pairs in two-dimensional vector space? The case of the equation with constant coefficients, KdV equation, had been used to solve this problem. 2,12 Then does the case of the equation with variable coefficients have also the same conclusions?
For the given (2+1)-dimensional generalized KP equation, 2,17 that is to
239
240
say, the variable coefficients KP equation uxt + uxyyy + 6 (u2 + uuxx ) + g4uyy + 6f ux - (12f2 + ft) = 0,
(1)
where f = f (t) is arbitrary functions oft and g = g(t) = e- f sfdt Many wellknown nonlinear wave equations, such as KP equation (f=0) and cylindrical KdV equation (f = 12t ), KdV equation and general KdV equation etc.13-17 are all special cases of Eq. (1). Backlund transformation, symmetries and some exact solutions of Eq. (1) had been discussed by using the usual WTC method. 17-111 Nowadays, we consider Darboux transformation of Eq. (1). Using a quasitravelling wave reduction u(x,y,t) = u(z,t), z = x + h(t)y + c, (2) where h(t) is function to be determined later and c is arbitrary constant, Eq. (1) is transformed into variable coefficient KdV equation with the external force term Ut + uzzz + 6uuz + h2g4uz + 6 f u - z(12 f 2 + ft) + k(t) = 0, (3) where k(t) is integration function. Next, we mainly consider Eq. (3). The rest of this paper is organized as follows: In Section 2, we present the nonisospectral Lax pair of Eq. (1) in Sl(2,C) and a Darboux transformation is found based on this Lax pair. In Section 3, a superposition formula, which is very convenient to solve equations, is derived. Finally, some summary and conclusions are given in Section 4. 2 Nonisospectral Lax Pair and New Darboux Transformation
Firstly we give a definition as following: Definition Generally speaking, a partial differential equation has a completely integrable system (or called Lax pair), if this equation is the completely integrable condition of certain a system of linear equations.12
For the obtained variable coefficient KdV equation (3), we can derive the following conclusions: Proposition 1 The nonisospectral Lax pair of Eq. (3) in Sl(2, C) (see the reference2) can be written as follows 12z = 0 T = UT, (4a) (A-u+zf+P 0
241 `yt =
uz+2f -2(u+2A)-Rl , IF =VIP -u,z - 2f J
-[2(u + 2A) +R](A- u + zf +p) +u,z,z
(4b) with
At + 12f A = 0, i.e., A = pe-12 f ` fdt (5) P = e f 12fdt[7 -
f (k + h2g4)ef 12fdtdt],
(6)
where R = 4fz + 4p + h2g4, p0 is integration constant, ' = T (z, t, A) is a vector or a 2 x 2 matrix. A = A(t) is a function of only t and p is integration constant. It is easy to show that the compatibility condition ( i.e., `yzt = '' t.) of Eqs. (4a) and (4b) is zero curvature equation '20 namely
Ut-Vx+[u,V]=0, [u,V]=UV -VU, (7) which is equivalence to Eq . (3). Therefore according to the above Definition, we know Eqs . (4a)-(4b) are nonisospectral Lax pair of Eq. (3) under the condition of Eqs. (5) and (6). Proposition 2 Let IF be a matrix of 2 x 2 , det' # 0, and T satisfy the following two conditions
(I) 0 *zT-1 - (A-u+zf +p 0 )'
'tww
(8)
_1= (A -2(u+2A)-4fz-h2g4-4pl (9) B -A '
where u = u(z, t) is independent of A. Then u is the solution of Eq. (3). Proof Substituting Eqs. (8) and (9) into the integrable condition (7) yields -Az+B+[2(u+2A)+4fz+h2g4+4p](A-u+zf +p) =0, (10) uz+2f -A=O,
-ut-Bz+2A(A-u+zf +p) = 0.
(11)
(12)
From Eqs . (10) and (11), we get A = u,z+2 f, B = uz,z+[-2 (u+2A)-4f z-h2g4-4p](A-u+z f +p) = 0. (13)
242 Then substituting Eq. (13) into Eq. (12) yields Eq. (3). This implies that u satisfies Eq. (3). Proposition 3 Let un be a solution of Eq. (3) and Wn(z, t, )fin) (det Qn # 0) be the solution of Eqs. (4a) and (4b), which can be written as n(z, t,An) =
011(An, z, t) 21 ( A., z, t ) 0
012 ( An, z, t)
(14)
022 (An, z, t)
and let ( ) - a021 ( A.) + 0022(A.) Wn - W ^n a011 (A.)
+ 0012(A.)
un+1 = -un + 2[An + f z + p] - 2wn. n = 1, 2, 3, ...
(15) (16)
f ` fdt where An = an(t) = pne-12 with pn being arbitrary constant, a and,3 are constants, of which none is zero . Then un+ 1 is also a solution of Eq. (3). Proof Firstly we construct the following matrix Wn(z, t , A, fin) -
An +Wn Wn) , (A-
(17)
where A0 0 An (n = 1, 2, 3, ...), and take `yn+1(z,
t, A) = Wn (x, t, A, A n ) T n (z, t, A) .
(18)
According to Eq. (4a), we have w11,z = 021, 021,z
= (A - u+zf + p) 11,
/'12,z = 022,
022,z = (A - u+zf + p)b12
(19)
Differentiating Eq. (15 ) once with respect to z yields Wnz = -un +zf + p+An-Wn.
(20)
Therefore we have from Eq. (16) un+1 = un + 2wnz,
n = 1, 2, 3, ... .
(21)
From Eq . ( 17) and according to Eq . (20), it follows that p-An+w,, Wnz (z, t, A, An)= l un - zf 2Wn[-un + Z f + p + An - Wn]
0 un-zf -p-An+Wn)
(22) Then we derive Wnz + W Un = Un+1Wn,
(23)
243 with Un = (A-u,0zf +p 0) , Un+1 = (A_ufl+10+zf+p 0) . (24) In combining with Eq. (17) we get
'I'n +1,z
=
(Wnz
+
WnUn)'I'n
=
Un+1I'n +1
(25)
According to the same rule as the above result , we can also find 'I'n+l,t = (Wnt + W.U.)'I'n = Vn+ 1'I'n+1,
(26)
with
2A) - 4 fz - h2g4 - 4p (27) Vn+1 = (A -2(un+1 + B -A ' where A and B are functions to be determined later . And we know detWn=An-A54 0, det%Pn#0. (28) Hence we get det,@n+i = det Wn det Tn # 0. According to Proposition 2 and combining Eqs. (25 )-(27), it is easy to show that un+1 is also a solution of Eq. (3). This completes our proof. Therefore according to Proposition 3, it is easy to verify that Eq. ( 16) is a Darboux transformation of Eq . (3). Here the matrix Wn is so-called Darboux matrix. For the known solution (un, IQ,, ) of Eqs. (4a) and (4b), according to Darboux transformation and Eq . ( 18), only if simple calculation is needed, we can derive another solution ( un+i,'I'n+1 ) of Eqs. (4a) and (4b ). According to the same procedure, the third solution ( un+2,'I'n + 2) of Eqs. (4a) and (4b) may be derived, and so on . It is clear that un, un+1, un+2, . . . of them are exact solutions of Eq . ( 1). Then via the transformation (2), we can further obtain the exact solutions of Eq. (1). 3 A Nonlinear Superposition Formula Proposition 4 For the given solution un of Eq. (3), let [pn, an, On] and [/fin+1, an+1, Qn+1] be two sets of parameters. If we start from un and [/ln, an, an] (or [pn+l, an+1, Qn+1)], the solution, un+1(or un+1), of Eq. (3) can be found according to Proposition 3, and beginning with un+1 (or un+1) and [µn+l, an+1, Nn+1] (or [µn, an„(3n)] again, the third solution, un+2(or u'' +2), of Eq. (3) is also obtained according to Proposition 3, then Un+2 - un+2.
244 Proof According to Proposition 3, starting from (un,'J'n) (`yn is the solution of Eqs. (4a) and (4b) about un) and the parameter system, [µn, an, 0n], we obtain (wn, Wn,'I'n+1 = WnWn, un+1 )• Then starting from (un+l, Wn+l) and the parameter system, [µn+l, an+1, Nn+ 1] again , we can also derive According to (Wn+1, Wn+1, 'I'n+2 = Wn+ 1 l'n+l = Wn+1Wn'I'n, un+2)• the above steps, if the order of the two sets of parameters, [µn, an, /3n] and [µn+1, an+1„ 3n+1] is exchanged, we can obtain that (wn, Wn, `I'n+1 = W,W n, un+1) and (Wn+1I Wn+1, pn+2 = Wn+1Tn+1 = Wn+1Wn`I'n, un+2) respectively. Through simple calculation, we can find the following results
Wn+1Wn = Wn+1Wn,
(29)
(µn+1 - µn) exp(- f 12 f dt) Wn+Wn+1 =Wn+Wn+1 = w' -W n
(30)
n
and the relations Un+2 = un + 2(Wn + wn+ 1)z,
(31)
+Wn + 1)z•
(32)
Un +2 =
u n + 2(Wn
From Eqs. (29)-(32), we derive Un+2 = un+2. Thus we complete the proof of Proposition 4.
In addition, we also find a nonlinear superposition formula, that is to say, a relation between the first solution ul and the third one un+2(un+2), as follows: Un+2 = un + 2(µn+1 - µn)
exP(- f 12f dt)[W,
1 Wn
]x.
(33)
n
4 Applications of Darboux Transformation and Nonlinear Superposition Formula Case 1 Taking a special solution of Eq. (3) as follows ul = zf + P.
(34)
From the lax pairs (4a) and ( 4b) of Eq. (3), substituting Eq. (34) into Eqs. (4a) and (4b) yields fdt cosh( ) e3 ft fat sinh (^) 'Ie3 f' (34) '1(z, t , A1) _ e-3 ft fat sinh (e) e-3 ft fdt cosh(E)
245
- ft [4µ1 e-12 ft fdtdt f 6f dtdt. where ^ = ze-6 ft fdt + h2g4 + 6p]eTherefore according to Darboux transformation ( 16) and the transformation (2), we have the soliton-like solution of Eq. (1) U2 (x, y , t) = -2 exp (-
+2µ1 exp(-12
[a sinh (^) + Q cosh(^)] 2
f 12 f dt) [a cosh() + Q sinh(^)]2
f
f dt) + (x + by + c) f + p,
(35)
fdt - ft [4µ1e_12 ft where e _ (x + by + c)e-6 ft fdtdt + h2g4 + 6p]e- f 6 fdtdt. For the constants a and /3, there exist the following two cases to be considered further. Case 1A Taking a = 1,0 = 0 in Eq. (15) and substituting Eq. (30) into Eq. (15) yields Wll = W(^1) 021(Al) w11(A1)
=e- ft 6fdt tanh[ze- ft6fdt- f(4ieftl2fdtdt+ h2g4+6p)ef6fdtdt] (36) Therefore from Eqs . ( 29) and (31) and Darboux transformation (16) and (2), a bell-shaped soliton -like solution of Eq. ( 1) is written as u21(x , y, t) = 2e- f' 12 fdtsech2 [(x + by + c - f (4µ1e- f 12 fdtdt +
)e- ft 6 fdt
h2g4 + 6p)e- f 6fdtdt] + (x + by + c ) f + p. (37)
Case 1B Taking a = 0, /3 = 1 in Eq. (15) and substituting Eq. (30) into Eq. (15) yield
W =W(A ) = 12
= e- f' 6fdt coth[ze- f t 6
1
fdt f t
b22(A1)
012(A1)
f dtdtl. (4µ1e- f t 12 fdtdt + h2g4 + 6p)e- f 6 (38)
246 Therefore from Eqs. (29) and (31) and Darboux transformation (16) and (2), a singular soliton-like solution of Eq. (1) is written as u22 (x, y, t) = e2e-f' ft
ft (4µ1e- f 12
12
fdtcsch2 [(x + by + c)e- f t 6f dt
fdtdt + h2g4 + 6p)e- f 6f dtdt] + (x + by + c) f + p.
(39)
Case 2 Taking two sets of parameters to be [µl,1, 0] and [µ2i 0, 11 and a solution, ul = z f + p, of Eq. (3), According to Proposition 3, we can obtain the following results: wl = w(A1) W^^21(1\1) 411(A1)
=e-ft 6fdt tanh[ze-
ft 6fdt - ftft l2fdt dt +
h294 + 6p)e_f6fdtdtl;
(40) wl =
w(X2)
_ 021(A2) y111(A2 )
= e- F t 6fdt coth[ze- f' 6fdt - f (42&
f t 12fdtdt
+ h2g4 + 6p)e- J 6fdtdt]. (41)
Therefore , we can derive another double soliton-like solution of Eq. (1) according to Proposition 4 u3(x,y ,t)=2(P2-µ1)eXP(- f
= 2(µ2 - µl) exp(- f 12 f dt)[
6fdt)[-tanh(e1)1+coth(^2)]z+zf +p
[tanh(t,) - coth( )])
+ (x + by + c) f + p,
where ^f = ( x + hy + c )e- f t 6fdt - ft(4µ3e-ft12fdtdt+ h2g4+6p)e-f 6fdtdt] (j = 1, 2). If we take another two groups of parameters [µl,1, 0] and [µ2,1, 0] and a solution u1 = z f + p of Eq. (3), then according to Proposition 3 we can obtain the following results: us (x, y, t ) = 2(µ2 -µl) exp(- f 12 f dt) [ ..h (1) - tank 2 )]2 +(x+hy+c)f +p
247
According to the same step as above, the forth solution of Eq. (1) can be obtained. As a result, multisoliton-like solutions can be found step by step. In addition, if we take another solution of Eq. (3), we may find a rational solution, for example: Case 3 Taking another special solution ul = Al + z f + p = pi exp(- f 12 f dt) + (x + by + c) f + p of Eq. (3). From the lax pairs (4a) and (4b) of Eq. (3), substituting ul into Eqs. (4a) and (4b) yields %Fj
C
Cie-3
=
f' fdtx + e3 ft f dt(C2 - c1M ) die-3 cie-3 ft
fdt
ft fdtx + e3 ft fdt (d2 - di M)
die-3
ft
fdt
)
(42)
f 12fdt where M = f (6pie+ h294 + 6p)e- f 6fdtdt and ci, di (i = 1, 2), pi are constants. Therefore according to Darboux transformation ( 16) and (2 ), we have the rational fraction solution of Eq. (1) u2(x,y , t) = -
2(aci +,6d1)2
[(aci + bdi ) (x + by + c) + of sfdt (ace + ,6d2 - aci M -,3di M)]2 +(x + hy + c)f +p+piexp(-J 12fdt).
(43)
As the same as case 3, we can also find another solution of Eq. (1) according to Proposition 4. 5 Summary and Conclusions In summary, the (2+1)-dimensional generalized KP equation has been considered. Via a quasi-travelling wave reduction, the KP equation reduces into the variable coefficient general KdV equation with the external force term. Using the nonisospectral Lax pair in Sl(2,C) of this obtained KdV equation, a Darboux transformation and a nonlinear superposition formula are derived. As the applications of these results, many exact solutions of (2 + 1)-dimensional generalized KP equation are obtained. In particular, multisoliton-like solutions can be found step by step according to the nonlinear superposition formula. This approach may also be extended to other nonlinear evolution equations.
248
Acknowledgements The author (Z.Y.Yan) is very grateful to thank Professor Engui Fan for his enthusiastic guidance and help. This work is supported by the Chinese Basic Research Plan "Mathematics Mechanization and Platform for Automated Reasoning", the National Natural Science Foundation of China and the Higher Education Doctor Foundation of China. References 1. M. J. Ablowitz and P. A. Clarkson, Solitons, Nonlinear Evolution Equations and Inverse Scattering, Cambridge University Press, Cambridge (1991). 2. C. H. Gu et al., Soliton Theory and its Applications, Zhejiang Publishing House of Science and Technology, Hangzhou (1990) [in Chinese]. 3. P. Constantin et al., Integgal Manifolds and Inertial Manifolds for Dissipative Partial Differential Equations, Springer-Verlag, New York (1989). 4. G. Eilenberger, Solitons-Mathematical Methods for Physicist, SpringerVerlag, New York (1981).
5. S. Y. Lou, Commun. Theor. Phys. 25, 365 (1996). 6. S. Y. Lou, Phys. Lett. B 302, 261 (1993). 7. S. Y. Lou, J. Math. Phys. 35, 2390 (1994). 8. S. Y. Lou, Int. J. Mod. Phys. A (Proc. Suppl.) 3A, 531 (1993). 9. R. B. Tian and C. Tian, Chin. Ann. Math. A 19, 541 (1998). 10. R. B. Tian, Chin. Adv. Math. 28, 314 (1999). 11. Z. Y. Yan and H. Q. Zhang, Acta Physica Sincina 12, 897 (1999) (Overseas Edition). 12. C. H. Gu et al., Applied Partial Differential Eqautions, Higher Education Press, Beijing (1993).
13. J. F. Zhang, Commun. Theor. Phys. 26, 373 (1996). 14. C. Tian, J. Phys. A: Math. Gen. 20, 359 (1987). 15. C. Tian, J. Phys. A: Math. Gen. 20, 367 (1987). 16. S. Maxon and J. Viccelli, Phys. Fluids 17, 1614 (1974). 17. Z. N. Zhu, Acta Physica Sincina 41, 1562 (1992). 18. E. G. Fan, Ph.D thesis, Dalian Univ. Tech., China (1998). 19. G. Z. Tu, J. Math. Phys. 30, 330 (1989). 20. J. Weiss, M. Tabor and G. Carnvale, J. Math. Phys. 24, 522 (1983).
DARBOUX TRANSFORMATION AND SOLITON-LIKE SOLUTIONS FOR DISPERSIVE LONG WAVE EQUATIONS ENGUI FAN Institute of Mathematics , Fudan University, Shanghai 200433, People's Republic of China E-mail: fanegOfudan. edu.cn A systematic method is presented to construct the Darboux transformation with multi-parameters for dispersive long wave equations, from which the solutions of long wave equations are reduced to solving a linear algebraic system and a constraint differential equation. With help of symbolic computation, new soliton-like solutions for the long wave equations are obtained via its Darboux transformation.
1 Introduction
The dispersive long wave (DLW) equations ut - 2uux - 2vx + uxx = 0,
(1)
Vt - 2(uv) x - vxx = 0
(2)
were derived first by Whitham and Broer for dispersive waves in shallow water. 1'2 Their symmetries , conservation laws, similarity reductions , painleve property and soliton solutions were discussed . 3-5 In recent years , the spectral problem and others associated with Eqs . ( 1) and ( 2) have been presented and studied .' - 1 It is shown that Eqs. (1 ) and (2) may be represented in the form Ut-Vx+[U,V]=0, as compatibility conditions for the following linear system yx = Uy -
u) 2 (A1
(3)
_ a o u) f y'
- v2)
yt = Vy
2 A 2 +A
_!A2 _ 2 (xux u
( +u9i
)
) y,
(4)
2 which are called Lax pairs of Eqs. (1) and (2). The hierarchy of nonlin-
ear evolution equations associated with spectral problem (3) was derived as follows 7,8 Ut = Cn+lx, vt = an+lx,
249
(5)
250 where an and cn are determined by recursive relations 1 ao=2, bo=co=0, bn+1 = bnx + u,bn - 2van, Cn+1 = -Cnx + uCn + Zan, an+lx = -bn+1 - vCn+l, n =
0,1, 2, ....
Equations (1) and (2) are exactly among the hierarchy of nonlinear evolution equations (5) (for n = 2). The whole hierarchy (5) is Liouville integrable and possesses Hamiltonian structure.? Under two different constraints between the potentials and eigenfunctions, the nonlinearization of spectral problem (3) gives two kinds of finite-dimensional completely integrable systems. 7,8 Darboux transformation (DT) is a powerful method to get explicit solutions of nonlinear partial differential equations, which has the advantage that new solutions can be obtained by using algebraic algorithm.9-15 In this paper, we would like to derive a Darboux transformation with multi-parameters for the spectral problem (3) and (4), from which the solutions of Eqs. (1) and (2) are reduced to solving a linear algebraic system and a constraint differential equation. As an application of DT, one- and two soliton solutions of Eqs. (1) and (2) are obtained with the help of symbolic computation. 2 Darboux Transformation In this section , we are going to construct DT for Lax pairs (3) and (4). We introduce a gauge transformation y = Ty.
(6)
Then y satisfies two spectral problems yx=Uy, U=(Tx+TU)T-1
(7)
yt = Vy, V = (Tt +TV)T-1 (8) By cross differentiating ( 7) and (8), we get (Ut-Vx+[U,V])T-T(Ut-Vx+[U,V])=Txt-Ttx=0, which implies that in order to make Eqs. ( 1) and (2) invariant under the transformation (6), we have to find a matrix T such that U, V have the same
251
forms as U, V. The old potentials u and v in U, V are mapped into new potentials u, v in U, V. We assume Darboux matrix T in the form T=T(A)= (A B) D '
C
(9)
with N-1
N-1
A=jN(AN+>Ak.Ak), B=(N>2BkAk, k=0 N-1
k=0
N-1
> CkAk, D = 1 (AN + > DkAk) C= 1 lsN aN k-0
k-0
where 6N will be determined later, Ak, Bk, Ck and Dk are given by a linear algebraic system N-1
N-1
E (Ak + Bkcrj)Ajk = -AN, 1: (Ck + Dkaj)A, = -ajAN, k=0
(10)
k=0
with a -
02 (Aj) - 'Yj02(Aj)^ 01(A1) -
1,2,...,2N, (11)
'YjOl(Aj)
where ¢ = (01, 02)T, '0 = (01, 02)T are two basic solutions of the spectral problem (3), Aj and yj (Ak # A j, yk # yj, as k # j) are some parameters suitably chosen. Equations (9) and (10) show that det T(A) is (2N) th order polynomial of A, and N-1
N-1
N-1
det T(A3) =NA + E (Ak + (AkD! - BkC`)A^+` = 0, 3+ Dk),+k 3 k=0
k=0
1=0
which implies that Aj (1 < j < N) are 2N roots of det T. Therefore we have 2N
det T(A) = [J (), - Aj ).
(12)
j=1 Theorem 1 Let ON, = 1 + CN_i the same form as U, that is,
then the matrix U determined by (7) has
z (a - ii) -v U- ( 1 -2(A-u)
252
where u =u-
CN -1x
v = (v + BN-1 )(1 + CN-1 ) .
(13)
1 + CN-1
P roo f Let T-1 = T* / d et T an d (Tx + TU)T* =
f11()') f12(A) ( f21(A) f22 (A)
(14)
It is easy to see that fie(A) and f22 (A) are (2N + 1)th order polynomials in A, f12(A) and f21( A) are (2N)th order polynomials in A. From (3), (10) and (11), we find that ajx = 1 + vat - (Aj - u)aj,
(15)
A(Aj) = -ajB(Aj), C(Aj) = -ajD(Aj),
(16)
which allow us to verify that that Aj (1 < j < 2N) are roots of fkj(A) (k, j = 1, 2). Noting Eq. (12), we conclude that
det T I fkj (A), k, j = 1, 2, and thus (Tx +TU) T* = (detT)P(A), (17) with P(A) =
where
(
p11
j
p11 P221 P1+
p221
/
p(l) are independent of A. Equation ( 17) can be rewritten in the form Tx + T U = P(A)T.
(18)
Equating the coefficients of AN+1 and AN in (18), we obtain (2) - - 1 tL, P11 t - -P221 - 2 pill = -P2
P12l P21 = 1,
SN = 1 + CN-1,
u=u-2C7xln8N, 'U=t^N(11+BN-1)•
From (7) and (18), we see that U = P(A). The proof is completed. Let 0 and 0 also satisfy Eq. (4); we try to prove that V in (8) has the same form as V under the transformation (6) and (13).
253 Theorem 2 Suppose that 62N = 1+CN_1 i and 8N , BN_1 satisfy the constraint equation 6N-
(19)
Then the matrix V in (8) has the same form as V , that is, 2 A2 + 2 (ii." - u2)
-v X - ('Ux + uv) (20)
( A + u -1 A2 - 2 (2tx - 2t2)
Proof Similar to Theorem 1, we denote T-' = T* / det T and (Tt +TV)T* =
911(A) 912(A)
(21)
921(A) 922(A))
Direct calculation shows that g,, (A), 922 (A) or 912 (A), 921(A) are (2N + 2)th or (2N + 1)th polynomials in A respectively. With help of (4), (11) and (16), we find that aft = c ( A,) - 2a(A,)aj - b(Aj)aJ^, (22) (23)
At(A3) = - Bt(A3)ai - B(A2 ) ait,
Ct(A3) = -Dt(Aj)a3 - D(A3)a3t. (24) We can verify by (16) and (22)-(24) that A3 (1 < A2 < 2N ) are also roots of gkj (A), k, j = 1, 2. Therefore, we have
det T (A) 19k,, (A), k, j = 1, 2, and thus (Tt +TV) T* = (detT)Q(A), with Q(1) =
(
q i, (2)\2
+q11 )A+gill qjA+412
42i A + q2, g221\2 + 4ii
2 +42 2
)
that is
Tt +TV = Q(A)T.
(25)
Equating the coefficients of \N+2, AN+1 and AN in ( 25) leads to q1, - q2(22)-2 - 1, q,, = g221- 0, 8121 - -v, 4211 - 1, 2 q,2) = 6N [_(V + uv) - vAN-1 - BN-2 + aN2vDN],
(26)
254 - 2 (U q21) _ 6
qii) _ -q22) =
+ CN_2 + DN-1 - (SNAN-1),
8t In 8N +
1
(%:
-
u2
)
+
62 (v + BN_1) - v. N
(27) (28)
Equating the coefficients of AN-1 in (18) gives -vAN-1 - BN-2 + 6 N 2 ODN-1 = -BN-1x -
uBN -1
-
2BN -119x In ON,
CN -2 + DN_1 - ONAN -1 = U CN-1 - CN-1x, which, together with (26) and (27), implies that q12) _ -(vx + uv), qi^) = u. By using (13), direct calculation shows that 2 (ux - iu2) = 2 (U., - u2 ) + 2uOx In 6N - 2(19., In ON) 2 - 8-,-, In ON. (29) Substituting (19) into (28), and using (29) yield qii) =: -q22) = 2
(ux
- u2)
Then (20) is obtained from (8) and (25). The proof is completed. Theorems 1 and 2 show that the transformation (6) and (13) change the Lax pairs (3) and (4) into another Lax pairs (7) and (8) in the same type. Therefore both of the Lax pairs lead to the same DLW equations (1) and (2). a DT of DLW equations (1) We call the transformation (y, u, v) and (2). In summary, we arrive at Theorem 3 Let BN_1 and CN_ 1 be given by the linear algebraic system (10), aN = 1 +CN_1, and the constraint equation (19) be satisfied. Then the solutions (u, v) of Eqs. (1) and ( 2) are mapped into new solutions (u, v) of Eqs. (1) and (2) under the DT (6) and (13). 3 Exact Solutions In this section, we discuss applications of DT (6) and (13) to DLW equations, and give their explicit solutions. We take initial solutions of Eqs. (1) and (2): u = v = 0; then two basic solutions of the Lax pairs (3) and (4) can be chosen
as ON _ Ae^-e-E), V_ (e)'
255
where = 2 ax +!A 2 tt. For simplicity, we shall discuss the special case N = 1. We obtain by using (11) that aj = -1 - (1 + yy)e-2f1,
where e3 = !2 Aix+!M^t, Aj # 0, j = 1, 2. Equations (10) and ( 11) are reduced 2 to Ao + aiBo = -Al, Co + a1Do = -a1Al,
Ao + a2Bo = -A2,
(30)
Co + a2D° = -a2A2.
(31)
Cot + Cox. + 2Bo(1 + C°)2 0. (32) Solving linear algebraic system (30) and (31) by using Mathematica gives _
A1A2(A2
-
Al)
e£1+t2
B0 (A2 - A1)eC1+f2+AlA2(1+y2)e{1 - A1A2(1+-yl)e^z' (33) Co - (Al - A2) [e6 _ Al (1 + yl)][eC2 _ A2(1 +'Y2)] (34) (A2 - A1)ef1+£z + A1A2(1 +'y2)e£1 - A1A2(1 +'Yj)eW where Al # A2, 71 # rye are arbitrary constants. It can be verified by Mathematica that the constraint equation (32) is automatically satisfied for these B° and Co (see Appendix). Substituting (33) and (34) into DT (13) by using Mathematica, we obtain more general soliton-like solutions than those obtained by Wang4 O1
A3
u_ -, v = -, 02
(35)
Y4
in which {
A
Al = N-Al)[A1(1+y1) efl+2 z_ 1 +,y2) e2£1+Ez - 2a1A2(.i_ A2)(1 +y1) (1 + y2)eC'+4 2 + A3 A2(1 + A1)(1 + A2) 2et' - A2A3(1 + A1)2(1 + A2)e£zl, A2 = [( A2 - A1)e6 +b + AlA2(1 + A2)e£ 1 - x1.12(1 + A1 )e£ 2l[ A2(1 + yl)e1 2
2(
A3
- A2(1 +'y2)e^' + A1A2(1 +y1)(1 + y2)( A2 - A01, +Ez - A2(1 + y2)e" = A1A2(Ai - A2)e6 [A (1 + yl )e12
+A1A2(1
+y l )(1
+ y2)(A1- A2)1,
A4 = [(A1 + A2)e£1+£z - A1A2(1 + y2)eE' - A1A2(1 + yl)ebl2. In the Appendix, Mathematica is also used to verify that ii and v in (35) are solutions of Eqs. (1) and (2).
256 In the end , we would like to present some figures from the solutions (33). In the case 71 # -1 and y2 # -1, the solutions u and v in (33) satisfy twosoliton solution property. In the special cases when yl = -1 or rye = -1, the solutions u and v in (33) are usual single-soliton solutions of DLW equations. For instance, taking y2 = -1 and -ti 54 -1, we have 1
1\1 - 1\2 1
u= 2a1tanh[2(alx +.t- InAlA2(1
2
v = A2 sech2[ (a1X + alt - In
1\11\2(1
+71 ))] + 2A1i +'y1) )],
which were ever obtained by using homogeneous balance method." Acknowledgments The author is very grateful to Professor Chaohao Gu, Professor Hesheng Hu and Professor Zixiang Zhou for their enthusiastic guidance and help. This work has been supported by the Chinese Basic Research Plan "Mathematics Mechanization and Platform for Automated Reasoning " and the Postdoctoral Science Foundation of China. Appendix For simplicity of sybolic computations, we denote: Al -+ p[1], A2 -* p[2], 'yl -^ q[1], ry2 -* q[2], al -3 a[1], a2 -+ a[2], u -+ u, v -+ v, Bo -+ b[0], Co -> c[0]. Below is a Mathematica session used to get solutions (20) of the DLW equation and to verify that they satisfy Eqs. (1). In[1] := a[1] =1/p[1]-(1+q[1] )Exp[-p[1] *x-p[1] "2*t] ; a [2] =1/p [2] - (1+q [2]) Exp [-p [27 *x-p [27 "2*tl ; m={{1,a[1]},{1,a[27}}; m[17={{1,-pC17}, {l,-p[2]}}; m[27={{1,-aC17*p[1]},{1,-a C2]*p[27}}; b[O]=Det[m[1]]/Det[m] ; c [0] =Det [m [2] ] /Det [m] ; u=-D [c [0] , x] / (1+c [0]) ; v=b [0] * (1+c [0] ) ; Together [D [u, t] -2u*D [u, x] -2D [v, x] +D [u, {x, 2}7 ] Together [D [v, t] -2D [u*v, x] -D [v, {x, 2}] ] Out [1] =0 Out [2] =0
257
References
1. G. B. Whitham, Proc. R. Soc. A 299, 6 (1967). 2. L. T. F. Broer, Appl. Sci. Res. 31, 377 (1975). 3. B. A. Kupershmidt. Commun. Math. Phys. 99, 51 (1985). 4. M. L. Wang, Y. B. Zhou, Z. B. Li, Phys. Lett. A 216, 67 (1996). 5. H. Y. Ruan, S. Y. Lou, Commun. Theor. Phys. 20, 73 (1993). 6. D. Levi, A. Sym, S. Wojciechowsk, J. Phys. A 16, 2423 (1983). 7. E. G. Fan, Soliton and integrable system, Ph.D thesis, Dalian University of Technology, Dalian (1998) [in Chinese]. 8. C. W. Cao, X. G. Geng, J. Phys. A 23, 4117 (1990). 9. C. H. Gu, H. S. Hu, Lett. Math. Phys. 11, 325 (1986). 10. D. Levi, Inverse Problem 4, 165 (1998). 11. C. H. Gu, Z. X. Zhou, Lett. Math. Phys. 32, 1 (1994). 12. Z. X. Zhou, Lett. Math. Phys. 16, 9 (1988).
13. D. Levi, Inverse Problem. 4, 165 (1998). 14. J. Cieslinski, J. Math. Phys. 36, 1567 (1995). 15. P. G. Esteevez. J. Math. Phys. 40, 1406 (1999).
LOCAL GEOMETRIC STRUCTURES AND BIFURCATIONS OF A POLYNOMIAL DIFFERENTIAL SYSTEM FROM A GENERAL MULTI-MOLECULAR REACTION XIAORONG HOU' CICA, Academia Sinica, Chengdu 610041, P.R. China E-mail: xhou(hotmail.com RUI YAN AND WEINIAN ZHANGt Department of Mathematics, Sichuan University, Chengdu 610064 , P.R. China E-mail: wnzhang0scu. edu.cn In this paper we consider a polynomial differential system
{
d =1-ax-xpy9,
11 a
= b(xPyq - y),
which was given from a general multi-molecular reaction in biochemistry as a theoretical problem of concentration kinetics . The polynomial system is with general degree p+q and general coefficents a, b, and thus not all the coordinates of the equilibria can be given explicitly (in closed form), although it is basic for the qualitative analysis of a differential system to give the explicit expressions of coordinates of its equilibria in usual practice. Using techniques of decomposition, truncation and elimination with computer algebra system, we first give the geometric structures of all equilibria, and then analyze Saddle-Node bifurcation and Hopf bifurcation for the system under consideration.
1 Introduction The research on periodic phenomena and dynamics in biochemical reaction models is very important'. Of the various mechanisms used for modeling biochemical reactions5,11,13, perhaps one of the most studied is that [Ao] 4 Al,
Al 0 (output),
pAl + qA2 4 (p + q)A2,
A2 0 (output),
the so-called (p+ q) -molecular reaction . In this mechanism a substance (A,) is generated from (Ao) and subsequently, while maybe part of (A,) separating, p molecules of remaining (A,) combine q molecules of another substance (A2) 'SUPPORTED BY NKBRSF (CHINA) G19980306 AND "95" KEY PROJECT ON FUNDAMENTAL RESEARCH OF ACADEMIA SINICA. tSUPPORTED BY NNSFC (CHINA) GRANT# 19871058 AND CHINA EDUCATION MINISTRY YOUTH FOUNDATION.
258
259
to form more (A2) of p + q molecules, the final product to be extracted. The most fundamental example is the tri-molecular reaction4. By the conservation law its kinetics can be described by the differential equation system d q I dt = kixo - k2xi - ksx P1 2,
I'JL..L)
dd = k3xix2 - k4x2,
where xo, X1, x2 denote the concentrations of species Ao, A1, A2 and k,, kl , k3, k4 are kinetic constants . With change of variables 1 X =
k3 +v-1x1,
Y
= k3 x2,
a = k2, 3=k4,
d = kik3 '^xo, (1.2)
and by rescaling with x = 6(q-1)/P0-q/PX, y = 6-'0Y, T = 61+( q-1)1pa-q1pt, system (1.1) can be rewritten as (L = 1 - ax - xPyq := P(x, y),
(1. 3)
1. de = b(xpyq - y) := Q(x, y),
a polynomial differential system of degree p + q, where a , b are defined by of 1- ( q-1)/p/lq/pb = a-1 -( q-1)/p/l1 + q/p, and t is used to replace r. Clearly, x, y > 0, integer parameters p, q hh>'' 1 and real parameters a >_ O,b > 0. There were given lots of work in the special case of a = 0 . In particular, the papers by Escher4, Zhou and others16 were devoted to tri-molecular reactions where p = 1, q = 2, and the papers by Li and others9 , and by Mang 14 to the more general cases for p = 1, q > 3 and for p > 1, q = 2 respectively. Recently, further results for general p, q were given in the paper' by Mang and others. They all show that the system has a unique equilibrium and at most one periodic solution possibly arises from the bifurcation of this equilibrium. Up to now , except for a few results' for p = 1, 2, there is hardly great progress in the general case of a # 0 . This case would be much more complicated than the case of a = 0 . We easily see that when a # 0 more than one equilibrium could appear in the first quadrant and for high degree , moreover, not all coordinates of equilibria can be given explicitly . In this case more than one limit cycle would possibly appear . Although a more general model a =
{ a = b - V (x , y),
dt = b(V (x, y) - R(y)) } (1.4)
is considered in the papers2'3 by Erle and others , where V (x, y) is assumed to be a bounded real-valued function for all nonnegative x and y, their results cannot give an answer to ( 1.3) because the function xPyq in ( 1.3) is unbounded. One can imagine how difficult it is to discuss ( 1.3) of (p + q)-degree since it has been shown difficult to analyze cubic systems . by using computer algebra systems'. For general ( 1.3) the numbers p, q, which also affect dynamics of
260
the system, jointly with a and b, make (1.3) a system of four-parameters, two of which are integers and the other two of which are real. In this paper we study system (1.3) for general p, q, a, b by using techniques of decomposition, truncation and elimination with computer algebra system Maple V5.1. First we analyze the equilibria in section 2. Then we discuss the geometric structures for nondegenerate equilibria in section 3 and for degenerate equilibria in section 4, while a result of Saddle-Node bifurcation is given. Last we discuss a weak focus and its Hopf bifurcation in section 4.
2 Location of Equilibria We have to solve the polynomial system P(x, y) 1 - ax - xPy9 = 0,
Q(x,y) b(xPyq - y) = 0,
(2.5)
for equilibria of (1.3). Factoring (2.5) we turn to solve 1-ax-xPyq =0 , by = 0,
or
t
1-ax -9Py'1 = 0 , xPyq - 1 - 1 = 0.
(2.6)
Clearly, from the first system of (2.6) we obtain a unique equilibrium A : (1/a, 0). Moreover, the equilibria determined by the second system of (2.6) are on the line 1-ax-y=0. (2.7) Eliminating y in the second system of (2.6), we have xP(1 - ax)q-1 - 1 = 0. (2.8) And clearly x # 0. From y > 0, we get x < Now consider the following function. f(x)=x"( 1-ax)
'-1,
0 < x < 1. a
The derivative of f (x) f'(x) = xp-1(1 - ax)q-2(p - a(p + q - 1 )x) has just three zeros p X3= 1 X1=0, X2 = a(p+q-1) a
(2.9)
26 1
Obviously, x1 < x2 < x3 . Moreover, f (xl) = P X3) = -1 and f(x2) _ (a(p + q _ 1 ))
P(1 - p + q - 1 ) q-1 - 1 = aP p + q - 11 ) P+v-1 - 1. (
By Rolle's theorem , we see easily that , in interval (0, 1/a), f (x) has exactly two zeros x_, x+, no zero and a unique zero x2 when f (x2) > 0, f (x2) < 0 and f(x2) = 0, respectively, where x
_
p E (O , a(p+q_1)
p x+Ea(p +q-1)'a'
(2 . 10 )
whose the explicit expressions cannot be given. Let ao = (
pP(q - 1)q-1 (p + q - 1)P+q- 1
)P
(2 . 11)
The above conditions f (X2) > 0, f (X2) < 0 and PX2) = 0 are equivalent to a < ao, a > ao and a = ao, respectively. Thus we can summarize the above results in the following theorem. Theorem 1 Let the notations be as above . Then system (1.3) has
(i) a unique equilibrium A :
(a, 0) when a > ao;
(ii) two equilibria A : (a, 0) and Bo : (x2, y2), where y2 = 1 - axe = p q 1 when a = ao; (iii) three equilibria A : 0), B_ : (x_, y-) and B+ : (x+, y+), where y_ = 1 - ax_, y+ = 1 - ax +, when a < ao.
(a,
3 The Geometric Structures of Simple Equilibria
To investigate the geometric structures of the equilibria, let B : (x, y) be an equilibrium of (1.3) determined by the second system of (2.6). At B : (x, y) the vector field of (1.3) has its linear part P. '(x, y) P, (x, y) _ -a - p(1 - ax)/x -q Q1. (x, Q',(x,y)) - (bp(1-ax)/x bq - b'
(3.12)
where the second system of (2.6) and (2.7) are applied. This matrix has its trace T = (a(p - 1) + b(q - 1))x - p x
(3.13)
Dab(p+q-1)x-bp x
(3.14)
and determinant
262
Let 0:=T2-4D _ {(a2 + b2 - 2ab + 2abp + 2abq - 2a2p - 2b2q + a2p2 + b2g2 + 2abpq)x2
+(2ap - 2bp - 2ap2 - 2bpq)x + p2}/x2.
(3.15)
The geometric structures of the equilibrium B : (x, y) is decided by the relations among T, D and A.12,15 Obviously, T has a zero x(1) = P , D -a-b+ap+bq has a zero x(2) = X2 = p+q-1), and A has two zeros a x(3) = ap+( b + b-a)2
and x(4) = ap+(
bq- fa-a
)2 when b > a but no zero when b < a.
Lemma 1 If q = 1 then x(1) > x(2) and, moreover, x(1) > x(2 ) > x(4) > x(3) when b _> a. If q > 1 then x ( 1) > x(2) when b < a; x(1) > x ( 2) > x(4) > x(3)
q ?; and x(2) > x(4) > x(1) > x(3) when b > q . when a < b < ° From (3.14) and the case (ii) of Theorem 1, we see that the determinant of the matrix in (3.12) does not equal zero and thus the equilibria of the vector field of (1.3) is nondegenerate when a $ ao = (p (q j 91 ) p . In this case, the geometric structures of all equilibria are simply as follows. Theorem 2 A : (a , 0) is a stable node of (1.3). Moreover, when a < as = ( Pp P+qq--11a9 -a- ) p , the geometric structures of the other two equilibria B+, B_
are described in the following table. necessary and sufficient conditions q 1, a > b q=1,a0
q > 1, b < a q>1,a0 (X( q>1, b> aql , f(x q = 1, a < b, f (x ) > 0 and f (73T)
B_
B+
stable node
saddle
q > 1, a< b < aql , f (x ) > 0 and f (x 1, b > 'aq f (x ) < 0 and f (x(1)) > 0 unstable node q > 1, b > ag Q- 1 f (x ) < 0 q > 1, b > aq1 f (x (l) ) < 0 and f (x ) > 0 q > 1, b >, f(x ) = 0
unstable focus center type*
where f (x) =xP(1- ax)q-1-1, X ( I ) = -a-b+Pa+9b' X(3) = P and x(4) _ pa+( qb+ b-a)2 pa+(
X (2 ) = x2 = a ( p 1' , qb- b-a)2
*See Section 5 for the details in the case of center type.
263
4 Degeneracy and Saddle-Node Bifurcation In this section we study the case (ii) of Theorem 1, where the system has zero eigenvalues. Theorem 3 When a > 0, b > 0 and p, q are positive integers such that a = ao = (v+9° 1, 19 91 ) p system (1.3) has a saddle A : (Q, 0) and an equilibrium B° : then Bo is a saddle-node; (a p+9-1 , P+ ). Moreover, (i) if b $ q'-q1 (ii) if b = 9 then Bo is a degenerate equilibrium. Proof. System (1.3) can be expanded at the equilibrium Bo as follows dx
T
1
d =
=
1
a2 (P-1)(9-1)( P+9-1) 2 -
-aqx - qy - 2 p x aq(p + 4 - 1)xy - 2q(p + q - 1)y2 + h.o.t. (4.16) 1)(P +9-1)x2 + abq(p + q - 1)xy ab(q - 1)x + b(q - 1)y + 2 a2b(p-1)(qp +2bq(p+q - 1)y2 + h.o.t.
where h.o.t. means all terms with degree > 2. In case b # 9^, only one eigenvalue of the linear part of (4.16) equals zero. We consider the 2-jet of system (4.16) dx - -aqx - qy dt 2q(p
1 a2(p-1)(q- 1)(p+q -1)x2 _ aq(p+ q - 1)xy P +
q
-
d = ab(q - 1)x + b(q - 1) y + 2 a2b
1)y2,
(4.17)
(P-1)(9p 1 )(P+9-1)x2
+abq(p + q - 1)xy + 2bq(p + q - 1)y2.
Usually, local dynamics is decided by only finite terms of lower degree. If its 2-jet cannot decide its dynamics yet, we try to consider its 3-jet, 4-jet, ... in turn, so as to avoid involving too many complicated polynomials in our computation. With change of variables z = ax+y,w = b(q-1)x+y,-r = (aq-bq+b)2t, system (4.17) can be written as dz 9(a-b )( q-1)(P+q - 1)(a2p9-a29 +b2p9 - b2p-2abpq) 2 z dr - z - 2p( aq-bq+b) 2 a2(a-b ) 2(P+q-1) -a29(a -b)(P+9-1) 2 +
._'P(z w)
2p(aa-bq+b) , (4.18) P(aq-b9 +b) dw - bq (q-1)(P+9- 1)(a 2pq-a2 +b2pq-b p-2abpq) -2 dr 2p(a9-b9+b)2 1 2 2 : (' ) +a2b9 P+9-1 2 a b +9 = z w . +b) ZW - 2P( a4-b9+b ) W P(a9-bq
From 41^ (z, w) = 0 we obtain an implicit function a-b)2(p+q 1)2 w2 +O(w3). (4.19) z-O(w).--a2( 2p(aq - bq + b) 2
264
Thus from (4.18), a25 t - 1 2 ,W2 - a4bq(a-b)(P+q -1)4, 3 +O(w4 ). 2P(aq-bq + b) 2(aq-bq+b)
w)
dw = `F(t(w), Tr
(4.20)
According to Theorem 11.7.1 of the book15 by Zhang and others, Bo is a saddle-node, and in the (w, z)-coordinates the parabolic sector of the saddlenode lies in the left-half plane.
In case b = q"1, both two eigenvalues of the linear part of (4.16) are zero. We still consider first the 2-jet of (4.16) . dx - - 1 a2 (P-1)(q-1 )(P+q-1) 2 dt - aqx - qy - 2 P x aq (p + q - 1)xy
-2q(p+q-1)y2, a24x + aqy d = +
2 a34(P-1)(P +9-1) x2 + a29 2(p +q_,) l xy
(4 . 21)
q- 1
z 1 a9 (P+q-1) 2 2 q-1 y
With change of variables x = x, z = -aqx - qy, system (4.21) can be written as a2(P+q-1 ) 2 2 - P+q-1 2
Ax- = z + 2p x 2q z ' (4.22) 2 dz - a3q (P+q-1)2 2 _ (p+q-1 ) Z. 2(q-1)
WT p x
it x = X ,W = z + a2(p+g-1)2x2 - p+^z2. Then (4.22) can be rewritten as 2P 2q dx dt
= ,^
dw dt
- a 3 q(p+q-1) 2 x2 - a 2 ( p+q-1) 2 xw + 0(1)w 2. 2p(q-1) P
,
From Theorem 11.7.3 in the book" by Mang and others, we know that 0 is degenerate. Theorem 3 implies that a saddle-node bifurcation happens for system (1.3) when parameters a, b, p, q vary from {(a, b, p, q) : a > 0, b > 0, p, q E q } to {(a, b, p, q) : a > 0, b > PP q- 1 1 ) a , and b # aql q P+q-1 P q1 PP q-l q-1 a
N, a = ao = (
0,p,gEN,
5 Hopf Bifurcation
Finally we discuss the case of center type in Theorem 2, where b > 9^, a < ao b -1 -a +b q-1
and f (x(1)) = 0, i.e., - 1 a p-l a p-1 p+ q(j)p(
)q-1 = 1. In this case the
b q-1 (q equilibrium B_ has its coordinates (x_, y_) = (^p -1 )+b)1 +b q-1 a p-1 + b q-1) ) and system (1.3) at B_ has a pair of pure imaginary eigenvalues
265
- b- aq). We will identify the multiplicity of weak focus A1,2 = ±i b(bq B_ and study its Hopf bifurcation by computing its Lyapunov numbersl0,15 System (1.3) can be expanded at the equilibrium B_ as follows -b(q - 1)x - qy + Fl (x, y) + h.o.t., di = { d = b(b(q - 1) - a)x + b(q - 1)y + F2(x,y) + h.o.t., (5.23) where h.o.t. means all terms with degree > 5, and both Fl (x, y) and F2 (x, y) are polynomials in x, y, consisting of 18 terms.
With change of variables z = (-bq + b)y + (-b2q + b2 + ab)x, w = -Ily, where SZ = b(bq - b- aq), system (5.23) can be written as { dt = -S2w + F3(z, w) + h.o.t.,
dt
= 1 z + F4 (z, w) + h.o.t. J , (5.24)
where both F3 (z, w) and F4 (z, w) are polynomials in x, y, consisting of 18 terms. Furthermore, by taking the polar coordinates z = r cos 9, w = r sin 0, system (5.24) can be expressed as !ir dt = r2G2(8) + r3G3(9) + r4G4(9) + r5G5( o) + o(r5 ),
{ ^e = Q + rHl (0) + r2H2 (0) + r3H3(0) + o(r3).
(5.25)
Eliminating t in (5.25) we obtain TO = r
2G2(9)/Z + r3(G3(0) /0 - G2(0)H1(9)l112)
+r5(G4(o)/S2 - G3(0)H1(0)/12 - G2(o)H2(o)/S22 +G2(9)H2(6)/c2) (5.26) 2 +r (G5(o)/St - G4(9)H1(o)/52 - G3(o)H2(o)/S2 +G3(o)H1(o)/Q3 /114 + 2G2(0)Hl(o)H2(9)/Q4 - G2(o)H3(0) G2(8)Hl (e)/f24 ) + o(r5),
where G2 (9), G3 (0), G4 (9), G5 (9), H1 (0), H2 (0) and H3 (9) are polynomials in sin 0 and cos 0, consisting of 83, 451, 986, 2620, 78,429 and 983 terms, respectively.
In order to compute Lyapunov numbers of the system, we consider the formal series 2 5 r(o,ro) = r1(o)ro + r2(0)ro + r3(0)r3 + r4(0)r4 + r5(0)ro + o(ro) (5.27) together with the initial condition r(0,ro) = ro, where Irol is sufficiently
small. Substituting (5.27) into (5.26) and comparing coefficients of each term of ro, ro, ro, ro, ro, ..., we obtain that ddb = 0, ddb
d
= r2 G2(o)/ 1,
= r3(G3(0)/Z - G2(0)H1(0)l1Z2) + 2rir2G2(o)/Q.......
(5.28)
Here the initial condition is equivalent to r1(0) = 1, r2(0) = r3 (0) _ •• = 0.
(5.29)
266 It is known in the theory of weak foci that r2 (27r) = r2 (0) = 0, being the same as all Lyapunov numbers of even order. By solving (5.28) and (5.29) in aid of Maple V5.1, we get the Lyapunov number L3(a,b,p,q) = 2-,r3(27r) _ q b(bq - b-aq)(aP-a+b +2aq-bq )( aP-a+bq-b)9 16b3 ( a+b-bq )(aq+b-bq)
(5.30)
This implies the following Lemma 2 Suppose p and q are positive integers, q > 1, a > 0 and b > q If a < ao = n++qq J)P ql ) a , then L3 (a, b, p, q) < 0 (resp. = 0 and > 0) when q -1a < b (resp. = b and > b). q-1 Furthermore, when b = P +9a, we need to compute in aid of MapleV5.1 the Lyapunov number of order 5 q(p+q)(q- 1)7'2(p+q- 1)512K(p,q) L5 (a, b, p, q) = 1 r5(21r) = 2a 18a4p4(p + 2q - 1)9/2(p + 2q - 2)3
(5.31)
where b has been eliminated and K(p, q) = p3 + 4gp2 - 3p2 + 2qp - 2p + 4q2 - 8q + 4 = p3 + (4q - 3 )p2 + 2(q - 1)p + 4(q - 1)2. (5.32)
Clearly, K(p, q) > 0 and zeros of L5 (a, p, q) are decided by its factor K(p, q) and the sign of L5 (a, p, q) is that of K(p, q) when q > 1.
Summarizing Lemmas 2 and (5.32), by Hopf bifurcation theory10,15, we obtain the following theorem. Theorem 4 Suppose that p, q E N, q > 1,a > 0, b > 9^, a < ao = 1 b Pn 9- 1 ( P11P q- )p and (a P- 1 +b 9- 1 )P(a P - 1 +b(q - 1 )q-1 - 1. +9-
(i) If b # a P+2q 1 , then the equilibrium B_ of system (1.3) is a weak focus with multiplicity 1 and at most one limit cycle arises from Hopf bifurcation. Moreover, B- is stable and the cycle is also stable when b > a p+2q-1 , or Bis unstable and the cycle is also unstable when gagl < b < a Pg2i-1 a P+2q-1 then the equilibrium B- is a weak focus with multiplicity (ii) If b = 2 and at most two limit cycles arise from Hopf bifurcation. Moreover, B_ is unstable and the outer cycle is also unstable, but the inner cycle (if it appears) is stable.
267
References 1. S.-L. Cal and H.-S. Tang, Bifurcations of an equation in a kind of biochemical reactions J. Appl. Math. Chin. Univ., 6(1991), 1: 145-158. 2. D. Erle, K.H. Mayer and T. Plesser, The existence of stable limit cycles for enzyme catalyzed reactions with positive feedback, Math. Biosci., 44(1979), 3-4: 191-208.
3. D. Erle, Nonuniqueness of stable limit cycles in a class of enzyme catalyzed reactions, J. Math. Anal. Appl., 82(1981): 386-391. 4. C. Escher, Models of chemical reaction systems with exactly evaluable limit cycle oscillations, Z. Phys. B., 35(1979), 4: 351-361.
5. P. Glansdorff and I.Prigogine, Thermodynamic Theory of Structure, Stability and Fluctuations, Wiley-Interscience, New York, 1971. 6. B. Hess, Oscillations in biochemical and biological systems, Nova Acta Leopoldina (N.F.), 46(1977): 103-114. 7. K.H. Kwek and W. Zhang, Periodic solutions and dynamics of a multimolecular reaction system, Research Report No. 772(2000), National University of Singapore.
8. D. Wang, A class of cubic differential systems with 6-tuple focus, J. Diff. Eqns., 87(1990): 305-315. 9. J.-X. Li, H: Y. Fan, T.-L. Jiang and X.-D. Chen, Qualitative analysis for a differential equation model of multi-molecular reactions (in Chinese), J. Biomathematics, 5(1990): 162-170. 10. N.G. Lloyd, Limit cycles of polynomial systems- some recent developments, New Directions in Dynamical Systems, ed: T. Bedford and J. Swift, Cambridge Univ. Press, Cambridge, 1986. 11. G. Nicolis and I. Prigogine, Self-organization in Nonequilibrium Systems, Wiley-Interscience, New York, 1977. 12. L. Perko, Differential Equations and Dynamical Systems, SpringerVerlag, New York, 1991. 13. J. Schnakenberg, Thermodynamic Network Analysis of Biological Systems (second edition), Springer-Verlag, Berlin-New York, 1981. 14. W. Zhang, Existence of closed orbits for a differential equation model concerning multi-molecular reactions, Appl. Math. Mech., 14(1993): 589-596. 15. Z.-F. Zhang et al., Qualitative Theory of Differential Equations, Amer. Math. Soc., Providence, 1992. 16. J.-Y. Zhou, J.-Y. Zhang and X.-W. Zeng, Qualitative analysis for a class of nonlinear equations in biochemical reactions (in Chinese), Acta Math. Appl. Sinica, 5(1982): 234-240.
REDUCED FORM OF YANG-MILLS EQUATIONS OF SU(2) ON R2,2
HE SHI Institute of Systems Science, Academia Sinica, Beijing 100080, P. R. China E-mail: hshi®mmrc . iss.ac.cn An explicit expression of a differential linear transformation is given in this note. A reduced form of the Yang-Mills equation of SU(2) on a four-dimensional flat space is obtained via this transformation. Some solutions of the Yang-Mills equation may then be obtained very easily.
1 Notations Let R2'2 be the four-dimensional space with metric ds2 = E gijdxidxj, where 911 =922=1, 933=944=-I, and gij =0 for i # j. Let gl(2) be the Lie algebra of group SU(2). The anti-Hermitian representations of a basis of gl(2) are taken as follows
_ 1 0 0 1 O i X1- (0-i)' X2= (-10)' X3- (i0
(1)
in which i = . The 12 unknown functions Aq (x), a = 1, 2, 3, i = 1, 2, 3, 4 are denoted by A! (x) = Ai (x),
A' (x) = Bi(x), i = 1,2,3,4, (2) Az(x) = Ci(x). The connections are given by Gj = Aj (x)Xi + Bj (x) X2 + Cj (x) X3, j = 1, 2, 3, 4. (3) The curvatures are given by Fjk = 0kGj - 0jGk + G;Gk - GkGj, j, k = 1,2,3,4, (4) in which the notations 0j = 0/0xj, j = 1,2,3,4.
The Yang-Mills equation of SU(2) on R2'2 consists of 12 equations3 4 > gkk (0kFik - GkFjk + FjkGk) = k=1 l where gll = g22 = 1 and g33 = 944 = -1.
268
0, j = 1,2,3,4,
(5)
269
2 Differential Linear Transformation A transformation S : u(x) r-* v(x), v = C(u) between functions u(x) and v(x) is called a differential linear transformation, by definition, if C(u) consists of linear differential operators only.4 Maxwell equation is studied by Zhang6 using differential linear transformations. The goal of this note is to find a differential linear transformation such that the Yang-Mills equation of SU(2) on R2,2 becomes a reduced form. Similar to our previous setting,4'5 we introduce a differential linear transformation as follows Ai( x ) = E ' =I
4
si jOju(x),
Bi(x) = >.
=1
sijOjv( x),
i=1,2 , 3,4, (6)
Ci(x) = Ej= 1 sijajw(x),
in which u (x), v(x), w (x) are three new functions and sij, i, j = 1,2,3,4 are unknown constants . We denote them by a matrix 3 11 312 313 314 821 322 323 324 831 332 333 334 341 342 343 344
3 Reduced Form of Yang-Mills Equation We substitute Ai (x), Bi (x), Ci (x), i = 1,2,3,4 which are given by formula (6) in Yang-Mills equation (5) and obtain certain product terms such as 02u(x)aku(x)Olu(x), j, k, l = 1, 2,3,4. The coefficients of these terms are polynomials of unknown constants sij, i, j = 1, 2, 3, 4. We set these polynomials equal to zeros and then obtain a system of polynomial equations. By using Wu elimination, 1,2 we get a solution of this system 1 -i -1 i S22=s -1-i 1 -i '
(7)
in which s is a parameter. The main conclusion of this note is the following
Theorem By the differential linear transformation given by formulas (6) and
270 (7), the Yang-Mills equation (5) turns out to be a reduced form YM,1 = Lj1D22(u) + Pjl (w)D22 (v) +Q3l( v)D22(w) = 0, YMj2 = L32D22 (v) +P,,2(u)D22 (w) +Qj2( w)D22(u) = 0,
(8)
YMj3 = Lj3D22(w) +Pj3(v) D22(u ) +Qj3(u)D22(v) = 0, j = 1,2,3,4, in which D22
=8i+82
-a3 -8q
is a linear hyperbolic operator and Lji, PP;, Qj=, j = 1,2,3,4, i = 1, 2, 3, are certain linear differential operators. For example, for j = 1 we get
4
YM11 = +s( 8 +
82
+ i83)D22 (u)
+2s2(82w + 84w - i81w + i83w)D22 (v) - 2 s2( 82 v + i83v - iO1v + C74v)D22(w); YM12 = +s(84 + i83 + 52)D22(v)
-2s2(82w + (94W - iSlw + i83w) D22 (u) +2s2 (82u + 84u - i8lu + i83u ) D22 (w);
YM13 = +s(83 - i82 - i84)D22(w) 2s2 (fly - 83v + i82v + i84v)D22 (u) +2s2(81u - 83u + i82u + i84u)D22(v). Proof The formula (8) can be obtained via direct computation.
It is trivial that any solution u (x), v (x), w (x) of D22 (u) = 0, D22 (v) = 0, D22 (w) = 0 (9) provide a solution of Yang-Mills equation of SU(2) on R2'2. Thus we have the following Proposition By using differential linear transformation given by (6) and (7), a lot of solutions of Yang-Mills equation of SU(2) on four-dimensional flat space R2,2 can be obtained from the reduced form (8) of Yang-Mills equation. The reduced form of Yang-Mills equation of SU(2) on other fourdimensional flat space has been studied in our previous work .4,1
271
References 1. W.-t. Wu, Basic Principles of Mechanical Theorem Proving in Geometries (Part on Elementary Geometries), Science Press, Beijing, 1984 (in Chinese). 2. W.-t. Wu, On the zeros of a polynomial set, Kexue Tongbao 12, 1985. 3. C.N. Yang and R.L. Mills, Conservation of isotopic spin and isotopic gauge invariance, Phys. Rev. 96 , 191, 1954.
4. H. Shi, Reduced form of Yang-Mills equation of SU(2) on R4'0, MM Research Preprints, 1997. 5. H. Shi, Reduced form of Yang-Mills equation of SU(2) on R3,1, MM Research Preprints, 1997.
6. H.Q. Zhang, Exact solutions of Maxwell equation, Applied Math. Mech., 1981.
A PARALLEL APPROACH OF THE CONSTRAINED NORMAL FORM OF A PERTURBED KEPLERIAN HAMILTONIAN ALIN BLAGA ENSEEIHT, 13 rue Villet, F-31029 Toulouse Cedex, France E-mail: alin . blagafc-s.fr
Extended Abstract This paper proposes a parallel alternative to a sequential algorithm used in the normalization theory of a perturbed Keplerian Hamiltonian, as a direct application into the artificial satellite theory. The main idea of the normal form algorithm is to transform a power series, representing a Hamiltonian system with small perturbations of the Kepler Hamiltonian, into a new one, which preserves the Hamiltonian form of the equations of motion. Depending on the so called nth order of normalization, the process will be repeated n times:
the initial Hamiltonian - the first order normal form -3 H
H(')
the nth order normal form. H(n)
So, let be the perturbed Keplerian Hamiltonian of degree n: H= Ho + EH1+ 6 iH2+••• the Keplerian Hamiltonian the perturbing terms where a is a small parameter, meaning that the influence of the perturbing terms is weak with respect to Ho. We say that H is in normal form if {Ho,Hj}=0, i=0,1,2,...
The Poisson brackets of two smooth functions f, g : T1I -+ IR is: If (xi,... ,xm,yi,... , ym),g(x1,...,ym
272
)} _ m M Of 8g of a9 l -/ .
8xi 8yi
8yi 8xi
273
Following the definition of the normal form and the proprieties of the Poisson brackets, we say that H is in the first order normal form if {Ho, Hl 0. One can see that {Ho, Ho} always cancels. Now, regarding the transformation that normalizes H, we must introduce the Lie formalism and its important splitting lemma that leads to the algorithm. The environment taken into account is a Poisson algebra with its domain as a space of smooth power series. A Lie series is a formal power series defined as: °O n
we = ezp (ead f) _ nIad f, f E F, n=0
where ad f is nothing but the Poisson brackets restated as a linear map on the space of smooth power series, F. To find the normal form of H one must use formal coordinate changes of the form cp f :
H(') = ((pG')*H=Ho+e(Hl+adG,Ho)+ 2 + 2i (H2 + 2adG, H1 + ad2G1 Ho) +O(e3), W2
where G1 E C°° (R71) has to be found. But when {Ho, Hl + adG, Ho } = 0? One can see that if we decompose Hi = Hl + Hi such that Hl E ker adH0 and Hi = adH0Gl, then {H0,W1} = 0, which is what we wanted. The decomposition above will be made using the splitting lemma. Once we obtained the first order normal form, the same process applies for higher order normal forms and this implies an important amount of algebraic computations (lots of Poisson operations). To overcome this situation lets see that ad9H; and adyHH can be computed independently, in a parallel way. The change of coordinates n
(coG1)*H= E iadG1H n. n>O
274
builds the Lie triangle, from which one can isolate the parallel tasks: e2
Ho +EH1
e3
+2i H2 +3iH3 +...
+eadG, Ho +e2adG1 H1 + 2i adG, H2 + • • 2 3 +2^adc1Ho +2iadd1H1 +...
(1)
e3
+-ad3G1Ho +••• 3!
Ho +e(Hi + adG, Ho) + • • • Following the Lie triangle (1), the parallel processes start with the first line, column by column and continue their task walking on the diagonals (Al) Ho -* adG, Ho -^ ad2G1 Ho -+ ... 21 H1 -^ ... (P2) H1 -3 adG, Hl -* adG
and applying the higher order derivation rule of the adjoint map ad' ,'f = ad9 ad9-1 f. So, each processor have to compute the adjoint map for specific data input, k adfg, defined as: POLYNOMIAL ad (REAL k , POLYNOMIAL f, POLYNOMIAL g); (2) The principle of the parallel algorithm, follows the Bernardin's idea of writing Maple code on an Intel Paragon processors. A process picks up data from a shared stack, in the form element = [[k1, k2 , ... , k,], f, g], sends the result of f, = kl ad9 f and pushes back the element, for further references, as new-element = [[k2i k3 , ... , kn], adgf , g]. In this way we keep track of the computed adjoint maps. Finally, fl goes to a shared list , out, where we store the normal form. For example, when a process pi pops-up the element3 it will push the new element element3 = [[(42), ( 3), ... , (nn 2), , ado,H2 , Gl, on the stack and ends the job with 3adG, H2, which goes to the out list at the third position. When a new process p, pops-up element3 again , then it sends to the output the algebraic expression 6adG, (adG, H2) = 6ad2G1 H2. The master will have to
275
initialize the stack and add the elements to the out list as they arrive on their corresponding position: -out= = Hi + i adG,Hi_1 + i(i 2 1) ad2G1H=_2 + • •
pop
stack IIIIIIIIIII out list
E
Figure 1. Architecture of the parallel normal form algorithm. p represents the master process that controls a shared stack for all the slaves /Z1, p2, µ3, ..., µp•
Extended work on the normal form theory is not presented in this article, namely the constrained normal form, where the Poisson brackets introduce the Grobner bases theory. This situation comes from the fact that the splitting lemma applies only when the vector field of the Hamiltonian has periodic flow (when the two bodies does not collide). The Moser regularization process introduces two constraints and their Grobner basis, used in computing the Poisson brackets.
A STABILITY AND DIVERSITY ANALYSIS ON A MATHEMATICAL MODEL OF THE INTERACTION BETWEEN HIV AND T-CELL CD4+ Y. ISHIDA Toyohashi University of Technology, Tempaku, Toyohashi, Aichi 441-8580, Japan E-mail: ishida ®tutkie .tut.ac.jp With the aid of symbolic computation and simulation, we made an stability analysis on a generalized model of an interaction between HIV and T-Cell CD4+. Nowak and May have proposed a dynamical model to account for their antigenic diversity threshold theory. We examine a more general model that can relax the extreme assumption of generalist/specialist. The antigenic diversity threshold as a stability condition for the generalized model is obtained.
1 Introduction Nowak and May have proposed a dynamical model to account for their antigenic diversity threshold theory'. The antigenic diversity threshold as a stability condition 1,2 of HIV population comes from the asymmetrical character of the interaction between HIV (the human immunodeficiency virus type 1) and T-cell (CD4+ T helper lymphocytes); HW as a generalist and T-cell a specialist2 . That is, T-cell can kill specific type of HIV strain only, while HIV can any type of T-cell. We generalize their model so that it allows the cross-terms in not only killing by HW but by T-cell, thereby introducing the possibility of making HIV a specialist and T-cell a generalist in the model. With the generalization, we are interested in mathematical structure that allows the diversity threshold to be a crucial factor for stability. Specifically, we are interested in how the diversity threshold is related to stability when asymmetry in the interaction is relaxed to some extent. 2 The Generalized Model
We are concerned with the following model3 which is a generalization of the model by Nowak and May': v i = vi (bi -
E
n 1=1
pijXj ),
J =1
1, ...
,n),
n
n xi = (I:
(i =
kijvj) -
Xi(E j=1 Cijvj), 276
(i
=
1,...
,n),
(1)
277
where vi and xi are time dependent variables indicating the population size of HIV i strain and that of its corresponding clones of T helper lymphocytes stimulated by the HIV i strain, respectively. The parameters bi, pij, kij, and cif are all positive which represent the net replicating rate of HIV; the rate of elimination of HIV by the immune response specific to i strain as well as by the other j strain; the rate of stimulation of T-cell; and the rate of depletion of T-cell by HIV, respectively. For the stability analysis of the above generalized model, we use the following definition of HIV stability. The stability of HIV population means that starting from any initial state such that (vi (0), . .. , vn (0), x1(0), ... , xn (0)) = (vio,... ,vno, 0, ... , 0), it must hold that // llmt ->oo (vl (t), . .. , v, (t ), x1(t ), ... , xn (t )) = (vii, ... , vni, xii, ... , xni) where v 1 0 , . .. , vno, vii, ... , vni, xii, ... , xni are nonnegative numbers. In this definition, the initial virus population can be any nonnegative number and the initial (stimulated) T-Cell population must be zero. The virus must be kept constant or go extinct. The T-cell population size can end up with any nonnegative number.
3 Stability of the Model If the parameters are as in the original model: pii(- pi) > 0, kii(- ki) > 0, pij = kid = 0(i 74 j) and ci* = uie where e is a unit vector, then the stability condition can be described as2:
n i=1
bai
<
(2)
piki
6iui of the above represents a net replicating rate of i strain. WhenEach term pi ki ever a new strain is born, the new net replicating rate of the strain is added to the left-hand side. Eventually, the total net replicating rate exceeds the threshold, and resulted in instability of HIV population. We call the following assumption the convergence assumption: vj /vi a! kji+E
and x^ + (x*)9 = j+ 954 i
kjgaq
a, , (j = 1, ... , n, j # i). In the following, we
q, i ]q q
present the stability condition of the four dimensional model of (1) under the convergence assumption. Theorem 1 The four dimensional (n=2) model of (1) under the convergence assumption is stable if; • (i) f, (0) < 0 and f2(0) < 0 in the case: f (0) < 0, f (oo) < 0, and f (a2) = 0 has no positive root;
278 • (ii) f1(oo) < 0 and f2(oo) < 0 in the case: f (0) > 0, f (oo) > 0, and f (a2) = 0 has no positive root; • (iii) f, (a2*) < 0 (or equivalently f2 (a2*) < 0) where a2 is the positive and larger root of f (a2) = 0 in the case: f (0) > 0, f (oo) < 0;
• (iv) all the conditions above in the case: f (0) < 0, f (oo) > 0; kll+ki2c 2 _pa2 kzi+k22c 2 (i = 1, 2) and f (a2) = f2(a2) c11+c12 a2 c21+ c22«2 l k _ k11 1 1 _ 21 12 , (a2) (hence, f1(0) = b1 , f c11 C21 f2 (0) = b2- c11 - C'222 1 l (00) k12 11 kzz 1z k1z 21 _ k22 P 22 (0) = f2 (0) f, (0), and , f C12 C 22 , fz(^) = b2 C 12 C 22
where f%(a2) = bi -Pi1
fi b
f(00) = 12(00) - fl (00)) One can obtain the sufficient condition corresponding to the case (i) expressed with respect to parameters as follows:
b2 - Q1 < b1 <
1,1 11 + k21 12 , where c11 C 21 = max(1 + k21P2 k12. 1 + k22Pz Q1 (k11c22+k12c21)Pl+(k22c11+k21c12)P2) c11 C 21 ' C12 C22 ' C11C22 +C12C21
and P% = P2i - pii•
(The condition corresponding to the case (ii) can be obtained by exchanging the subscripts of the above condition.) Therefore, the net replicating rate of v1 must not exceed some threshold and must be greater than another threshold that depends on the net replicating rate of v2. Thus, the conditions corresponding to the cases (i) and (ii) are qualitatively different from the diversity threshold condition (2). When the condition f,(a2) _< 0 of the case (iii) is satisfied, the condition f2 (a2) < 0 is also satisfied and hence both v1 and V2 will not explode. However, when f (0) < 0, f (oo) < 0 it is possible for v1 to explode even if f2(0) 0 and hence v2 does not explode. Similarly, v2 can explode even if f, (00) < 0 and hence v1 does not explode in the case of f (0) < 0, f (oo) < 0. When {p%j } and {kij } are diagonal matrices as in the Nowak-May's model, stability can be attained only in case (iii). Therefore, v2/v1 --> a2 *(> 0) for the stable system of the Nowak-May's model. This means that the total T-cell population will be allocated against HIV so that (bi - E^ 1 p%j x j) are equal for all i. When {pij} is the diagonal matrix, special case of (iii) in Theorem 1 can be put into a simpler form. Corollary 1 If {pij} = diag(p1ip2) and f1(oo) > 0 > f2(oo), f2(0) > 0 > f1(0), then the stability condition is as follows:
b1c11 + b 2 c22 + p1p2k21k12 - b1p2k21c12 - b2p1k12c21 - bib2det{cij} < p1k11 p2k 22
p1p2k11k22
279
4 Symmetry- Based Reasoning and Stability Analysis Symmetry-based reasoning (SBR) is a method of identifying and using invariance by applying transformations to a formula and checking if the transformed one is equivalent with the original one. Theoretical grounds and implementation by symbolic computation4 are discussed elsewhere.
We have presented several threshold conditions: F({bi}, {pij}, {cij }, { kij }) < 1 where F({bi}, {pij}, {cij}, {kij}) denotes the function of the parameters when the threshold is normalized. Stability condition for population dynamics can be formulated to the inequality similar to the above. SBR can be used not only to check (after it is obtained by usual stability analysis) the form of F({bi}, {pij}, {cij}, {kij}) but also to constrain (or identify in some cases) the possibility of the form. The following symmetries (invariances) are available for the stability analysis of population dynamics. • Symmetry defined by transformations of the coordinate that would not change the stability. • Scale symmetry that are used in the Dimensional Analysis. • Symmetries embedded in the original equation such as the invariance after permutation of subscript. • Symmetry that should be valid specifically for the equations of population dynamics. The equation should not discriminate two species whose parameters are equivalent with each other. Since the stability analysis of nonlinear system is often difficult, SBR that are made possible by the sophisticated symbolic computation may be a candidate for alternatives. There are theoretical aspects (such as the relation between the symmetry of the original equation and that of the stability condition) which could not be discussed here. References 1. M.A. Nowak and R.M. May, Math. Biosci., 106, 1 (1991). 2. M.A. Nowak et al., Science, 254, 963 (1991). 3. Y. Ishida, Proc. of Japan Association of Mathematical Biology, (1999). 4. Y. Ishida, Complex Systems, 11(2), 141 (1997).
5. Y. Ishida, Computers & Mathematics with Applications, 39, 221 (2000).
EXACTLY 20 YEARS OF MAPLE GASTON H. GONNET Institute of Scientific Computing, ETH Zentrum, CH-8092 Zurich, Switzerland E-mail: gonnetOinf. ethz.ch
On the early days of December 1980, Maple was compiled and run for the first time. Shortly after that day, during the Christmas break of 1980, Maple was used to solve a 140 by 140 system of linear equations over the rationals, its first achievement to become published. Now, at the end of its teenagehood, it is appropriate to evaluate what have been the main contributions it made to the discipline.
This talk will cover some anecdotes and our opinion on what have been the contributions and the flaws of its development. Some of these are: (1) Maple was the first language to be compiled in C (actually first in B, a descendant of BCPL). It was the first language to stay away from Lisp and also considered size and efficiency very seriously. (2) Maple had always a small kernel , and a single language both for users and developers . This was deemed beneficial to the users.
(3) The extensive use of the "option remember" showed unequivocally its usefulness as an efficiency and programming tool.
(4) Maple made extensive use of heuristic algorithms, in particular GCDHEU and the testeq, hence proving their usefulness in computer algebra. (5) The notion of RootOf, the representation of a root of an equation as a data structure, on which operations can be performed. This was generalized to other similar situations, most notably to DESo1, the solution of an ODE. (6) The type system, which allows very precise type testing, pattern matching and subexpression selection. Types in Maple are objects as any other object in the system. (7) On the negative side, the initial designers missed the importance of a good user interface and were quite disappointed to discover that many users prefer colourful graphics to correct results. But that is also part of reality.
280
DRAGONFLY : A JAVA-BASED IAMC CLIENT PROTOTYPE WEIDONG LIAO AND PAUL S. WANG Institute for Computational Mathematics , Department of Mathematics f9 Computer Science, Kent State University , Kent, Ohio 44242, U.S.A. E-mail: wliao0mcs . kent. edu, pwang0mcs . kent.edu Dragonfly is an evolving prototype client for Internet Accessible Mathematical Computation (IAMC). Developed in Java, Dragonfly is a protocol-compliant end-user client for making mathematical computing readily available on the Web/Internet . Features of Dragonfly include remote help, input editing, command template, history, textbook-style mathematical expression display, as well as interactive display and manipulation of 2-D and 3 -D plots of mathematical functions. To represent graphing data, an XML-based MathML extension for graphing is proposed. Dragonfly also features an architecture for easy extension . A system demonstration supplements the paper presentation.
1 Introduction The Internet and the World-Wide Web make many kinds of information and services easily accessible. Ad-hoc methods have been used to make mathematical computing available on the Internet/Web. On SymbolicNet for example, one can find demonstrations of mathematical computations ranging from differentiation, integration, polynomial factorization, to plotting of curves and surfaces and LATEX code generation. Such access is made through direct TCP/IP link, remote X connection, CGI scripts, or Java Servlets/Applets. The Institute of Computational Mathematics (ICM) at Kent State University, together with collaborators at other institutions, is pursuing the IAMC (Internet Accessible Mathematical Computation) research project to address a number of critical issues for interactive access to mathematical computing on the Internet. The goal of IAMC is to make all kinds of mathematical computations easily accessible on the Web and the Internet. This topic is a focal point of discussion at the 1999 IAMC Workshop, part of the International Symposium on Symbolic and Algebraic Computation (ISSAC'99), held late July in Vancouver, Canada. For more background and related activities, the reader is referred to the online Proceedings of the IAMC'99 Workshop, the IAMC homepagea, and the Workshop on The Future of Mathematical Communication (FMC Dec. 1999)b. ahttp://horse . mcs.kent . edu/icm/ research/iamc bhttp://wv.msri . org/activities /events/9900/
281
282 The design and implementation of an IAMC client prototype, Dragonfly, is the topic here. Among the many IAMC components, the client prototype is the most important in making the system appealing and attractive to endusers. A short review of user interface systems for scientific computing and an overview of IAMC set the stage for presenting the design and features of Dragonfly.
1.1 Scientific User Interfaces A well designed user interface can make scientific systems not only more appealing and convenient but also more powerful. On top of the the usual requirements, a scientific user interface must understand and support the display and manipulation of mathematical symbols, expressions and formulas, as well as plots of curves and surfaces. An important trend in scientific user interface research is to separate user interface from the back-end compute engines. Different user interface features have been explored: two-dimensional editing of mathematical formulas in experimental systems such as MathScribe, GI/S, or SUI and later in mathematical assistants such as Milo and Theorist; quality curve and surface plotting in Axiom, Maple, Mathematica, and SUI; separating the user interface from the compute engine in Maple Polyith, CaminoReal, MathStation, SUI, and CAS/PI". As an example of a user interface for compute engines connected over a LAN, GI/S by Young and Wang4 explored many sophisticated features. Designed for the Unix/X11 environment, GI/S employs a window manager to allow multiple overlapping windows, popup menus, command line editing, history mechanism, and 2 or 3 dimensional mathematical function plotting. A distinct feature of GI/S is its use of display data structure that is not necessarily related to the expression data structure used by the underlying compute engine . This helps the separation between user interface and compute engines. SUI (Scientific User Interface)' improves GI/S in several aspects. The SUI-to-engine interface defines categories of requests: display request, request to another engine, request to SUI, request for generic services. These make SUI a more formalized client-server system. SUI also adds concurrent use of the different servers and provides buttons to interrupt back-end computations from the user interface. For more information and references on user interfaces for computer algebra systems, the reader is referred to the survey article12 by Kajler and Soiffer. In the Internet area, the IBM digital publishing group has released the experimental Techexplorer, a Web browser plug-in that dynamically formats
283
and displays documents containing scientific and mathematical expressions coded in Tex/Latex. Some MathML is also supported. Techexplorer also allows a user to send expressions to a fixed compute server for evaluation. WebEQ18 from Design Science, Inc. is a Java package that can be used to display WebTex and MathML in a Java application or applet. 2 IAMC Overview Dragonfly is a prototype client for IAMC14, a distributed system to make mathematical computing easily accessible and interactively usable on the Internet. The overall IAMC architecture is shown in Fig. 1. In summary, IAMC consists of the following components: 1. IAMC client (Icl) - The end-user agent to access IAMC servers. 2. IAMC server (Isv) - The server providing computational services through the IAMC protocol layers. An Isv may use external compute engines to perform mathematical computations. 3. Protocol layers - A series of protocols (Fig. 2) connecting Icl and Isv. 4. Mathematical Data Encoding - Standard or user-defined mathematical data encoding formats. 5. The External Engine Interface (EEI) - Specifications and API implementation for binding existing compute engines to IAMC servers.
IAMC Applicdion Layer IAMC Session Control Layer Mdhemdicd Computation Layer
TrsnspnrtLger crcp,n°) Local Machine
Remote Host
Figure 1 : IAMC Architecture
Figure 2 : IAMC Protocol Model
2.1 Mathematical Data Encoding Mathematical data encoding is an active research topic in mathematics and the symbolic computation community has lead the way in this area14 OpenMath1 is a standard for representing semantically rich mathematical objects and making them exchangeable between mathematical and nonmathematical systems. MP7 is another mathematical data encoding format that uses binary-encoded annotated parse trees for efficient exchange of mathematical expressions. For the Internet/Web, MathML10 defines a hypertext-
284 based standard for both presentation and content markup of mathematical expressions. IAMC supports MathML and MP encodings by default. The reason to choose MathML is that MathML encoding format is expected to be widely used in Web pages and supported by mathematical software. Several scientific packages are now providing support to MathML content encoding as input and presentation encoding as output.10 The rendering software for MathML is becoming widely and freely available. Dragonfly interfaces to WebEQ as rendering software for mathematical expression display. 2.2 A Graphing Extension to MathML The SIG" package defines a simple but effective method to represent graphs. The disadvantage for this method is that its data representation is ad-hoc. In an open environment like IAMC, a more structured encoding format is desired. XML19 is a good choice for this purpose. XML can encode both presentation and semantic information, which is essential to the IAMC framework. XML is aslo becoming an encoding standard for data exchange. Many Application Programming Interfaces (API) are available to make XML encoding/decoding easy. Because MathML is also an application of XML, it won't be necessary to define another markup language. Extending MathML seems a good way to include mathematical graphing information. Several new tags have been added to MathML, including <math-graph>, <xrange>, , . This representation for mathematical graphing data is called MathML/Graph. For detailed information about MathML/Graph, The readers are referred to ICM technical report in ICM home page9. Dragonfly is part of the IAMC prototyping effort13 that also includes an MCP protocol library, a server (Isv), and an external engine interface (EEI). Hereafter we will focus on Dragonfly. 3 Dragonfly Capabilities and Organization As a prototype IAMC client, Dragonfly has these functional requirements: 1. Connect to one or more user-specified IAMC servers 2. Obtain capability and usage documentation from the IAMC server and make them available to the user 3. Receive computational, control and help commands from the user and send them to the server
4. Parse infix mathematical expressions entered by the user 5. Receive results from the server
285 6. Display mathematical symbols and expressions in textbook-like fashion 7. Plot mathematical curves and surfaces 8. Present command templates from server to the user as required 9. Display server dialog and relay user data thus obtained back to the server 10. Encode/ decode mathematical and graphical data 11. Connect and communicate with server using the MCP protocol 12. Provide an architecture and organization to allow easy extensions and plug-ins to add features and functionalities as the prototype evolves Corresponding to the above requirements, the main components and the corresponding Java class packages for Dragonfly are listed as follows. • org.icm.IAMC.icl- The Overall Control Classes for Dragonfly • org.icm.IAMC. icl.ui - User Interface Package • org.icm .IAMC. icl.render - Mathematical Expression Rendering Package • org.icm .IAMC. icl.plot - 2-Dimensional and 3-Dimensional Plotting • org.icm .IAMC.icl.parser - Parser for mathematical expression • org.icm .IAMC. icl.help - Help library • org.icm.IAMC. icl.util - Utilities
• org.icm .IAMC.icl.MCP - MCP Protocol Library • org.icm .IAMC.icl.ISCP - IAMC Session Control Protocol Library Dragonfly is developed on the Java 2 platform, with the WebEQ Java library and IBM XML4J as supporting packages. Swing/Java 2D in Java 2 platform are employed to implement the user interface, the HTML-based help facility, and 2-dimensional and 3-dimensional mathematical function plotting and manipulation. WebEQ is used for rendering mathematical expressions in textbook style. XML4J helps encoding/decoding of MathML/Graph data.
4 Using Dragonfly When Dragonfly is initially invoked, a browser window appears that contains a Location Box, an Output Panel and a input Command Box. The user can select or type a desired IAMC URL in the Location Box, which identifies an IAMC server possibly anywhere over the Internet. Dragonfly then connects to the target IAMC server. If the connection succeeds, a welcome message from the IAMC server (Isv) appears in the Output Panel. Otherwise, an error message appears, stating what went wrong with this connection. The Command Box is for typing user commands, which will be echoed in the Output Panel simultaneously. This command typed in Command Box will be sent to the Isv and the result obtained will be shown in the Output Panel in 2-dimensional format. A button labelled Remote Help next to the
286 ^, i+imc //hurse mcs kunt edu:9899 Dr 1juntty
dlt uibW Font T mplgte Oi u Hl^p . .. :.. .. _ __.
a
BPsc[nneCt
Connect
mean
!Location: ismc: // horse. mcs . kent. edu: 9899 expand (( x+1)•(x+2)); X2+ 3X+2 integrate ( f(x),x);
f F (X) dX > diff (log(x),x);
sgrt (- 9`x"2•y);
? Remote Help
Figure 3 . Main User Interface and Command Template
Command Box is for getting help about computational commands and their usage from the Jsv. A detailed sample Dragonfly session can be found in the technical report on Dragonfly that can be found in ICM home pages. In general, the usage of Dragonfly follows these steps: 1. Start Dragonfly
2. Enter IAMC URL in the Location Box 3. Check available commands and their usage for the current Isv by clicking on the Remote Help button 4. Enter commands and view results , possibly connecting to another Isv 5. Close Isv connections and exit Dragonfly
287 5 Remote Help While all IAMC servers can perform basic computational operations, their capabilities and usages vary. Providing a way to check the commands supported by an Isv and to obtain their usages becomes essential. The Dragonfly Remote Help is a solution. The Remote Help facility can be triggered by clicking on a button labelled Remote Help. Once Dragonfly connects to an Isv, the Remote Help button is enabled. Clicking on this button will send a message to the Isv to obtain the Isv-specific help document that is in HTML or other MCP-accessible formats. The help information will be displayed in a pop-up Help Window. The Remote Help button is context-sensitive. If the Command Box is empty when Remote Help button is clicked, a list of available commands will appear in the Help Window. If the Command Box contains a command, the Remote Help button retrieves a detailed description about this command. 6 User Commands The current version of Dragonfly provides two facilities for users to enter commands. A Command Box in the Dragonfly main workspace, as shown in Fig. 3 can accept the commands in text format. Besides, a Command Template is also available from the Dragonfly Menu to help enter many useful commands correctly. Later on Dragonfly will introduce a two-dimensional editor to enable users to edit mathematical expressions in a visual way. Commands typed in the Command Box will be echoed in the Output Panel as well. The Command Box supports convenient text editing for modifying commands and correcting typing errors. The Command Template is a mechanism to guide the user to enter commands and arguments correctly. Simply put, a command template is a dialog for users to fill in the variables, expression, and parameters corresponding to a mathematical operation. The Command Template window in Fig. 3 shows a template for an integration operation. Not all mathematical operations have templates available. The commands with templates available can be found in Template menu and their command templates can be invoked there too. The commands entered through Command Box or Command Template are saved in a history buffer for later reference. The commands previous typed in Command Box or Command Template window can be tracked by using history command. All these commands are organized in a history list in which each command is assigned a number. This number can be used to invoke the corresponding command, which leads to a generalized redo facility.
288
7 Output Panel and Mathematical Expression Rendering The Output Panel in Dragonfly provides full features for users to track computational sessions. It not only outputs the results, but also echoes the commands entered in Command Box. The content in Output Panel can also be saved in disk files, in MathML or MP format, for later use or for transmission to another Isv. The Output Panel displays the mathematical results are in 2-dimensional graphical format by defaulti, but the users can also to select other output formats including infix, prefix, postfix, MathML, and MP from the Output menu. Dragonfly leverages the WebEQ class library to render mathematical expressions in 2-dimensional form. WebEQ renders mathematical expression by using a rendering tree. The nodes of a rendering tree consists of "schema" classes which correspond to different mathematical notation layout schemas, such as fractions, superscripts, square roots, etc. To render an expression, the expression is first parsed to create a rendering tree. The rendering tree is then installed in a so-called Equation Panel that performs the actual 2-D rendering.
r'\
000
i
].a1 I TITT` I 'TZT 1 /
.va asi -i u nxs -o n oo
n i s 1 oa xsi .u
Figure 4. 2-d and 3-d Plotting
8 Mathematical Graphs Dragonfly supports 2-dimensional and 3-dimensional plotting. It plots 2D/3D graphics in a separate window and allows interactive manipulation of the graphics displayed. The Dragonfly plotting module takes MathML/Graph
289
(Section 2.2) encoded data from any Isv and performs rendering and interactive manipulation. The functionalities are powered by Java 2D. 1. The user enters the plot command in the Command Box 2. The plot command is sent to the Isv
3. The Isv forwards the plot command to a compute engine 4. The coordinate data is returned to the Isv 5. The Isv encodes the coordinate data set, by XML, in MathML/Graph 6. The Isv compresses the MathML/Graph encoded data before sending back to the Icl 7. The Icl decompresses and decodes the MathML/Graph data 8. The graphics is rendered in a Dragonfly Graph Window Figure 4 shows the 2-D and 3-D Graph Window. 9 Future Work Dragonfly demonstrates a prototype IAMC client . It will surely evolve as the IAMC architecture moves forward . Continuing work include the support of MP- encoding format and a sophisticated mathematical expressino editor. Efforts are also ongoing integrate Dragonfly with a Web browser , as well as other Internet client software . Dragonfly can open the door for students, teachers , scientists, and engineers to access a wide variety of services involving mathematics on the Web and Internet. Acknowledgements Work reported herein has been supported in part by the National Science Foundation under Grant CCR-9721343 and the Ohio Board of Regents Computer Science Enhancement Funds. References
1. ABBOTT, J., DIAZ., A. and SUTOR, R. S. Report on OpenMath. ACM SIGSAM Bulletin (Mar. 1996), 21-24. 2. BORENSTEIN, N. and FREED, N. MIME: Mechanism for Specifying and Describing the Format of Internet Message Bodies. The Network Working Group RFC-1521 (Sept. 1993). 3. DOLEH, Y. and WANG, P. S. SUL• A System Independent User Interface for an Integrated Scientific Computing Environment. In Proc. ISSAC 90 (Aug. 1990), Addison-Wesley (ISBN 0- 201-54892- 5), pp. 88-95.
290 4. YOUNG, D. and WANG, P. S. GI/S: A Graphical User Interface for Symbolic Computation Systems. Journal of Symbolic Computation 4/3 (1987), 365-380.
5. FATEMAN, R. J. Network Servers for Symbolic Mathematics. In Proc. ISSAC'97 (1997), ACM Press, pp. 249-256. 6. FIELDING, R., GETTYS, J., MOGUL, J., FRYSTYK, H. and BERNERS-LEE, T. Hypertext Transfer Protocol - HTTP/1.1 (Jan. 1997). 7. GRAY, S., KAJLER, N. and WANG, P. MP: A Protocol for Efficient Exchange of Mathematical Expressions. In Proc. ISSAC'94 (1994), ACM Press, pp. 330-335. 8. GRAY, S., KAJLER, N. and WANG, P. Design and Implementation of MP, A Protocol for Efficient Exchange of Mathematical Expressions. Journal of Symbolic Computation 25 (Feb. 1998), 213-238. 9. ICM TR (ICM-200009-0004) http:// icm.mcs . kent . edu/icm/reports. 10. ION, P., MINER, R., BUSWELL, S., DEVITT, A. D., POPPELIER, N., SMITH, B., SOIFFER, N., SUTOR, R. and WATT, S. Mathematical Markup Language (MathML) 1.0 Specification. (www.w3.org/TR/1998/ REC-MathML-19980407) (Apr. 1998).
11. KAJLER, N. CAS/PI: A Portable and Extensible Interface for Computer Algebra Systems. In Proc. ISSAC'92 (1992), ACM Press. 12. KAJLER, N. and SOIFFER, N. A Survey of User Interfaces for Computer Algebra Systems. Journal of Symbolic Computation 25 (Feb. 1998), 127-159. 13. LIAO, W. and WANG, P. S. Building IAMC: A Layered Approach. In Proc. International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA'00), pp. 1509-1516.
14. WANG, P. S. Design and Protocol for Internet Accessible Mathematical Computation. In Proc. ISSAC'99 (1999), ACM Press, pp. 291-298. 15. WANG, P. S. Internet Accessible Mathematical Computation. In Proc. 3rd Asian Symposium on Computer Mathematical (ASCM'98) (Aug. 1998), pp. 1-13. 16. WANG, P. S. A System Independent Graphing Package for Mathematical Functions. In Proc. International Symposium on the Design and Implementation of Symbolic Computation Systems (DISCO'90) (Apr. 1990), Springer LNCS 429, pp. 245-254. 17. WANG, P. S., GRAY, S. and ZHANG, B. Mathematical Computational Protocol Specification. Initial Draft (Oct. 1999). 18. WebEQ Home Page. http:// www.webeq .com/. 19. XML Home Page. http:// www.xml.org/.
THE MATHEMATICAL SOFTWARE IMPLEMENTATION FOR COMPUTATIONAL ALGEBRA AND NUMBER THEORY M. KOLODNYTSKY, A. KOVALCHUK, S. KURYATA, AND V. LEVITSKY Computer Software Department , Zhitomir Institute of Engineering and Technology, Zhitomir 10005, Ukraine E-mail: { kolod, sekito, kuryata, lev}Oziet . zhitomir.ua There is a lot of mathematical software, for instance, MATLAB, Maple V, Mathematica, Derive, and Mathcad , which can be used for teaching algebra or number theory. Some researchers , however , discovered that "the existing packages are limited in their functionality and user- friendliness" (see, for example, Proceedings of ATCM'99); these packages are "not flexible and interactive", and they "only provide one way communication between users ". Our team developed a new mathematical software , which is intended to satisfy continuously growing requirements for computer- aided teaching in mathematical sciences . We named this mathsoft "DSR Open Lab 1.0" (Dynamical Systems Research Open Laboratory). In this paper we present the features of our mathematical software implementation to illustrate how it can be effectively used in teaching . In particular, we discuss the architecture of the "DSR Open Lab 1.0" based on the authors' idea of the typology of mathematical models. We also discuss the software user interface . This interface is graphical and utilizes a sequence of stages for describing problems. We named it the "wizard" of mathematical model simulation. These models focus on the following mathematical structures : ( 1) systems of numbers, (2) algebraic systems (polynomials and groups), and (3) vector space. Also we implemented a library of numeric algorithms for all mathematical structures mentioned above.
There exists a spectrum of tools for computer-aided teaching of algebra or number theory. We can use such tools as arithmetic, scientific or graphic calculators' up to powerful algebra systems (CAS) like Maple V2 and Mathematica3. There exists also a lot of software, either available on the market or developed by researchers for themselves, which is devoted to solving some specialised computer algebra problems. Even more, nowadays there exists a growing amount of Web-applications for teaching in various fields of mathematics. Therefore, both the teachers and students are faced with the problem of how to choose the most appropriate tools for their needs. We have also tried to solve this problem4 and have tested the most popular mathematical software systems such as MATLAB (MathWorks Inc.), Mathematica (Wolfram Research Inc.), Mathcad (MathSoft), Derive (Soft Warehouse Inc.), Maple V (Waterloo Maple Inc.), PV-Wave (Visual Numerics Inc.), Macsyma (Macsyma Inc.), 0-Matrix (Harmonic Software Inc.), TK Solver (Universal Technical Systems Inc.), HiQ (National Instruments), and Scientist for Windows (MicroMath Research). 291
292 The problems with existing packages were also discussed at some recent conferences . For example, it was discovered that "the existing packages are limited in their functionality and user -friendliness", they are "not flexible and interactive", and they "only provide one way communication between usersi'.
So, there was a need to design and develop a new mathematical software, which is intended to satisfy continuously growing requirements for computeraided teaching in mathematical sciences . We implemented such a kind of mathsoft6'7 and named it "DSR Open Lab 1.0" (Dynamical Systems Research Open Laboratory). For our mathsoft architecture , we developed two main ideas that combine the most significant features of the specialized and universal software systems: - typology ( modularity) of mathematical models;
- openness of the mathsoft. The implementation of these two ideas in the software system architecture has resulted in the following features of our mathsoft:
- the 3D-architecture of this software7; - the adaptive user interface which is NOT based completely on the domain specific language8;
- the instrumental nature of this software9. In the software system the user works according to a sequence of steps. Each of them determines some stage in a task description by means of visual (graphical ) interfacelo: - user selects the type of mathematical structure; - the user selects the kind of analysis for the mathematical model; - the user types mathematical expressions that describe the model; - the user inputs additional parameters (if they are expected to appear in the task description);
- the user orders the kind of views which are used for representation of the results of the analysis (equations , graphs, tables , etc.); - the user orders methods of solving the task (if it is necessary); - the software system carries out computations and forms results in the ordered views; - the user reviews results of the task analysis with the help of appropriate tools. The scenario of the user 's work in our software system has a "step-bystep" nature (wizard-like). It distinguishes our mathsoft from other known packages. The user interface is not completely based on a domain specific language as it is in other systems2'3. The description of the task is divided into stages and only one of them uses the language. This language is wholly declarative.
293
Its statements simply define mathematical expressions of a model and they do not control the analysis of a model or the representation of results. Such limitations allow us to extremely simplify the language syntax. The user's work in our mathsoft is similar for different models. When the user chooses a new type of mathematical structure, the filling of some interface components and/or stages of model description is changed. Meanwhile the backbone of the interface is not modified greatly, and the work scenario remains the same. Therefore, the interface of the software system is tuned up according to the current model. We named this an adaptive user interface. The user utilises a domain specific language while typing expressions that describe the mathematical model. In addition to an adaptive user interface the language has an adaptive nature. Its syntax depends on the current domain (i.e. only a subset of the language is used for the description of a mathematical structure). Thus, a set of language items, such as key words, operations, and constants, is reduced to those that are actually necessary. In order to simplify the usage of language statements we provide a tool for typing mathematical expressions, the "equation builder". This tool is directed by the language syntax and has an adaptive structure as well. It means that the user observes a minimal set of buttons on a toolbar. Using information about the current model, the equation builder rebuilds its interface dynamically. Therefore, is no need for the user to keep in mind the list of functions and statement syntax for the language. Our mathsoft, "DSR Open Lab 1.0", provides the analysis of such classical mathematical structures as systems of numbers, algebraic systems (polynomials and groups), and vector space. This paper has given a brief description of some of its implementation features. It is our belief that "DSR Open Lab 1.0" can be a useful tool in teaching computational algebra and number theory.
Acknowledgments We would like say thank you to Jason Wexler, U.S. Peace Corps Volunteer, for his assistance in editing this final version of our paper.
References
1. B. Kissane . The algebraic calculator and mathematics education. Proceedings of ATCM'99, pp. 123-132 ( 1999). 2. M.B. Monagan , K.O. Geddes, K.M. Heal , G. Labahn, S.M. Vorkoetter. Maple V Release 5. Programming Guide . Springer-Verlag ( 1998).
294
3. R.J. Gaylord, S.N. Kamin, P.R. Wellin. Programming with Mathematica. Springer-Verlag, TELOS, Santa Clara (1996). 4. M. Kolodnytsky, V. Levitsky. The review of the main mathematical software systems. Computer-Aided Design and Graphics, vol. 10, pp. 56-65 (1999). 5. C.-p. Lau, T.-c. Chau, T.-y. Poon, W.-k. Tsui and E. H. Li. Interactive and multimedia learning in mathematics. Proceedings of ATCM'99, pp. 301-310 (1999). 6. M. Kolodnytsky, I. Ivanitsky, A. Kovalchuk, S. Kuryata, V. Levitsky. "DSR Open Lab 1.0" - software system for simulation. Proceedings of 21st International Conference on Information Technology Interfaces, Pula, Croatia, p. 45 (1999). 7. M. Kolodnytsky. The 3D component architecture of the application program system "DSR Open Lab 1.0" as an example of an embodiment of the concepts of the software reengineering. The Problems of Programming, vol. 4, pp. 37-45 (1998). 8. M. Kolodnytsky, V. Levitsky. The typology and architecture of a user interface of the application software system "DSR Open Lab 1.0". Part II. The lingware. The Problems of Programming, vol. 3-4 (2000, in press). 9. M. Kolodnytsky, V. Levitsky. Modern compiler construction tools. Proceedings of 2nd International Conference on Programming "UkrPROG'2000", Kiev, Ukraine. The Problems of Programming, Special Issue , vol. 1-2, pp. 345-350 (2000).
10. M. Kolodnytsky, A. Kovalchuk, S. Kuryata. The typology and architecture of a user interface of the application software system "DSR Open Lab 1.0". Part I. Component implementation. The Problems of Programming, vol. 3-4, pp. 123-132 (1999).
MATHEMATICAL COMPUTING ON NETWORK LIAN LI AND XIAO ZOU Computer Science Department, Lanzhou University, China E-mail: xzouOlzu . edu.en
1 Introduction One of the important objectives for current mathematical software research is to combine computing power of various mathematical systems through Internet. The final result should be an integrated and distributed environment for mathematical computing. There are some important and fundamental tasks around this objective. For example, computing model, communicating model, and system architecture of distributed environment; scheduling algorithm and resource management in cross-platform computation; uniform describing language for mathematical computing. In this article, we concentrate on the interoperability problem in computing models. Because there is a close relationship among these tasks, it is difficult to provide a solution for one of them without considering others. 2 Expression To solve the interoperability problem, the first step is to correctly transmit mathematical expressions among different systems, which could be divided into two questions: 1) How to recognize mathematical elements in expressions? 2) How to match prototypes of functions in different systems? Because different math systems have different languages and function sets, the technical way of traditional solutions is usually building dictionary, such as the content dictionary of OpenMath1'2, and translating expressions based on the dictionary. As a result, expressions must have the correct semantics to insure correct translation when they are transfered to the network. When the size of distributed system is relatively small and the types of mathematical systems are fairly fixed, using dictionary is a good choice. However, if the system size and the types of mathematical systems are scalable, the dictionary method will lead to some problems.
First, it is difficult to extend or update the dictionary in distributed en295
296 vironment. Second, the number of possible functions is difficult to estimate in scalable
system. Then it is almost impossible to predefine the content of dictionary. Problems mentioned above may seriously damage the interoperability of distributed systems. But, the problem is that we have to use dictionary if we still let expressions keep semantics by themselves. We find that the semantics of math elements are mainly decided by their special identifiers in each mathematical system. So, we can pick up all kinds of identifiers and manage them through name service. Moreover, we can use code mapping to replace name service. The expression only contains various codes and structure information. Code may get changed when the expression is transferred from one distributed system to another. At the target system, such an expression could be converted into the local form of target system through code mapping.
There is a problem. One function name may correspond to several different calls. Different calls have different function prototypes, which are decided by parameters. Some parameters are real operands. Others control the practical behavior of function. Operands are treated as sub-expressions. Other accessorial parameters are converted into specifications. Fortunately, the types of basic specifications are limited. In this way, the expression contains no direct semantic information. It has only index code and structure information. We use Regular Prototype to describe the structure of all kinds of atomic expressions. The definition of Regular Prototype is as follows: Code[ [Sub-Type], [Specification]+ ]; The definitions of specifications are as follows: 1) Precision Specification [Pre, _flag, [%d] ] 2) Variable Specification [Var, flag, [%s] ] 3) Pattern Specification [Pat, flag, [ _template] ] 4) Range Specification [Ran, flag, [%f, %f] J 5) Approaching Specification [App, flag, [%f] ] 6) Option Specification [Opt, flag, [%s, %s] ] 7) Value Specification [Val, flag, [%f - %s] ] 8) Step Specification [Stp, flag, [%f - %s] ] 9) Function Specification [Fun, flag, [%s+], [%s+] ] 10) Set Specification [Set, flag, [%s - %f]+ ] Specifications can be bound with each other to form compound specification.
The code mapping guarantees that expressions can be converted into the
297 local form of the target system with correct semantics. Mappings are managed by mapping server. One distributed system has only one mapping server. To connect two distributed systems, we need only to build connection between two mapping servers. In our solution, we need not predefine a dictionary to limit the behavior of all mathematical systems on the network. Updating a mathematical system, we need only to modify the local mapping. An expression could be sent to any place from where we can find a route back to the source system through the connections among mapping servers. Mathematical systems could add new computing services by adding new local mapping and refuse some service by removing the correspondent mapping. These characteristics come from the separation of syntax and semantics. They are all basic requirements of distributed environments. On the contrary, it is difficult for traditional solutions to provide similar services. 3 Network Computing In a distributed system, it is very important to divide a computing request into smaller pieces and dispatch them to several systems. Parallel execution will accelerate the speed of the whole system.
Figure 1. Local Framework
Traditional solutions could only send the entire expression without division. The reason is that dictionary hides the dynamical status of network.
298
All systems depend on same dictionary to invoke remote computing. In our solution, all expressions have the same syntax. Their semantics are controlled under the mapping service. Mapping server masters the network status through dynamical code mapping. So, it could address suitable computing location for each sub-expression. It is natural to bind computing location with regular expressions. We call such expression as Exchangeable Hierarchical Structure (EHS). The merit is that any system could compute EHS without considering its original system. The real computing location is declared by Interoperable Object Reference (IOR). It is a concept in CORBA3.
The local framework of mathematical system should be modified consequently. Figure 1 shows the structure. ORB is a component of CORBA. Although different math software owns different API, all systems attending network computing must have the same reference interface on the network. That is why we introduce Math Service Machine. 4 Conclusion Traditional solutions are obviously unsuitable for distributed computing. The reason is that dictionary hides the dynamical status of network. By separating the semantics and syntax of expressions and using different methods to deal with them, we find a new way to combine the computing power of various mathematical systems in a distributed environment. When the size of the distributed system is relatively small and the types of mathematical systems are fairly fixed, traditional solutions are better and easier to realize. However, in a larger and scalable environment, especially in a distributed environment where different types of math systems could join or leave the system freely, our solution will present better adaptability and flexibility than tradition solution. References 1. Dalmas S., Gaetano M., and Watt S. 1997. An OpenMath 1.0 Implementation, Proceedings of ISSAC 97, ACM Press, 241-248. 2. The OpenMath Steering Committee (OSC). OpenMath version 1.0 released, December 1996. http://www.openmath.org.
The Common Object Request Broker: 3. Object Management Group. June 1999. http://www.omg.org/cgiArchitecture and Specification, bin/doc?formal/98-12-01.
OPTIMALLY EXTENDING BISTANDARD GRAPHS ON THE ORTHOGONAL GRID (EXTENDED ABSTRACT) T. CALAMONERJ, R. PETRESCHI Dept. of Computer Science, University of Rome "La Sapienza", Italy E-mail: { calamo,petreschi} Odsi. uniromal.it
Y. LIU Dept. of Mathematics, Northern Jiaotong University of Beijing, China E-mail: ypliutcenter. njtu . edu.cn In this paper, we provide a linear time algorithm that, given in input an embedding of an n-vertex bistandard graph , produces in output a 2-extension , when it exists, a 3-extension otherwise. This result is the best possible according to known theoretical results . The quality of the produced extension is almost optimal , since the area it requires and the total number of bends it uses approach the lower bounds.
1 Introduction Graph drawing finds many applications in different fields because it addresses the problem of constructing geometric representations of graphs, networks and related combinatorial structures. Examples of applications are in medical science, biology, chemistry, cartografy and in different fields of computer science like software engineering, databases, VLSI, and artificial intelligence. Because of the combinatorial and geometric nature of the investigated problems and the wide range of the application domains, research in graph drawing has been conducted within several diverse areas, including discrete mathematics', algorithms' and human computer interaction4. Various graphic standards are used for drawing graphs; here we focus our attention on orthogonal grid drawing of a graph G, consisting in drawing G on a rectangular grid such that vertices are represented as dots in correspondence of grid-points and edges are polygonal chains, i.e. sequences of horizontal and vertical segments. The points where the drawings of edges change their direction are called bends. The usefulness of a drawing depends on its readability that is the capability of conveying the meaning of the graph quickly and clearly. Readability issue can be expressed by means of aesthetic criteria: number of bends and crossings have to be kept low and the area of the drawing has to be kept small. Among the aesthetic criteria, planarity is highly desirable in visualization ap-
299
300
plications. When the embedding-preserving is also required (i.e. the given clockwise order of the adjacent vertices of each vertex is required to be kept), the input of the algorithm is not simply a graph G but an embedding of G, i.e. one of its plane bidimensional drawings. In this case, the produced orthogonal drawing is called extension of G and an embedding of a graph G is said to be k-extensible if it is possible to find an extension whose representation of each edge has at most k bends per edge. When no confusion arises, in the following we indifferently speak about graph G and its embedding; in particular the faces of the graph are the faces of its input embedding. Among all the planar graphs of degree not greater than 4, bistandard graphs are particularly relevant because both they and their duals have a lot of interesting properties.
Definition 1.1 A graph G is standard if it is planar and all its vertices have degree either 3 or 4. G is said bistandard if both G and its dual are standard. In other words, bistandard graphs are planar graphs whose vertices have degree either 3 or 4 and whose faces, included the outer one, are either triangles or quadrangles. In the following we distinguish bistandard graphs according to their outer face that can be delimited by 3 or 4 vertices of degree either 3 or 4. For example, we say that a bistandard graph G is <4,4,4,3> if its external face is a quadrangle with all vertices on it with degree 4, except one of degree 3 (see Fig. 2.a). Analogously, it is possible to name all the bistandard graphs. In Fig. 3 the extensions of the outer faces of < 4,4,4,4>, <4,4,4> and < 4,4,3,3> bistandard graphs are depicted; this figure points out that any extension of a <4,4,4> bistandard graph needs at least one 3-bend edge. This observation is attested by the following theorem: Theorem 1.2 5 A bistandard graph G is 2-extensible if and only if it is not <4,4,4>. In other words, every extension of a <4,4,4> bistandard graph must contains at least an edge with three bends. We will show that bistandard graphs have a structure `onion style', consisting in a sequence of encapsulated generalized cycles (called extended cycles, that we will formally define later). On this structure we provide a linear time algorithm that, given an embedding of an n-vertex bistandard graph, produces a 2-extension, except if the graph is <4,4,4>: in this case the output is an extension in which exactly one edge has three bends. Theorem 1.2 claims that this result is the best possible. Moreover the algorithm guarantees that the quality of the extension is almost optimal, indeed the required area is never more than (n + 2)2 and the total number of bends is limited by 2n + 4. These values are very close to the lower bounds, that are (n - 1)2 and 2n,
301 respectively, for 2-connected planar graphs.l,s 2 The Algorithm For the sake of clearness, we divide this section into four parts: the first one provides the reader of all necessary definitions, in the second one we give an high level view of the algorithm, while in the last one we describe all the details; finally, last subsection contains a complete example.
2.1 Preliminaries Let G = (V, E) be a planar graph. An embedding of G is a plane representation of G in the 2-dimensional plane.
In this paper, we compute a breadth first tree T of G, rooted at the vertex representing the outer face of the embedding of G. It is well known that the following property holds: BFS Property Any non-tree edge of any breadth first tree connects two vertices lying either at the same level or at adjacent levels. In order to recognize an `onion style' structure of a bistandard graph, we need to formally define the concept of extended cycle.
Definition 2.1 An extended cycle C of a graph G is a set of edges and vertices of G constituting: • either a simple cycle (see Fig. La) • or two extended cycles connected by means of a common vertex (see Fig. 1.b) • or two extended cycles connected by means of a common simple path (see Fig. 1. c) • or two extended cycles connected by means of a non-common simple path (see Fig. 1. d) • or the disjoint union of any among the previous cases. The double lines in Figs. 1.c and 1.d represent particular edges, called double edges, that we will detail in the next subsection.
2.2 High Level View of the Algorithm The input of the algorithm is an embedding of a bistandard graph G, having external face f . The output, E(G), is an orthogonal extension of G. All edges of E(G) have at most two bends, with the only exception of one edge in the outer face, having three bends if and only if the graph falls in the hypothesis of Theorem 1.2.
302
a
c
b
d
Figure 1. Different extended cycles.
a
b
c
Figure 2. A bistandard graph where a. C1 and b. C2 are highlighted; c. breath first tree of the dual graph.
Two key-ideas are at the base of the algorithm: the first one consists in deciphering a bistandard graph G as a set of incapsulated extended cycles. The second one consists in working on a breadth first tree of the dual graph of G in order to provide all the information relative to extended cycles. The extended cycles are generated as follows. The first one coincides with the outer face f. Let G' be the graph obtained from G after the elimination of all the edges of f (see Fig. 2.b). This graph may have in the outer face some simple paths having an end-point of degree 1 (see the dotted edge in Fig. 2.b). The outer face of the graph obtained from G' eliminating these paths, if they exist, represents the successive extended cycle. We consider graph G", obtained after the elimination of all edges of the second extended cycle and go on by iterating the same procedure. Operatively, the algorithm derives all information necessary to compute the extended cycles from a breadth first tree T of G, the dual graph of G, having f as root (see Fig. 2.c).
Indeed, the root f represents the outer face, i.e. the first extended cycle. The second level of the tree is composed by faces having at least an edge in
303 common with f ; the set of all edges belonging to some face at the first level and not to f is the second extended cycle f plus some simple paths having an end-point of degree 1 (possibly none). f and f' may share some nodes (see white vertices in Fig. 2.b). The general level l identifies an extended cycle CI constituted by all the edges belonging to the faces at level l and not belonging to the faces at level l - 1. Level 1 may also generate some simple paths: the edges of these paths are called double edges because they belong to two adjacent faces at level 1, and therefore are visited twice during the generation of C1. Each such simple path can connect either two different extended cycles C1 and C1_1 or two components of the same extended cycle. Our algorithm produces an extension of G, cycle by cycle, by representing on the grid an extended cycle at a time, from the inner one to the outer face. To this aim, we map all the vertices of the extended cycles Cl, ... Ch into a sequence of concentric squares S1, ... Sh: since cycle C1 corresponds to the outer face f, it is mapped onto the bigger square S1, its vertices are mapped onto the corners and all the directions of its edges are definitively fixed (see Fig. 3). The vertices of the general cycle CI are mapped onto the l-th square, S1, taking into account the already fixed directions and the position of their adjacent vertices, placed onto Si-1. The edges of Cl are not mapped, but they can be imagined to be placed either in the middle between S1_1 and S` (when they connect a vertex of Ci and a vertex of C`_1i see Figs . 4.a and .b), or completely lying on Si (when both its end-points belong to C1, see Fig. 4.a), or completely lying on Sj_1 (when both its end-points belong to C1_1, see Fig. 4.c). No other possibility can occur, and this is guaranteed by the BFS property. This pre-drawing phase allows us to have enough information to proceed on in the building of an extension of G; to this aim we consider again the extended cycles individuated by the levels of the breadth first tree, but, this time, we move from the inner to the outer of G. The order from inside to outside is chosen to fix the definitive coordinates of the vertices as soon as possible, as we detail later. Next subsection will describe each phase in detail. 2.3 The Algorithm in Detail The algorithm consists into 4 steps.
1. Computation of the dual graph G of G. 2. Computation of a breadth first tree T of G starting from vertex f, the outer face of G.
304 V2 V
V1 $1
..
v#,
St .
2
. Zvi
T' 2 Y^+ I
s4
I '
V,
II
V2 V3
VI
0
V4
b
V'I -------+s V3 V4 C
Figure 3. Some possible configurations of the vertices of the outer face on Si. The small triangles nearby a vertex represents a freedom degree.
3. Top-down construction of extended cycles. Starting from level 1 of T and moving down, level by level, compute extended cycles, recognize double edges and map each cycle onto the corresponding square, in the following way. Let El and Di be sets containing all simple edges and double edges, respectively, of each cycle C1,1 < l < h. Consider all edges belonging to some face at the general level l and not considered at level l - 1: if an edge is considered only once, put it in El, otherwise (it is a double edge) put it in Di. Now we detail the mapping of vertices of Cl onto Si.
Let us consider C1, first. The directions of edges in f are fixed such that they lie outside the first square. If a vertex has degree 4, then also the other two directions are implicitly fixed; if it has degree 3, an outcoming edge (precisely, the edge connecting the vertex with cycle C2) maintains the possibility of choosing between two directions, in other words we say it keeps a freedom degree. This edge will fix its direction as soon as possible trying to minimize the total number of bends. In Fig. 3 we show how to fix the directions of vertices of C1 in three different cases. At general level 1, Ci `closes' some faces, in the sense that after processing all edges of Cl, some face ¢ has all its edges visited, and at least one edge has been visited just during iteration 1-1 and at least one edge has been visited just during the current iteration. Vertices of 0 in Cl - Ci_1, if any, must be positioned on the square Si, in the interval individuated by the projections on Si of the vertices of ¢ on Sd_1. If it is possible, the directions of the edges of 0 must be fixed: in Fig. 4 some possible cases are shown, and how to fix
305 S 1.1
a
........S1-1
b
S1-t
c
Figure 4. How to fix directions when a. three edges and two vertices, b. two edges and one vertex, c. one edge are added to C1 as contribution of face 0.
the directions is highlighted. Figure 4 does not enumerate all possible mutual positions between the vertices of 0, all the other ones can be easily derived. As for the outer face, the coordinates of vertices in C1 will be definitively fixed only when El and D, will be visited again during the bottom-up phase. Figure 4.b is an example in which we have not enough information to completely fix the directions outcoming from vertices in Si: there is no special reason to choose u instead of v (or vice-versa) for the left direction, and therefore we keep a freedom degree. On the contrary, Figs. 4.a and 4.c show two cases in which the directions are fixed.
Observe the importance of the input embedding of G during this step: it is enough to fix one direction of a 4-degree vertex to have all the other directions automatically fixed. 4. Bottom up drawing of extended cycles. Compute the extension of G, using the information acquired during Step 3, i.e. cycles C1, sets E1 and D1, the mapping on the squares St and the fixed directions. In this step we start from the inner cycle Ch (and consequently from its related sets, Eh and Dh) and move towards outside to cycle C1. Proceed in the following way. Let us consider the initial case, first. At level h, the inner cycle Ch has surely generated Eh = 0; indeed, all its edges, if they exist, are double edges representing chords of Ch_1. To make easier the drawing phase, the first extended cycle to be considered is Ch-1 and the corresponding sets are Eh-1 and Dh. We allocate the vertices necessary to draw the edges of Eh-1 U Dh on the grid according to the fixed directions in the mapping on the squares. Namely, if Ch-1 plus the edges of Dh form a unique connected component,
306
we definitively fix the coordinates of vertices: we put the first vertex on the grid at coordinates (0, 0) and all other vertices sequentially, moving by one row, or one column or both, depending on the fixed directions assigned to the current vertex and to vertices already lain on the grid. If Ch_1 UDh is not connected, we draw the components on separate grids and we postpone the assignment of the definitive coordinates to each time a connection edge is discovered. At the general level 1, we have to draw extended cycle C1 plus the double edges possibly found at the previous level, i.e. D`+1, therefore, we consider sets E1 and Di+1, and draw vertices and edges one at the time, following their consecutive order around C1 and taking into account the mutual position of the vertices in the input embedding and the fixed directions of the vertices already lain in the current drawing. Observe that, for the structure of the graph, for each pair of consecutive vertices u, v E C`_1, having some of their incident edges in El U D1+1, there exists a path connecting u to v whose edges (at least 1 and at most 3) belong to C` U D`+1, see Fig . 4. Therefore, if v and u are connected by an edge e in C1 U D1+1, e is simply drawn according to its fixed directions on u and v. If u and v are connected by a path containing a vertex x E C1 - C`_1 and two edges el, e2 E E1 U D1_1, consider the broken line connecting the fixed direction of e1 on u and the fixed direction of e2 on v and put x on this broken line, according to the fixed directions of e1 and e2 on it. Finally, if u and v are connected by a path containing two vertices x1, x2 E C1 - C1_1 and three edges el, e2, e3 E E1 U D1_1, proceed analogously to the previous case . In all cases , if some direction is not fixed but there is a freedom degree, consider all the possibilities (that are in constant number) and choose the best one with respect to the total number of bends. For details about the coordinates ' assignment, see the paper2 by Calamoneri and others. Finally, observe that the algorithm improves the drawing by handling either the zig-zag edges (i.e. edges bending twice, once towards the right and once towards the left, or viceversa) and the degree-3 vertices. The improvements are shown in Figs. 5.a and 5.b.
2.4 An Example To conclude this section , we consider a small <4 , 4,4,4> bistandard graph G (Fig . 6.a) and we show how the algorithm handles its embedding to obtain its extension (Fig. 6 . c). First the algorithm computes G and runs on it a breath first search . Then it considers the levels of T, from the root to the leaves and computes the extended cycles C1 : 1 -* 2 -^ 3 -; 4 -+ 1, C2 : 1 -+ 5-^ 6->2-+ 7 -*3-+ 8 ->4-+ 941,C3:6-37-*11^8^9-*10-+ 6
307
fi
0
b
Figure 5. Elimination of some bends by a. flatting a zig-zag edge and b. moving a degree-3 vertex.
a
b
c
Figure 6 . a. A bistandard graph G; b. The mapping of vertices of G on concentric squares; c. an extension of G where extended cycles and double edges are highlighted.
plus double edge (10, 5) and C4 constituted only by double edge (10, 11). Sets Ei and Di are consequently constructed. Now the algorithm executes the mapping of Ci on the squares Si and fixes as many directions as possible. Vertices of Cl are easily put on Sl and all their directions are fixed (see Fig. 6.b). On S2, vertices 5 and 6 are put between the projections of 1 and 2, because all they compose face a, vertex 7 is put between the projections of 2 and 3, and so on. On S3, vertex 10 must be at the same time between the projections of 5 and 6 (because it closes face g) and of 5 and 9 because it closes e, so it is positioned on the intersection between these two portions of S3. All the directions are consequently fixed. The algorithm now compute the extension of G from the inner cycle C3 plus the double edge C4 to the outer face.
308
3 Correctness In this section we assert that the algorithm described in the previous section correctly computes a 2-extension of a bistandard graph G and that it runs in linear time. Then, we give some upper bounds on the total area used by the extension and on the total number of bends. For the sake of brevity, in this extended abstract we chose to omit the proofs. Theorem 3.1 Given in input an embedding of an n-node bistandard graph G, the algorithm described in the previous section correctly computes an extension of the embedding in 0(n) time. The output is a 2- extension if the embedding of G is not < 4,4,4 >; in this latter case, the extension has only one edge bending three times. In the following we state a more stronger result, i.e. that the output is a 1-extension, except the edges belonging to El, having two bends each. This result, interesting by itself, will be very useful to deduce an upper bound on the area and the number of bends. Theorem 3.2 Given in input an embedding of an n-node bistandard graph G, the algorithm described in the previous section computes an extension of the embedding s. t. all edges, except those ones involved in the outer faces, bend at most once.
Theorem 3.3 Given in input an embedding of an n-node bistandard graph G, the algorithm described in the previous section computes an extension of the embedding whose area is no more than (n + 2)2 and whose maximum number of bends is 2n + 4. References 1. T. Biedl, New Lower Bounds for Orthogonal Graph Drawings. Proc. Graph Drawing 95 (GD '95), Lectures Notes in Computer Science 1027, Springer-Verlag, 28-39, 1995.
2. T. Calamoneri, S. Jannelli and R. Petreschi, Experimental comparison of graph drawing algorithms for cubic graphs. Journal of Graph Algorithms and Applications, 3(2), 1999. 3. G. Di Battista, P. Eades, R. Tamassia and J. Tollis, Graph Drawing: Algorithms for the Visualization of Graphs, Prentice Hall, Upper Saddle River, New Jersey, 1999. 4. V. Di Gesu, S. Levialdi and L. Tarantino (editors), Proc. on Advanced Visual Interfaces 2000 (AVI 2000), ACM-SIGCHI, Inc., 2000.
5. Y. Liu, Embeddability in Graphs, Kluwer Academic Publishers, Dordrecht/Boston/London, 1995.
ORDERING IN SOLVING SYSTEMS OF EQUATIONS* KUN JIANG AND XIAO-SHAN GAO Institute of Systems Science , AMSS, Academia Sinica, Beijing 100080, P. R. China E-mail: (kjiang, xgao) Ommrc. iss. ac. cn To use a "good" variable order is one of the effective ways to prevent the occurrence of large polynomials in an elimination method . In this paper, we present an algorithm of 0(n3) to find such a "good" order using algorithms from graph theory. Based on this algorithm , we present a new version of Wu -Ritt 's zero decomposition algorithm, which allows different orders for different triangular sets in the decomposition formula.
1 Introduction It is well known that Wu's method is very fast in proving geometry theorems13 Many difficult theorems, such as Feuerbach's theorem and Morley's trisector theorem, whose traditional proofs need an enormous mount of human intelligence can be proved by computer programs based on Wu's method within seconds2. This method first introduces a coordinate system so that the geometric entities and relations are turned into a system of equations, and then decides in an algorithmic manner whether the conclusion is valid on the solutions under some non-degenerate conditions. Therefore, Wu's method is essentially based on an algebraic elimination theory. One of the reason behind the success of Wu's method is that we may choose a nice order for the points in a geometry theorem. This order will lead to a variable order which will make the elimination procedure easy. It is well-known that finding a "good" variable order is one of the effective ways to prevent the occurrence of large polynomials in a general elimination algorithm. So it is an effective strategy to find a nice order of variables before starting an elimination process. For instance, when using Wu's method to prove geometry theorems, one difficulty is the problem of reducibility. It has been noticed that deliberate choice of variable order can help avoiding or at least lessening reducibility difficulties7. There are two main approaches to find variable orders: one is at geometric level, the other is at algebraic level. Finding variable order in geometric level is actually a geometric method of equation solving, in which a compli*THIS WORK IS SUPPORTED BY A NATIONAL KEY BASIC RESEARCH PROJECT ( NO. G1998030600 ) AND BY THE CNSF UNDER AN OUTSTANDING YOUTH GRANT (NO. 69725002)
309
310 cated diagram is translated into a constructive form (using ruler and compass) which is easy to compute. This process is also called geometric constraint solvingl ,11,1,3,10A degree of freedom analysis method is proposed to find a nice order for geometric objects7. Finding the variable order in algebraic level was not studied extensively. In the paper12 by Wang, a heuristic method is proposed to find variable order mainly according to the degree of variables. This is a local method in that it does not provide global structure of the equation system. In this paper, a graph approach is developed by analyzing the structural solvability of a system of equations. With this approach we can obtain independent solvable parts in the structural sense and a solving order among these parts. Consequently, the solving order of variables in the system of equations can be obtained. This algorithm is especially effective for large equation systems with hundreds of variables, like the systems from CAD" As an application, we give a new version of Wu-Ritt's decomposition algorithm. Since Wu-Ritt's zero decomposition repeatedly does elimination for polynomial sets, we may use the graph algorithm to present a new version of Wu-Ritt's zero decomposition algorithm, which allows different order for different triangular sets in the decomposition formula. 2 DM-Composition of Bipartite Graph We first recall the definition of the bipartite graph and related knowledge that play a central role in our approach. For an in-depth study, see the references8'9. Let us assume that the system of equations to be solved is as follows: fl(xl,x2,...,xn) = 0 f2(xl,x2) .... xn) = O
(1)
fn(xl,x2,...,xn) = 0,
where each f= is a polynomial . In the above system of equations, it is possible that some variables disappear in some equations.
Let G = (V, E) be a directed graph with vertex set V and edge set E. For two vertices u and v, we denote as " u -+ v on G " (or simply, u -* v), if and only if there exists a directed path from u to v on G. Two vertices u and v belong to the same strongly connected component if and only if u -* v and v ---+ u. The vertex set V is partitioned into strong connected components Vi, each of which determines the vertex induced subgraph Gi = (V;, Ea) of G, also called a strong component of G. Partial
311
order -< can be defined on the family of strong components Gi = (Vi, Es) of G, or, in other words, on the family of subsets Vi of V, by V-< Vj ^^ vj -+ vi on Gfor some Vi EViand vjEVJ. We also write Gi -< G; if V -< Vj . A bipartite graph is a directed graph denoted by B = (V+, V-; E) where the vertex set consists of two disjoint parts V+ and V-, and the edges are directed from V+ to V-. For W+(C V+) , we use F(W+) to denote the set of vertices in V- adjacent to the vertices in W+. A Matching M on B is a subset of E such that no two edges in M share a common vertex incident to them. A matching of maximum cardinality JEl (the number of edges in M) is called a maximum matching. In case JV+I = IV-1, a matching that covers all the vertices is a complete matching. For M, a+M stands for all initial vertices of all edges in M and 8-M stands for all terminal vertices of all edges in M. Based on the maximal matching, a unique decomposition of a bipartite graph into partially ordered irreducible bipartite subgraphs can be defined. This decomposition, due to Dulmage-Mendelssohn, will be referred to as the DM-composition, and the irreducible components Bi = (V+, V-; Ei) as DMcomponents. An example9 of the DM-decomposition is illustrated in Fig. 1 and Fig. 2. An algorithm for the DM-decomposition is given below, where GM = (V+UV-, E; S+, S-) is the auxiliary graph associated with a matching M and is defined as follows: (v, w) E E t=om (v, w) E E or (w, v) E M, and S+ = V+\8+M and S- = V-\a-M are called the entrance and exit. Algorithm 1 (The DM-decomposition of B = (V+, V-; E)) step 1 Find a maximum matching Mon B = (V+, V-; E)8,9. step 2 Let Vo = {v E V+ U V-Jw -+ v on GM for some w in S+}. step 3 Let V. _ {v E V+ UV- Iv -* w on GM for some win S-}. step 4 Let Vi (i = 1,. .. , r) be the strongly connected components of the graph obtained from GM by deleting the vertices of Vo UV. and the edges incident thereto. step 5 Define the partial order -< on {Vi li = 0,1, ... , r, oo} as follows:
Vi -^ Vj 4==> vj -*vi on Gm for some vi EVi andvj EVE.
312 In this algorithm , a maximum matching can be found in O(IEI(min{IV+1, IV-I})1/2)8,9, where JEl is the number of the edges and IV+I, IV-I the number of V+, V- respectively. The execution time of step 2 and step 3 are direct proportional to JEl. Finding the strongly connected components can be done in O((IV+1 + IV-1)2(IV+l + IV-I -1)). Therefore, the time complexity of the Algorithm 1 is O ((IV+l + IV-l)3) Note that the decomposition does not depend on the choice of maximum matching M. We call the component Vo(or Bo) the minimal inconsistent part, the component V... (or Bc,) the maximum inconsistent part , and the rest the consistent part. The DM-decomposition reveals the structure of a bipartite graph with reference to the maximum matching on it.
vp
Vj
V2
vm
V2
Vo Figure 1. DM-decomposition of a bipartite graph Figure 2. Partial order
3 Generate Triangular Blocks The basic idea of solving an equation system is to triangularize it. Namely, the original system is transformed into a triangular form that can be easily solved by sequentially solving a series of univariate polynomial equations. The variable order is crucial for the triangularization. In general, a good order means that the original equations are already in a triangular block form, like the one hown in (2). In order to get a good order, we make use of the bipartite graph theory to analyze the structural solvability of the system of equation and decompose the system into some subsets, which are independent solvable arts named triangular blocks. With the triangular blocks and the partial o der we can get an order of variables. This order is especially useful in solvin the systems consisting of hundreds of variables and equations. In practice, his kind of equations often occurs in CAD"
313 f l (xi1 7 ... , xit,) = 0 ftl(xi1,..., xit1) =0
ft i +1(xi 1 , ... ) xit 1 I xit 1 + 1) ... , xit2) = 0 ft2(xi1 ,...,xit1 ,x'iti + 1, .... xit2) = 0
(2)
ftb-1+1( xil , . , x 1 ,, .... ) T.itb _ 1 +11 ... , xitb) 0 ftb (xii , ... , Xiit1 , ... , .Tiitb
- 1 +11 .... xitb) = 0.
3.1 Generating Triangular Blocks We only consider a system of equations in the standard form (1), where xi are variables and fi are equations. Let F be the set of equations, X the set of all variables appearing in the equations and E the set of edges defined by the pairs(fi, xi) with fi E F and xi E X such that the variable xi appears in the equation fi. Then B = (X, F; E) is the bipartite graph associated with the system of equations (see Example 1). This bipartite graph is called the bipartite graph representation of the system of equations.
Example 1 Consider the following system of equations: fl(x1 ,x2,x3 ) =
0,
f2(x2, x3,x5 ) =
0,
f3(x1,x4) =
0,
14(x3) = 0, f5(x4,x5) = 0.
The bipartite graph representation is shown in Fig. 39. x
Yq
x2
}4
YS
F 3
f4
f
Figure 3. The bipartite graph representation
Algorithm 2 (Ordering in solving system of equations)
Input : A system of equations. Output: The solving order of variables of the system of equations.
314 step 1 Generate the bipartite graph representation B = (X, F; E) for the system of equations. step 2 Process the DM-decomposition of B = (X, F; E) with Algorithm 1. step 3 If Vo # 0 then the system of equations is under-determined and go to step 5. step 4 If V... 54 0 then the system of equations is over-determined. One or more equations in V,,,, should be deleted by the users to obtain a well-determined problem and go to step 5. step 5 Output the variables in {Vi ji = 0, 1. ... , r, oo} according to the partial order defined on it. According to the order of the variables, we can quickly solve the system of equations. In this algorithm, step 1 can be done in O(IEJ) steps. The complexity of step 5 is O(IXI). Since JEl is at most O((IV+I + IV-I)2), the complexity of Algorithm 2 is O((IV+I + IV-1)3). Remark The system of equations is structurally solvable if both Vo and V. are the empty set. A DM-component Vi,1 < i < r, in the consistent part corresponds to a triangular block that is structurally solvable and can not be further decomposed. It can be solved independently if the values of all the variables belonging to Vj such that V3 -< Vi are determined. The triangular blocks corresponding to the inconsistent parts, Vo and Vim, are not solvable. The problem corresponding to Vo is under-determined (i.e. has more variables than equations) and that to V,,. is over-determined (i.e. has fewer variables than equations). Notice that the variable order obtained is a partial order. To give a total order of variables, we may use the method presented in the paper12 by Wang to give variable order from the same block. Example 2 Consider the following CAD problem6: a lathe traveling steady (Fig. 4). In Fig. 4, a point is indicated by pi and a line by 1i. Lines that are constrained to be horizontal or vertical are indicated by hi or vi. The constraints are:
/^ ^^,„„^ ^„ / , ^^,„„ on(pl, vl),on(^p, l, hi), on(p2, hi), on(p2, v5), on(p3, h2), on(p3, V0, on(p4, h2), on(P4, v2), on(p5, h2), on(y5, v/3), on(p6, h2), on(p6, v4), on(p7, h3), on(p7, V3), on(p8i h3), on(p8,V4), on(P12, 14), on(P12, h5), on(p9, h4), on(pg,V2), on(pq , 11), on (p15, h7), on(P15, 11), on(.P16, 11), On(P16, 12), On(P17, 12), ^11, v6), on( , 13, v5), on(p13, h6), on(plo, h4), on(p10, v5), on(pll, h4), on(p /P On( 14, v6), on(p14, h6), On(P13, 13), on(p17, 13),
distance(vi, v5),distance(v2, v5), distance(v2, v3), distance(v4,v5),
315
Figure 4. A sketch figure of the lathe traveling steady
distance(v5, v6), distance(hl, h2), distance (h2, h3), distance(hi, h5), distance(l1i 14), distance(p12i h4), distance(p12i h7), distance(p15,p16), distance(h6i h4), distance(p16,p17), angle(14, h5), angle(li,12). A distance between two lines also implies parallelism. In order to make the diagram having a fixed position, we specify the coordinates of the point pi by adding a constraint known - coordinates(pi). With a coordinate system, all the constraints can be transformed into a system of equations. We use x = ai, y = bi, (xi, yi), and y = mix + ni to represent a vertical line vi, a horizontal line hi, and a point pi, and a line li respectively. The system of equations contains 55 variables and 55 equations. Applying Algorithm 2 to the system, we can obtain an variable order: x1; yi; a1; m4; m1; m2; a5; a2; a3; a4; a6; bi; b2; b3; b5; y2; y3; y4; y5 ; 1/6; y7 ; 1/8; x2; x3; x4 ; x5; x6 ; x7; x8; 1/12; x13; x14; x1o; x11; x9; b4; b7; b6; y9; 1/10; 1/11; 1/13; y14; 1/15; X12, n4, n1; x15, x16, y16; n 2i x 17e y 17i m 30 n 3, where we use ",•" to separate the blocks. 3.2 Wu-Ritt's Zero Decomposition Algorithm with Mixed Order
Wu-Ritt's zero decomposition algorithm is used to decompose the zero set of a set of polynomial equations into the union of zero sets of polynomial equations in triangular form13. Precisely speaking, we have Theorem (Wu-Ritt's Zero Decomposition Algorithm). For any given polynomial set PS, we may find a series of polynomial sets TSi, i = 1, ... , d in triangular form under one variable order such that Zero(PS) = U Zero(TSi/Ji), i
316 where J; is the product of initials of the polynomials in TSi. This method repeatedly uses a triangular procedure called well-ordering principle which takes a polynomial set PS as input and find a triangular polynomial set TS of PS13
Since the triangular procedure is sensitive to variable order, we propose that each time before using this triangular procedure we generate a new variable order with our algorithm. In this way, we have a different version of the decomposition algorithm. Theorem (Wu-Ritt Zero Decomposition with Mixed Order). For a polynomial set PS, we may find a series of variable orders of such that Zero(PS) = U Zero(TS2/J;), where each TS; is in triangular form under variable order of and J2 is the initial product of TS1. As an example, let us consider the P3P problem4: "Given the relative spatial locations of three control points, and given the angle to every pair of control points from an additional point called the Center of Perspective (Cp), find the lengths of the line segments joining Cp to each of the control points." Let P be the Center of Perspective, and A, B, C the control points. Let PAI = x, I PBI = y, IPCI = z and p = cos a, q = cos /9, r = cos y. Introducing = a2 +22-c2 the following parameters: A = n2+ 2 -a2 , B = c2+ 2 -b2 , and C we may find the following equation set PS I x2+yzp-zxq-xyr-A=0 y2+zxq-yzp-xyr-B=0 z2+xyr-yzp-zxq-C=0.
We need only to find solutions under G # 0, where G = xyz (p2 - 1) (q2 - 1) (r2 - 1) (Bxl + C) (Ax2 + C) (Ax3 + B) where xl, x2i X3 are new introduced auxiliary variables. Applying Wu-Ritt's decomposition method13 to (PS), we obtain a triangular set TS, Ii xs + C1 6x6 + C14x4 + Ci12x2 + C,0
I f, =
f2=xS2y-C20 f3 = xS3z- C30
where S2 = (I,I2I3)4,
S3 = ( I1I2I4)4 and
I, = p2 + q2 + r2 - 2pgr - 1, 12 = Cq (rp - q) + Br (r - pq), I3=Cp(rq-p)+Ar(r-pq), I4=Bp(rq-p)+Aq(q-rp)•
317 Detailed coefficients of fl, f2 , f3 are omitted . Let J = xI1121314. From WuBitt 's Decomposition Theorem , we have 4
Zero(PS/G) = Zero(TS1 /J1) U U Zero((PS, Ii)
/I1 • • • It-1G)
i=1
where TS1 = {fi, f2, f3}, J1 = JG. The first part of the above decomposition is the main component for the P3P equation system and the last four zero sets correspond to the special or degenerate cases. The three degenerate cases Ii = 0, i = 2, 3, 4 are similar. Let use consider I2 = 0. Using the Grobner basis program of Maple, we find that the polynomials set (PS, 12) can be decomposed into two branches: 2
Zero((PS, 12) /I1G) = U Zero(GS2i/I1G) where i=1
I2
GS21 =
1
(pq-r)z2+rC ry - qz (pq - r) (x2 - 2gxz - A) - Cqp
I2 rI1 x2 + Cp (q - rp) + Ar (1 - p2) GS22 = J rI1 (pq - r) (y2 - 2rxy) - Co (rp - q) z + (pq - r) y + (r2 + q2 - 2 pgr) x. Here Co = C (pr - q) (q3 - 2pq2 r + qr2 - q + rp) + Ar (pq - r) (r2 + q2 - 2pgr) . Before using Wu-Ritt's algorithm to GS21 and GS22, we may notice that GS21 and GS22 are already in triangular form under the variable orders: z < y < x and x < y < z respectively. This fact can be easily detected with our graph algorithm. So further decompositions for GS21 and GS22 should be carried out according to these two variable orders respectively. 4 Conclusion and Future Work We propose an approach to find variable order for solving a system of equations. We make use of the bipartite graph to decompose the system of equations into triangular blocks. At the same time, we also obtain a partial order among these triangular blocks. This partial order may lead to a variable order. Solving a system of equations with the order of variables obtained by our
318 approach can speed up the solving procedure, especially for large equation systems consisting of hundreds of equations. Our approach will lose effectiveness when all variables dependent on each other. In other words, these equations form one block. An interesting work is to break these blocks into smaller blocks. This has been done successfully for a large class of problems in geometric level5,11,1,3,10In algebraic level, there is still no essential progress.
References 1. B. Bruderlin, Using Geometric Rewriting Rules for Solving Geometric Problems Symbolically, Theo. Comp. Sci., 116, 291-303 (1993). 2. S: C. Chou, Mechanical Geometry Theorem Proving D. Reidel Publishing Company, Dordrecht, The Netherlands (1988).
3. X.-S. Gao and S.-C. Chou, Solving Geometric Constraint Systems I. A Global Propagation Approach, CAD, 30(1), 47-54 (1998). 4. X.-S. Gao and H.-F. Cheng, On the Solution Classification of the "P3P" Problem, Proc. ASCM'98, Z. Li (ed.), pp. 185-200, Lanzhou University Press (1998). 5. C. Hoffmann, Geometric Constraint Solving in R2 and R3, Computing in Euclidean Geometry, pp. 266-298, World Scientific (1995). 6. R. S. Latheam and A. E. Middleditch, Connectivity Analysis: A Tool for Processing Geometric Constraints, CAD, 28(11), 917-928 (1994). 7. H. Li and M. Cheng, Automated Ordering for Automated Theorem Proving in Elementary Geometry - Degree of Freedom Analysis Method, MM Research Preprints No. 18, pp. 84-98 (1999). 8. L. Lovfasz and M. D. Plummer, Maching Theory, Annals of Discrete Mathematics 29, North-Holland, Amsterdam (1986). 9. K. Murota, Systems Analysis by Graphs and Matroids, Algorithms and Combinatorics 3, Springer-Verlag, New York (1987). 10. G. A. Kramer, Solving Geometric Constraints Systems: A Case Study in Kinematics, MIT Press (1992). 11. J. Owen, Algebraic Solution for Geometry from Dimensional Constraints, ACM Symp. Solid Modeling, pp. 397-407, ACM Press (1991). 12. D. Wang, An Implementation of the Characteristic Set Method in Maple. Automated Practical Reasoning: Algebraic Approaches, pp. 187-201, Springer-Verlag, Wien New York (1995). 13. W.-t. Wu, Basic Principles of Mechanical Theorem Proving in Geometries (Part on Elementary Geometries, in Chinese), Science Press, Beijing (1984). English Translation, Springer-Verlag, Wien New York (1994).
ONE-DIMENSIONAL RADIO BROADCAST PROBLEM SATOSHI FUJITA Faculty of Engineering, Hiroshima University, Kagamiyama 1-4-1, Higashi- Hiroshima 739-8527, Japan E-mail: [email protected] This paper considers the broadcast problem in radio packet communication networks. In particular, we are interested in the radio packet broadcasting in graphs whose vertices can be linearly arranged , in a similar way to the linear arrangement of the vertices in interval graphs. We propose an algorithm which finishes a broadcast in those graphs in a period of time that is at most one time unit longer than the trivial lower bound.
1 Introduction Radio broadcast in directed graph G = (V, E) is the operation of disseminating a piece of information from a source vertex s E V to all the other vertices in G under the following communication model': 1) in each time unit, each vertex can either transmit a packet or keep silent ; 2) the packet transmitted by vertex u is received by all silent vertices in N(u) in a single time unit, where N(u) = {v E V I (u, v) E E} denotes the set of open neighbors of u; and 3) if two vertices u, v (E V) simultaneously transmit their packets, then any silent vertex in N(u) fl N(v) can receive no packet in the same round due to the "interference" of those packets . A radio broadcast problem studied in this paper is the problem of designing a fast broadcasting scheme for given directed graph G and a source vertex s1,3 In the past fifteen years, the radio broadcast problem has been studied extensively, and several time bounds on the radio broadcasting have been derived' 2,3,5 Bar-Yehuda et al. proposed a probabilistic radio broadcast algorithm for any graph G of order n, that finishes a radio broadcast in O(log2 n) time units with high probability without assuming any knowledge to each vertex about the overall configuration of the underlying graph G3. Alon et al. showed that there is a graph of order n in which any radio broadcast scheme requires Il(log2 n) time units to finish, even if all vertices know the underlying graph G in advance and the eccentricitya of the source vertex is at most 21,2. Note that if the eccentricity of the source vertex is 1, then the radio broadcast trivially takes only one time unit. aThe eccentricity of a vertex is the maximum distance from the vertex to over all other vertices.
319
32 0
In this paper, we consider the radio broadcast problem for a class of geometrical graphs. In particular, as the first step of our study, we restrict our attention to directed graphs whose vertices can be arranged in a linear array, in a similar way to the linear arrangement of the vertices in interval graphs. The remainder of this paper is organized as follows. In Section 2, we formally define the class of graphs that will be considered in this paper. A lower bound on the broadcast time is also given. Section 3 studies the radio broadcasting in those graphs, and derives an upper bound on the broadcast time that is at most only one more time unit than the lower bound derived in Section 2. 2 Preliminaries
Let G = (V, E) be a directed graph with a vertex set V = 11, {1,2,. .. , n} and an are set E. In this paper, we assume that G is strongly-connected, and each arc has a unit length. Given two vertices v, w E V, let dist(v, w) denote the number of arcs on the shortest directed path from v to w, and call it the "distance" of w from v. In this paper, we consider the problem of finding a minimum-time radio broadcast scheme for given graph G and a source vertex in G. In particular, we are interested in the radio broadcasting for a class R of graphs defined as follows: Graph G is said to be a one-dimensional radio communication graph if 1) it is a simple graph with no self-loop; and 2) there is a labeling P of vertices by distinct natural numbers from 1 to n such that for any (u, v) E E(G), • £(v) < t(u) implies the existence of arc (u, w) E E(G) for all w such that £(v) < t(w) < t(u), and • B(u) < $(v) implies the existence of arc (u, w) E E(G) for all w such that £(u) < t(w) < t(v). We denote the set of all one-dimensional radio communication graphs by R. Note that the definition of class R models a situation in which points corresponding to the vertices are arranged in a linear array according to their labels, and the packet transmitted by a sender is received by all vertices within a fixed distance (i.e., transmission radius) from the sender. For clarity of the exposition, in what follows, we identify the label of a vertex with the name of the vertex. That is, in the linear arrangement of n vertices from left to right, the left-most vertex is named vertex 1 and the right-most vertex is named vertex n. The problem of testing whether or not a given graph is in class R
321
can be solved in a linear time by using a similar technique to the recognition algorithms of interval graphs4. As for the lower bound on the broadcast time, we have the following remark. Remark 1 A lower bound on the broadcast time is given by the eccentricity of the source vertex, and there is an instance in which any broadcast scheme requires at least one more time unit than the eccentricity of the source vertex. 3 Upper Bound on Broadcast Time
In this section, we show that for any graph G = (V, E) in class 1Z and for any source vertex s E V, the broadcast from vertex s to G takes at most one more time unit than the eccentricity of the source vertex. First, for each of the two extreme vertices 1 and n, fix a shortest directed path from the source vertex to the extreme vertex. Let PL = PL[O]PL[1] ... PL[h]
and
PR =PR[O]PR[1] ...PR[k]
be those two shortest directed paths, where PL [0] = PR [0] = s, PL [h] = 1, and PR[k] = n. Next, we partition V into subsets by the distance from the source vertex as Lh, Lh_1 i ... , Li, {s}, Rl, R2, ... , Rk
where Li = {v E V I
v < s and dist(s,v) = i} and Ri = {v E V I v > s and dist(s,v) = i}. In what follows, for convenience, we let Lo = Ro = {s}, Li = 0 for i > I PL 1, and Ri=Ofori>IPRI. Next, we define two integers a and 0 to indicate a position in the shortest paths PL and PR, which play a crucial role in the proposed broadcast scheme. Definition 1 Let a be the maximum integer i such that either (PL[i],PR[i+ 1]) or (PR[i], PL [i + 1]) is in E(G). Let /3 be the maximum integer i such that PR[i] E Li or PL[i] E Ri. Property 1 (1) If PR[/3] E LO then Li C N(PR[f]) for any 0 < i < 0 - 1 and Ri C_ N(PR[,Q]) for any 0 < i < 8. (2) If PL[/3] E Rp then Li C N(PL[/3]) forany0
The proposed algorithm proceeds as follows: Step 1 : Let v = PL [a + 1] and w = PR[a + 1]. Let u be a vertex in La U R,, such that N(u) contains both v and w. (By the definition of a, there always exists such a vertex u.) First, the source vertex s forwards the packet to vertex u. Since dist(s, u) = a, it takes a time units. Step 2: Upon receiving the packet, vertex u transmits it to all vertices in N(u) in one time unit. The packet is correctly received by vertices v and w, since v, w E N(u) and no other transmission occurs in the same time unit.
322 Step 3: Vertices v and w, respectively, forward the packet received in Step 2 to vertices 1 and n.
Steps 1 and 2 take a and one time units, respectively, and after Step 2, all vertices between v and w are informed the packet from the source vertex. A straightforward method seems to take max{dist(v,1), dist(w, n) } time units to complete Step 3 (we call it NAIVE hereafter). Unfortunately however, there exists an instance for which NAIVE leaves some vertices uninformed. In order to finish a broadcast correctly even in such cases, we proposed a method to execute some additional operations besides NAIVE (the additional operations use the notion of 0 carefully, but the detailed description is omitted in this extended abstract). As a result, we have the following upper bound on the broadcast time. Theorem 1 (Upper Bound) For any graph G E 1Z and a vertex s in G, a radio broadcast from vertex s to G takes at most max„E V (G) dist(s, v) + 1 time units. Acknowledgments : This research was partially supported by the Ministry of Education, Science and Culture of Japan, and Research for the Future Program from Japan Society for the Promotion of Science (JSPS): Software for Distributed and Parallel Supercomputing (JSPS-RFTF96P00505). References 1. N. Alon, A. Bar-Noy, N. Linial, and D. Peleg. On the complexity of radio communication. In Proc. 21st STOC, pages 274-285. ACM, 1989. 2. N. Alon, A. Bar-Noy, N. Linial, and D. Peleg. A lower bound for radio broadcast. J. Comput. Syst. Sci., 43:290-298, 1991.
3. R. Bar-Yehuda, O. Goldreich, and A. Itai. On the time-complexity of broadcast in radio networks: An exponential gap between determination and randomization. In Proc. 4th PODC, pages 98-107. ACM, 1986. 4. K. S. Booth and G. S. Leuker. Testing for the consecutive ones property, interval graphs, and graph planarity using PQ-tree algorithms. J. Comput. Syst. Sci., 13:335-379, 1976. 5. I. Chlamtac and S. Kutten. Tree-based broadcasting in multihop radio networks. IEEE Trans. Comput., C-36(10):1209-1223, October 1987.
AUTHOR INDEX
Ajwa, I. A. 63 Akama, K. 90
Kovalchuk, A. 291 Kuryata, S. 291
Barsky, B. A. 152 Bigotte, M. 39 Blaga, A. 272
Lazard, D. 1 Le, H. Q. 204 Levitsky, V. 291 Li, H. 120 Li, L. 295 Li, X. 152 Li, Z. 229 Li, Z. C. 192 Li, Z.-B. 224 Liao, W. 281 Lin, D. 63 Liu, Y. 299
Calamoneri, T. 299 Chen, C. 182 Chen, F. 172, 182 Chionh, E. W. 142 Corless, R. M. 71 Deng , J. 172, 182
Fan, E. 249 Feng, Y. 172, 182 Fujita, S. 319
Mabuchi, H. 90 Matsuoka, S. 138 McCune, W. 83 Mittermaier, C. 49
Gao, X.-S. 309 Giesbrecht , M. W. 71 Goldman, R. 142 Gonnet , G. H. 280
Noda, M: T. 9 Oussous, N. E. 39
Havas, G. 29 Hou, X. 19, 258 Hu, G. 110
Petitot, M. 39 Petreschi, R. 299
Ishida, Y. 276
Ramsay, C. 29 Richardson, D. 75
Jacob, G. 39 Jeffrey, D. J. 71 Jiang, K. 309
Sato, Y. 59 Schreiner, W. 49 Shi, H. 268
Khanin, R. 214 Kolodnytsky, M. 291
Shi, X. 162
323
324
Shigeta, Y. 90 Suzuki, A. 59 Tonchev , V. D. 79 Tongsiri, N. 75 Wang, D. 19 Wang, D. K. 67 Wang, P. S . 63, 281 Wang, W. 152 Winkler, F. 49 Wu, J. 100 Wu, W.-T. 202 Wu, Y. 120 Yan, N. N. 192 Yan, it 258 Yan, Z: Y. 239 Yang, L. 130 Zeng, Z. 130 Zhang, H.-Q. 239 Zhang, M. 142 Zhang, W. 258 Zhao, Y. 162 Zhi, L. H. 9 Zou, X. 295