1 / 124

Dan Bates University of Notre Dame

Bertini : A new software package for computations in numerical algebraic geometry. Dan Bates University of Notre Dame. Andrew Sommese University of Notre Dame. Charles Wampler GM Research & Development. Workshop on Approximate Commutative Algebra - Special Semester on Gr ö bner Bases

leanna
Download Presentation

Dan Bates University of Notre Dame

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Bertini: A new software package for computations in numerical algebraic geometry Dan Bates University of Notre Dame Andrew Sommese University of Notre Dame Charles Wampler GM Research & Development Workshop on Approximate Commutative Algebra - Special Semester on Gröbner Bases RICAM/RISC Linz, Austria (not Vienna!) February 23, 2006

  2. Front matter Thank you to the organizers!

  3. Front matter Thank you to the organizers! WARNING: I am not talking about polynomial GCDs, Grobner bases, nearest systems with certain structure, oil, etc. Also, I assume that we are starting with exact input.

  4. Front matter Thank you to the organizers! WARNING: I am not talking about polynomial GCDs, Grobner bases, nearest systems with certain structure, oil, etc. Also, I assume that we are starting with exact input. Question: Why would you pay attention?

  5. Front matter Thank you to the organizers! WARNING: I am not talking about polynomial GCDs, Grobner bases, nearest systems with certain structure, oil, etc. Also, I assume that we are starting with exact input. Question: Why would you pay attention? Answer: We also mix algebra, geometry, and analysis, just in a different way (+ “Can he earn his book?” – today’s theme!)

  6. Front matter NOTE: The main point today is software, not theory. More like a tutorial than a talk….

  7. Front matter NOTE: The main point today is software, not theory. More like a tutorial than a talk…. As a result, this talk covers a lot of topics, none of which are covered very deeply.

  8. Today’s goals • Describe what Bertini does. • Describe what Bertini will do soon. • Explain how to use Bertini. • Describe a little about how Bertini works. • Describe a few of Bertini’s successes. But first, a little background….

  9. Who is involved Main team: - Andrew Sommese - Charles Wampler - myself

  10. Who is involved Main team: - Andrew Sommese - Charles Wampler - myself Some early work by Chris Monico (Texas Tech)

  11. Who is involved Main team: - Andrew Sommese - Charles Wampler - myself Some early work by Chris Monico (Texas Tech) Some algorithms developed in collaboration with Chris Peterson (Colorado State) and Gene Allgower (Colorado State)

  12. Original intent of Bertini Given a polynomial system, find all isolated solutions and produce a catalog of the positive-dimensional irreducible components with at least one point on each component (the “numerical irreducible decomposition”).

  13. Numerical irreducible decomposition Let denote the solution set of a system. Then there is a decomposition where the are the irreducible components.

  14. Numerical irreducible decomposition Let denote the solution set of a system. Then there is a decomposition where the are the irreducible components. We want to find a set of points on each irreducible component, so we produce where is a set of points on .

  15. Why new software? There are currently several software packages for solving polynomial systems numerically: - PHC (Verschelde, etc.) - HomLab (Wampler) - PHoM (Kim, Kojima, etc.) - Hompack (Watson) - others?

  16. Why new software? • Had several ideas and new algorithms that we wanted to implement for proof of concept and testing.

  17. Why new software? • Had several ideas and new algorithms that we wanted to implement for proof of concept and testing. • Had a few ideas for increasing efficiency in basic algorithms, too.

  18. Why new software? • Had several ideas and new algorithms that we wanted to implement for proof of concept and testing. • Had a few ideas for increasing efficiency in basic algorithms, too. • New software is a headache, but it was necessary.

  19. New developments • Solving two-point boundary value problems – a fun application of homotopy continuation (with Allgower, Sommese, and Wampler)

  20. New developments • Solving two-point boundary value problems – a fun application of homotopy continuation (with Allgower, Sommese, and Wampler) • Numeric-symbolic methods in algebraic geometry (with Peterson and Sommese)

  21. New developments • Solving two-point boundary value problems – a fun application of homotopy continuation (with Allgower, Sommese, and Wampler) • Numeric-symbolic methods in algebraic geometry (with Peterson and Sommese) • Methods in real algebraic geometry (with Ye Lu, Sommese, and Wampler)

  22. New developments • Solving two-point boundary value problems – a fun application of homotopy continuation (with Allgower, Sommese, and Wampler) • Numeric-symbolic methods in algebraic geometry (with Peterson and Sommese) • Methods in real algebraic geometry (with Ye Lu, Sommese, and Wampler) • Moving from a personal tool for experimentation towards public-use software

  23. How to get Bertini • You can’t (yet).

  24. How to get Bertini • You can’t (yet). Bertini 1.0 soon released in executable format (probably) after more testing.

  25. How to get Bertini • You can’t (yet). Bertini 1.0 soon released in executable format (probably) after more testing. • Available from my website (maybe) and Sommese’s website (definitely).

  26. How to get Bertini • You can’t (yet). Bertini 1.0 soon released in executable format (probably) after more testing. • Available from my website (maybe) and Sommese’s website (definitely). • Built/tested on Linux (Redhat, debian, SUSE, and Cygwin). Eventually available for Mac and Windows (already on Cygwin for Windows).

  27. How to get Bertini • You can’t (yet). Bertini 1.0 soon released in executable format (probably) after more testing. • Available from my website (maybe) and Sommese’s website (definitely). • Built/tested on Linux (Redhat, debian, SUSE, and Cygwin). Eventually available for Mac and Windows (already on Cygwin for Windows). • Uses gcc, GMP/MPFR, flex/bison, maybe other libraries. See website once released.

  28. Today’s goals • Describe what Bertini does. • Describe what Bertini will do soon. • Explain how to use Bertini. • Describe a little about how Bertini works. • Describe a few of Bertini’s successes.

  29. Today’s goals • Describe what Bertini does. • Describe what Bertini will do soon. • Explain how to use Bertini. • Describe a little about how Bertini works. • Describe a few of Bertini’s successes.

  30. I. What Bertini does A. Solving polynomial systems 1. Uses predictor/corrector methods (homotopy continuation) to produce all isolated solutions of the given polynomial system. t = 0.0 t = 1.0 t

  31. I. What Bertini does A. Solving polynomial systems 1. Uses predictor/corrector methods (homotopy continuation) to produce all isolated solutions of the given polynomial system. t = 0.0 t = 1.0 t

  32. I. What Bertini does A. Solving polynomial systems 1. Uses predictor/corrector methods (homotopy continuation) to produce all isolated solutions of the given polynomial system. t = 0.0 t = 1.0 t

  33. I. What Bertini does A. Solving polynomial systems 1. Uses predictor/corrector methods (homotopy continuation) to produce all isolated solutions of the given polynomial system. t = 0.0 t = 1.0 t

  34. I. What Bertini does A. Solving polynomial systems 1. Uses predictor/corrector methods (homotopy continuation) to produce all isolated solutions of the given polynomial system. t = 0.0 t = 1.0 t

  35. I. What Bertini does A. Solving polynomial systems 1. Uses predictor/corrector methods (homotopy continuation) to produce all isolated solutions of the given polynomial system. t = 0.0 t = 1.0 t

  36. I. What Bertini does A. Solving polynomial systems 2. Automatic m-homogenization and generation of m-homogeneous start systems.

  37. I. What Bertini does A. Solving polynomial systems 2. Automatic m-homogenization and generation of m-homogeneous start systems.

  38. I. What Bertini does A. Solving polynomial systems 2. Automatic m-homogenization and generation of m-homogeneous start systems. Bertini produces start solutions also.

  39. I. What Bertini does A. Solving polynomial systems 3. Several endgames (including adaptive precision versions of a couple).

  40. I. What Bertini does A. Solving polynomial systems 4. Multiple precision, using MPFR.

  41. I. What Bertini does A. Solving polynomial systems 4. Multiple precision, using MPFR. NOTE: Extra digits aren’t cheap!

  42. I. What Bertini does A. Solving polynomial systems 4. Multiple precision, using MPFR. NOTE: Extra digits aren’t cheap! 5. Adaptive multiprecision: [key advance] Bertini (if set to do so) will change precision only when necessary, i.e., when certain inequalities are violated.

  43. I. What Bertini does A. Solving polynomial systems 6. Witness point sets for positive-dimensional components: - Cascade algorithm to get witness supersets - Perform “junk removal” - Pure-dimensional decomposition into irreducible components (monodromy + linear traces)

  44. I. What Bertini does B. Two-point boundary value problems Input: The (polynomial) nonlinearity (f), and the boundary values, i.e. Output: An approximation of all solutions, given the desired mesh size. An analytic problem may be solved with algebra.

  45. I. What Bertini does B. Two-point boundary value problems • Basic idea of the algorithm: • Discretize using N mesh points, yielding a polynomial system. • Move from N to N+1 using homotopy continuation. • Repeat.

  46. I. What Bertini does B. Two-point boundary value problems NOTE: Runs in conjunction with Maple. In fact, Maple is where most computation takes place – it calls Bertini for path-tracking.

  47. I. What Bertini does B. Two-point boundary value problems NOTE: Runs in conjunction with Maple. In fact, Maple is where most computation takes place – it calls Bertini for path-tracking. (This is how we deal with new ideas.)

  48. I. What Bertini does B. Two-point boundary value problems NOTE: Runs in conjunction with Maple. In fact, Maple is where most computation takes place – it calls Bertini for path-tracking. (This is how we deal with new ideas.) For details, see: Allgower, B., Sommese, & Wampler. Solution of polynomial systems derived from differential equations. Computing, 76(1-2): 1-10, 2006.

  49. I. What Bertini does C. Computing real curves Input: Polynomial system suspected of having a real curve as a solution component Output: Description of all real curves, in the form of a set of points on each curve including certain projection-specific critical points. These points convey certain characteristics about the curve….

  50. I. What Bertini does C. Computing real curves Input: Polynomial system suspected of having a real curve as a solution component Output: Description of all real curves, in the form of a set of points on each curve including certain projection-specific critical points. These points convey certain characteristics about the curve…. [not my story to tell]

More Related