piergiac-1
Nuovo Utente
- Messaggi
- 51
- Reazioni
- 4
- Punteggio
- 21
noDomanda secca. Il tuo algoritmo di fattorizzazione funziona SOLO e ESCLUSIVAMENTE con input appositi costruiti ad hoc?
Per favore, risposta sì o no.
Segui il video qui sotto per vedere come installare il nostro sito come web app sulla tua schermata principale.
Nota: Questa funzionalità potrebbe non essere disponibile in alcuni browser.
Pubblicità
noDomanda secca. Il tuo algoritmo di fattorizzazione funziona SOLO e ESCLUSIVAMENTE con input appositi costruiti ad hoc?
Per favore, risposta sì o no.
osservazioni, non accusestai dimostrando di non capire niente e di sparare a vanvera le tue accuse
* GC57 test
from math import gcd,isqrt
from sympy import nextprime, isprime
from random import randint, seed
import time
#**** imposto il seme di ricerca random
T=int(time.time())
seed(T)
#**** numeri di ricerca
ps = '45781226558405483659061848084517523520699343530928680581341722632979022195694540925115045343036422766517577151510311704787018021623802339596981670905605736891**5'
qs = '45781226558405483659061848084517523520699343530928680581341722632979022195694540925115045343036422766517577151510311704787018021623802339596981670905605736891**11'
#**** converto le stringhe ps e qs in numeri interi
p=eval(ps)
q=eval(qs)
#**** imposto chiave come base di ricerca
chiave = 45781226558405483659061848084517523520699343530928680581341722632979022195694540925115045343036422766517577151510311704787018021623802339596981670905605736891**8
print()
#**** discriminatore
trovato=0
campo=500
aumenta=1000000000
#**** cerco i numeri primi partendo dalla base e aggiungendo un numero casuale
primo1=nextprime(p+randint(1,aumenta*(2**campo)))
primo2=nextprime(q+randint(1,aumenta*(2**campo)))
#**** calcolo il semiprimo ed effettuo la ricerca
n=primo1*primo2
a=n%chiave
b=n-a
r=gcd(a,b)
for i in range(10):
r=gcd(b,a)
if r!=1:
print('Semimprimo =',n)
print()
print('Divisore =',r)
print()
print('Test divisore. Numero primo=',isprime(r))
print()
print(i)
trovato=1
break
a=a+chiave
b=b-chiave
if trovato==0:
print('nessun divisore trovato')
Se il tuo intento è solo quello di distruggere mi dispiace non ci stoosservazioni, non accuse
se non sai reggere un confronto basato su fatti concreti è un tuo problema;
qui purtoppo l'unico che sta ampiamente dimostrando di non capire assolutamente nulla delle osservazioni che vengono fatte sei proprio tu
la radice quadrata non è un'opinine che cresce più o meno rapidamente a seconda del campo, è una radice quadrata punto e basta
tu calcoli la chiave con quella
una fattorizzazione ha un solo input, il numero da fattorizzare
il codice lo hai postato tu, ho usato quello, l'algoritmo (ammesso e non concesso che termini e dia risultati corretti) non funziona in tempi accettabili, infatti gli ho passato un semiprimo da 100 cifre stamattina e non l'ha fattorizzato, dopo mezz'ora ho fermato il programma
che strano eppure a tuo dire fattorizzi semiprimi da 500 cifre in meno di un secondo, peccato che siano solo quelli che decidi tu
osservazioni:Posto il programma test che generalmente uso per verificare il campo di risoluzione di una famiglia
Ok, graziePerdonami ma non ci siamo proprio, ancor di piu se stori altri numeri in un file per velocizzare i calcoli.
Il tuo algoritmo è "farlocco".
Ok, grazieosservazioni:
quel codice non vale niente
- la presenza del ciclo for dove si invoca gcd (massimo comun divisore) mostra inequivocabilmente come lo sbandierato "tempo costante" sia una sparata clickbait; memorizzare direttamente (semi)primi non casuali non è un bel modo di programmare né di testare, tanto più che non sono casuali (vedi seguito)
- non esiste alcun motivo logico per cui un ciclo for che deve eseguire dei calcoli potenzialmente lunghi venga eseguito solo 10 volte
- è banalmente evidente che i primi non siano casuali ma generati ad hoc (di conseguenza è generato ad hoc anche il semiprimo su cui effettuare il test...)
- per fattorizzare un semiprimo l'unico input necessario è il numero stesso, i 2 primi che lo compongono non devono essere forniti né calcolati come fa comodo; come conseguenza l'uso di isprime() è inutile, la verifica di (pseudo)primalità non è richiesta né necessaria
- la chiave non vine calcolata ma fornita, è semplicemente ridicolo
Perfetto, almeno ti sei rivelato. La tuo opinione non mi interessa e se trovi disgustose i miei post puoi sempre guardare da un'altra parte. Non credo di venire a mangiare a casa tua. Inoltre trovo la cosa non solo deprimente ma anche grottesca che una persona si accanisca tanto così brutalmente a un'altra persona solo perchè non ne condivide le idee. La gente è adulta e può benissimo giudicare da sola. Puoi dire che per te è una grande cavolata ma non puoi inseguirmi in altri forum per cercare di mettermi in cattiva luce. Lo trovo eticamente scorrettoNon c'è niente di deprimente, tanto meno "presunte lesioni di nessuna immagine". Sono io che ti ho scritto sull'altro forum dopo avere visto le due discussioni. Sono d'accordo con tutto quello che ti ha scritto qui Bat e volevo che gli altri utenti lo sapessero. Non capisco che problemi hai.
Sono anni che scrivi sui forum su questo "presunto algoritmo" e io (e tanti altri) ti abbiamo già detto che è una bufala. Adesso pubblichi qui e su pierotofy, liberissimo (anche di pubblicare libretti su Amazon) ma sono libero anche io di confermare che è una bufala. Come pensano altri in questo forum.
P.S. Personalmente sono contrario al crossposting contemporaneo tra forum diversi ma, se si fa, si abbia almeno la decenza di segnalarlo a tutti.
sono daccordo ed è quello che sto cercando di fare, in modo costruttivo. Se ad alcuni non piace o trova il mio sistema inutile trovo che sia indecente ribadire ogni volta che "L'algoritmo non vale niente fattene una ragione". Se per quella persona non vale niente lasci il posto a chi invece ci vede qualcosa di interessante, o dobbiamo stare tutti a quella valutazione?Chiedo a tutti di moderare i toni, l'argomento è comunque interessante e penso valga la pena discutere in modo costruttivo.
@piergiac-1 non postare a catena ma edita l'ultimo messaggio, inolte ti invito ad ascoltare le critiche per creare un prodotto migliore, al controllo del tono delle discussioni ci pensa lo Staff.
Grazie e buon proseguimento!
ti sei iscritto questa mattina. Ok, la chiudo quiRivelato? Ma cosa dici?
Disgustose? Quando lo avrei scritto?
Accanire brutalmente? Ma dici sul serio?
Mangiare a casa mia? Stai vaneggiando?
Ho solo commentato, su tutti i forum a cui partecipo o voglio partecipare, quello che hai scritto tu sul tuo "presunto algoritmo".
E ho ribadito che sono d'accordo con quanto scritto da @BAT e non solo da lui.
Secondo te, è possibile e sei in grado di modificare l'algoritmo tenendo conto delle critiche di @BAT e renderlo generico e veloce per la fattorizzazione di qualsiasi numero semiprimo?sono daccordo ed è quello che sto cercando di fare, in modo costruttivo. Se ad alcuni non piace o trova il mio sistema inutile trovo che sia indecente ribadire ogni volta che "L'algoritmo non vale niente fattene una ragione". Se per quella persona non vale niente lasci il posto a chi invece ci vede qualcosa di interessante, o dobbiamo stare tutti a quella valutazione?
Premettendo che non conosco assolutamente l'argomento trattato, vorrei però consigliarti che se esponi le tue idee in un contesto pubblico, soprattutto in un forum, lo fai per confrontarti e per cercare spunti e ragionare sulle critiche costruttive.Perfetto, almeno ti sei rivelato. La tuo opinione non mi interessa e se trovi disgustose i miei post puoi sempre guardare da un'altra parte. Non credo di venire a mangiare a casa tua. Inoltre trovo la cosa non solo deprimente ma anche grottesca che una persona si accanisca tanto così brutalmente a un'altra persona solo perchè non ne condivide le idee. La gente è adulta e può benissimo giudicare da sola. Puoi dire che per te è una grande cavolata ma non puoi inseguirmi in altri forum per cercare di mettermi in cattiva luce. Lo trovo eticamente scorretto
Accetto ogni critica costruttiva ma non posso cambiare ilo sistema. Prendiamo per esempio gli RSA sono numeri primi estratti con determinati parametri che non possono essere modificati per non compromettere la sicurezza. Se chiedi a loro di utilizzare qualsiasi numero primo anche casuale ti risponderebbero no. Questo tipo di fattorizzazione agisce solo su dei campi che ogni famiglia può produrre e l'algoritmo riesce a fattorizzare solo all'interno di questi campi. A livello di studio sulla teoria dei numeri l'unica cosa che potrebbe essere interessante sarebbe la domanda perchè una sola chiave riesce a rintracciare miliardi di miliardi di numeri primo. Per quanto riguarda la sicurezza invece è un'altra cosa. Posso gestire miliardi di miliardi di semiprimi tenendo una chiave riservata e nascosta, Si. Possono gli altri arrivare a trovare uno di questi numeri primi senza la chiave, No. Allora ho un dispositivo che mi permette di accedere a dei codici che solo io posso accedere velocemente. Questo è il concetto primario. Se parliamo di sicurezza dei codici naturalmente parliamo anche delle sue vulnerabilità. Cosa rende molto sicuro e non certo al 100% che non esiste in sicurezza informatica, questo codice? La grandezza del numeroAlla fine le critiche sono state fatte in modo ben preciso, per cui credo che puoi tenerne conto e lavorarci su no? Adeguarlo a ciò che è stato specificato e criticato.
public Integer somma(int a , int b) {
int a = 1;
int c = b;
return a + c;
}