{"title":"加速多项式GCD,这是Maple中的一个关键操作","authors":"M. Monagan","doi":"10.5206/mt.v2i1.14452","DOIUrl":null,"url":null,"abstract":"Given two multivariate polynomials A and B with integer coefficientswe present a new GCD algorithm which computes G = gcd(A,B).Our algorithm is based on the Hu/Monagan GCD algorithm.If A = G A̅ and B = G B̅ we have modified the Hu/Monaganso that it can interpolate the smaller of G and A̅. \nWe have implemented the new GCD algorithm in Maple withseveral subroutines coded in C for efficiency.Maple currently uses Zippel's sparse modular GCD algorithm.We present timing results comparing Maple's implementation of Zippel's algorithm","PeriodicalId":355724,"journal":{"name":"Maple Transactions","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":"{\"title\":\"Speeding up polynomial GCD, a crucial operation in Maple\",\"authors\":\"M. Monagan\",\"doi\":\"10.5206/mt.v2i1.14452\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Given two multivariate polynomials A and B with integer coefficientswe present a new GCD algorithm which computes G = gcd(A,B).Our algorithm is based on the Hu/Monagan GCD algorithm.If A = G A̅ and B = G B̅ we have modified the Hu/Monaganso that it can interpolate the smaller of G and A̅. \\nWe have implemented the new GCD algorithm in Maple withseveral subroutines coded in C for efficiency.Maple currently uses Zippel's sparse modular GCD algorithm.We present timing results comparing Maple's implementation of Zippel's algorithm\",\"PeriodicalId\":355724,\"journal\":{\"name\":\"Maple Transactions\",\"volume\":\"1 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2022-09-05\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"2\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Maple Transactions\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.5206/mt.v2i1.14452\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Maple Transactions","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.5206/mt.v2i1.14452","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2
摘要
给定两个系数为整数的多元多项式A和B,给出了计算G = GCD (A,B)的GCD算法。我们的算法基于Hu/Monagan GCD算法。如果A = G A n n和B = G B n n,我们已经修改了Hu/ monaganan,使它可以插值G和A n n的较小值。为了提高效率,我们在Maple中实现了新的GCD算法,并用C语言编写了几个子程序。Maple目前使用Zippel的稀疏模块化GCD算法。我们给出了比较Maple实现Zippel算法的时序结果
Speeding up polynomial GCD, a crucial operation in Maple
Given two multivariate polynomials A and B with integer coefficientswe present a new GCD algorithm which computes G = gcd(A,B).Our algorithm is based on the Hu/Monagan GCD algorithm.If A = G A̅ and B = G B̅ we have modified the Hu/Monaganso that it can interpolate the smaller of G and A̅.
We have implemented the new GCD algorithm in Maple withseveral subroutines coded in C for efficiency.Maple currently uses Zippel's sparse modular GCD algorithm.We present timing results comparing Maple's implementation of Zippel's algorithm