Live data from Hacker News

A New Provable Factoring Algorithm

rjlipton.wordpress.com

11–20 of 22 posts

Re: A New Provable Factoring Algorithm

#11
post #4
post #2

I'm a little confused as to what distinction is being made here between "provable" and "unprovable" factoring algorithms. Is it just that "provable" ones may output the correct result all the time, while "unprovable" ones are probabilistic and output the correct result with high probability? (E.g., roughly the distinction between P or ZPP on the one hand and BPP on the other hand, if these hypothetically ran in polyn…

Well, in math some things are true but not provable unless our formal system is inconsistent. This is one of Gödel's incompleteness theorems. It's therefore not far fetched that some algorithms might in fact always work correctly, but at the same time a proof for their correctness doesn't exist. You can never be sure (literally!) that you're not just confusing it with an algorithm that's wrong but happens to work on…

There's no obstacle in principle to proving that something can't be proved. As far as I understand things, the continuum hypothesis has been shown to be unprovable within ZFC (since ZFC is consistent with both the truth and the falsity of the continuum hypothesis, obviously it is unable to prove the hypothesis true or false), and theoretical computer science produces results of the form "to prove X, the following kinds of approaches cannot work".

Re: A New Provable Factoring Algorithm

#12
post #9

I found an algorithm to determine the parity (even or odd) of the number of factors in N. Never wrote about it because IDK if it's unique, and also because it's time complexity seems poor and I never tried to prove any upper bound or make it faster. Anyone know of something similar? Would this be interesting?

A fast algorithm for parity would be interesting. There is currently no better way to compute parity than factoring N.

There is a well known hand wavy-argument that computing any function on the prime factors of arbitrary integers should be difficult. Very roughly the idea is that if you can compute such a function over the integers you can probably also compute it over other rings. Applying it over certain number fields would let you get information about the low bits of the prime factors which is thought to be hard.

There is a bit more information given in Terrence Tao's answer here http://mathoverflow.net/questions/3820/how-hard-is-it-to-com...

His answer is about counting the number of distinct prime factors but I think that it can extended to the parity of this value as well.

Re: A New Provable Factoring Algorithm

#13
post #6

I want to replace systems like AES with ones that uses the hardness of factoring for their security. Systems like AES rely on intuition and experimental testing for their security—there is not even a conditional proof that they are secure. 1) You can prove symmetric crypto is secure 2) In the light of (upcoming fast) factoring algorithms, using crypto that relies on factoring everywhere sounds very stupid.

Please point to a proof of the security of symmetric crypto if you can. Last I checked, such a proof would have still been considered an incredible breakthrough.

All that people are doing is to show that k rounds of cypher C can be broken, where actual implementations use K > k rounds, and then arguing that nobody has been able to break more despite a lot of effort, cypher C is probably secure in practice. That is good evidence, but not a proof.

Re: A New Provable Factoring Algorithm

#14
post #4

Earlier quoted context omitted.

Well, in math some things are true but not provable unless our formal system is inconsistent. This is one of Gödel's incompleteness theorems. It's therefore not far fetched that some algorithms might in fact always work correctly, but at the same time a proof for their correctness doesn't exist. You can never be sure (literally!) that you're not just confusing it with an algorithm that's wrong but happens to work on…

There's no obstacle in principle to proving that something can't be proved. As far as I understand things, the continuum hypothesis has been shown to be unprovable within ZFC (since ZFC is consistent with both the truth and the falsity of the continuum hypothesis, obviously it is unable to prove the hypothesis true or false), and theoretical computer science produces results of the form "to prove X, the following kin…

"ZFC is consistent with …" must, of course, be replaced by "If ZFC is consistent, then so are …".

In fact, singling out ZFC gives you another example of this kind of result: if ZF is consistent, then so are ZF+C and ZF-C.

Re: A New Provable Factoring Algorithm

#15
post #9

I found an algorithm to determine the parity (even or odd) of the number of factors in N. Never wrote about it because IDK if it's unique, and also because it's time complexity seems poor and I never tried to prove any upper bound or make it faster. Anyone know of something similar? Would this be interesting?

Do you really mean the number of factors, or just the number of prime factors? If the former, that's always even except for squares, so one reasonably fast approach would seem to be (square-root computation) + (test for integrality).

Re: A New Provable Factoring Algorithm

#16
post #6

I want to replace systems like AES with ones that uses the hardness of factoring for their security. Systems like AES rely on intuition and experimental testing for their security—there is not even a conditional proof that they are secure. 1) You can prove symmetric crypto is secure 2) In the light of (upcoming fast) factoring algorithms, using crypto that relies on factoring everywhere sounds very stupid.

Please point to a proof of the security of symmetric crypto if you can. Last I checked, such a proof would have still been considered an incredible breakthrough. All that people are doing is to show that k rounds of cypher C can be broken, where actual implementations use K > k rounds, and then arguing that nobody has been able to break more despite a lot of effort, cypher C is probably secure in practice. That is go…

One-time-use random data XOR your data = provably secure symmetric crypto, afaik. I could try to hunt down a proof of that one. Impractical, sure, but provable.

Also afaik, others haven't been proven / can only be proven to have certain qualities, and leave gaps which have massive real-world implication. So yeah, I'm curious for other proofs too.

Re: A New Provable Factoring Algorithm

#17
post #16

Earlier quoted context omitted.

Please point to a proof of the security of symmetric crypto if you can. Last I checked, such a proof would have still been considered an incredible breakthrough. All that people are doing is to show that k rounds of cypher C can be broken, where actual implementations use K > k rounds, and then arguing that nobody has been able to break more despite a lot of effort, cypher C is probably secure in practice. That is go…

One-time-use random data XOR your data = provably secure symmetric crypto, afaik. I could try to hunt down a proof of that one. Impractical , sure, but provable. Also afaik, others haven't been proven / can only be proven to have certain qualities, and leave gaps which have massive real-world implication. So yeah, I'm curious for other proofs too.

One time pads are currently the only provable "unbreakable" encryption. The proof is trivial.

Re: A New Provable Factoring Algorithm

#18
post #4
post #2

I'm a little confused as to what distinction is being made here between "provable" and "unprovable" factoring algorithms. Is it just that "provable" ones may output the correct result all the time, while "unprovable" ones are probabilistic and output the correct result with high probability? (E.g., roughly the distinction between P or ZPP on the one hand and BPP on the other hand, if these hypothetically ran in polyn…

Well, in math some things are true but not provable unless our formal system is inconsistent. This is one of Gödel's incompleteness theorems. It's therefore not far fetched that some algorithms might in fact always work correctly, but at the same time a proof for their correctness doesn't exist. You can never be sure (literally!) that you're not just confusing it with an algorithm that's wrong but happens to work on…

What he means when he says "unprovable" is "not provably guaranteed to run in O(x)" since the entire discussion is about complexity. A "provable" algorithm, then, is one where the running time can be calculated.

In a deterministic algorithm, this bound will always exist. In a non-deterministic algorithm (e.g. one that uses a random walk), this bound will not. The funny thing is that in the real world (and for big data) the latter algorithms generally run faster than the former.

If you're wondering why a non-deterministic algorithm can't have bounds, it's simple! Because it would range from a trivial best case of I get really lucky and randomly hit every "good" factor in constant time O(1) to the trivial worst cast of I get really unlucky and keep guessing the wrong numbers ad infinitum.

Re: A New Provable Factoring Algorithm

#19
post #9

I found an algorithm to determine the parity (even or odd) of the number of factors in N. Never wrote about it because IDK if it's unique, and also because it's time complexity seems poor and I never tried to prove any upper bound or make it faster. Anyone know of something similar? Would this be interesting?

A fast algorithm for parity would be interesting. There is currently no better way to compute parity than factoring N. There is a well known hand wavy-argument that computing any function on the prime factors of arbitrary integers should be difficult. Very roughly the idea is that if you can compute such a function over the integers you can probably also compute it over other rings. Applying it over certain number fi…

Thanks, the mathoverflow link was very informative. It's funny because I started out computing a number that I thought would be useful for factoring N, but it turned out that it would take one of 2 values depending if N was prime or had 2 factors (this is easily proven). Subsequent testing via software seemed to indicate it was actually determining the parity of the number of primes. I believe that's what it does in general but never bothered to go any further.

Re: A New Provable Factoring Algorithm

#20
post #7

Earlier quoted context omitted.

The following is general, and may be wrong in some details. I look forward to someone more knowledgeable than I coming along to fix it to be totally correct, but here are some of the ideas. The unprovable algorithm usually use randomness and/or rely for their correctness on unproved hypotheses, ... As an example, some algorithms rely on the Riemann Hypothesis for their correctness. ... yet are observed to be the fast…

Nitpick: Pollard's rho is unproven not because it relies on the birthday paradox, but because there's no way to prove that f(x) = x^2 + a behaves like a random walk. It may not because, e.g, the length of the cycle may be the same for every prime divisor of the number being factored. Similarly, the complexity of the quadratic sieve is heuristic because there is no known way to prove that (sqrt(n) + i)^2 - n results i…

Huh -- I had always assumed when people talked about e.g. GNFS being the fastest known, they meant proven. I had no idea about this, thank you.
Post reply on HN