Algoritmi sui numeri primi.

Il ritrovo della comunità dove confrontarsi e discutere sulle notizie dal mondo dell'informatica, di Ubuntu e di tutto quello che la riguarda, novità, pettegolezzi e quant'altro.
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

ho trovato una semi soluzione per quanto riguarda le frazioni continue.
Siccome funziona anche da fattorizzazione generica
si può moltiplicare N per un numero non divisibile per 2 e 3, ed ottenere una frazione continua più corta.

Esempio di fattorizzazione generica

N=247

x^2-(247*5)*y^2=1

2*p+q((246-7*sqrt(1235))^n)=(246+7*sqrt(1235))^n
,
p*q=1235

n=[-3*log(2)-log(5)-log(13)-log(19)]/[log(246-7*sqrt(1235))-2*log(246+7*sqrt(1235))]

Esempio di rimpicciolimento di frazioni continue

sqrt(129959713)

sqrt(129959713*5)
Avatar utente
federyco68
Prode Principiante
Messaggi: 156
Iscrizione: domenica 5 giugno 2016, 10:39
Desktop: linux mint mate 19.2 tina
Distribuzione: Ubuntu 18.04.4 LTS Gnome
Sesso: Maschile
Località: castel volturno

Re: Algoritmi sui numeri primi.

Messaggio da federyco68 »

uuuwwwwwwwwwwwwwwaaaaauuuuuuuuuuuuuu!!!!!!!!!!!!!
tornate tra noi comuni mortali
Calma... ci troviamo in una finestra "insignificabile" rispetto all 'immensità temporale .
Difficilmente replicabile . (Federico Minieri)
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

Definizione
Tutti i numeri NR escluso i multipli di 2 e di 3 si scrivono nella forma 6h+1 e 6h+5.
Dimostrazione
NR modulo 6 =1 -> 6h+1
NR modulo 6 =2 -> è multiplo di 2
NR modulo 6 =3 -> è multiplo di 3
NR modulo 6 =4 -> è multiplo di 2
NR modulo 6 =5 -> 6h+5
NR modulo 6 =0 -> è multiplo di 2 e di 3
Lemma
Quindi partendo da 1 e facendo +2 e +4 si ha 1 5 7 11 13 17 19 23 25 29 ecc.ecc.
Definizione
Ogni numero NR escluso i multipli di 2 e di 3 si scrivono nella forma
1) X^2+6nX=NR
2) X^2+6nX+2X=NR
3) X^2+6nX+4X=NR
Dimostrazione
Dal lemma segue direttamente
1) X(X+6n)=NR
2) X(X+6n+2)=NR
3) X(X+6n+4)=NR
In più si può osservare che:
(6h+1)*(6k+1)=6G+1
(6h+5)*(6k+5)=6G+1
(6h+1)*(6k+5)=6G+5
(6h+5)*(6k+1)=6G+5
----------------------------------------------------------------------------------------
Da ciò si può dedurre che risolvendo (6h+1)*(6k+1)=6G+1 si possano risolvere gli altri tre casi
questi (6h+1)*(6k+5)=6G+5 (6h+5)*(6k+1)=6G+5 moltiplicando per 5
e questo (6h+5)*(6k+5)=6G+1 moltiplicando per 25

Quindi prendiamo come caso base
(6h+1)*(6k+1)=6G+1
X^2+6nX=NR
si può facilmente notare che
se G è pari n sarà pari
se G è dispari n sarà dispari

Algoritmo

L'algoritmo consiste nel scrivere n nella forma 6*H+1 e deve essere divisibile per 7 e quindi
se
X^2+6nX=NR dove X=6*a+1

se G è pari
allorà avremo

X^2+6(n/7+1)X=NR
X^2+6(n/7+3)X=NR
X^2+6(n/7+5)X=NR

se G è dispari
allorà avremo

X^2+6(n/7)X=NR
X^2+6(n/7+2)X=NR
X^2+6(n/7+4)X=NR

e quindi
7^2+6*m*7=n testiamo per m =0

dal secondo step in poi non sappiamo se m è pari o dispari quindi si avrà
7^2+6*m/7*7=n
7^2+6*(m/7+1)*7=n
7^2+6*(m/7+2)*7=n
7^2+6*(m/7+3)*7=n
7^2+6*(m/7+4)*7=n
7^2+6*(m/7+5)*7=n

e quindi
7^2+6*w*7=m testiamo per w =0

e così via


Esempio:
7237*9967=72131179
G=12021863 -> n è dispari

vi mostro solo il percorso giusto

[(6*a+1)^2+6*(n/7+4)*(6*a+1)-1]/6=12021863 , 7^2+6*(m/7+1)*7=n , 7^2+6*(w/7+4)*7=m ,7^2+6*y*7=w , y=0

-> a=1206 -> X=6*1206+1=7237

avremo impiegato 3*6*6+1=109 steps

Che ne pensate di questo?
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

Per proseguire soltanto per il percordo giusto basta imporre X=1 e controllare se A,B,C ecc.ecc. sono interi
e allo stesso tempo Controllare se per A=0 ,B=0 ecc.ecc. avremo la nostra soluzione

Esempio del funzionamento dell'algoritmo

7237*9967=72131179

G=12021863 -> n è dispari

*******

X^2+6*(A/7+0)*X=72131179 , 7^2+6*(B/7+a)*7=A ,X=1

Al variare di a da 0 a 5 non avremo soluzioni intere per A e B ed il controllo per B=0 non è andato a buon fine

X^2+6*(A/7+2)*X=72131179 , 7^2+6*(B/7+a)*7=A ,X=1

Al variare di a da 0 a 5 non avremo soluzioni intere per A e B ed il controllo per B=0 non è andato a buon fine

X^2+6*(A/7+4)*X=72131179 , 7^2+6*(B/7+a)*7=A ,X=1

Al variare di a da 0 a 5 avremo soluzioni intere per A e B ed il controllo per B=0 non è andato a buon fine

Abbiamo stabilito che X^2+6*(A/7+4)*X=72131179 è il percorso giusto

*******

X^2+6*(A/7+4)*X=72131179 , 7^2+6*(B/7+0)*7=A , 7^2+6*(C/7+a)*7=B , X=1

Al variare di a da 0 a 5 non avremo soluzioni intere per A ,B e C ed il controllo per C=0 non è andato a buon fine

X^2+6*(A/7+4)*X=72131179 , 7^2+6*(B/7+1)*7=A , 7^2+6*(C/7+a)*7=B , X=1

Al variare di a da 0 a 5 avremo soluzioni intere per A ,B e C ed il controllo per C=0 non è andato a buon fine

Abbiamo stabilito che X^2+6*(A/7+4)*X=72131179 , 7^2+6*(B/7+1)*7=A è il percorso giusto

*******

X^2+6*(A/7+4)*X=72131179 , 7^2+6*(B/7+1)*7=A , 7^2+6*(C/7+0)*7=B ,7^2+6*(D/7+a)*7=C ,X=1

Al variare di a da 0 a 5 non avremo soluzioni intere per A ,B ,C e D ed il controllo per D=0 non è andato a buon fine

X^2+6*(A/7+4)*X=72131179 , 7^2+6*(B/7+1)*7=A , 7^2+6*(C/7+1)*7=B ,7^2+6*(D/7+a)*7=C ,X=1

Al variare di a da 0 a 5 non avremo soluzioni intere per A ,B ,C e D ed il controllo per D=0 non è andato a buon fine

X^2+6*(A/7+4)*X=72131179 , 7^2+6*(B/7+1)*7=A , 7^2+6*(C/7+2)*7=B ,7^2+6*(D/7+a)*7=C ,X=1

Al variare di a da 0 a 5 non avremo soluzioni intere per A ,B ,C e D ed il controllo per D=0 non è andato a buon fine

X^2+6*(A/7+4)*X=72131179 , 7^2+6*(B/7+1)*7=A , 7^2+6*(C/7+3)*7=B ,7^2+6*(D/7+a)*7=C ,X=1

Al variare di a da 0 a 5 non avremo soluzioni intere per A ,B ,C e D ed il controllo per D=0 non è andato a buon fine

X^2+6*(A/7+4)*X=72131179 , 7^2+6*(B/7+1)*7=A , 7^2+6*(C/7+4)*7=B ,7^2+6*(D/7+a)*7=C ,X=1

X^2+6*(A/7+4)*X=72131179 , 7^2+6*(B/7+1)*7=A , 7^2+6*(C/7+4)*7=B ,7^2+6*(D/7+0)*7=C ,D=0

Per D = 0 abbiamo trovato che X=7237

Abbiamo finito


Se funziona come l'ho descritto nell'esempio e chiamiamo con K (costante) le operazioni che compiremo ad ogni step

la sua complessità computazionale è k*O(log_7 A) ?

@Zoff
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

Come abbiamo visto da ogni caso ci possiamo ricondurre ad N=p*q
dove
N=6*G+1
p=6*a+1
q=6*h+1

Questa è una congettura

Sia N=(6*a+1)*(6*h+1) allora risolvendo una dei sedici sistemi troveremo la soluzione

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]+7]-36*b^2+36*b)]/(6*b+1)+0]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+0]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]+7]-36*b^2+36*b)]/(6*b+1)+0]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+0]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]+7]-36*b^2+36*b)]/(6*b+1)+0]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+6]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]+7]-36*b^2+36*b)]/(6*b+1)+0]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+6]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]+7]-36*b^2+36*b)]/(6*b+1)+6]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+0]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]+7]-36*b^2+36*b)]/(6*b+1)+6]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+0]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]+7]-36*b^2+36*b)]/(6*b+1)+6]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+6]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]+7]-36*b^2+36*b)]/(6*b+1)+6]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+6]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]+7]-36*b^2+36*b)]/(6*b+1)+0]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+0]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]+7]-36*b^2+36*b)]/(6*b+1)+0]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+0]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]+7]-36*b^2+36*b)]/(6*b+1)+0]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+6]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]+7]-36*b^2+36*b)]/(6*b+1)+0]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+6]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]+7]-36*b^2+36*b)]/(6*b+1)+6]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+0]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]+7]-36*b^2+36*b)]/(6*b+1)+6]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+0]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]+7]-36*b^2+36*b)]/(6*b+1)+6]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+6]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+0]/2]-1]/6 , b=c

(6*a+1)*[[[([(6*a+1)*[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]+7]-36*b^2+36*b)]/(6*b+1)+6]/2]=Z , (6*a+1)*[[(N+7-36*c^2+36*c)/(6*c+1)+6]/2]=Z , b=[[[[(N+7-36*a^2+36*a)]/(6*a+1)+6]/2]-1]/6 , b=c
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

Definizione
Tutti i numeri NR escluso i multipli di 2 e di 3 si scrivono nella forma 6h+1 e 6h+5.
Dimostrazione
NR modulo 6 =1 -> 6h+1
NR modulo 6 =2 -> è multiplo di 2
NR modulo 6 =3 -> è multiplo di 3
NR modulo 6 =4 -> è multiplo di 2
NR modulo 6 =5 -> 6h+5
NR modulo 6 =0 -> è multiplo di 2 e di 3
Lemma
Quindi partendo da 1 e facendo +2 e +4 si ha 1 5 7 11 13 17 19 23 25 29 ecc.ecc.
Definizione
Ogni numero NR escluso i multipli di 2 e di 3 si scrivono nella forma
1) X^2+6nX=NR
2) X^2+6nX+2X=NR
3) X^2+6nX+4X=NR
Dimostrazione
Dal lemma segue direttamente
1) X(X+6n)=NR
2) X(X+6n+2)=NR
3) X(X+6n+4)=NR
In più si può osservare che:
(6h+1)*(6k+1)=6G+1
(6h+5)*(6k+5)=6G+1
(6h+1)*(6k+5)=6G+5
(6h+5)*(6k+1)=6G+5
----------------------------------------------------------------------------------------
Da ciò si può dedurre che risolvendo (6h+1)*(6k+1)=6G+1 si possano risolvere gli altri tre casi
questi (6h+1)*(6k+5)=6G+5 (6h+5)*(6k+1)=6G+5 moltiplicando per 5
e questo (6h+5)*(6k+5)=6G+1 moltiplicando per 25

Quindi prendiamo come caso base
(6h+1)*(6k+1)=6G+1
X^2+6nX=NR
si può facilmente notare che
se G è pari n sarà pari
se G è dispari n sarà dispari
----------------------------------------------------------------------------------------
Se NR=(6*a+1)*(6*b+1)
allora possiamo scriverlo nella forma
NR=(6*a+1)^2+6*n*(6*a+1)
quindi
n=(G-6*a^2-2*a)/(6*a+1)
dove G=(NR-1)/6

----------------------------------------------------------------------------------------
Per capire ci scriviamo una tabella dove i valori cerchiati sono i valori G=(N-1)/6
di questa tabella
inf1.jpg


cioè questa

inf1.jpg

i numeri (che chiameremo A) di fianco a due cerchiati sono la differenza dei due numeri cerchiati

sull'orizzontale avremo i valori di n

sulla verticale i valori di a o meglio i valori di 6*a+1

Gli ultimi A ,che chiameremo Au, prima di arrivare ad n sono Au=6*n+8 quindi Au=6*(G-6*a^2-2*a)/(6*a+1)+8 quindi Au=(NR+7-36*a^2+36*a)]/(6*a+1)

Da Au per ottenere un numero nella forma 6*h+1

se n è dispari basta fare Au/2

se n è pari basta fare (Au+6)/2

quindi avendo detto tutto ciò passiamo alla fase più difficile da spiegare

-----------------------------------------------------------------------------------------

Prendiamo un numero NR=(6*a+1)*(6*b+1)
supponiamo G pari quindi n è pari
quindi Au=(NR+7-36*a^2+36*a)]/(6*a+1)

quindi per ottenere un numero nella forma 6*c+1

6*c+1=[(NR+7-36*a^2+36*a)]/(6*a+1)+6]/2

quindi c=[[(NR+7-36*a^2+36*a)]/(6*a+1)+6]/2-1]/6

ora considerando la stessa n di n=(G-6*a^2-2*a)/(6*a+1)

ci scriviamo

[(6*c+1)^2+6*(G-6*a^2-2*a)/(6*a+1)*(6*c+1)+7-36*c^2+36*c]/(6*c+1)=NR1

ora non sappiamo se (NR1-1)/6 è pari o dispari quindi non sappiamo se n è pari o dispari

supponiamo sia pari

[(NR1+6)/2*(6*c+1)+7-36*c^2+36*c]/(6*c+1)=NR2 , c=((NR1+6)/2-1)/6

o se fosse stato dispari

[(NR1)/2*(6*c+1)+7-36*c^2+36*c]/(6*c+1)=NR2 , c=((NR1)/2-1)/6

reiterando il procedimento

giungeremo

se è pari
[(NRz+6)/2*(6*z+1)+7-36*z^2+36*z]/(6*z+1)=NR(z+1) , z=((NR1+6)/2-1)/6
z-1=z=1

se è dispari
[(NRz)/2*(6*z+1)+7-36*z^2+36*z]/(6*z+1)=NR(z+1) , z=((NR1)/2-1)/6
z-1=z=0

Esempio

82357321=8263*9967

c=[[[[(82357328-36*a^2+36*a)]/(6*a+1)+6]/2]-1]/6 , [(6*c+1)^2+6*(13726220-6*a^2-2*a)/(6*a+1)*(6*c+1)+7-36*c^2+36*c]/(6*c+1)=NR1

[(NR1+6)/2*(6*c+1)+7-36*c^2+36*c]/(6*c+1)=NR2 , c=((NR1+6)/2-1)/6

[(NR2+6)/2*(6*d+1)+7-36*d^2+36*d]/(6*d+1)=NR3 , d=((NR2+6)/2-1)/6

d=c=1


***********************************************************************************************************************************************

P.s.
Mi scuso per l'ennesima volta per il mio non matematico disordine
per piacere qualcuno mi da un parere
Allegati
inf2.jpg
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

Fattorizzazione RSA di Lepore
Complessità random

Definizione
Tutti i numeri NR escluso i multipli di 2 e di 3 si scrivono nella forma 6h+1 e 6h+5.
Dimostrazione
NR modulo 6 =1 -> 6h+1
NR modulo 6 =2 -> è multiplo di 2
NR modulo 6 =3 -> è multiplo di 3
NR modulo 6 =4 -> è multiplo di 2
NR modulo 6 =5 -> 6h+5
NR modulo 6 =0 -> è multiplo di 2 e di 3

Lemma
Quindi partendo da 1 e facendo +4 e +2 si ha 1 5 7 11 13 17 19 23 25 29 ecc.ecc.

Definizione
Ogni numero NR escluso i multipli di 2 e di 3 si scrivono nella forma
1) X^2+6nX=NR
2) X^2+6nX+2X=NR
3) X^2+6nX+4X=NR
Dimostrazione
Dal lemma segue direttamente
1) X(X+6n)=NR
2) X(X+6n+2)=NR
3) X(X+6n+4)=NR

In più si può osservare che:
(6h+1)*(6k+1)=6G+1
(6h+5)*(6k+5)=6G+1
(6h+1)*(6k+5)=6G+5
(6h+5)*(6k+1)=6G+5
----------------------------------------------------------------------------------------
Da ciò si può dedurre che risolvendo (6h+1)*(6k+1)=6G+1 si possano risolvere gli altri tre casi
questi (6h+1)*(6k+5)=6G+5 (6h+5)*(6k+1)=6G+5 moltiplicando per 5
e questo (6h+5)*(6k+5)=6G+1 moltiplicando per 25

Quindi prendiamo come caso base
(6h+1)*(6k+1)=6G+1
X^2+6nX=NR
si può facilmente notare che
se G è pari n sarà pari
se G è dispari n sarà dispari
----------------------------------------------------------------------------------------
Se NR=(6*a+1)*(6*b+1)
allora possiamo scriverlo nella forma
NR=(6*a+1)^2+6*n*(6*a+1)
quindi
n=(G-6*a^2-2*a)/(6*a+1)
dove G=(NR-1)/6

----------------------------------------------------------------------------------------
Per capire ci scriviamo una tabella dove i valori NR=(6*a+1)^2+6*n*(6*a+1)
a parte da 1 ed n parte da 0

a\n
49 91 133 175 217 259 ….......
169 247 325 403 481 559 …......
361 475 589 703 817 931 …......
625 775 925 1075 1225 1375 …......
961 1147 1333 1519 1705 1891 ….......
1369 1591 1813 2035 2257 …................
…...............................................................
…...............................................................

Si può osservare che la differenza tra NR(a+1,n-2)-NR(a,n)=36*(n-1)

Quindi l'idea è di aggiungere ad NR un multiplo di 36

Cioè NR2=NR+i*36

fino a quando non soddisfi una determinata condizione cioè questa NR=(6*a+1)^2+6*n*(6*a+1) con (6*a+1) divisore di NR

calcolandoci la n dalle seguenti da una delle due
Se (NR-1)/6 è dispari
(2+2*N)*N/2-(2+2*M)*M/2=(NR2-NR1)/36=K dove n=2*N+1
Se (NR-1)/6 è dispari
N^2-M^2=(NR2-NR1)/36=K dove n=2*N

[(*NOTA1*) per il momento tralascio come si calcola n ed m , ci devo pensare un po]

Quindi avremo n-1 possibilità di risolvere la fattorizzazione.

Da notare che più grande è i più la frequenza dei numeri che ci interessano è bassa.

Esempi

[(*NOTA2*) In questi esempi terremo conto che di solito in RSA il numero da fattorizzare NR=p*q avrà q/p < 2 ]

Esempio 1

617251=p*q=p^2+6*n*p

per la (*NOTA2*) p >= 553 e q <= 1111

quindi la n massima è n_max=(q-p)/6=93

i numeri i validi sono
84
(2+2*N)*N/2-(2+2*M)*M/2=84
N=42
n=2*42+1=85
617251=p^2+6*85*p
segue p=571

166
(2+2*N)*N/2-(2+2*M)*M/2=166
N=42
n=2*42+1=85

246
(2+2*N)*N/2-(2+2*M)*M/2=246
N=42
n=2*42+1=85

324
400
474
546
ecc.
ecc.






Esempio 2

620677=p*q=p^2+6*n*p

i numeri i validi sono
85
N^2-M^2=85
N=43
n=2*43=86
620677=p^2+6*86*p
segue p=571

ecc.
ecc.




Alberico Lepore 24 Agosto 2017

Che ne pensate è fattibile la cosa?
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

hey ragazzi è O(log)
123457*234589-36*(X)=0
,
Floor[X]+1-Floor[S/36]-1=m
,
123457*234589-36*(M)=S-1
,
S=358046

→ m=M


123457*234589-36*(X)=0
,
Floor[X]+1-Floor[S/36]-1=m
,
123457*234589-36*(M)=S-1
,
S=358045

→ M>m

123457*234589-36*(X)=0
,
Floor[X]+1-Floor[S/36]-1=m
,
123457*234589-36*(M)=S-1
,
S=358047

→ M<m
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

@Zoff ed altri
mi dareste un feedback su questo per piacere
https://www.academia.edu/34573855/Fatto ... _di_Lepore
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

Qualcuno mi aiuterebbe a capire se ho definito bene la complessità computazionale
primality e factorization 2*log_3(N)
https://www.academia.edu/34590872/Test_ ... _2_log_3_N_
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

Questo dovrebbe essere 9 log_3(N)

https://www.academia.edu/34595630/6_Fat ... _di_Lepore

Aspettando feedback vi saluto
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

Dato N

N=a^2+n*a
N2=N-4-2*n
N3=N-16-4*n
N4=N-36-6*n
N5=N-64-8*n
N6=N-100-10*n
N7=N-144-12*n
N8=N-196-14*n
N9=N-256-16*n

Testare N/3 se è intero

ciclare finchè non trovi N=a^2+n*a con a ed n interi
sqrt[Ni-(n+2*coeffeciente della n in Ni)*(a-coeffeciente della n in Ni)]/(3^k)=1 , N=a^2+n*a con k che parte da 0


ricorda che se n=0 N=a^2 se a=1 n=N-1
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

io non mollo
7° fattorizzazione di Lepore
https://www.academia.edu/34616775/7_Fat ... _di_Lepore
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

Ciao quì di seguito c'è la trasformazione del problema della fattorizzazione in un gioco
https://www.academia.edu/34655158/Trasf ... n_un_gioco
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

qualcuno ha trovato una qualsiasi equazione di una qualsiasi di quelle equazioni?
per piacere rispondete
Avatar utente
Zoff
Moderatore Globale
Moderatore Globale
Messaggi: 33338
Iscrizione: mercoledì 10 ottobre 2007, 22:36

Re: Algoritmi sui numeri primi.

Messaggio da Zoff »

C'è un modo più semplice per dimostrare il tuo algoritmo.
Ti basta fattorizzare RSA-2048: https://it.wikipedia.org/wiki/Numeri_RSA#RSA-2048

Anche se basterebbe RSA-220
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

P_1_6 [url=https://forum.ubuntu-it.org/viewtopic.php?p=5010901#p5010901][img]https://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:qualcuno ha trovato una qualsiasi equazione di una qualsiasi di quelle equazioni?
per piacere rispondete
@P_1_6 : che colore è questo?
@Zoff : 1
P_1_6
Prode Principiante
Messaggi: 20
Iscrizione: giovedì 25 dicembre 2014, 23:01
Distribuzione: Ubuntu 15.10 i686

Re: Algoritmi sui numeri primi.

Messaggio da P_1_6 »

Hey @Zoff ed altri admin
Vorrei collaborare con Ubuntu gratuitamente per la stesura dell'algoritmo di fattorizzazione.
Credo di avercela fatta.
Fatemi sapere
Ciao
Scrivi risposta

Ritorna a “Bar Ubuntu”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 8 ospiti