mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   Miscellaneous Math (https://www.mersenneforum.org/forumdisplay.php?f=56)
-   -   my theory on the search for primes - Sorry (https://www.mersenneforum.org/showthread.php?t=27588)

claugoru 2022-02-16 21:31

my theory on the search for primes - Sorry
 
I apologize to the whole forum for my stupid questions about finding prime numbers and I apologize to the admins who blocked me thinking I am a troll. I ask to be able to post my theory on the search for prime numbers and I ask to be able to post it in Italian so as not to cause misunderstandings in an automatic translation by google translate.
Thank you

Uncwilly 2022-02-16 22:16

Did you follow the advice in this post?
[url]https://www.mersenneforum.org/showpost.php?p=599985&postcount=7[/url]

If not, please do before discussing your "new" ideas.

paulunderwood 2022-02-16 22:18

Go ahead with posting your musings here in Italian. This thread will be merged with your first one. :smile:

claugoru 2022-02-17 09:44

Buon giorno
Mi chiamo Claudio Govi e vorrei postare una mia teoria sulla ricerca dei numeri primi.
Questa teoria si basa sulla ricerca di questi numeri dentro una dimensione finita e non su un numero solo. Non sono un matematico, sono un programmatore, e spero mi scuserete se il mio linguaggio non sarà molto matematico


Per dimensione finita intendo la distanza che c’è tra un due numeri dispari consecutivi elevati al quadrato. Questa distanza la si può calcolare sulla base di 8 perché la distanza minima tra due numeri dispari consecutivi è (3^2 -1 ^2 =8) e si incrementa di 8 in 8, per cui ogni numero di (8^n) rappresenta la distanza tra due numeri dispari consecutivi.


Diciamo che la mia dimensione di X sia uguale a 200 ((200+4)/4)=51 perciò avrò (51^2-49^2).
In questa dimensione di 200 e cioè da 2401 a 2601 ci saranno racchiusi tutti i divisori primi da 2 a 51 e cioè 2-3-5-7-11-13-17-19-23-29-31-37-41-43-47


Eliminando da questa dimensione tutti i numeri pari e i due numeri al quadrato 2401 e 2601, otterremo 99 numeri dispari tra cui ci saranno i potenziali numeri primi che noi dovremo individuare, e i nostri divisori diventeranno 3-5-7-11-13-17-19-23-29-31-37-41-43-47.


Per scoprire quali numeri dispari di questi 99 sono primi dovrò interrogare tutti i 14 divisori primi e se nessuno di questi dividerà il numero preso in esame questo sarà un numero primo.
Facciamo un esempio…
[LEFT]
[/LEFT]
[LEFT][SIZE=3]2401+2=2403 divisore 3[/SIZE][/LEFT]
3-5-7-11-13-17-19-23-29-31-37-41-43-47.
[LEFT]
[/LEFT]
[LEFT][SIZE=3]2401+[/SIZE][SIZE=3]4[/SIZE][SIZE=3]=240[/SIZE][SIZE=3]5[/SIZE][SIZE=3] divisore [/SIZE][SIZE=3]5 - [/SIZE][SIZE=3]13 - 37[/SIZE][/LEFT]
3-5-7-11-13-17-19-23-29-31-37-41-43-47.
[LEFT]
[/LEFT]
[LEFT][SIZE=3]2401+6=2407 divisore 29[/SIZE][/LEFT]
3-5-7-11-13-17-19-23-29-31-37-41-43-47.
[LEFT]
[/LEFT]
[LEFT][SIZE=3]2401+8=2409 divisore 3 - 11[/SIZE][/LEFT]
3-5-7-11-13-17-19-23-29-31-37-41-43-47.
[LEFT]
[/LEFT]
[LEFT][SIZE=3]2401+10=2411 divisore nessuno[/SIZE][/LEFT]
3-5-7-11-13-17-19-23-29-31-37-41-43-47.
[LEFT]
[/LEFT]
[LEFT][SIZE=3]2401+12=2413 divisore 19[/SIZE][/LEFT]
3-5-7-11-13-17-19-23-29-31-37-41-43-47.
[LEFT]
[/LEFT]
[LEFT][SIZE=3]2401+14=2415 divisore 3 - 5 - 7 - 23[/SIZE][/LEFT]
3-5-7-11-13-17-19-23-29-31-37-41-43-47.
[LEFT]
[/LEFT]
[LEFT][SIZE=3]2401+16=2417 divisore nessuno[/SIZE][/LEFT]
3-5-7-11-13-17-19-23-29-31-37-41-43-47.
[LEFT]
[/LEFT]
[LEFT][SIZE=3]2401+18=2419 divisore 41[/SIZE][/LEFT]
[LEFT][SIZE=3]3-5-7-11-13-17-19-23-29-31-37-41-43-47.[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]Etc… fino al numero 2401+198[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT]
[/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]Ora. Rimanendo nella dimensione di X=200 proviamo ad analizzare una sotto dimensione di sole 5 unità [/SIZE] [/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]2401+2=2403 divisore 3[/SIZE][/LEFT]
[LEFT][SIZE=3]2401+[/SIZE][SIZE=3]4[/SIZE][SIZE=3]=240[/SIZE][SIZE=3]5[/SIZE][SIZE=3] divisore [/SIZE][SIZE=3]5 - [/SIZE][SIZE=3]13 - 37[/SIZE][/LEFT]
[LEFT][SIZE=3]2401+6=2407 divisore 29[/SIZE][/LEFT]
[LEFT][SIZE=3]2401+8=2409 divisore 3 - 11[/SIZE][/LEFT]
[LEFT][SIZE=3]2401+10=2411 divisore nessuno[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]In questa sotto dimensione che chiameremo Y, poniamo Y=10, analizziamo i divisori e vediamo che di questi 14 divisori contenuti nella dimensione X=200, in questa sotto dimensione Y=10, ne troviamo solo 6. 3-5-11-13-29-37.[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]La domanda è… E se io per testare questi numeri dispari da 2401+2 a 2401+10 avessi usato solo quei 6 divisori, anziché 14, sicuramente ci avrei messo meno tempo e avrei avuto lo stesso risultato e cioè scoperto che il numero 2401+10 è un numero primo.[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]Come faccio a sapere quali divisori nella sotto dimensione Y=10 soddisfano la mia ricerca?[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]Mi faccio aiutare dalla funzione Modulare in questo modo.[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]A=2401 Mod(3)=1[/SIZE][/LEFT]
[LEFT][SIZE=3]Utilizzo il modulo per definire se A è dispari o pari A Mod(2)[/SIZE][/LEFT]
[LEFT][SIZE=3]se A Mod(2)=0 B=(-A)+3*2[/SIZE][/LEFT]
[LEFT][SIZE=3]se A Mod(2)<>0 B=(-A)+3[/SIZE][/LEFT]
[LEFT][SIZE=3]Se B<Y B verrà tenuto e salvato in un file[/SIZE][/LEFT]
[LEFT][SIZE=3]Se B>=Y B verrà ignorato[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]A=2401 Mod(5)=1[/SIZE][/LEFT]
[LEFT][SIZE=3]se A Mod(2)=0 B=(-A)+5*2[/SIZE][/LEFT]
[LEFT][SIZE=3]se A Mod(2)<>0 B=(-A)+5[/SIZE][/LEFT]
[LEFT][SIZE=3]Se B<Y B verrà tenuto e salvato in un file[/SIZE][/LEFT]
[LEFT][SIZE=3]Se B>=Y B verrà ignorato[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]A=2401 Mod(7)=0[/SIZE][/LEFT]
[LEFT][SIZE=3]se A Mod(2)=0 B=(-A)+7*2[/SIZE][/LEFT]
[LEFT][SIZE=3]se A Mod(2)<>0 B=(-A)+7[/SIZE][/LEFT]
[LEFT][SIZE=3]Se B<Y B verrà tenuto e salvato in un file[/SIZE][/LEFT]
[LEFT][SIZE=3]Se B>=Y B verrà ignorato[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]Etc… Fino a interpellare tutti i 14 divisori primi della dimensione X=200[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]Alla fine otterrò un file dei soli divisori che interessano alla sotto dimensione di Y=10, dopo di ché sarà molto facile stabilire entro questa sotto dimensione quali numeri sono primi e quali sono composti.[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]
[/SIZE]
[SIZE=3]
[/SIZE]
[SIZE=3]
[/SIZE]
[SIZE=3]Vi lascio qui sotto i dati degli esperimenti fatti su 1.320.690.920 divisori, solo numeri primi, in una dimensione totale di (30.499.999.951^2 – 30.499.999.949^2) = 121.999.999.800 [/SIZE] [/LEFT]
[LEFT]
[/LEFT]
[LEFT]
[/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]ora inizio = 11:18:28.881923[/SIZE]
[SIZE=3]ricerca del numero N=930249996889000002601, Cifre 21, Limite ricerca SQRT(N)=30.499.999.949[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]930249996889000002689[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000002697[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000002701[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000002707[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000002767[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000002829[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000002877[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000002977[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000003037[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000003061[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000003091[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000003259[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000003289[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000003309[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000003319[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000003327[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000003339[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000003483[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000003543[/SIZE][/LEFT]
[LEFT][SIZE=3]930249996889000003577[/SIZE][/LEFT]
[LEFT][SIZE=3]Numero divisori primi interpellati 1.320.690.920[/SIZE][/LEFT]
[LEFT][SIZE=3]ora fine = 11:49:03.758468[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]Divisori utilizzati 776 Su 1.320.690.920 totali in una sotto dimensione di Y=1.000[/SIZE][/LEFT]
[LEFT][SIZE=3]Da N= 930249996889000002601 a N+Y 930249996889000003601[/SIZE][/LEFT]
[LEFT][SIZE=3]Trovati 20 Numeri primi[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]Solo in questa prova vi posto tutti i numeri primi trovati, per le altre prove non avrei abbastanza spazio per postarle.[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]--------------------------------------------------------------------------------------------[/SIZE][/LEFT]
[LEFT][SIZE=3]ora inizio = 12:35:11[/SIZE][/LEFT]
[LEFT][SIZE=3]ricerca del numero N=930249996889000002601, Cifre 21, Limite ricerca SQRT(N)=30.499.999.949[/SIZE][/LEFT]
[LEFT][SIZE=3]Numero primi letti 1.320.690.920[/SIZE][/LEFT]
[LEFT][SIZE=3]ora fine = 13:06:25[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]Divisori utilizzati 5895 Su 1.320.690.920 totali, in una sotto dimensione di Y=10.000[/SIZE][/LEFT]
[LEFT][SIZE=3]Da N= 930249996889000002601 a N+Y 930249996889000012601[/SIZE][/LEFT]
[LEFT][SIZE=3]Trovati 217 Numeri primi[/SIZE][/LEFT]
[LEFT][SIZE=3]---------------------------------------------------------------------------------------------[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]ora inizio = 13:14:20[/SIZE][/LEFT]
[LEFT][SIZE=3]ricerca del numero N=930249996889000002601, Cifre 21, Limite ricerca SQRT(N)=30.499.999.949[/SIZE][/LEFT]
[LEFT][SIZE=3]Numero primi letti 1.320.690.920[/SIZE][/LEFT]
[LEFT][SIZE=3]ora fine = 13:44:42[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]Divisori utilizzati 45427 Su 1.320.690.920 totali, in una sotto dimensione di Y=100.000[/SIZE][/LEFT]
[LEFT][SIZE=3]Da N= 930249996889000002601 a N+Y 930249996889000102601[/SIZE][/LEFT]
[LEFT][SIZE=3]Trovati 2084 Numeri primi[/SIZE][/LEFT]
[LEFT][SIZE=3]----------------------------------------------------------------------------------------------------[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT][SIZE=3]Questo è l’algoristmo scritto in Python[/SIZE][/LEFT]
[LEFT][SIZE=3]dove divi=Divisore, dove ni= 930249996889000002601[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT] [SIZE=3]div1=ni%divi[/SIZE][/LEFT]
[LEFT] [SIZE=3]if div1%2==0:[/SIZE][/LEFT]
[LEFT] [SIZE=3]div2=(-div1)+divi*2[/SIZE][/LEFT]
[LEFT] [SIZE=3]else:[/SIZE][/LEFT]
[LEFT] [SIZE=3]div2=(-div1)+divi[/SIZE][/LEFT]
[LEFT]
[/LEFT]
[LEFT] [SIZE=3]if div2<=massimo:[/SIZE][/LEFT]
[LEFT] [SIZE=3]scrivi.write(str(divi)+'\n')[/SIZE]
[SIZE=3]
[/SIZE]
[SIZE=3]Grazie
[/SIZE][/LEFT]
[LEFT]
[/LEFT]

Dr Sardonicus 2022-02-17 14:09

In the first place, it looks like you're simply doing trial division by primes up to the square root. For numbers of any size, this method is in the "theoretically correct but computationally useless" category.

In the second place, it appears one of your runs gave a count too large by 2: (size formatting removed)[QUOTE=claugoru;600203]<snip>
ora inizio = 13:14:20
ricerca del numero N=930249996889000002601, Cifre 21, Limite ricerca SQRT(N)=30.499.999.949
Numero primi letti 1.320.690.920
ora fine = 13:44:42

Divisori utilizzati 45427 Su 1.320.690.920 totali, in una sotto dimensione di Y=100.000
Da N= 930249996889000002601 a N+Y 930249996889000102601
Trovati 2084 Numeri primi
<snip>[/QUOTE]I ran the following using b = n + 1000 and b = n + 10000 and got 20 and 217 primes respectively, which is what you got. However, with b = n + 100000, I got a smaller count:[code]n=930249996889000002601;b=n+100000;m=nextprime(n+1);c=0;until(m>b,if(isprime(m),c++);m=nextprime(m+1));print(c)
2082[/code]

claugoru 2022-02-17 14:45

[QUOTE=Dr Sardonicus;600206]In the first place, it looks like you're simply doing trial division by primes up to the square root. For numbers of any size, this method is in the "theoretically correct but computationally useless" category.

In the second place, it appears one of your runs gave a count too large by 2: (size formatting removed)I ran the following using b = n + 1000 and b = n + 10000 and got 20 and 217 primes respectively, which is what you got. However, with b = n + 100000, I got a smaller count:[code]n=930249996889000002601;b=n+100000;m=nextprime(n+1);c=0;until(m>b,if(isprime(m),c++);m=nextprime(m+1));print(c)
2082[/code][/QUOTE]


Non capisco. Con B=n+100.000 ho ottenuto 2084 numeri primi. Non capisco dove è sbagliato.
Comunque il mio ragionamento è solo logico e non matematico. Quello che io cerco di sapere interpellando il divisore é dove si trova rispetto al numero che io sto analizzando. Se si trova in un passo che lo porterà dentro a N+x, allora quel divisore mi aiuterà a capire se in N+x ci sono dei numeri primi. Se no quel divisore sarà inutile per la mia ricerca

Dr Sardonicus 2022-02-17 15:17

[QUOTE=claugoru;600207]Non capisco. Con B=n+100.000 ho ottenuto 2084 numeri primi. Non capisco dove è sbagliato.
<snip>[/QUOTE]
Send me a private message with a list of the 2084 numbers k < 100000 for which your program says B = n + k is prime.

Plain text only, please.

Dr Sardonicus 2022-02-17 17:40

I asked you for the numbers k < 100000, which would have easily fit in one message, rather than requring four messages. I am sending that list back to you.

In the list you sent me, there are two composite numbers, the 874[sup]th[/sup] and 1106[sup]th[/sup] in your list. The following gives the places, the numbers themselves, and their factorizations.

[code]874 930249996889000043947 [11427695611, 1; 81403112977, 1]
1106 930249996889000055207 [11199701333, 1; 83060250379, 1][/code]

claugoru 2022-02-17 18:53

Grazie per avermeli segnalati. Intanto ho eseguito l'algoritmo chiedendo di individuare i numeri primi su una dimensione di 500.000. B=N+500.000 e me ne ha trovati 10377. I numeri che mi hai segnalato sono ricomparsi e cercherò di capire perchè l'algoritmo non li rileva. Se vuoi ti posso mandare questi 10377 numeri che mi ha trovato in un file.zip


Grazie

paulunderwood 2022-02-17 19:05

[QUOTE=claugoru;600236]Grazie per avermeli segnalati. Intanto ho eseguito l'algoritmo chiedendo di individuare i numeri primi su una dimensione di 500.000. B=N+500.000 e me ne ha trovati 10377. I numeri che mi hai segnalato sono ricomparsi e cercherò di capire perchè l'algoritmo non li rileva. Se vuoi ti posso mandare questi 10377 numeri che mi ha trovato in un file.zip
[/QUOTE]

I think I can see where this is going; Eventually, B=N+500000000000000000000000000000000000000000000000000000 will not be sufficient.

claugoru 2022-02-17 19:26

Lo so. Ma io credo che il concetto sia buono e possa essere preso in considerazione da menti geniali come le vostre.
Supponi di trovare un sistema simile e di puntare su un numero enorme. Non ti preoccupi se questo numero è primo o no perchè questo numero contiene la mappa dei numeri che verranno dopo.
Comunque grazie di tutto, è stato bello parlare con voi.


Il problema dei due numeri non primi l'ho risolto... mi manca il file, probabilmente cancellato involontariamente, dei divisori di questi due numeri. Per questo non sono stati rilevati:smile:


All times are UTC. The time now is 06:39.

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