mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   FactorDB (https://www.mersenneforum.org/forumdisplay.php?f=94)
-   -   Factoring database (https://www.mersenneforum.org/showthread.php?t=11119)

Syd 2008-12-11 23:54

Factoring database
 
Hello,

i think of programming a factor database with web interface to search and report factors, anybody knows if something similar already exists? Is there a need for something like this?

Syd

joral 2008-12-12 02:32

Certain projects have their own. The homogeneous cunningham project has a rather simple one. You can reserve a number, and then submit factors which you found. I think a lot of the actual tables in most projects are still manually updated (at least submitted data is checked by a human in some way.)

I haven't seen a "general system" created by someone, however.

J.F. 2008-12-12 07:23

I always like the idea of gathering data and automated processing.

Two things however: if you also want to store things like search statistics about cofactors, that might prove to be a hell of a job, taken into account that special numbers have special factors etc.

Secondly: if it were to be successful, I suppose such a generic database needs a lot of computing power to check things like primality of submitted factors.

[edit]
Do you have a draft of the design? I'd be happy to comment. I have some hobby-wise experience with creating a CMS and web interface driven apps.

xilman 2008-12-12 12:28

[QUOTE=J.F.;153016]I always like the idea of gathering data and automated processing.

Two things however: if you also want to store things like search statistics about cofactors, that might prove to be a hell of a job, taken into account that special numbers have special factors etc.

Secondly: if it were to be successful, I suppose such a generic database needs a lot of computing power to check things like primality of submitted factors.

[edit]
Do you have a draft of the design? I'd be happy to comment. I have some hobby-wise experience with creating a CMS and web interface driven apps.[/QUOTE]I've a prototypical design for a PostgreSQL database to hold all factoring information in which I'm interested. The database is far from fully populated, not least because I find I keep having to modify the schema.

Paul

joral 2008-12-12 12:59

I've been slowly designing one for keeping up with my NFS factorizations as I learn more. Also, I've been working on something that will more intelligently split the workload between a few systems I have. Just doing the even/odd thing with factMsieve or factLat doesn't work well when one system is 64-bit dual core, the other is a dual P3. one is just 5x faster than the other and thus a lot of the lower ranges don't get sieved. I get these evenly spaced holes.

wblipp 2008-12-12 17:28

Last week I made a first draft schema for an SQL database for factorization information of interest to me. I was planning to use MS SQL because it's available to me and I use it at work. In the factorization part I'm still considering options for storing factors - large factors need a representation method and small factors could share it or could use a native integer representation.

Syd 2008-12-15 14:05

I'm finally done with it, it was a hell of work! A lot more than i thought it would be.
The first difficult part was the scanner/parser, it has to modify the expressions used and notice if they are actually the same, take care of operator priority and so on. There is still one bug in it, x^y^z is taken as (x^y)^z, not x^(y^z) and maybe some i didnt notice.

Next comes the tricky part: Special numbers can have factors that are special numbers, too. If a factor is submitted, all numbers above also have this factor, numers below it also may have this factor. I simplified this a little bit by using 3 tables:
factor <factorid, shortform, Maybe longform, digits, type enum(prime, prp, composite, unknown_too_big)>
hasfactor <factorid, factorid>
cofactor <factorid, factorid>

hasfactor contains all factors of a factor which are prime or where no factors are known, if a factor has been factorized, it moves to cofactor.
If a factor is submitted, it looks up recursively and adds the factor to every number found, modifies its type, next it goes down recursively and checks which numbers divide it.

[URL]http://factorization.ath.cx/search.php[/URL]
If you give it a try, i'd be happy to read some comments :smile:

joral 2008-12-15 14:30

Ok, I'll post a quick one, what does it do?

I see a text box, and a button that says search.

Search for what?

Syd 2008-12-15 14:34

[quote=joral;153430]Ok, I'll post a quick one, what does it do?

I see a text box, and a button that says search.

Search for what?[/quote]

It searches for factorizations. Enter "M509", "2^3001+1", "89745896326926391", "400!+1" or anything you like.

ET_ 2008-12-15 14:36

[QUOTE=Syd;153431]It searches for factorizations. Enter "M509", "2^3001+1", "89745896326926391", "400!+1" or anything you like.[/QUOTE]

I entered 2^41234123412341-1. It has factors (thanks, ewmayer), but the database answers "Number too big!" :smile:

It works fine, but maybe there should be a warning about limits of the search.

Luigi

Syd 2008-12-15 14:49

[quote=ET_;153433]I entered 2^41234123412341-1. It has factors (thanks, ewmayer), but the database answers "Number too big!" :smile:

It works fine, but maybe there should be a warning about limits of the search.

Luigi[/quote]

Thats way too big, the limit is at about 100.000 digits. Added the warning :smile:

Syd


All times are UTC. The time now is 05:51.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.