270 likes | 398 Views
Finding All Real Points of a Complex Algebraic Curve. Charles Wampler General Motors R&D Center In collaboration with Ye Lu (MIT), Daniel Bates (IMA), & Andrew Sommese (University of Notre Dame). Outline. Real points in a curve Relationship between a complex curve and its real points
E N D
Finding All Real Points of a Complex Algebraic Curve Charles Wampler General Motors R&D Center In collaboration with Ye Lu (MIT), Daniel Bates (IMA), & Andrew Sommese (University of Notre Dame)
Outline • Real points in a curve • Relationship between a complex curve and its real points • Morse-like representation for real curves • Numerical algorithm • Find isolated real points • Find boundary points, B, of real curve arcs • Find arcs and how they connect to B • Find how components meet each other • Examples • A Griffis-Duffy platform with a curious real motion
y x Real Solutions & Complex Dimension • At complex dimension 0, a point is either real or not • Just check the imaginary part • A complex curve may contain • Real arcs • Isolated real points • Example: • [x(x-1)(x-2)]2+[y(y-1)y-2)]2=0 • 9 isolated points in one complex curve • Example: an isolated and a 1-dim real pieces in the same complex curve • y2-x2(x-1)=0 • Real dimension ≤ complex dimension
y x C1 x y Conjugation • Let k : C C be the conjugation operation • x is real iff k(x)=x • Complex conjugation conj(a+bi)=a-bi • Real part of V(xy-1) is a unit hyperbola • Other conjugation operations • Hermitian transpose of a square matrix, A* • k(x,y)=(conj(y),conj(x)) • “real” part of V(xy-1) consists of pairs of complex conjugate points on the unit circle in C1 • Algorithms require only minor adjustments for different conjugation operators • i.e., sweep with a “real” hyperplane
Conjugate components • Let f(x) be polynomial system with real coefficients • If f(z)=0, then f(k(z))=0 • Suppose f-1(0) has several 1-dimensional irreducible components • The components must either: • Be self-conjugate, k(Z)=Z, or • Appear in conjugate pairs, k(Z)=Z’≠Z
Real points of conjugate pairs • If k(Z)=Z’≠Z, the real points of Z and Z’ must be their intersection ZZ’ • These points must be isolated • We can numerically intersect any two algebraic sets • Use a diagonal homotopy • This is all we need to handle conjugate pairs. • Self-conjugate components are another matter
Local smoothness • Let Z be • Quasiprojective complex algebraic set • Reduced • Dimension 1 • Let sing(Z) be its singular points • Let reg(Z)=Z\sing(Z) • Suppose zreg(Z) is real, • Then there is an open complex neighborhood of z such that the real points of Z in the neighborhood form a smooth connected curve. • Upshot: • real points = real smooth arcs + RN(sing(Z))
Sweeping out the curve • Pick a general real projection p • V(p(x)-t) as t varies along R is a “sweep hyperplane” • For general t, V(p(x)-t) Z consists of isolated regular points • Witness set of size d=deg Z • On an open real interval of t, we can numerically sweep out arcs • Sweep fails where: • Tangent to curve lies inside the sweep plane • Jacobian matrix at point on curve is corank ≥ 2
Morse-like representation • Let B* be the real points where the sweep will fail • Note: sing(Z) B* • Let B = pZ-1(p(B*)) RN • Morse-like representation of Z consists of • The generic real linear projection p • The boundary points B={B1,…,Bn}, • The edges E={e1,…,ek}, where each edge is {x,l,r}: • x is a point on an arc of Z RN • (l,r) are pointers to B: • Bl is left endpoint of the arc or l=-∞ • Br is right endpoint of the arc or r=+∞
Algorithm for self-conjugate curves • Define p • Find B* • Slice between B* • Track to find endpoints and extend B* to B Key: = B* = edge point
Full algorithm in outline • For polynomial system f(x) • Find the 1-dimensional components • Numerical irreducible decomposition • Deflate any nonreduced components • Test to find each component’s conjugate • Intersect conjugate pairs • Use diagonal intersection • Result is isolated real points • Compute the Morse-like representation for the real part of each self-conjugate component • Result is boundary points B and edges E • Some boundary points B* may be isolated • (Optional) Find where components not related by conjugation meet • Let’s look at some steps in more detail
Determining conjugate pairs • Numerical irreducible decomposition gives us witness sets for the components • Let Z,Z’ be components • Move the slicing plane (for all components) to the same generic real plane • Let WZ, WZ’ be the witness sets for Z,Z’ • Considering all 1-dim components of f-1(0), witness points must appear in conjugate pairs • We have k(Z)=Z’ iff k(WZ)=WZ’ • With probability 1 • This identifies self-conjugacy too
Determining B* • Let’s consider a reduced component, Z • Nonreduced introduces technicalities • Easy and not so interesting • Let a be the sweep direction: p(x)=aTx • Find B , a basis for the sweep tangents • [a B] is full rank, BTa=0 • Let J(x) be the Jacobian matrix of f(x) • Define h(x,y)=J(x)B y • y parameterizes the tangent space of the sweep • Define px and py, natural projections • B* = px((ZPN-2)V(h)) • B* are isolated • ((ZPN-2)V(h)) can be any dimension 0,…,N-2 • Find by a witness cascade
Extra points in B* • Suppose f(x):CNCm has m≥N-1 equations • For a 1-dim’l component Z • “square up” f(x) as g(x)=Qf(x), • Q is (N-1)m • This can introduce an extraneous component, Z’ • Z,Z’ V(g) • We may get extra points ZZ’ in B* • Not a problem, just makes extra edges • Deflation of nonreduced components can similarly add extra points to B*
Examples • Three easy • One substantial • A foldable Griffis-Duffy platform
Example 1 • Suppose f(x)=x2+y2 • V(f) is two lines • (x,y) = (u,ui) and (x,y)=(u,-ui), uC • These are a conjugate pair • The lines intersect in the real point (0,0)
Example 2 • (0,1) is an embedded point in V(y-1)
Example 3 • A single irreducible self-conjugate complex curve Double point in B*
Example 4: Foldable Griffis-Duffy Deg 28 irreducible motion in Study Coords (legs not equal) • Griffis-Duffy platform with • Equal triangles • Joints at midpoints of sides • Leg lengths all equal to altitude of the triangles What about this one?
Foldable Platform: Step 1 • Numerical Irreducible Decomposition gives • 1 double quadric surface • Nonphysical, throw away • 12 nonphysical lines (throw these away) • 3 double lines (deflate these) • 3 quadric curves • 4 quartic curves • Remark: 2x3+3x2+4x4=28 Find real points
Foldable platform (cont) • All 10 components are self-conjugate • Each of the 3 lines are completely determined by their witness point and the tangent at it. • Do nothing more to these • Run the algorithm on the other 7 pieces • 3 real points show up in the B* set for several components • Each quadric passes through 2 of these • Three quartics have: • no real B* • no real points on a random real slice • hence no real points. • The other quartic has a double point in its B* set
The special B* points • An example of how a numerical result can lead one to see an exact result • (The numerics were done to 12 digits. Only 4 are shown.)
A projection of the real curves Curves live in P7. Project onto a C7 patch, then project down to C2. Key: = B* = B\B* = edge point
Summary • We have described a method to find the real points in a complex curve • Uses the following operations of numerical algebraic geometry • Irreducible decomposition • Deflation • Intersection of components • Tracking on a component • The foldable Griffis-Duffy is fully analyzed • 1 quartic, 3 quadrics, 3 double lines • All connect via 4 singularities