Syntactic Confectionery Delight PerlMonks

### Re: Factors

by kvale (Monsignor)
 on Jun 13, 2002 at 04:51 UTC ( #174101=note: print w/replies, xml ) Need Help??

in reply to Re: Re: Factors

Good observation! It looks like Fermat's method (the method I mentioned above) doesn't necessarily find all, or even any of the factors. It is just a heuristic. On the other hand, if you have an even number, you may extract factors of 2 until you get an odd number, in which case (x+y) and (x-y) must both be necessarily odd.

The generalization that gumby mentioned, x^2 = y^2 (mod p) may have more sucess, but I don't know if it is exhaustive. Here is code that implements it:
```my \$p = shift;
my %residues;
my %factors;
foreach my \$x (2..\$p) {
my \$mod = (\$x*\$x) % \$p;
if (exists \$residues{\$mod}) {
\$factors{\$x-\$residues{\$mod}}++ if \$p % (\$x-\$residues{\$mod}) == 0
+;
\$factors{\$x+\$residues{\$mod}}++ if \$p % (\$x+\$residues{\$mod}) == 0
+;
}
else {
\$residues{\$mod} = \$x;
}
}
foreach (sort {\$a <=> \$b} keys %factors) {
print "\$p = \$_*", \$p/\$_, "\n";
}
For 54, this yields
```1021% factor.pl 54
54 = 2*27
54 = 6*9
54 = 18*3
54 = 54*1
But this code is unsatisfying because it takes longer than the simple trial by division. Thinking from a divide and conquer point of view, it is probably faster to use these methods to find a factorization, then recursively find factorizations of the factors untill all are prime.

-Mark

Create A New User
Node Status?
node history
Node Type: note [id://174101]
help
Chatterbox?
 [choroba]: Ah, we went to Lanzarote 2 years ago with the kids and it was OK [Corion]: choroba: I was there last year, yes, that would be suited a bit better for kids - much more beach and more varied kids friendly landscape than La Palma :) [Corion]: We went to visit the "recently" (1975?) active volcano on La Palma but the landscape was underwhelming, at least when compared to the (cold) lava fields on Lanzarote [choroba]: Yes, the volanos park was extraordinary

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (11)
As of 2018-02-23 16:11 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?
When it is dark outside I am happiest to see ...

Results (303 votes). Check out past polls.

Notices?