Polynomial System Solving Using Archimedean Tropical Variety Intersection Hailey Stirneman Summer 2015 Abstract Suppose you know the location of three beacons and you want to find the position of an unknown point, P. Suppose further that you know the angle between the point, P, and each pair of beacons. Using the property of equiangular circles and chords, we create three distinct semi-algebraic curves that each contain the point P. We then find bivariate quadratic polynomials that define the curves and create four 2x2 systems of polynomial equations from two of the semi-algebraic curves and approximate the solutions to the four systems using tropical geometry. Specifically, we write a program that finds polynomials based on the beacon coordinates and angles. Then we write an additional program that finds intersections between two Archimedean tropical varieties. Next, we use binomial systems and Newton Iteration to find a set of solutions that we compare to the third semi-algebraic curve to find our final solution, the point P. The motivation for creating these programs is to write an algorithm that will create an efficient method for solving more complex polynomials systems of polynomials with higher degree. For example, generalizing this algorithm to 3D in order to find one’s position in space. 1. 1.1. Introduction The Program I had no previous experience with Algorithmic Algebraic Geometry before this program. But over the course of the past eight weeks I feel like I have learned a lot dealing with this branch of mathematics. For the first two weeks, my research advisor, Dr. Rojas, provided instruction through daily lectures giving us background knowledge on concepts of Algebraic Algorithmic Geometry. Soon after I began to work on my research project with my partner, Yasmina. Besides learning about Algebraic Algorithmic Geometry concepts, I have learned a great deal of programming. With our research topic, programming in Matlab was essential and done on a daily basis. 1 1.2. Definitions We define our functions to be of the form f (x) = t P ci xai with ci 6= 0, i=1 for all i. We then define the support of f to be Supp := {ai }i∈[t] and the lifted support of f to be Lif tSupp(f ) := {(ai , −log|ci |)}i∈[t] . Next, we let the ordinary Newton polytope of f be N ewt(f ) := Conv(Supp(f )), and the Archimedean Newton polytope, denoted as ArchN ewt(f ) to be ArchN ewt(f ) := Conv({(ai , − log |ci |)}i∈[t] . We also define the Archimedean Tropical variety of f , denoted as Archtrop(f ), as the set of all w ∈ Rn with (w, −1) an outer normal of a positive-dimensional face of ArchN ewt(f ). Finally, we define the ±1 function Log|x| to be (log |x1 |, . . . , log |xn |) and, for any f ∈ C[x±1 1 , . . . , xn ], ∗ n we define Amoeba(f ) to be {Log|x||f (x) = 0, x ∈ (C ) }. 1.3. Theorem For any n-variate t-nomial f and any ρ ∈ Amoeba(f ), there is always a σ ∈ ArchT rop(f ) with |ρ − σ| ≤ log(t − 1). 2. 2.1. Background Motivation In our project, we wrote several programs that used Archimedean tropical varieties in order to solve polynomial systems equations for location in 2D. The motivation for creating these programs was to lay the groundwork for an algorithm that would estimate the position of spacecraft in 3D by solving more complex polynomials systems. This method of position estimation would be useful for satellite position estimation for a number of reasons. For example, the fact that since computers on spacecraft have to be made with circuits resistant to radiation, their microprocessors are usually slower which would make a simple positon-estimating algorithm more suitable than computational software. 2.2. Radiation There are many problems that can arise due to radiation. A single charged particle can knock thousands of electrons loose, causing electronic noise and signal spikes. This can make results inaccurate or unintelligible in the case of digital circuits, which is a particularly serious problem when it comes to the designs of satellites and spacecraft. In order to ensure the proper operations of these systems, manufacturers of integrated circuits and sensors intended for the aerospace market employ various methods of radiation hardening. However, there are downsides to radiation hardened chips, they are expensive, power-hungry, and slow. They are considered as much as ten times slower than an equivalent CPU in a modern consumer desktop PC found at home. This is why creating an efficient algorithm to estimate our position is useful. A more 2 efficient algorithm allows radiation hardened chips to run faster and therefore reduces error in calculating position. 3. 3.1. Progress Algorithm As a warm up for 3D, we start in 2D by looking at three beacon points, which we call Ai for i = 1 − 3, and the point, p, that we want to solve for. We then define known angles θj for j = 1 − 3 where θ1 = ∠A1 P A2 , θ2 = ∠A2 P A3 , and θ3 = ∠A1 P A3 . Figura 1: Beacons A1 , A2 , and A3 and unknown point P . Using the loci of equiangular points we create semi-algebraic curves that contain the point P from each pair of beacons and their corresponding angle θj . Figura 2: Semi-algebraic curve created from A1 , A2 , and P with additional loci points Q1 , Q2 , and Q3 . 3 Figura 3: Three semi-algebraic curves formed from beacon pairs and their respective θj . The intersection of the three curves is the point P . This gives us a total of three semi-algebraic curves that each contain P , which we can solve for by finding the intersection point of the three semi-algebraic curves. To solve for P we first need to find a system of bivariate quadratic equations that define the semi-algebraic curves and then approximate the solution set of the system using tropical geometry. In order to accomplish our first goal and find the system of bivariate quadratic equations, we will use a program we wrote in MatLab to find sets of polynomials that define each semi-algebraic curve. To find a set of polynomials that defines a semi-algebraic curve, we first notice that due to the equi-angular property of circles and chords, the curves are made from two incomplete circles. This means that we will need to find polynomials that define the two circles of the following form: (x − a)2 + (y − b)2 = r2 where a, b, r ∈ R Consequently, we will need to find the centers of each circle, the point (a,b), and the radius r of both of these incomplete circles. Our MatLab program does this by using the pair of beacons A and B, and thetaj that formed the curve and then calculating the radius for the two incomplete circles using the following general equation: r = (|B − A|/2)/sin(θj ) Figura 4: Derivation of the radii of the incomplete circles in a semi-algebraic curve. 4 We then set each beacon as the center point of a new circle with radius r and solve for the two intersection points of the two beacon-centered circles. The intersection points will then be the center points of the partial circles with radius r that make up the semi-algebraic curve. Figura 5: Circles centered around beacons A1 and A2 with radius r intersect at C1 and C2 . The program loops through this process for each pair of beacons and corresponding θj , so that we have a 6x3 array where each row gives the a, b, and r of a distinct bivariate quadratic polynomial that defines a circle. Next, our program uses these values to create a 6x6 array of the coefficients that correspond to a 6x2 systems of bivariate quadratic polynomial of the follo6 P wing form f (x) = ci xai with ci 6= 0 for all i. i=1 We then take the four polynomials that correspond to two of the three semialgebraic curves and create four 2x2 systems that find every possible intersection between a circle from the first curve and a circle from the second curve. After that, we use tropical geometry to approximate solutions to the systems which we can do because of the relationship between the Amoeba of a polynomial and the polynomial’s ArchTrop. The way we do this is by finding the ArchTrop intersection of the polynomials in each 2x2 system. Our next program we write draws ArchTrop in Matlab. Our program takes the convex hull of the lifted support of a polynomial f in order to create ArchN ewt(f ). From the faces of ArchN ewt(f ) we are able to construct the set of points W by taking the normal vectors of each face of ArchN ewt(f ) whose third coordinate is −1. The first two coordinates of each of these vectors forms the set of w ∈ Rn which our program plots as the vertices of ArchT rop(f ). The vertices are then connected with line segments according to the adjacency of which faces formed each vertex. Finally, rays are drawn from the vertices of ArchT rop(f ) that are perpendicular to the edges of the triangulation of N ewt(f ) which complete ArchT rop(f ). 5 Figura 6: ArchT rop(f ) where f (x, y) = −4 + 22x + 7y + 12xy − 3x2 + y 2 . Next, we plot the two Archimedean tropical varieties in each system and find their points of intersection using an additional program. Figura 7: Intersection of ArchT rop(f ) in blue and ArchT rop(g) in red where f (x, y) = −4+22x+7y+12xy−3x2 +y 2 and g(x, y) = 100+x+y+xy+100x2 +y 2 . This program takes a line segment or ray of one of the Archimedean tropical varieties and checks for an intersection with each line segment and ray in the second ArchTrop. The process is then repeated for each line segment and ray of the first ArchTrop until we have a set of intersection points between the two ArchTrops. These ArchTrop intersections give us possible solutions to the intersection of the three semi-algebraic curves. We first use binomial systems made from the 6 line segments and rays that created the ArchTrop intersections. Next, we use Newton Iteration to approximate solutions for the four 2x2 systems. In order to check which solution is the intersection point of the curves, we see which solution is on or close to the two circles in the final semi-algebraic curve. This solution is our point P. 4. 4.1. Conclusion The Project While there are certainly simpler ways to solve 2x2 polynomial systems, our goal was to eventually be able to solve for position in 3D which would require solving more complex systems for the intersection of three tori. We were unable to reach this part of our project, however, we were able to set the groundwork for solving more complex systems using ArchTrop intersections. In addition to eventually solving systems in 3x3, this method could be applied to approximate the solutions to systems of polynomials of much higher degrees that would otherwise be extremely difficult to solve. 4.2. The Program I had a great experience at the REU program. This was my first time being surrounded with like-minded people. I do not know many mathematics majors, and it was very refreshing to be surrounded by people with the same passion as me. This REU has introduced me to the world of research and a graduate mathematics education. Before this program, I had not given much thought to graduate school, but now I can certainly see that as a route I might possibly go. I am very thankful for being given the opportunity to participate in this program and to become close to other mathematicians, especially my partner in this project, Yasmina. 5. References [1] Martı́ın Avendaño, Roman Kogan, Mounir Nisse, and J. Maurice Rojas. Metric Estimates and Membership Complexity for Archimedean Amoebae and Tropical Hypersurfaces. [2] Eleanor Anthony, Sheridan Grant, Peter Gritzmann, and J. Maurice Rojas. Polynomial-time Amoeba Neighborhood Membership and Faster Localized Solving. 7