用于实用整数因式分解的平滑子和搜索启发式

IF 0.6 4区 计算机科学 Q4 COMPUTER SCIENCE, THEORY & METHODS International Journal of Foundations of Computer Science Pub Date : 2023-12-29 DOI:10.1142/s0129054123500296
Markus Hittmeir
{"title":"用于实用整数因式分解的平滑子和搜索启发式","authors":"Markus Hittmeir","doi":"10.1142/s0129054123500296","DOIUrl":null,"url":null,"abstract":"<p>The two currently fastest general-purpose integer factorization algorithms are the Quadratic Sieve and the Number Field Sieve. Both techniques are used to find so-called smooth values of certain polynomials, i.e., values that factor completely over a set of small primes (the factor base). As the names of the methods suggest, a sieving procedure is used for the task of quickly identifying smooth values among the candidates in a certain range. While the Number Field Sieve is asymptotically faster, the Quadratic Sieve is still considered the most efficient factorization technique for numbers up to around 100 digits. In this paper, we challenge the Quadratic Sieve by presenting a novel approach based on representing smoothness candidates as sums that are always divisible by several of the primes in the factor base. The resulting values are generally smaller than those considered in the Quadratic Sieve, increasing the likelihood of them being smooth. Using the fastest implementations of the Self-initializing Quadratic Sieve in Python as benchmarks, a Python implementation of our approach runs consistently 5 to 7 times faster for numbers with 45–100 digits, and around 10 times faster for numbers with 30–40 digits. We discuss several avenues for further improvements and applications of the technique.</p>","PeriodicalId":50323,"journal":{"name":"International Journal of Foundations of Computer Science","volume":null,"pages":null},"PeriodicalIF":0.6000,"publicationDate":"2023-12-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Smooth Subsum Search A Heuristic for Practical Integer Factorization\",\"authors\":\"Markus Hittmeir\",\"doi\":\"10.1142/s0129054123500296\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<p>The two currently fastest general-purpose integer factorization algorithms are the Quadratic Sieve and the Number Field Sieve. Both techniques are used to find so-called smooth values of certain polynomials, i.e., values that factor completely over a set of small primes (the factor base). As the names of the methods suggest, a sieving procedure is used for the task of quickly identifying smooth values among the candidates in a certain range. While the Number Field Sieve is asymptotically faster, the Quadratic Sieve is still considered the most efficient factorization technique for numbers up to around 100 digits. In this paper, we challenge the Quadratic Sieve by presenting a novel approach based on representing smoothness candidates as sums that are always divisible by several of the primes in the factor base. The resulting values are generally smaller than those considered in the Quadratic Sieve, increasing the likelihood of them being smooth. Using the fastest implementations of the Self-initializing Quadratic Sieve in Python as benchmarks, a Python implementation of our approach runs consistently 5 to 7 times faster for numbers with 45–100 digits, and around 10 times faster for numbers with 30–40 digits. We discuss several avenues for further improvements and applications of the technique.</p>\",\"PeriodicalId\":50323,\"journal\":{\"name\":\"International Journal of Foundations of Computer Science\",\"volume\":null,\"pages\":null},\"PeriodicalIF\":0.6000,\"publicationDate\":\"2023-12-29\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"International Journal of Foundations of Computer Science\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://doi.org/10.1142/s0129054123500296\",\"RegionNum\":4,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q4\",\"JCRName\":\"COMPUTER SCIENCE, THEORY & METHODS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Journal of Foundations of Computer Science","FirstCategoryId":"94","ListUrlMain":"https://doi.org/10.1142/s0129054123500296","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q4","JCRName":"COMPUTER SCIENCE, THEORY & METHODS","Score":null,"Total":0}
引用次数: 0

摘要

目前最快的两种通用整数因式分解算法是二次筛法和数域筛法。这两种技术都用于寻找某些多项式的所谓平滑值,即在一组小素数(因数基)上完全因数分解的值。正如这两种方法的名称所暗示的,筛分程序用于在一定范围内的候选值中快速找出平滑值。虽然数域筛法在渐进上更快,但对于 100 位以内的数字,二次筛法仍被认为是最有效的因式分解技术。在本文中,我们提出了一种新方法,将平滑度候选数表示为总是能被因数基中的几个素数整除的和,从而对二次筛法提出了挑战。这样得到的值通常比二次筛法中考虑的值要小,从而增加了它们成为平滑值的可能性。以 Python 中自初始化二次筛的最快实现为基准,我们方法的 Python 实现在处理 45-100 位数的数字时,运行速度持续提高 5 到 7 倍,在处理 30-40 位数的数字时,运行速度提高约 10 倍。我们讨论了进一步改进和应用该技术的几种途径。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
Smooth Subsum Search A Heuristic for Practical Integer Factorization

The two currently fastest general-purpose integer factorization algorithms are the Quadratic Sieve and the Number Field Sieve. Both techniques are used to find so-called smooth values of certain polynomials, i.e., values that factor completely over a set of small primes (the factor base). As the names of the methods suggest, a sieving procedure is used for the task of quickly identifying smooth values among the candidates in a certain range. While the Number Field Sieve is asymptotically faster, the Quadratic Sieve is still considered the most efficient factorization technique for numbers up to around 100 digits. In this paper, we challenge the Quadratic Sieve by presenting a novel approach based on representing smoothness candidates as sums that are always divisible by several of the primes in the factor base. The resulting values are generally smaller than those considered in the Quadratic Sieve, increasing the likelihood of them being smooth. Using the fastest implementations of the Self-initializing Quadratic Sieve in Python as benchmarks, a Python implementation of our approach runs consistently 5 to 7 times faster for numbers with 45–100 digits, and around 10 times faster for numbers with 30–40 digits. We discuss several avenues for further improvements and applications of the technique.

求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
International Journal of Foundations of Computer Science
International Journal of Foundations of Computer Science 工程技术-计算机:理论方法
CiteScore
1.60
自引率
12.50%
发文量
63
审稿时长
3 months
期刊介绍: The International Journal of Foundations of Computer Science is a bimonthly journal that publishes articles which contribute new theoretical results in all areas of the foundations of computer science. The theoretical and mathematical aspects covered include: - Algebraic theory of computing and formal systems - Algorithm and system implementation issues - Approximation, probabilistic, and randomized algorithms - Automata and formal languages - Automated deduction - Combinatorics and graph theory - Complexity theory - Computational biology and bioinformatics - Cryptography - Database theory - Data structures - Design and analysis of algorithms - DNA computing - Foundations of computer security - Foundations of high-performance computing
期刊最新文献
The 4-Set Tree Connectivity of Folded Hypercube An Efficient Algorithm to Compute Dot Product Dimension of Some Outerplanar Graphs The Longest Wave Subsequence Problem: Generalizations of the Longest Increasing Subsequence Problem State Complexity of Boolean Operations on Graph-Walking Automata Deterministic One-Way Simulation of Two-Way Deterministic Finite Automata Over Small Alphabets
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1