I'll start with a few simple examples.
11*13 = 143
12*12 = 144
13 - 12 = 1
12 - 11 = 1
144 - 143 = 1
1 = 1^2
Hmm. Interesting.
7*11 = 77
9*9 = 81
11 - 9 = 2
9 - 7 = 2
81 - 77 = 4
4 = 2^2
So if a and b are prime, and c is an integer halfway between them, then:
sqrt(c^2 - a*b) = a - c = c - b
So given any semiprime, if we round it up to the nearest perfect square and find the difference between that and the semiprime, we can quickly factorize. The integer factorization problem is currently believed to be too hard to solve with current methods. It is also the basis for RSA encryption.
I like to visualize semiprimes as rectangles made up of unit squares. If you take one of the rows/columns from the short side and stick it onto the long side, you'll see a gap of how many unit squares must be added to make the whole thing a perfect square. That gap will be the shape of a square.
Semiprimes can be thought of as perfect squares with a missing square-shaped piece of one corner.
OK, time for a bigger example.
991*997 = 988027
Assume we want to factorize 988027. If we take the square root of that, we get almost 994, which is halfway between 991 and 997. If we square 994 and subtract it from the semiprime, we get a difference of 9 which is a perfect square. This proves that 994 is halfway between the factors of the semiprime and that the difference between each factor and 994 is 3 (square root of 9).
Is this end of the integer factorization problem? Maybe. Rigorous proofs are not my strength.
No comments:
Post a Comment