Computing the shape of the image of a multi-linear mapping is possible but computationally...

17

Transcript of Computing the shape of the image of a multi-linear mapping is possible but computationally...

Computing the Shape of the Image of aMulti-Linear Mapping Is Possible ButComputationally Intractable: TheoremsRa�ul Trejo and Vladik KreinovichDepartment of Computer ScienceUniversity of Texas at El PasoEl Paso, TX 79968, USAemails frtrejo,[email protected] systems without inertia (or with negligible inertia), a change in thevalues of control variables x(1); : : : ; x(n) leads to the immediate changein the state z of the system. In more precise terms, for such systems,every component zi of the state vector z = (z1; : : : ; zd) is a function of thecontrol variables. When we know what state z we want to achieve, thenatural question is: can we achieve this state, i.e., are there values of thecontrol variables which lead to this very state?The simplest possible functional dependence is described by linearfunctions. For such functions, the question of whether we can achievea given state z reduces to the solvability of the corresponding systemof linear equations; this solvability can be checked by using known (andfeasible) algorithms from linear algebra.Next in complexity is the case when instead of a linear dependence,we have a multi-linear dependence. In this paper, we show that for multi-linear functions, the controllability problem is, in principle, algorithmi-cally solvable, but it is computationally hard (NP-hard).Keywords: multi-linear mappings; control; inverse kinematics; computation-ally intractable. 1

1 IntroductionIn systems without inertia (or with negligible inertia), a change in the values ofcontrol variables x(1) 2 Rd1 ; : : : ; x(n) 2 Rdn leads to the immediate change inthe state z 2 Rd of the system. In more precise terms, for such systems, everycomponent zi of the state vector z = (z1; : : : ; zd) is a function of the variablesx(1) = (x(1)1 ; : : : ; x(1)d1 ), . . . , x(n) = (x(n)1 ; : : : ; x(n)dn ), i.e.,zi = Fi(x(1); : : : ; x(n)) = fi(x(1)1 ; : : : ; x(1)d1 ; : : : ; x(n)1 ; : : : ; x(n)dn ):When we know what state z we want to achieve, the natural question is: canwe achieve this state, i.e., are there values of the control variables which lead tothis very state?This problem is very useful in control. For example, in robotics, such aproblem appears when we try to control a robotic manipulator. If we know,for every link of a robotic arm, its length and the angles between this link andthe previous and consequent links, then we can determine the positions of theend joints; in mechanics, the corresponding (non-dynamic) computations forma typical problem from kinematics. In robotic control, we face an inverse prob-lem: given the position of the endpoints, �nd the angles between the links whichguarantee the desired position. This inverse problem is called the problem ofinverse kinematics; see, e.g., (Craig, 2001). This problem is often very compu-tationally intensive (especially when we want the reach the desired position witha high accuracy), and therefore, requires a signi�cant amount of computationtime. Since a robot is often used to solve real-time problems, we would like toperform these time-consuming computations only when it is necessary. In otherwords, before starting the time-consuming computations of possible values ofx(i), we would like to �rst check whether we can reach the desired state z ornot. For example, if the robotic arm is too far away from the target point, itcannot reach it; we would like to know that without �rst trying to reach thepoint.The simplest possible functional dependence is described by linear functionsfi. For such functions, the question of whether we can achieve a given state zreduces to the solvability of the corresponding system of linear equations; thissolvability can be checked by using known (and feasible) algorithms from linearalgebra.Next in complexity is the case when instead of a linear dependence, we have2

a multi-linear one, i.e., a dependence F : Rd1 � : : :�Rdn ! Rd of the formzi = d1Xi1=1 : : : dnXin=1 aii1:::in � x(1)i1 � : : : � x(n)in :Multi-linear (and especially bilinear) dependencies occur in di�erent controlproblems, ranging from species population control to controlling chemical re-actions to controlling nuclear �ssion; see, e.g., (Mohler, 1991). Is the aboveproblem still algorithmically solvable for such dependences? Is it feasibly solv-able? These are the questions which we answer in the present paper.In other words, we answer the following questions: Is there a (feasible)algorithm that would, given a multi-linear mapping, determine its image? Or,at least, given a multi-linear mapping and a point, determine whether this givenpoint belongs to the image of a given multi-linear mapping?In this paper, we will prove two things:� �rst, that there do exist algorithms for determining the desired shape andfor checking whether a given point belongs to a given image;� second, that no feasible algorithm is possible for these tasks, or, moreprecisely, that even for bilinear mappings, this problem is computationallyintractable (NP-hard).Since the problem is provably complex even for the simplest possible nonlinearmappings { namely, for bilinear ones { it is therefore complex for more sophis-ticated nonlinear mappings { e.g., for trigonometric mappings which appear inrobotic inverse kinematic problems.The fact that the general \inverse kinematic" problem is computationallyintractable (NP-hard) means that we cannot hope to have a general feasiblealgorithm which solves this problem for all possible control situations. Instead,for each speci�c class of control problems, we must develop a di�erent algorithmwhich takes into consideration speci�c features of this particular class of prob-lems; it should also be expected that in algorithm developed for this class ofproblems may not be easily transferable to other control problems.Comment. For the exact de�nition of the notion of NP-hardness, see, e.g.,(Garey and Johnson, 1979). For the readers who are not well familiar with thisnotion, in the following sections, we will give an explanation of what NP-hardmeans. 3

2 The Problem Is (In Principle) AlgorithmicallySolvableTo describe a general shape of a multi-linear mapping, we must recall the fol-lowing de�nition (see, e.g., (Arnold, 1983)):De�nition 1. Let n be a positive integer, and Rn be an n�dimensional vectorspace. A set S � Rn is called semi-algebraic if this set is a union of �nitelymany sets S1 : : : ; Sp, each of which consists of all tuples that satisfy one orseveral conditions of the typesPj(x1; : : : ; xn) = Qj(x1; : : : ; xn); (1)Pk(x1; : : : ; xn) > Qk(x1; : : : ; xn); (2)or Pl(x1; : : : ; xn) � Ql(x1; : : : ; xn); (3)for some polynomials Pi and Qi.De�nition 2. A real number r is called algebraic if P (r) = 0 for some polyno-mial P (x) with integer coe�cients that is not identically 0.PROPOSITION 1.� The image of every multi-linear mapping is a semi-algebraic set.� If all the coe�cients aii1:::in of the multi-linear mapping are algebraic num-bers, then each set Sk in the description of the image as a semi-algebraicset can be described by conditions (1)� (3) in which all the coe�cients ofall the polynomials Pi and Qi are algebraic numbers.Comments.� For readers' convenience, all the proofs are given in the last section of thispaper.� Let us now describe what computability means for algebraic numbers,multi-linear mappings, and image sets.4

De�nition 3. We say that an algebraic number r is given to an algorithm ifthis algorithm can use the following information:� the integer coe�cients of a polynomial P (x) for which P (r) = 0;� the rational endpoints a, b of an interval [a; b] on which r is the only rootof the polynomial P (x).Comment. If we know the coe�cients of the polynomial P (x), and if we knowthe interval [a; b] on which this polynomial has exactly one root r, then knownnumerical methods can easily compute this root r with arbitrary accuracy.De�nition 4.� We say that a multi-linear mapping is given to an algorithm, if this algo-rithm can use the following information:{ a positive integer d;{ a positive integer n;{ n positive integers d1; : : : ; dn;{ d� d1 � : : :� dn algebraic numbers aii1:::in .� We say that an algorithm computes an algebraic number r if it computestwo things:{ the coe�cients of a polynomial P (x) with integer coe�cients forwhich P (r) = 0;{ the rational endpoints a; b of an interval [a; b] on which r is the onlyroot of the polynomial P (x).� We say that an algorithm computes a polynomial P (x1; : : : ; xn) if:{ this polynomial has algebraic coe�cients and{ the algorithm computes all the coe�cients of this polynomial.� We say that an algorithm computes a semi-algebraic set S if the algorithm:{ produces the list of equalities and inequalities (1) � (3) that de�nethe set S, and{ computes all the polynomials from these equalities and inequalities.5

PROPOSITION 2. There exists an algorithm that, given a multi-linear map-ping, computes the (semi-algebraic) image of this mapping.Comments.� The mere existence of the algorithm does not necessarily mean that thisalgorithm is practical. Indeed, as we will see from the proof, the algorithmthat we propose uses an algorithm proposed by A. Tarski, and it is knownthat for the problem solved by Tarski's algorithm, for some cases, at leastdoubly exponential time is necessary, i.e., time � 22s , where s is thelength of the input (in bits); see, e.g., (Davenport and Heintz, 1988).Even for small s, 22s is unrealistically large. Thus, the running time ofour algorithm is at least doubly exponential and hence, unrealistic. In thefollowing text, we will show that realistic algorithms are, most probably,not possible at all.� Since the problem of describing the image itself turns out to be too com-plicated, we may want to consider a simpler problem: checking whethera given point belongs to a given image. (In the following text, this easierproblem will also be shown to be computationally intractable.) Let us�rst describe this problem formally.De�nition 5. We say that a point z = (z1; : : : ; zd) 2 Rd is given to an algorithmif all d coordinates z1; : : : ; zd of this point are given to this algorithm.PROPOSITION 3. There exists an algorithm that, given a multi-linear map-ping f : Rd1 � : : : � Rdn ! Rd and a point z 2 Rd, checks whether the givenpoint z belongs to the image of the given mapping.Comment. Before we start formulating and proving our result (that �nding theimage of a multi-linear mapping is computationally intractable), let us brie yrecall what the terms computationally intractable and computationally feasiblemean.6

3 Feasible and Intractable: General De�nitions(Brief Reminder)3.1 FeasibleSome algorithms require lots of time to run. For example, some algorithmsrequire the running time of � 2s computational steps on an input of size (bitlength) s. For reasonable sizes s � 300, the resulting running time exceeds thelifetime of the Universe and is, therefore, for all practical purposes, non-feasible.In order to �nd out which algorithms are feasible and which are not, we mustformalize what \feasible" means. This formalization problem has been studiedin theoretical computer science; no completely satisfactory de�nition has yetbeen proposed.The best known formalization is: an algorithm U is feasible if and only ifit is polynomial time, i.e., if and only if there exists a polynomial P such thatfor every input x, the running time tU(x) of the algorithm U on the input x isbounded by P (jxj) (here, jxj denotes the length of the input x).This de�nition is not perfect, because there are algorithms that are polyno-mial time but that require billions of years to compute, and there are algorithmsthat require in a few cases exponential time but that are, in general, very prac-tical. However, this is the best de�nition we have so far.3.2 Intractable (NP-hard)For many mathematical problems, it is not yet known (2001) whether theseproblems can be solved in polynomial time or not. However, it is known thatsome combinatorial problems are as tough as possible, in the sense that if wecan solve any of these problems in polynomial time, then, crudely speaking,we can solve many practically important combinatorial problems in polynomialtime. The corresponding set of important combinatorial problems is usuallydenoted by NP, and problems whose fast solution leads to a fast solution ofall problems from the class NP are called NP-hard. The majority of computerscientists believe that NP-hard problems are not feasible. For that reason, NP-hard problems are also called intractable. For formal de�nitions and detaileddescriptions, see, e.g., (Garey and Johnson, 1979).7

3.3 Intractable (NP-hard): Practical viewpointThe fact that a general problem is \intractable" in this sense does not necessarilymean that we cannot solve it in practice:� First, NP-hardness means that we cannot have a general algorithm forsolving all possible instance of this general problem in reasonable time.We can, however, have algorithms which solve problems from a certainsubclass.� Second, even if we cannot solve the problem much faster than in theexponential time 2s, it still leaves the possibility to solve this problem forinputs of small input length s. For example, for inputs of size s = 20, weneed 220 � 106 computational steps, which is milliseconds on any moderncomputer. For inputs of size s = 30, we need 230 � 109 steps: also quitea doable amount.For bilinear mappings, the size of the problem, crudely speaking, corre-sponds to the number of variables. So, if we have a few variables, theproblem is quite solvable.3.4 Propositional satis�ability: historically the �rst ex-ample of an NP-hard problemThe standard method of proving that some problem is NP-hard is by reducingthis problem to some other problem for which NP-hardness has already beenproved. Historically the �rst example of an NP-hard problem was the so-calledpropositional satis�ability problem for 3-CNF formulas.This problem can be formulated as follows:� Let v1; : : : ; vk be a �nite list of Boolean (propositional) variables, i.e., vari-ables that take two possible values: \true" and \false".� By a literal, we mean either a variable vi, or its negation :vi; the negation:vi will also be denoted by v�i.� By a disjunction (clause) D, we mean an expression of the type a_ : : :_ b,where a; : : : ; b are literals.� By a 3-CNF formula, we mean an expression of the type D1& : : :&Dm,where D1; : : : ; Dm are disjunctions each of which has two or three literals.8

� By a Boolean vector, we mean a sequence of k truth values v1; : : : ; vk.� For each Boolean vector, we can de�ne the truth value of a CNF formulaF by substituting the values vi into the formula F .� We say that a propositional formula is satis�able if there exists a Booleanvector that makes this formula true.For example, a formula (v1 _ v2)&(v1 _:v2) is satis�ed by a Booleanvector v1 = v2 =\true".� By a SAT problem, we mean the following problem:GIVEN: a 3-CNF formula;CHECK: whether this formula is satis�able.Now, we are ready to formulate our results about computational intractabil-ity.4 The Problem Is Computationally IntractableIt turns out that our problem is computationally intractable even in the simplestcase:� when we only consider bilinear mappings;� when we only consider mappings with integer coe�cients aii1i2 ;� when we are not interested in computing the entire image set, but only inchecking whether a given point z = (z1; : : : ; zd) 2 Rd belongs to this set;� when we are only interested in point z with integer coe�cients zi.Since the problem is computationally intractable even for this simple case, anarbitrary more general problem is also computationally intractable.PROPOSITION 4. The following problem is computationally intractable(NP-hard):GIVEN: � a bilinear mapping f : Rd1 �Rd2 ! Rd with integer coe�cientsaii1i2 , and� a point z = (z1; : : : ; zd) 2 Rd with integer coordinates zi,CHECK: whether the given point z belongs to the image of the given map-ping f . 9

5 Proofs5.1 Proofs of Propositions 1{3The fact that the point z = (z1; : : : ; zd) belongs to the image of a multi-linearmapping can be described by the following logical formula:9x(1)1 : : :9x(1)d1 : : : 9x(n)1 : : : x(n)dn �z1 = d1Xi1=1 : : : dnXin=1 a1i1:::in � x(1)i1 � : : : � x(n)in & : : : &zd = d1Xi1=1 : : : dnXin=1 adi1:::in � x(1)i1 � : : : � x(n)in �:This formula belongs to a general class (called �rst order formulas of real num-bers theory) described by A. Tarski (1951). Namely, in this class:� We start with constants 0 and 1, and with variables that run over all realnumbers.� By applying standard arithmetic operations +;�; �; :, to these constantsand variables, we get elementary expressions called terms.� An elementary formula is an expression of one of the types t1 < t2, t1 = t2,t1 > t2, t1 � t2, t1 6= t2, and t1 � t2.� Finally, a formula is any expression that can be obtained from elementaryformulas by using propositional connectives (such as _, &, :,! (implies),etc.), and quanti�ers 8x and 9x over all real numbers.Comments.� For general notions of logic, see, e.g., (Barwise, 1977; Enderton, 1972;Schoen�eld, 1967).� In our de�nition, we started with two real numbers 0 and 1. It is knownthat if we start with arbitrary algebraic real numbers, we end up with thesame class of �rst order formulas. Indeed, if we know that r is the only realnumber on the interval [a; b] for which P (r) = 0 for a given polynomialP (x) with integer coe�cients, then we can use this fact to re-formulatean arbitrary formula that contains r: e.g., the formula r + 1 = s can bereformulated as8x((a � x&x � b&P (x) = 0)! x+ 1 = s):10

Tarski has shown (1951, see also (Arnold, 1983)) that there exists an algorithmthat checks, for each such formula, whether it is true or not. Thus, by applyingTarski's algorithm to the resulting formula, we will be able to check whether thegiven vector z 2 Rd belongs to the image of the desired mapping. Proposition3 is proven.It is also known that for an arbitrary formula from this class, the set ofall vectors satisfying this formula is semi-algebraic (Seidenberg, 1954; Tarski,1951), and that there exists an algorithm that computes the coe�cients of thecorresponding polynomials Pj and Qj . Thus, Propositions 1 and 2 are alsoproven.5.2 Proof of Proposition 4To prove this result, we will show that if we can solve our problem in polynomialtime, then we will be able to solve the propositional satis�ability problem SATfor 3-CNF formulas in polynomial time. Since the problem SAT is known to beNP-hard, from this reduction, it will follow that our problem is also NP-hard.Indeed, let us assume that we can solve our problem in polynomial time. Letus show how we can then solve any instance of SAT in polynomial time. LetF = D1& : : :&Dm be a formula in 3-CNF with variables v1; : : : ; vk.By de�nition of a 3-CNF formula, each disjunction Dj is an expression ofthe type a _ b or of the type a _ b _ c, where each of the expressions a, b, and cis a literal, i.e., either a variable vi (1 � i � k), or a negation :vi of a variablevi. In accordance with the above description of the 3-CNF formulas, we willdenote a negation :vi of the variable vi by v�i (i.e., by using negative indices).Based on the formula F , we will construct a system of bilinear equationsthat has a solution if and only if the formula F is satis�able. This system willhave a solution if and only if a certain point with integer coe�cients belongs tothe image of a certain bilinear mapping with integer coe�cients. The size of thedata that describes this mapping will be bounded by a polynomial (actually,by the square) of the size of the original problem. Since we assumed that wecan check, in polynomial time, whether a given point belongs to an image ofa given mapping, we will thus be able, given a formula in 3-CNF, to check, inpolynomial time, whether a given formula is satis�able or not.Let us now construct the desired system of bilinear equations. Let us �rstagree on notations: 11

� an integer variable i will take values from 1 to k (this variable correspondsto di�erent variables x1; : : : ; xk);� an integer variable j will take values from 1 tom (this variable correspondsto di�erent disjunctions D1; : : : ; Dm); and� integer variables �, �, and will take values from �k to �1 and from 1to k (these variables correspond to di�erent literals v�k, . . . , v�1, . . . , v1,. . . , vk).The desired mapping will be de�ned on the following linear spaces:� As a �rst space Rd1 , we will take a space of dimension d1 = 1+2k+(2k)2.Vectors from this space Rd1 will be denoted by x = (x0; fx�g; fx��g);their coe�cients will be denoted by x0, x�, and x�� .� As a second space Rd2 , we will take a space of dimension d2 =1 + 2k. Vectors from this space Rd2 will be denoted by y =(y0; y�k; : : : ; y�1; y1; : : : ; yk); their coe�cients will be denoted by y0 andy�.Let us describe the desired bilinear equations:� First, we construct an equationx0 � y0 = 1: (4)� Second, for every i from 1 to k, we construct the following two equations:xi � y0 + x�i � y0 = 1; (5)x0 � yi + x0 � y�i = 1: (6)� Third, for every � = �k; : : : ;�1; 1; : : : ; k, we construct an equationx� � y0 � x0 � y� = 0: (7)� Fourth, for every � and �, we construct an equationx� � y� � x�� � y0 = 0: (8)� Fifth, we add equations that correspond to m di�erent disjunctions Dj ,1 � j � m: 12

{ For every disjunction Dj = v� _ v� that consists of two literals(�k � � � k, �k � � � k), we add the equationx�� � y0 = 0: (9){ For every disjunction Dj = v� _ v� _ v that consists of three literals(�k � � � k, �k � � � k, �k � � k), we add the equationx�� � y = 0: (10)The left-hand sides of the equations (4) � (10) form a bilinear mapping fromRd1�Rd2 to Rd, where d = 1+2k+2k+(2k)2+m; it is easy to see that all thecoe�cients of this bilinear mapping are integers (moreover, they only take thevalues �1, 0, and 1). The solvability of this system of equations is equivalent tochecking whether the point z = (1; 1; : : : ; 1; 0; : : : ; 0) formed by the right-handsides of these equations belongs to the image of this bilinear mapping.Let us show that this system of equation has a solution if and only if theoriginal propositional formula F is satis�able.� Let us �rst assume that F is satis�able. This means that there exists aBoolean vector v = (v1; : : : ; vk) that makes this formula F true. Let usshow that in this situation, the following x and y are the solution to thesystem of equations (4)� (10):� x0 = y0 = 1;� xi = yi = 0 if vi =\true", and xi = yi = 1 if vi =\false", 1 � i � k;� x�i = y�i = 1� xi, 1 � i � k;� x�� = x� � x� .As a result of this choice, y� = x�, and x� = 0 if and only if v� =\true".Let us show that the equations (4) � (10) are indeed satis�ed for theresulting vectors x 2 Rd1 and y 2 Rd2 :{ Equation (4) is trivially true.{ Equation (5) has the form (xi + x�i) � y0 = 1, and is true due toxi + x�i = 1 and y0 = 1.{ Equation (6) follows from (5) since we have chosen x� = y�.13

{ Equation (7) follows directly from the fact that we have chosen x� =y�.{ Equation (8) is true due to our choice of x�� = x� � x� and the factthat y0 = 1 and y� = x� .{ Let us now show that the equations (9) and (10) are also true. Sincethe values vi make the formula F = D1& : : :&Dm true, all disjunc-tions Dj must also be true. Let us consider two possible cases.� If Dj has exactly two literals, i.e., if Dj = v� _ v� , then one ofthese literals v� and v� must be true, and therefore, the real-valued variable corresponding to this literal must be equal to0. Thus, either x� = 0 or x� = 0. In both cases, we havex�� = x� � x� = 0, i.e., equation (9) is true.� If Dj has exactly three literals, i.e., if Dj = v�_v�_v , then oneof these literals v�, v� , and v must be true, and therefore, thereal-valued variable corresponding to this literal must be equalto 0. Thus, either x� = 0, or x� = 0, or x (= y ) = 0. If x� = 0or x� = 0, then, similar to the previous case, we conclude thatx�� = 0. Hence, x�� � y = 0, and the equation (10) is true. Ify = 0, then also x�� � y = 0. Thus, the equation (10) is truein both cases.Thus, if the formula F is satis�able, the system (4)�(10) has a solution andtherefore, the point z belongs to the image of the given bilinear mapping.� Let us now show that if the system (4)� (10) has a solution x and y, thenthe propositional formula F is satis�able. Before we show this, we needto prove some properties of the solutions (x; y).1. x0 6= 0 and y0 6= 0.This property follows from the equation (4).2. if x� = 0, then x�� 6= 0.This property follows from the fact that (5) has the form(xi + x�i) � y0 = 1and from the already proven property y0 6= 0. Hence, xi+x�i 6=0. 14

3. x� = 0 if and only if y� = 0.This property follows from the equation (7) and from the alreadyproven properties x0 6= 0 and y0 6= 0.4. x�� = 0 if and only if either x� = 0 or x� = 0.If x� = 0 or x� = 0, then x� � x� = 0, so from the equation (8),we conclude that x�� � y0 = 0. Since y0 6= 0, we conclude thatx�� = 0. Vice versa, if x�� = 0, then from the equation (8), weconclude that x� � x� = 0 and therefore, that either x� = 0, orx� = 0.Now, we are ready to show that the formula F is satis�able. Namely, wewill show that the following Boolean vector makes the formula F true: forevery i, we take:� vi =\true" if xi = 0 and� vi =\false" if xi 6= 0.Let us show that for this choice, x� = 0 implies v� =\true". Indeed:{ For � = i, this directly follows from the de�nition of vi.{ For � = �i, if x�i = 0, then, due to Property 2, we have xi 6= 0,hence, vi =\false" and v�i = :vi =\true".To show that F = D1& : : :&Dm is true, we must show that each disjunc-tion Dj is true. We will consider two possible cases:{ Let us �rst consider the case when Dj has exactly two literals, i.e.,when Dj = v�_v� . In this case, equation (9) is true, i.e., x�� �y0 = 0,Since y0 6= 0 (Property 1), we have x�� = 0. Hence, due to Property4, either x� = 0 or x� = 0. In the �rst case, v� =\true"; in thesecond case, v� =\true". In both cases, Dj = v� _ v� is true.{ Let us now consider the cases when Dj has three literals, i.e., whenDj = v�_v�_v . In this case, the equation (1) is true, i.e., x�� �y =0. Therefore, either x�� = 0 or y = 0.� In the �rst sub-case, due to Property 4, either x� = 0 or x� = 0.� In the second sub-case, due to Property 3, x = 0.15

In both sub-cases, either x� = 0, or x� = 0, or x = 0. Thus,either v� =\true", or v� =\true", or v =\true". In all three cases,Dj = v� _ v� _ v is true.So, the original formula F is indeed true.Reduction to satis�ability is proven: the formula F is satis�able if and onlyif the system (4) � (10) has a solution, i.e., if and only if the correspondingpoint z belongs to the image of the corresponding bilinear mapping. Hence, theproposition is proven.Acknowledgments. This work was supported in part by NASA undercooperative agreement NCC5-209, by NSF grants No. DUE-9750858 andCDA-9522207, by United Space Alliance, grant No. NAS 9-20000 (PWOC0C67713A6), by the Future Aerospace Science and Technology Program(FAST) Center for Structural Integrity of Aerospace Systems, e�ort sponsoredby the Air Force O�ce of Scienti�c Research, Air Force Materiel Command,USAF, under grants F49620-95-1-0518 and F49620-00-1-0365, by the NationalSecurity Agency under Grant No. MDA904-98-1-0561, and by Grant No. W-00016 from the U.S.-Czech Science and Technology Joint Fund.We are thankful to Piotr Wojciechowski for the formulation of the prob-lem and for valuable discussions, and to the anonymous referees for importantsuggestions.ReferencesArnold, V. I. (1983), Geometrical Methods in the Theory of Ordinary di�erentialequations, Springer-Verlag, New York.Barwise, J., ed. (1977), Handbook of Mathematical Logic, North-Holland, Ams-terdam.Bernau, S. and P. J. Wojciechowski (1996), \Images of bilinear mappings intoR3", Proceedings of the American Mathematical Society, 124(12), pp. 3605{3612.Craig, J. J. (2001), Introduction to Robotics, Addison-Wesley, New York.Davenport, J. H. and J. Heintz (1988), \Real quanti�er elimination is doublyexponential", Journal of Symbolic Computations, 5(1/2), pp. 29{35.Enderton, H. B. (1972), A mathematical introduction to logic. Academic Press,New York. 16

Garey, M. and D. Johnson (1979), Computers and intractability: a guide to thetheory of NP-completeness, Freeman, San Francisco.Lewis, L. R. and C. H. Papadimitriou (1981), Elements of the theory of compu-tation, Prentice-Hall, Englewood Cli�s, NJ.Martin, J. C. (1991), Introduction to languages and the theory of computation,McGraw-Hill, New York.Mohler, R. R. (1991), Nonlinear systems. Vol. 1. Dynamics and control, Pren-tice Hall, Englewood Cli�, NJ.Papadimitriou, C. H. (1994), Computational Complexity, Addison-Wesley, SanDiego.Schoen�eld, J. R. (1967), Mathematical logic, Addison-Wesley.Seidenberg, A. (1954), \A new decision method for elementary algebra", Annalsof Math., 60, pp. 365{374.Tarski, A. (1951), A decision method for elementary algebra and geometry, 2nded., Berkeley and Los Angeles.

17