Using Fermat to solve large polynomial and matrix problems

SIGSAM Bull. Pub Date : 2004-03-01 DOI:10.1145/980175.980188
Robert H. Lewis
{"title":"Using Fermat to solve large polynomial and matrix problems","authors":"Robert H. Lewis","doi":"10.1145/980175.980188","DOIUrl":null,"url":null,"abstract":"<i>Fermat</i> 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 <i>Fermat</i> the default \"ground ring\" <i>F</i> is the field of rational numbers. One may choose to work modulo a specified integer <i>m</i>, thereby changing the ground ring <i>F</i> from <b><i>Q</i></b> to <b><i>Z</i></b>/m. On top of this may be attached any number of symbolic variables <i>t</i><sub>1</sub>, <i>t</i><sub>2</sub>, . . ., <i>t</i><sub>n</sub>, thereby creating the polynomial ring <i>F</i>[<i>t</i><sub>1</sub>, <i>t</i><sub>2</sub>, . . ., <i>t</i><sub>n</sub>] and its quotient field, the field of rational functions, whose elements are called <i>quolynomials</i>, Further, polynomials <i>p</i>, <i>q</i>, . . . can be chosen to mod out with, creating the quotient ring <i>F</i>(<i>t</i><sub>1</sub>, <i>t</i><sub>2</sub>, . . .) / < <i>p</i>, <i>q</i>, . . .>, whose elements are called <i>polymods</i>. If this is done correctly, finite fields result. Finally, it is possible to allow <i>Laurent polynomials</i>, 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.<i>Fermat</i> 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.<i>Fermat</i> 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.<i>Fermat</i> 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 <b>Dixon Resultant</b> technique. I will demonstrate this method at the conference, in particular how I attack the <i>spurious factor problem</i>.<i>Fermat</i> is available for Windows95/98/NT/etc and Mac OS. Fermat for Linux is ready for beta testing.","PeriodicalId":314801,"journal":{"name":"SIGSAM Bull.","volume":"428 1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2004-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"SIGSAM Bull.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/980175.980188","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 6

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.
用费马解大的多项式和矩阵问题
费马是一个交互式的数学实验系统。它是一个超级计算器-计算机代数系统,其中计算的基本项目可以是有理数、模数、有限域、多变量多项式、有理函数或多项式对其他多项式的模。在费马中,默认的“接地环”F是有理数域。可以选择对指定的整数m进行模数,从而将地环F从Q改为Z/m。在此之上,可以附加任意数量的符号变量t1, t2,…,tn,从而创建多项式环F[t1, t2,…,tn]及其商域,有理函数域,其元素称为多项式,进一步,多项式p, q,…。可以选择建模,创建商环F(t1, t2,…)/ < p, q,…>,其元素称为多模。如果这样做正确,就会产生有限域。最后,它可能允许洛朗多项式,那些负和正的指数。一旦以这种方式建立了计算环,所有的计算都是这个环的元素。Fermat为数组和矩阵操作提供了广泛的内置原语,例如子矩阵、稀疏矩阵、行列式、子矩阵、归一化、列约简、行简化阶梯形、矩阵逆、史密斯范式和特征多项式。它始终比一些著名的计算机代数系统要快——在某些情况下要快几个数量级。Fermat是一种完整的编程语言。程序和数据可以保存到一个普通的文本文件中,可以在以后的会话中读取,也可以由其他软件系统读取。费马解决了其他计算机代数系统无法解决的实际问题。它在时间和空间上都更有效率。这些问题来自代数拓扑、群论、图像处理、计算几何、决策理论和信号处理。最近的应用包括用狄克逊合成技术求解多项式方程组。我将在会议上演示这种方法,特别是我如何处理假因子问题。Fermat可用于Windows95/98/NT/等和Mac OS。Linux版的Fermat已经准备好进行beta测试了。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信