skip to main content
article

Using Fermat to solve large polynomial and matrix problems

Published:01 March 2004Publication History
Skip Abstract Section

Abstract

Fermat is an interactive system for mathematical experimentation. It is a super calculator - computer algebra system, in which the basic items being computed can be rational numbers, modular numbers, finite fields, multivariable polynomials, rational functions, or polynomials modulo other polynomials.In Fermat the default "ground ring" F is the field of rational numbers. One may choose to work modulo a specified integer m, thereby changing the ground ring F from Q to Z/m. On top of this may be attached any number of symbolic variables t1, t2, . . ., tn, thereby creating the polynomial ring F[t1, t2, . . ., tn] and its quotient field, the field of rational functions, whose elements are called quolynomials, Further, polynomials p, q, . . . can be chosen to mod out with, creating the quotient ring F(t1, t2, . . .) / < p, q, . . .>, whose elements are called polymods. If this is done correctly, finite fields result. Finally, it is possible to allow Laurent polynomials, those with negative as well as positive exponents. Once the computational ring is established in this way, all computations are of elements of this ring.Fermat has extensive built-in primitives for array and matrix manipulations, such as submatrix, sparse matrix, determinant, minors, normalize, column reduce, reduced row echelon, matrix inverse, Smith normal form, and characteristic polynomial. It is consistently faster than some well known computer algebra systems - orders of magnitude faster in some cases.Fermat is a complete programming language. Programs and data can be saved to an ordinary text file that can be read during a later session or read by some other software system.Fermat has solved real problems that other computer algebra systems could not. It is more efficient in both time and space. These problems have come from algebraic topology, group theory, image processing, computational geometry, decision theory, and signal processing.Most recent applications involve solving systems of polynomial equations with the Dixon Resultant technique. I will demonstrate this method at the conference, in particular how I attack the spurious factor problem.Fermat is available for Windows95/98/NT/etc and Mac OS. Fermat for Linux is ready for beta testing.

References

  1. Lewis, Robert H. and Stephen Bridgett, "Conic Tangency Equations and Apollonius Problems in Biochemistry and Pharmacology," Mathematics and Computers in Simulation 61(2) (2003) p. 101--114. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Lewis, Robert H. and Peter F. Stiller, "Solving the recognition problem for six lines using the Dixon resultant," Mathematics and Computers in Simulation 49 (1999) p. 205--219. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Lewis, Robert H. and Michael Wester, "Comparison of Polynomial-Oriented Computer Algebra Systems," SIGSAM Bulletin 33(4), (1999) p. 5--13. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Using Fermat to solve large polynomial and matrix problems
    Index terms have been assigned to the content through auto-classification.

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    • Published in

      cover image ACM SIGSAM Bulletin
      ACM SIGSAM Bulletin  Volume 38, Issue 1
      March 2004
      34 pages
      ISSN:0163-5824
      DOI:10.1145/980175
      Issue’s Table of Contents

      Copyright © 2004 Author

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 1 March 2004

      Check for updates

      Qualifiers

      • article

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader