mod,prime -> 逆可能
Posted
技术标签:
【中文标题】mod,prime -> 逆可能【英文标题】:mod,prime -> inverse possible 【发布时间】:2010-05-19 20:11:14 【问题描述】:我想知道是否可以执行以下操作:
我们有:
X
是 N
-primes 的产物,因此我认为是唯一的。
C
是一个常数。我们可以保证C
是一个数字,它是否是N
-primes 的一部分。哪个效果最好。
X mod C = Z
我们有Z
和C
,我们知道X
是N
-primes 的产物,其中N
受到限制,比如说前100 个素数。
无论如何我们可以找回X
吗?
【问题讨论】:
听起来像是 MathOverflow 的工作。 这是一个网站。我不确定这有多复杂,但请注意,mathoverflow 仅适用于研究级数学。 @warrenm:不,mathoverflow 不适用于基本数论。 【参考方案1】:我不这么认为。因为 C 不是 X 的一部分,所以在执行 X mod C 操作时会丢失信息。此外,mod 只返回操作的一部分,需要 div 来获取结果的另一部分。
示例:(3*5) % 7 = 1。因为您丢失了信息,所以如果没有直接的 div 部分,我看不到任何从 1 和 7 恢复到 15 的方法。您必须开始将 7 相加,然后将余数相加并进行比较,以模拟方程中缺少的 div 部分。
【讨论】:
嗯,可能有用吗?是的,这需要时间,但你认为会有误报吗? 误报?好吧,从技术上讲,您最终会得到一堆值,因为 X 的值是未知的。在 (7*13) % 8 = 3 的情况下,Z 为 3,C 为 8。但是,如果您尝试仅使用这两个数字和您创建的有限素数列表来查找 X,请考虑 (5 *7) % 8. X = 5*7 = 35 那里,但结果还是一样。换句话说,当无法确定 X 是什么时,你永远不会有一个 X 值。相反,您最终会得到一个 X % 8 = 3 的列表,例如 35 (5*7)、91 (7*13)、299 (13*23) 等。 问题恰恰相反,你没有以 X 开头,所以没有什么可比较的 - 只是 X 可能是数字的线性列表。【参考方案2】:没有。这是一个反例:
假设 X = 105 (= 3x5x7)。
取 C = 13 使得 X mod C = Z = 1。
但是 X = 118 ( = 2x59 ) 也给出 Z = 1 和 C = 13。
【讨论】:
这不是反例。他有等式X mod C = Z
,他想找到X
,知道它是N
素数的a
乘积。为什么解决方案必须是唯一的?
@IVlad:对我来说,问题的措辞似乎很清楚,X 有一个明确的原始值。
@IVlad:“为什么解决方案必须是唯一的?”这就是我读到的“找回X”的意思。与说“找到所有可能的 X”相反。
嗯,我认为这个问题可以双向解释。他说“X
是N
唯一素数的产物”,所以我认为他想要任何适合的解决方案。但是,“返回X
”确实暗示了X
的原始值。
同意,我认为这个问题有点不清楚。总的来说,“逆”可能意味着两种不同的事物:实际的逆函数(如果存在,即如果原始函数是双射的)与将共域的元素映射到它们在域中的原像(因此可以给出 0 个结果或大于 1,如“平方根是平方的倒数,4 的平方根是 +/- 2”)。所以有两个潜在的失败原因——因为没有 X,或者因为 X 不是唯一的。在不同的情况下,这些可能会或可能不会“算作”失败。【参考方案3】:
您的问题很难理解,但也许您想了解一下Chinese Remainder Theorem。
【讨论】:
您能详细说明一下吗?我看不出 CRT 有什么帮助,因为你应该在那里取多个模数的结果。 对不起,Ja 英语不是我的强项! :P "Michael" 基本上用他的例子更好地解释了我有 7 和 1 需要得到 15【参考方案4】:我们需要更多信息来为您解决这个问题。例如,如果您的意思是 X 是前 N 个素数的乘积,N
如果你的意思是 X 是前 100 个素数的某个子集的乘积,那就更难了。您本质上是在询问您是否可以判断 X 是否平滑给定 X mod Z。如果您能做到这一点,您可能能够改进最知名的整数分解算法,因为它们依赖于检测各种形式的平滑数.
当然,如果你能选择足够大的C,所以X mod C = X,那就很简单了。
有关平滑数字的讨论,请参阅 http://en.m.wikipedia.org/wiki/Smooth_number。
【讨论】:
【参考方案5】:我不确定我是否正确理解了你的问题,但如果给你 Z 和 C 并且你想计算 X。
如果 X mod C = Z,那么这意味着对于某个自然数 q,它成立 qC+Z = X,因为 q 是未知的,所以一般不可能精确计算 X,但是,存在一个无限集满足这个方程的数字。这也不奇怪。假设您有一些 X' 可能是解决方案,那么 X'' = X'+C 也是同样有效的解决方案。
如果我没记错的话,C 和 X 是否互质(即它们(不)有共同的质因数)是不相关的。但是,它会使您的解决方案集更小一些,因为如果 X 和 C 有共同的素因数,例如 p1,p2,...pn,那么每个有效解决方案也应该可以被 p1*p2*...*pn 整除。
【讨论】:
【参考方案6】:有无限的质数(因此N
质数的无限乘积),但只有C
的可能值X mod C
。因此,以压倒性的概率,将有无限的有效X
满足X mod C = Z
。
因此,如果您想确定其中哪一个是您的原始X
,那么不,那是无法完成的。
【讨论】:
以上是关于mod,prime -> 逆可能的主要内容,如果未能解决你的问题,请参考以下文章