UN PROBLEMA NP DEL MILLENNIO: LA FATTORIZZAZIONE VELOCE. Ing. Pier Franz Roggero, Dott. Michele Nardelli, P.A. Francesco

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "UN PROBLEMA NP DEL MILLENNIO: LA FATTORIZZAZIONE VELOCE. Ing. Pier Franz Roggero, Dott. Michele Nardelli, P.A. Francesco"

Transcript

1 UN PROBLEMA NP DEL MILLENNIO: LA FATTORIZZAZIONE VELOCE Autori Ing. Pier Franz Roggero, Dott. Michele Nardelli, P.A. Francesco Di Noto Abstract In this paper we talk about NP Problem known as factoring Riassunto In questo lavoro parleremo brevemente del Problema NP del Millennio, che comprende migliaia di problemi, molti di qyesti noti anche come problemi dell ago nel pagliaio con particolare attenzione alla fattorizzazione veloce come il più noto e più importante tra loro. 1

2 Sul web o sui libri divulgativi di matematica ci sono diverse descrizioni dei sei problemi del Millennio rimasti ancora irrisolti.. Ne scegliamo una che riguarda soltanto i problemi NP, tra i quali il problema, esponenziale come molti altri, della fattorizzazione, e sul quale accenneremo a qualche nostro risultato parziale (Teorema Fondamentale della Fattorizzazione, Rif. 1)), partendo dalla congettura di Goldbach, ormai praticamente dimostrata (Rif. 2 e 3, congettura forte e debole di Goldbach, in italiano e in inglese) Testo Iniziamo con la descrizione dei problemi NP riportata in Mathepristem, link matematica.unibocconi.it/articoli/un-problema-del-millennio Un problema del millennio La prova del nove 2

3 La nostra (lontana?) esperienza di studenti delle scuole medie ed elementari ha certamente incluso l'incontro con la famosa prova: il controllo, cioè, della correttezza della soluzione di un'operazione o di una equazione o comunque di un problema di Matematica. Semplici procedure, come la ben nota prova del nove, hanno verosimilmente allietato qualche nostro pomeriggio di giovani scolari. Converremo tutti che questo esercizio di verifica può essere talora noioso, arido e poco stimolante. Pur tuttavia, ha proprietà di sicurezza e meccanicità che non possono non essere apprezzate, almeno da uno studente alle prime armi, ancora inesperto di tutte le sottigliezze matematiche: pochi passaggi, automatici e ripetitivi, bastano per confermare che la risposta precedentemente acquisita è esatta oppure, malauguratamente, a contestarla e a costringerci a ricominciare. In effetti, risolvere un esercizio è pur sempre una scommessa, una sfida piena di incognite, di incertezze e di pericoli. Verificarne la soluzione una volta che è stata acquisita può essere talora un'antipatica appendice, ma ha il pregio di una placida procedura lontana da ogni rischio. Anche per problemi più seri ed attuali, cercare una soluzione può essere esperienza delicata e impegnativa, mentre controllare la soluzione trovata richiede talvolta una semplice occhiata. Ad esempio, pensiamo alla decomposizione degli interi positivi N nei loro fattori primi. Recuperare i fattori primi di un assegnato numero composto N è, ancor oggi (almeno per N grande), esercizio complicato e difficile, privo di procedure adeguatamente veloci e soddisfacenti; invece, verificare la decomposizione di N, una volta che se ne conoscono i fattori, è impegno di poca spesa che si riduce ad una semplice moltiplicazione, gestibile in pochi attimi con un comune calcolatore, anche quando N ed i suoi fattori sono numeri di molte cifre. Fortunati sistemi di crittografia a chiave pubblica (come il famoso RSA) basano la loro sicurezza ed 3

4 efficienza sul dislivello ancora esistente tra determinare e verificare la decomposizione di un intero N. Nasce allora la curiosità generale di confrontare da un lato le risorse necessarie per risolvere un problema, dall'altro quelle richieste per controllarne le soluzione. In particolare, ci possiamo domandare: se la verifica può essere svolta in modo rapido (come nel caso della decomposizione), può dirsi lo stesso della soluzione? L'esempio degli interi ci mostra che la questione ha aspetti intriganti e fascinosi, ma in qualche caso attende ancora una risposta definitiva. L'articolo che segue vuole discutere in maggior dettaglio l'intera questione e sottolinearne sorprendenti venature, sottintesi e difficoltà. P e NP Come detto, il nostro intento è confrontare i tempi di soluzione e di verifica di un problema o, più esattamente, dei migliori algoritmi che gli si applicano. Naturalmente, un'analisi precisa e rigorosa della questione richiederebbe che prima si convenissero chiare definizioni teoriche di che cosa si intende per problema e per algoritmo e di come se ne misura l'efficienza temporale. Alan Turing Noi qui ci accontentiamo di prendere atto che queste esigenze hanno adeguata risposta (si veda, ad esempio, [1] o [2]): un preciso formalismo matematico descrive che cosa è un problema e la classica tesi di Alan Turing degli anni Trenta del secolo scorso sembra suggerire ancora un buon modello teorico di 4

5 quel che si deve intendere per algoritmo (o, meglio, per problema dotato di algoritmo). Quanto alla misurazione dell'efficienza di una procedura (di soluzione o di verifica), c'è una proposta in Informatica teorica, che è variamente attribuita (ad Edmonds, Cook, Karp) e risale ai tardi anni Sessanta. Sostiene che un algoritmo A è efficiente quando lavora in tempo al più polinomiale rispetto alla lunghezza dell' input: in dettaglio, ci deve essere un polinomio p A (x) che ha coefficienti interi, assume valori positivi da un certo punto in poi e dipende solo da A tale che la computazione di A su input di lunghezza al più n (a cui è possibile rispondere) si svolge entro p A (n) passi (almeno per n sufficientemente grande). Si propone così una stima asintotica del tempo di lavoro dell'algoritmo, tesa a valutarlo come funzione di n e a studiarne il comportamento per n che tende all'infinito: idea ragionevole, visto che quel che ci interessa per dichiarare A efficiente non è tanto il suo modo di trattare certi specifici particolarissimi input ma un quadro complessivo delle sue capacità di lavoro, al variare di tutti gli input e delle loro lunghezze. Da questo punto di vista, la tesi di Edmonds, Cook e Karp si può riassumere (in termini un po' rozzi e brutali) nello slogan efficiente=polinomiale. Naturalmente, si tratta di proposta discutibile (e discussa). In effetti, se è facile ammettere che un algoritmo A sia efficiente quando lavora in tempo lineare oppure anche quadratico rispetto alla lunghezza dell' input (in altre parole, quando il corrispondente polinomio p A è di primo oppure di secondo grado), quando il grado del polinomio cresce e si vanno a scomodare situazioni quali, si può realmente dubitare che A lavori davvero in modo rapido. D'altra parte, sembra difficile individuare un miglior livello di separazione e cioè un grado d tale che gli algoritmi che lavorano in tempo asintotico limitato da x d siano ritenuti veloci mentre quelli che impiegano x d+1 passi non lo siano più. Perché accettare d ed escludere d +1? Almeno a livello teorico, non ci sono 5

6 argomentazioni sufficienti per motivare una simile opzione. Così, la tesi di Edmonds-Cook-Karp è comunemente accettata, sia pure con le riserve sopra accennate. Semmai, ne sottolineiamo un aspetto che ci pare indiscutibile: siccome la funzione esponenziale x 2 x supera asintoticamente i polinomi di ogni possibile grado, un algoritmo che impiega tempo 2 n oppure superiore rispetto alla lunghezza n dei suoi input è da ritenersi lento e impraticabile (né ci pare che il senso comune possa qui smentire l'affermazione teorica). Così, rassicurati dal rigore scientifico circa la definizione di problema, algoritmo ed efficienza, possiamo far libero riferimento ad un'idea intuitiva di questi tre concetti e procedere nel nostro scopo. Anzi definiamo, per fissare le idee, P come la classe dei problemi che ammettono un algoritmo efficiente di soluzione (P sta per polinomiale, ovviamente) e NP come la classe dei problemi che ammettono un algoritmo efficiente di verifica delle soluzioni. È chiaro che P NP. La nostra curiosità è se vale addirittura l'uguaglianza P=NP, se dunque un problema che ha procedura rapida di verifica ammette anche un algoritmo (magari più lento ma ancora efficiente, cioè polinomiale) per trovare le soluzioni. Questo è quanto vorremmo discutere qui. Ciò stabilito, vale comunque la pena di fermarsi un attimo e spendere qualche parola sui motivi per cui dovremmo appassionarci (o almeno qualcuno dovrebbe appassionarsi) a questa domanda. 6

7 Clay Mathematics Institute Che si tratti di questione rilevante, si deduce facilmente vedendola inserita tra i sette Problemi del Millennio, quelli che il Clay Mathematics Institute di Cambridge, Massachussetts, ha segnalato come i più significativi e difficili nella ricerca matematica del Maggiori informazioni sull'argomento, e la lista completa dei sette problemi, possono trovarsi in [3] oppure direttamente nel sito del Clay Institute, Visitandolo, il lettore potrà osservare come un premio di un milione di dollari è promesso a chi risolverà una qualunque delle sette questioni, il che costituisce già da sé ottimo motivo per interessarsi anche di P=NP. C'è poi chi può essere attirato dalla questione a prescindere dal denaro, solo per la sua valenza teorica. Ma ciò che può accrescere la curiosità generale è lo spettro quasi illimitato delle sue applicazioni particolari, la quasi infinità dei problemi per i quali non è difficile intravedere un algoritmo di verifica efficiente, ma appare tragicamente complicato individuare una procedura rapida di soluzione. Pensiamo, ad esempio, alla questione di riconoscere i numeri primi e a quella di decomporre i numeri naturali composti N, cui già abbiamo accennato nell'introduzione. Come già osservato, quando conosciamo i fattori primi di N, non è difficile né lento controllare la decomposizione (e cioè se N è davvero il 7

8 risultato che si ottiene moltiplicandoli): anche se N ha 1000 cifre in base 10 ed i suoi singoli fattori sono quasi altrettanto lunghi, i moderni calcolatori impiegano tempi relativamente brevi per la verifica. Tuttavia, allo stato attuale delle conoscenze, non sono noti algoritmi capaci di decomporre N in tempo rapido (cioè al più polinomiale rispetto alla lunghezza di N, secondo i parametri sopra stabiliti). Il problema di riconoscere se N è primo (in genere chiamato problema di primalità) è lievemente diverso ed apparentemente più semplice. Non ci interessa infatti, per N composto, conoscere i suoi fattori ma soltanto dichiararlo tale. La relativa verifica è ovviamente rapida, almeno quando N è composto; controllare se N è primo (quando è primo) può invece riservare qualche maggior ostacolo, visto che non si tratta più di confermare una decomposizione che conosciamo ma di escludere ogni possibile fattorizzazione non banale di N. Esistono comunque algoritmi rapidi (di una qualche maggiore complicazione teorica) che sanno compiere rapidamente questa verifica. Del resto, nel 2002, tre ricercatori indiani (Agrawal, Kayal e Saxena) hanno finalmente proposto un procedimento capace di scoprire rapidamente se un fissato N è primo oppure no: l'algoritmo funziona infatti al più in tempo x 11 rispetto alla lunghezza dell' input e recenti perfezionamenti di Lenstra e Pomerance hanno abbassato a x 6 questa soglia (si veda [6]). Tra le questioni che appartengono a NP, ce ne sono alcune che hanno un interesse particolare per un motivo che adesso cerchiamo di spiegare. Ammettiamo di trovare un problema che dichiaratamente sta in NP ma di cui riusciamo a provare per qualche via teorica che non può stare in P. Deduciamo ovviamente, e correttamente, che P NP. Ma supponiamo adesso di considerare un altro problema S in NP e di riuscire a dimostrare che S P. Commetteremmo 8

9 un grosso errore matematico e logico a dedurre P=NP. Un esempio non può costituire una dimostrazione. Tuttavia, capita talora (anche nella vita di tutti i giorni) che esistano persone o riferimenti o valori così generali da rappresentare adeguatamente classi ampie ed articolate, coagulandone perfettamente le sensazioni e le aspettative. Come nel patto dei 3 (o 4) moschettieri di Dumas, vale il principio uno per tutti (e tutti per uno): il singolo rappresenta la totalità e la totalità si riconosce nel singolo. Lo stesso avviene nel caso di P e NP. Esistono davvero problemi S di NP capaci di rappresentare tutti gli altri loro confratelli, nel senso che per dirla in modo rozzo e vagamente impreciso se S appartiene a P, allora P=NP, ovvero, per usare termini più rigorosi e corretti, qualunque problema S' in NP si può tradurre in modo rapido in S, e quindi, se S ammette un algoritmo veloce di soluzione, anche S' lo eredita. Questi problemi S' si dicono NP-completi. Dunque, S è NP-completo se valgono due condizioni: S NP; per ogni problema S' NP, esiste un procedimento effettivo che traduce in tempo polinomiale ogni istanza di S' in una istanza di S (quest'ultima condizione si sintetizza dicendo che S è NP-arduo ). Dunque, per provare che P=NP, basta dimostrare che uno tra i possibili problemi NP-completi ammette un algoritmo rapido di soluzione: si applica cioè il 9

10 principio dei moschettieri ( uno per tutti ). Il primo problema che fu provato NP-completo (da Cook, nel 1971) riguarda una questione di Logica elementare, che ha il nome di Problema della Soddisfacibilità della Logica Preposizionale ma che è anche conosciuto con la sigla (più immediata) SAT. Lo discuteremo nel prossimo paragrafo in modo che ci auguriamo accessibile anche ai non addetti ai lavori. Ma, come vedremo sempre nello stesso paragrafo, SAT è solo il capostipite di una dovizia di esempi NP-completi. La situazione, che si viene così a configurare per ognuno di questi problemi S, è curiosa ed intrigante. Infatti, per ciascuno di essi, è facile verificare una soluzione (se la si conosce) ma è difficile trovarla, anzi è così impegnativo come risolvere l'intera questione P=NP. Non sorprenderà che una tale disparità di situazione sia ottima fonte di ispirazione per certe esigenze della moderna crittografia. La nostra epoca, infatti, va utilizzando sempre più intensamente le potenzialità dei calcolatori per eseguire pagamenti, certificazioni, firme, sottoscrizioni virtuali, cioè telematiche. Operazioni così delicate richiedono ovviamente strumenti capaci di garantire la privacy degli utenti e metterla al riparo da eventuali malintenzionati. In particolare, nasce l'esigenza di criptare i messaggi e i documenti trasmessi in rete in modo che la decodifica sia facile per l'interlocutore desiderato, ma complicata e difficile ai pirati di Internet. Le caratteristiche dei problemi NP-completi sembrano corrispondere perfettamente a questa situazione. L'analogia può dunque ispirare adeguati sistemi crittografici. Illustreremo nel sesto paragrafo un esempio di queste applicazioni, che del resto verranno ulteriormente discusse alla fine del lavoro. Completiamo questa sezione dicendo che il problema della primalità ovviamente non è NP-completo, a meno che P=NP; sta infatti in P. Quanto alla fattorizzazione, la questione è aperta ma criptosistemi largamente diffusi come il 10

11 famoso RSA (si veda ad esempio in [7]) si basano sulle difficoltà che ancora la riguardano e ne distinguono tempi minimi di soluzione e verifica. E qui veniamo al problema prescelto della fattorizzazione e alle difficoltà di violazione della crittografia RSA (Vedi Rif. finali) Osserviamo che purtroppo, fin dai tempi di Euclide (che come sappiamo dimostrò l infinità dei numeri primi), sono stati fatti enormi progressi in matematica; ma sulla fattorizzazione di un numero N =p*q, per esempio un numero RSA, ma anche un numero N di due - tre cifre, nessun matematico al mondo, che si sappia, è in grado di stimare, nemmeno approssimativamente, in quale parte di n = N vada a finire p < n, per esempio all inizio (per es. 15%), verso la parte centrale ( circa 50%), o verso la fine (per es. 90% di n), cioè vicino ad n. Insomma, in quale percentuale, anche approssimativamente di n, si possa stimare il più probabile valore di p. Su questa enorme difficoltà, com è noto, si basa la crittografia RSA, finora inviolabile per qualunque hacker, bravo per quanto 11

12 fosse. Un nostro teorema (Il teorema fondamentale della fattorizzazione,tff), permette di calcolare la percentuale p% di p rispetto ad n solo però se si conosce già il rapporto r = q/p, e tramite la formula p% = 1 / r. Siccome, ovviamente, non conosciamo p e q (cioè ciò che cerchiamo con la fattorizzazione di N = p*q), e quindi non possiamo calcolare r e quindi nemmeno p%. Solo aggirando il problema, qualora fosse possibile, di trovare r anche approssimativamente con altri eventuali algoritmi polinomiali (quindi in P), si potrà risolvere il problema della fattorizzazione in tempi polinomiali, e quindi violare infine la crittografia RSA. E un teorema della Teoria dei numeri, cosa che gli hacker, bravissimi in informatica, ma in genere non laureati in matematica, conoscono molto poco. E quindi, per fortuna, niente pericoli per la RSA. E nemmeno una eventuale dimostrazione dell ipotesi di Riemann, molto probabilmente, non 12

13 sarebbe loro di molto aiuto, come spesso erroneamente e frettolosamente, anche alcuni matematici credono (vedi Rif.5). Conclusioni Possiamo concludere ancora una volta che il problema della fattorizzazione veloce rimane ancora di difficile soluzione, sia per via informatica (forza bruta usando la potenza e la velocità dei computer, anche di quelli quantistici, di prossima realizzazione, o anche a DNA, oppure memcomputer, (Rif. 4) ancora in fase di studio teorico), sia per via teorica ( eventuali nuovi algoritmi teoricamente ingegnosi in generale o per aggirare il problema 1 / r con r = q/p in particolare, ovviamente qualora fosse possibile). Infine, un piccolo esempio pratico : 1 / r per N = (= 127*229); n = = 170,53 r = 229/127 = 1,8031 ( quadrato della ragione della progressione aritmetica p,n, q = 127, 170,53, 229 r = 1,

14 Per cui p n/ r =170,53/1,3427 = 127, 0052, 127 = p e q n* r = 170,53*1,3427 = 228, = q Il calcolo della percentuale p% rispetto ad n = 170,53 è semplicemente l inverso di r, e cioè, in questo caso, 1/1,3427 = 0,7447 =74,47%. Infatti, 170,53*0,7447= 126, = p Purtroppo, in generale (e per i numeri RSA in particolare), non conoscendo ancora p e q, non possiamo calcolare r ne direttamente ne indirettamente, e quindi da esso non possiamo risalire a p e a q. Attendiamo futuri progressi in questa direzione, poiché non crediamo che per un problema così semplice (apparentemente), come stimare la percentuale p% di p rispetto ad n, non ci sia ancora una soluzione teorica che possa aggirare la forza bruta dei computer passati, presenti e futuri. 14

15 Riferimenti (tutti sul nostro sito, salvo diversa indicazione) 1. IL TEOREMA FONDAMENTALE DELLA FATTORIZZAZIONE Gruppo B.Riemann * Francesco Di Noto, Michele Nardelli 2. Congettura debole di Goldbach già dimostrata. Ne consegue la congettura forte (accenni alla fattorizzazione alla Fermat e alla RH1) Gruppo B. Riemann * Francesco Di Noto, Michele Nardelli 3. From the weak Goldbach s Conjecture to the strong Conjecture (hints to the RH1) Gruppo B. Riemann * Francesco Di Noto, Michele Nardelli 4. MEMCOMPUTER E NUOVO ALGORITMO DI CRITTOGRAFIA Ing. Pier Franz Roggero, Dott. Michele Nardelli, P.A. Francesco Di Noto Altri riferimenti 5. CRITTOGRAFIA R.S.A. INVIOLABILE Francesco Di Noto, Michele Nardelli, Pierfrancesco Roggero 15

16 6. CONNESSIONI FONDAMENTALI NELLA TEORIA DEI NUMERI Autori Francesco Di Noto, Michele Nardelli, Pierfrancesco Roggero 7. - NOVITA SULLA TEORIA DEI NUMERI - (Le nostre proposte di soluzioni alle questioni di C. Caldwell) Gruppo B. Riemann * Francesco Di Noto, Michele Nardelli 8. Congetture matematiche ancora aperte - I nostri principali contributi Autori Francesco Di Noto, Michele Nardelli, Pierfrancesco Roggero 9) Da Il Sole 24 Ore del , articolo di Andrea Carobene Il futuro? Gli exascale computer dove l Autore parla dei computer che si stanno progettando per i prossimi decenni, in modo particolari quelli quantistici e a DNA, o comunque biologici, con possibile simulazione del cervello umano, vedi memcomputer in Rif. 4. Qui sotto riportiamo, per gli eventuali interessati, l articolo Di Andrea Carobene: 16

17 Tecnologie Gadget Il futuro? Gli exascale computer Andrea CarobeneCronologia articolo19 aprile 2015 In questo articolo Argomenti: Domenico Laforenza Google Consiglio nazionale delle ricerche Jerome Bonnet Leonard Adleman Nasa IBM Hardware Il prossimo traguardo saranno gli exascale computer: macchine capaci di eseguire miliardi di miliardi di calcoli al secondo. Se si tentasse oggi di costruirne uno usando la tecnologia attuale, occorrerebbe una centrale nucleare da oltre un Giga Watt per alimentarlo. Forse, tuttavia, sarà il cervello umano, i misteri della meccanica quantistica, o l'introduzione di nuovi nanomateriali a suggerirci nuove strade per aggirare i vincoli imposti dalla fisica sui futuri elaboratori. E' Domenico Laforenza, Direttore dell'istituto di Informatica e Telematica del Consiglio Nazionale delle Ricerche di Pisa, che racconta quelli che saranno i computer di domani partendo dalla situazione attuale. Oggi siamo arrivati a realizzare chip con transistor aventi dimensione molto vicina ai 10 nanometri, ossia miliardesimi di metro, ma l'obiettivo é quello di scendere di un ordine di grandezza, arrivando a un solo nanometro, a livello atomico. La tecnica classica usata per creare computer più potenti è quella di fare lavorare insieme più processori: la strada seguita per aumentare la potenza computazionale dei calcolatori é quella del parallelismo ; il calcolatore più potente costruito al mondo, il cinese Tianhe-2, esegue 33,86 X 10^15 operazioni per unità di tempo, quasi 34 milioni di miliardi, e funziona facendo operare in contemporanea oltre tre milioni di elementi di calcolo (computing cores). Il raddoppio della potenza dei computer postulato dalla legge di Moore si scontra con il problema della miniaturizzazione e con la sempre maggiore richiesta di energia necessaria a fare funzionare più transistor in parallelo. Sono diversi i tentativi attualmente seguiti per superare questo duplice scoglio. Il primo é quello del quantum computing. Mentre nei computer classici il bit vale solamente 0 o 1, nelle macchine quantistiche un qubit può assumere contemporaneamente sia il valore 0 che 1 grazie al concetto di soprapposizione coerente. Il risultato è che un computer quantistico ha una capacità di calcolo e di memorizzazione incommensurabilmente maggiori rispetto a uno tradizionale: un computer di questo tipo esiste già, ed è il D-Wave, un progetto di una società privata, sponsorizzata dalla Nasa e da Google. Attualmente D-Wave ha realizzato una macchina che opera con 512 qubit, ma difficilmente, secondo Laforenza, si avrà tuttavia un vero e proprio computer quantistico commerciale, se non per usi molto particolari come l'analisi dei dati criptati, prima di venti anni. E questo anche perché, oltre ai problemi legati all'hardware e alla fragilità intrinseca dei qubit, la realizzazione di applicazioni software per questo tipo è macchine presenta elementi di complessità decisamente maggiori rispetto ai calcolatori convenzionali. 17

18 Un altro tentativo per rivoluzionare la logica dei computer classici è quello della computazione molecolare. Nel 1994 Leonard Adleman, dell'università della California Meridionale, dimostrò la possibilità di realizzare una macchina che funzionava calcolando direttamente con le molecole. L'idea era di utilizzare le proprietà del Dna per effettuare calcoli, spostando così a livello molecolare le attività di computazione. L'ipotesi era che in un futuro si potesse arrivare a costruire un computer formato da nulla di più che una singola macromolecola. In questi anni sono stati fatti diversi progressi in questo campo, e nel 2013 un gruppo di ricercatori dell'università di Stanford, guidati da Jerome Bonnet, ha annunciato su Science di avere realizzato il primo transcrittore : un transistor biologico composto da Dna e Rna. Anche in questo caso, però, occorreranno più decenni perché si possa arrivare a realizzare quei computer di cui parlava Adleam 21 anni fa. Sul versante biologico - continua Laforenza - un tentativo importante che si sta effettuando è quello di studiare la possibilità di realizzare dei computer che simulino il funzionamento del cervello umano. E' questo uno dei grandi obiettivi di ricerca del programma europeo FET Flagship di Horizon 2020, ma anche qui parliamo di risultati possibili tra anni. Assieme al cervello umano, l'altro fronte europeo importante di ricerca è quello del grafene, il materiale formato da uno strato monoatomico di atomi di carbonio che potrebbe essere usato per migliorare le prestazioni dei computer realizzando circuiti basati non più sul silicio ma sul carbonio. Su questo versante, ad esempio, Ibm ha già diffuso i risultati di un processo di fabbricazione di un circuito integrato al grafene da usare per trasmissioni wireless. L'aumento di potenza in questo caso potrebbe essere ottimizzato integrando questo tipo di transistor con i chip fotonici, apparecchi che favoriscono la trasformazione dell'informazione da cariche elettriche in segnali luminosi, aumentando quindi la velocità di trasmissione. Molteplici sono dunque i fronti sui quali la comunità scientifica si sta quindi muovendo per rispettare la legge di Moore: strade diverse che, ad oggi, non ci dicono ancora, però, che questa legge potrà davvero essere rispettata. Commento Secondo noi, tutti questi computer del futuro avranno probabilmente potenza e velocità di calcolo comparabili, ma non ancora la capacità di violare la crittografia RSA fattorizzando i nuovi numeri usati (di circa 1000 cifre), per i quali, con i computer attuali, occorrerebbero 15 miliardi di anni ( o al minimo solo 15 con quelli quantistici, ma sono sempre troppi) 18

19 Anche con una nostra recente osservazione, poiché il rapporto massimo r = q/p per i numeri RSA è di 2,25, r = 2,25 = 1,5 e l inverso di 1,5 = 0,66 = 67 % ; e poiché p è inversamente proporzionale alla percentuale, ed essendo 67% la minima, p è compreso tra il 67% di n ed n stesso. Non lo troveremo quindi dallo 0% al 67%, e quindi è inutile cercarvelo, eliminando così il 67% dei tempi di calcolo previsti per un dato nuovo numero RSA. Ma anche così, avremmo solo 5 anni di tempo, e anche questi sono troppi, oltre al fatto che in 5 anni tale numero potrebbe essere cambiato per maggiore sicurezza, e un eventuale hacker dovrebbe ricominciare tutto daccapo. Per un algoritmo di possibile violazione RSA basato sulla congettura di Goldbach, riportiamo il seguente (ma sul web ce ne sono di altri simili, anche basati sulla congettura debole di Goldbach), ma ciò nonostante la crittografia RSA risulta ancora inviolata (tuttavia l idea, in via del tutto teorica, ci sembra buona e interessante per eventuali futuri sviluppi). 19

20 Sul link: programmazione.it/index.php?entity=eitem&iditem=48227 Factoring RSA Numbers Using Goldbach's Conjecture RogerGDoss, 4 Jan 2012 CPOL 4.74 (6 votes) /5-6 votes μ 4.74, σ a 0.78 [?] Rate this: vote 1vote 2vote 3vote 4vote 5 Exploring the dream of designing a new algorithm for factoring semi-primes Download source KB Vote! Introduction In our effort to design a new algorithm for factoring semi-primes, we turn our attention to the Goldbach conjecture. The conjecture states that any even number greater or equal to 4 can be represented as the sum of two primes. We may refine the conjecture by stating that any even number greater or equal to 8 can be represented as the sum of two primes distinct. We can then define the maximum Goldbach partition (maxgb) as the product of the largest two distinct primes that sum to the even number e=p+q. We note that e can factor n=p*q by way of Quadratic equation. There is also the minimum Goldbach partition (mingb) which is the product of the least two distinct primes that sum to the even number e=p+q. Background Initial attempts at developing an algorithm utilizing both partitions resulted in failure. By graphing the output of mingb and maxgb, we see that the data for mingb is almost random, while maxgb is almost a smooth curve. Our attention then immediately turned to using a binary search on the maxgb partitions in order to approximate e=p+q for a given n=p*q. Below is the graph of the data: 20

21 With this, our approximation of e for a given n became: bool Q(unsigned long long n, unsigned long long e, unsigned long long *p, unsigned long long *q) { unsigned long long p_q = (unsigned long long)sqrt((e * e) - (4 * n)); *p = (e - p_q) / 2; *q = (e + p_q) / 2; if((*p * *q) == n) { return true; } return false; } Hide Shrink Copy Code unsigned long long f(unsigned long long n, unsigned long long min, unsigned long long max) { unsigned long long e = 0, p = 0, q = 0, p_e = 0, tmp = 0; if((min%2)) { min++; } if((max%2)) { max++; } while(min < max) { e = (min + max) / 2; if((e % 2) == 1) e++; if(p_e == e) { // printf("%d\n",e); return e; } tmp = maxgb(e); if(tmp > n) { 21

22 } } max = e - 1; if(tmp < n) { min = e + 1; } if(tmp == n) { Q(n,e,&p,&q); // printf("e=%d\tp=%d\tq=%d\n",e,p,q); return e; } if(q(n,e,&p,&q)) { // printf("e=%d\tp=%d\tq=%d\n",e,p,q); return e; } p_e = e; } // printf("%d\n",e); return e; Where f is our approximation logic and Q is our Quadratic equation logic for factoring n. A caller of f would do the following: unsigned long long e = f(n,2,n+1); Hide Copy Code The logic would then try to find an approximation for what e=p+q may be. We note that the algorithm is a binary search algorithm and therefore runs in O(logN) time. maxgb is defined as: unsigned long long maxgb(unsigned long long i) { unsigned long long t = i / 2, s = t; while(t) { t--; s++; if(is_prime(t) && is_prime(s) && ((s + t) == i)) { return t * s; } } return 0; } Hide Copy Code Using the Code The code is designed to run as a standalone command line tool. Calling function f on a given semiprime n produces an approximation of e=p+q which can be used as a starting point to find the real value and therefore factor n. Testing of the algorithm using a set of pseudo-random generated semi-primes produces results that look promising. In particular, comparing the algorithm to the output of Pollard-Rho on those semiprimes shows that Pollard-Rho required much more iterations in order to factor. In some cases, Pollard-Rho failed to factor the semi-primes, while in all cases, our algorithm worked successfully and rather quickly. There are limitations here when handling large semi-primes and the algorithm was only tested on 64bit semi-primes. Large semi-primes require that methods such as is_prime use a probabilistic 22

CRITTOGRAFIA R.S.A. INVIOLABILE

CRITTOGRAFIA R.S.A. INVIOLABILE CRITTOGRAFIA R.S.A. INVIOLABILE Francesco Di Noto, Michele Nardelli, Pierfrancesco Roggero Abstract In this paper we show the inviolability of RSA cryptografy Riassunto In questo breve lavoro la possibile

Dettagli

I numeri semiprimi e i numeri RSA. come loro sottoinsieme

I numeri semiprimi e i numeri RSA. come loro sottoinsieme I numeri semiprimi e i numeri RSA come loro sottoinsieme Francesco Di Noto, Michele Nardelli Abstract In this paper we show some connections between semi-primes numbers and RSA numbers. Riassunto In questo

Dettagli

I NUMERI DI LEYLAND E LE SERIE DI FIBONACCI E DI PADOVAN

I NUMERI DI LEYLAND E LE SERIE DI FIBONACCI E DI PADOVAN Gruppo B. Riemann * I NUMERI DI LEYLAND E LE SERIE DI FIBONACCI E DI PADOVAN Francesco Di Noto, Michele Nardelli *Gruppo amatoriale per la ricerca matematica sui numeri primi, sulle loro congetture e sulle

Dettagli

3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Scopo: Stimare l onere computazionale per risolvere problemi di ottimizzazione e di altra natura

Dettagli

(ETC) MATRICOLE DISPARI

(ETC) MATRICOLE DISPARI Elementi di Teoria della Computazione (ETC) MATRICOLE DISPARI Docente: Prof. Luisa Gargano BENVENUTI! Finalità: Fornire gli elementi di base delle teorie che sono di fondamento all'informatica 1. Computabilità

Dettagli

3 Il problema dell impacchettamento come problema

3 Il problema dell impacchettamento come problema 3 Il problema dell impacchettamento come problema NP - Le partizioni di numeri e i Taxicab come possibili esempi di soluzione Francesco Di Noto, Michele Nardelli, Pierfrancesco Roggero Abstract In this

Dettagli

Numeri primi e monete truccate

Numeri primi e monete truccate Numeri primi e monete truccate Corso di Formazione in Matematica e Comunicazione Andrea Caranti Trento, 3 dicembre 2003 Numeri primi Un numero intero positivo è primo se gli unici interi positivi per cui

Dettagli

INFINITA DEI NUMERI PRIMI PALINDROMI DECIMALI

INFINITA DEI NUMERI PRIMI PALINDROMI DECIMALI INFINITA DEI NUMERI PRIMI PALINDROMI DECIMALI Gruppo Riemann* Nardelli Michele, Francesco Di Noto *Gruppo amatoriale per la ricerca matematica sui numeri primi, sulle loro congetture e sulle loro connessioni

Dettagli

Introduzione alla crittografia. Il crittosistema RSA e la sua sicurezza

Introduzione alla crittografia. Il crittosistema RSA e la sua sicurezza Introduzione alla crittografia. Il crittosistema RSA e la sua sicurezza Prof. Massimiliano Sala MINICORSI 2011. Crittografia a chiave pubblica: oltre RSA Università degli Studi di Trento, Lab di Matematica

Dettagli

Complessità computazionale degli algoritmi

Complessità computazionale degli algoritmi Complessità computazionale degli algoritmi Lezione n. 3.bis I precursori dei calcolatore Calcolatore di Rodi o di Andikithira 65 a.c. Blaise Pascale pascalina XVII secolo Gottfried Leibniz Joseph Jacquard

Dettagli

Numeri Primi e Applicazioni crittografiche

Numeri Primi e Applicazioni crittografiche Numeri Primi e Applicazioni crittografiche Andrea Previtali Dipartimento di Matematica e Fisica Università dell Insubria-Como http://www.unico.it/matematica/previtali andrea.previtali@uninsubria.it Corsi

Dettagli

FIBONACCI, I FUTURI COMPUTER A BASE DI DNA E I COMPUTER QUANTISTICI

FIBONACCI, I FUTURI COMPUTER A BASE DI DNA E I COMPUTER QUANTISTICI FIBONACCI, I FUTURI COMPUTER A BASE DI DNA E I COMPUTER QUANTISTICI Francesco Di Noto, Michele Nardelli, Pierfrancesco Roggero Abstract In this paper we will to confront DNA computer and quantum computer,

Dettagli

Le parole dell informatica: modello di calcolo, complessità e trattabilità

Le parole dell informatica: modello di calcolo, complessità e trattabilità Le parole dell informatica: modello di calcolo, complessità e trattabilità Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario

Dettagli

LICEO STATALE ENRICO MEDI CON INDIRIZZI:

LICEO STATALE ENRICO MEDI CON INDIRIZZI: Verbale del primo incontro con gli studenti: Martedì 12 Novembre 2013, ore 13:45 16:45 Dopo una breve introduzione alle finalità del Progetto dal titolo Crittografia e crittanalisi, viene illustrato con

Dettagli

PRIMAVERA IN BICOCCA

PRIMAVERA IN BICOCCA PRIMAVERA IN BICOCCA 1. Numeri primi e fattorizzazione Una delle applicazioni più rilevanti della Teoria dei Numeri si ha nel campo della crittografia. In queste note vogliamo delineare, in particolare,

Dettagli

UD 3.4b: Trattabilità e Intrattabilità. Dispense, cap. 4.2

UD 3.4b: Trattabilità e Intrattabilità. Dispense, cap. 4.2 UD 3.4b: Trattabilità e Intrattabilità Dispense, cap. 4.2 Problemi Intrattabili Esistono problemi che, pur avendo un algoritmo di soluzione, non forniranno mai una soluzione in tempi ragionevoli nemmeno

Dettagli

Crittografia. Primalità e Fattorizzazione. Corso di Laurea Specialistica. in Informatica

Crittografia. Primalità e Fattorizzazione. Corso di Laurea Specialistica. in Informatica Crittografia Corso di Laurea Specialistica in Informatica Primalità e Fattorizzazione Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di Milano Bicocca

Dettagli

Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT

Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT Giuditta Franco Corso di Laurea in Bioinformatica - AA 2012/2013 Uno dei più grossi risultati nell informatica degli

Dettagli

regola(1,[e,f],b) regola(2,[m,f],e) regola(3,[m],f) regola(4,[b,f],g) regola(5,[b,g],c) regola(6,[g,q],a)

regola(1,[e,f],b) regola(2,[m,f],e) regola(3,[m],f) regola(4,[b,f],g) regola(5,[b,g],c) regola(6,[g,q],a) ESERCIZIO1 PREMESSA Per risolvere problemi spesso esistono delle regole che, dai dati del problema, permettono di calcolare o dedurre la soluzione. Questa situazione si può descrivere col termine regola(,

Dettagli

Un po di teoria dei numeri

Un po di teoria dei numeri Un po di teoria dei numeri Applicazione alla crittografia RSA Christian Ferrari Liceo di Locarno Matematica Sommario 1 L aritmetica modulare di Z n Le congruenze L anello Z n Le potenze in Z n e algoritmo

Dettagli

NP-Completezza. Andrea S. Gozzi Valerio Romeo. Andrea Samuele 1

NP-Completezza. Andrea S. Gozzi Valerio Romeo. Andrea Samuele 1 NP-Completezza di Andrea S. Gozzi Valerio Romeo Andrea Samuele 1 Argomenti trattati Out of intense complexities, intense simplicities emerge. Winston Churchill Concetti base & formalismi Introduzione alla

Dettagli

Le componenti fisiche di un computer: l hardware

Le componenti fisiche di un computer: l hardware Le componenti fisiche di un computer: l hardware In questa sezione ci occuperemo di come è strutturato e come funziona l hardware di un computer. In particolare, nella Sezione ci occuperemo del punto di

Dettagli

Robustezza crittografica della PEC

Robustezza crittografica della PEC Robustezza crittografica della PEC Prof. Massimiliano Sala Università degli Studi di Trento, Lab di Matematica Industriale e Crittografia Trento, 21 Novembre 2011 M. Sala (Università degli Studi di Trento)

Dettagli

RSA: Rivest, Shamir, Adelman

RSA: Rivest, Shamir, Adelman Funzioni One-way con Trapdoor RSA: Rivest, Shamir, Adelman Ozalp Babaoglu Un lucchetto è una funzione one-way con trapdoor Tutti possono chiudere il lucchetto pur senza possedere la chiave Nessuno può

Dettagli

Capitolo 7: Domanda con il reddito in forma di moneta

Capitolo 7: Domanda con il reddito in forma di moneta Capitolo 7: Domanda con il reddito in forma di moneta 7.1: Introduzione L unica differenza tra questo capitolo e il precedente consiste nella definizione del reddito individuale. Assumiamo, infatti, che

Dettagli

Sezione 1 / Section 1. Elementi d identità: il marchio Elements of identity: the logo

Sezione 1 / Section 1. Elementi d identità: il marchio Elements of identity: the logo Sezione 1 / Section 1 2 Elementi d identità: il marchio Elements of identity: the logo Elements of identity: the logo Indice 2.01 Elementi d identità 2.02 Versioni declinabili 2.03 Versioni A e A1, a colori

Dettagli

Scuola Primaria FINALE SQ. - 14/15 ESERCIZIO 1

Scuola Primaria FINALE SQ. - 14/15 ESERCIZIO 1 ESERCIZIO 1 Si ricordi che una regola di deduzione è un termine che ha la struttura: regola(,,). Tale termine indica una regola di nome che consente di dedurre

Dettagli

REGISTRATION GUIDE TO RESHELL SOFTWARE

REGISTRATION GUIDE TO RESHELL SOFTWARE REGISTRATION GUIDE TO RESHELL SOFTWARE INDEX: 1. GENERAL INFORMATION 2. REGISTRATION GUIDE 1. GENERAL INFORMATION This guide contains the correct procedure for entering the software page http://software.roenest.com/

Dettagli

I NUMERI DI PADOVAN (CONNESSIONI TRA LA SERIE DI PADOVAN ED ALTRE SERIE NUMERICHE)

I NUMERI DI PADOVAN (CONNESSIONI TRA LA SERIE DI PADOVAN ED ALTRE SERIE NUMERICHE) I NUMERI DI PADOVAN (CONNESSIONI TRA LA SERIE DI PADOVAN ED ALTRE SERIE NUMERICHE) Gruppo B. Riemann Francesco Di Noto, Michele Nardelli Abstract In this paper we show some connections between Padovan

Dettagli

Sicurezza nelle applicazioni multimediali: lezione 4, crittografia asimmetrica. Crittografia asimmetrica (a chiave pubblica)

Sicurezza nelle applicazioni multimediali: lezione 4, crittografia asimmetrica. Crittografia asimmetrica (a chiave pubblica) Crittografia asimmetrica (a chiave pubblica) Problemi legati alla crittografia simmetrica Il principale problema della crittografia simmetrica sta nella necessità di disporre di un canale sicuro per la

Dettagli

Problemi computazionali

Problemi computazionali Problemi computazionali Intrattabilità e classi computazionali Decidibilità e Trattabilità Problemi decidibili possono richiedere tempi di risoluzione elevati: Torri di Hanoi Decidibilità e Trattabilità

Dettagli

I Modelli della Ricerca Operativa

I Modelli della Ricerca Operativa Capitolo 1 I Modelli della Ricerca Operativa 1.1 L approccio modellistico Il termine modello è di solito usato per indicare una costruzione artificiale realizzata per evidenziare proprietà specifiche di

Dettagli

LE COSTANTI E LE LEGGI FISICHE DIPENDONO DAL TEMPO

LE COSTANTI E LE LEGGI FISICHE DIPENDONO DAL TEMPO Pagina 1 di 8 LE COSTANTI E LE LEGGI FISICHE DIPENDONO DAL TEMPO Ing. Pier Franz Roggero, Dott. Michele Nardelli, P.A. Francesco Di Noto Abstract: This paper explains that all physical constants and consequently

Dettagli

Ingegneria del Software T. 2. Analisi orientata agli oggetti

Ingegneria del Software T. 2. Analisi orientata agli oggetti Ingegneria del Software T 2. Analisi orientata agli oggetti Per effettuare correttamente l analisi, è necessario Comunicare con l utente Ottenere una buona conoscenza dell area applicativa Determinare

Dettagli

Introduzione. è uguale a 0, spostamento di dati da una parte della memoria del calcolatore ad un altra.

Introduzione. è uguale a 0, spostamento di dati da una parte della memoria del calcolatore ad un altra. Appunti di Calcolatori Elettronici Modello di macchina multilivello Introduzione... 1 Linguaggi, livelli e macchine virtuali... 3 La struttura a livelli delle macchine odierne... 4 Evoluzione delle macchine

Dettagli

U Corso di italiano, Lezione Quindici

U Corso di italiano, Lezione Quindici 1 U Corso di italiano, Lezione Quindici U Buongiorno, anche in questa lezione iniziamo con qualche dialogo formale M Good morning, in this lesson as well, let s start with some formal dialogues U Buongiorno,

Dettagli

Il sistema di elaborazione

Il sistema di elaborazione Il sistema di elaborazione Stefano Brocchi stefano.brocchi@unifi.it Stefano Brocchi Il sistema di elaborazione 1 / 37 Informatica Il termine informatica deriva dalle parole informazione e automatica Stefano

Dettagli

La matematica dell orologio

La matematica dell orologio La matematica dell orologio Un aritmetica inusuale: I numeri del nostro ambiente sono: 0,1,2,...,11 e corrispondono alle ore di un nostro orologio Le operazioni sono intese in questo modo: 1 somma: a+b

Dettagli

Note sull esperienza Misura di g versione 1, Francesco, 7/05/2010

Note sull esperienza Misura di g versione 1, Francesco, 7/05/2010 Note sull esperienza Misura di g versione 1, Francesco, 7/05/010 L esperienza, basata sullo studio di una molla a spirale in condizioni di equilibrio e di oscillazione, ha diversi scopi e finalità, tra

Dettagli

MATLAB:Condizionamento Sistemi Lineari.

MATLAB:Condizionamento Sistemi Lineari. 1 Francesca Mazzia Dipartimento Interuniversitario di Matematica Università di Bari MATLAB:Condizionamento Sistemi Lineari. Innanzitutto vediamo qual è la funzione Matlab che ci permette di calcolare il

Dettagli

Analisi. Ingegneria del Software L-A. Analisi. Analisi. Ingegneria del Software L-A 2.1. 2. Analisi orientata agli oggetti

Analisi. Ingegneria del Software L-A. Analisi. Analisi. Ingegneria del Software L-A 2.1. 2. Analisi orientata agli oggetti Ingegneria del Software L-A 2. orientata agli oggetti Per effettuare correttamente l analisi, è necessario Comunicare con l utente Ottenere una buona conoscenza dell area applicativa Determinare in dettaglio

Dettagli

Analisi. Ingegneria del Software L-A. Analisi. Analisi. Analisi e gestione dei rischi. Analisi e gestione dei rischi. Ingegneria del Software L-A 2.

Analisi. Ingegneria del Software L-A. Analisi. Analisi. Analisi e gestione dei rischi. Analisi e gestione dei rischi. Ingegneria del Software L-A 2. Ingegneria del Software L-A 2. orientata agli oggetti Per effettuare correttamente l analisi, è necessario Comunicare con l utente Ottenere una buona conoscenza dell area applicativa Determinare in dettaglio

Dettagli

Il sistema di crittografia NTRU

Il sistema di crittografia NTRU Il sistema di crittografia NTRU Stefano Vaccari 2148 061247 Relazione per il corso di Sistemi Informativi II Tecnologie per la Sicurezza Luglio 2003 1 Crittografia a chiave pubblica Tra i sistemi di protezione

Dettagli

U Corso di italiano, Lezione Diciassette

U Corso di italiano, Lezione Diciassette 1 U Corso di italiano, Lezione Diciassette U Oggi, facciamo un esercizio M Today we do an exercise U Oggi, facciamo un esercizio D Noi diremo una frase in inglese e tu cerca di pensare a come dirla in

Dettagli

Esercizi Capitolo 5 - Alberi

Esercizi Capitolo 5 - Alberi Esercizi Capitolo 5 - Alberi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle

Dettagli

la "macchina" universale di Turing

la macchina universale di Turing la "macchina" universale di Turing Nel 1854, il matematico britannico George Boole (1815-1864), elaborò una matematica algebrica che da lui prese il nome. Nell'algebra booleana le procedure di calcolo

Dettagli

Bolla verde. (le contraddizioni di una moda ) Giancarlo Livraghi novembre 2006

Bolla verde. (le contraddizioni di una moda ) Giancarlo Livraghi novembre 2006 Bolla verde (le contraddizioni di una moda ) Giancarlo Livraghi novembre 2006 Sono stato tentato, molte volte, di ritornare sul tema delle energie rinnovabili (vedi, per esempio, L idrogeno e l internet

Dettagli

Scritto da DEApress Lunedì 14 Aprile 2014 12:03 - Ultimo aggiornamento Martedì 26 Maggio 2015 09:34

Scritto da DEApress Lunedì 14 Aprile 2014 12:03 - Ultimo aggiornamento Martedì 26 Maggio 2015 09:34 This week I have been walking round San Marco and surrounding areas to find things that catch my eye to take pictures of. These pictures were of various things but majority included people. The reason

Dettagli

Esercizi Programming Contest

Esercizi Programming Contest Esercizi Programming Contest Alberto Montresor 22 maggio 2012 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle

Dettagli

Complessità computazionale

Complessità computazionale 1 Introduzione alla complessità computazionale Un problema spesso può essere risolto utilizzando algoritmi diversi Come scegliere il migliore? La bontà o efficienza di un algoritmo si misura in base alla

Dettagli

Le domande dei numeri primi e le risposte della matematica: una sfida aperta da 23 secoli

Le domande dei numeri primi e le risposte della matematica: una sfida aperta da 23 secoli Fondamenti di Analisi Matematica e riferimenti storici Progetto di attività didattica Serena Cenatiempo classe di abilitazione A049 Le domande dei numeri primi e le risposte della matematica: una sfida

Dettagli

Introduzione al concetto di algoritmo

Introduzione al concetto di algoritmo Dario Palladino 1 Introduzione al concetto di algoritmo Con il recente enorme sviluppo delle discipline informatiche e l uso sempre più diffuso dei calcolatori, il concetto di algoritmo ha assunto un ruolo

Dettagli

Reti sequenziali e strutturazione firmware

Reti sequenziali e strutturazione firmware Architettura degli Elaboratori, a.a. 25-6 Reti sequenziali e strutturazione firmware Alla parte di corso sulle reti sequenziali è apportata una sensibile semplificazione rispetto a quanto contenuto nel

Dettagli

LICEO SCIENTIFICO opzione delle scienze applicate MATEMATICA LICEO SCIENTIFICO MATEMATICA

LICEO SCIENTIFICO opzione delle scienze applicate MATEMATICA LICEO SCIENTIFICO MATEMATICA LICEO SCIENTIFICO MATEMATICA PROFILO GENERALE E COMPETENZE Al termine del percorso liceale lo studente dovrà padroneggiare i principali concetti e metodi di base della matematica, sia aventi valore intrinseco

Dettagli

L INNOVAZIONE SCIENTIFICO-TECNOLOGICA NEI PROCESSI PRODUTTIVI

L INNOVAZIONE SCIENTIFICO-TECNOLOGICA NEI PROCESSI PRODUTTIVI L INNOVAZIONE SCIENTIFICO-TECNOLOGICA NEI PROCESSI PRODUTTIVI Scienza ed industria hanno oggi costituito legami molto forti di collaborazione che hanno portato innovazione tecnologica sia a livello organizzativo-amministrativo

Dettagli

LabMecFit. versione beta. by S.Frasca Dipartimento di Fisica Università Sapienza Roma

LabMecFit. versione beta. by S.Frasca Dipartimento di Fisica Università Sapienza Roma LabMecFit versione beta by S.Frasca Dipartimento di Fisica Università Sapienza Roma LabMecFit è un programma che permette di elaborare i dati prodotti da DataStudio. I dati devono essere salvati da DataStudio

Dettagli

LICEO SCIENTIFICO opzione delle scienze applicate MATEMATICA

LICEO SCIENTIFICO opzione delle scienze applicate MATEMATICA LICEO SCIENTIFICO opzione delle scienze applicate MATEMATICA PROFILO GENERALE E COMPETENZE Al termine del percorso liceale lo studente dovrà padroneggiare i principali concetti e metodi di base della matematica,

Dettagli

drag & drop visual programming appinventor storia appinventor un esempio di drag & drop programming: Scratch

drag & drop visual programming appinventor storia appinventor un esempio di drag & drop programming: Scratch drag & drop visual programming appinventor realizzazione app per Google Android OS appinventor è un applicazione drag & drop visual programming Contrariamente ai linguaggi tradizionali (text-based programming

Dettagli

Seminario Sull Algoritmo R.S.A.

Seminario Sull Algoritmo R.S.A. Alessandrini Cristian Sicurezza 2003 Introduzione Seminario Sull Algoritmo R.S.A. L algoritmo R.S.A. fa parte degli algoritmi definiti a chiave pubblica oppure asimmetrici. Fu progettato nel 1976/77 da

Dettagli

Optimization and control: CFD as a design tool

Optimization and control: CFD as a design tool Relazione di attività del PhD student Samuele Zampini Supervisore: Prof. Maurizio Quadrio, Dipartimento di Scienze e Tecnologie Aereospaziali Optimization and control: CFD as a design tool Attività di

Dettagli

Appunti senza pretese di P2+Lab: Molto, poco, tantissimo, abbastanza, di piú

Appunti senza pretese di P2+Lab: Molto, poco, tantissimo, abbastanza, di piú Appunti senza pretese di P2+Lab: Molto, poco, tantissimo, abbastanza, di piú Alessandro Panconesi DSI, La Sapienza via Salaria 113, piano terzo 00198 Roma Per poter effettuare l analisi degli algoritmi

Dettagli

Corso di Calcolo Numerico

Corso di Calcolo Numerico Corso di Calcolo Numerico Dott.ssa M.C. De Bonis Università degli Studi della Basilicata, Potenza Facoltà di Ingegneria Corso di Laurea in Ingegneria Meccanica Sistemi di Numerazione Sistema decimale La

Dettagli

Newborn Upfront Payment & Newborn Supplement

Newborn Upfront Payment & Newborn Supplement ITALIAN Newborn Upfront Payment & Newborn Supplement Female 1: Ormai manca poco al parto e devo pensare alla mia situazione economica. Ho sentito dire che il governo non sovvenziona più il Baby Bonus.

Dettagli

Open Source e usi commerciali

Open Source e usi commerciali Open Source e usi commerciali I problemi delle doppie licenze Caterina Flick Open Source e Riuso: giornata di discussione e confronto tra enti e aziende Pisa, 17 settembre 2008 1/22 Open Source e usi commerciali

Dettagli

1. Aritmetica Modulare e Applicazioni

1. Aritmetica Modulare e Applicazioni 1. Aritmetica Modulare e Applicazioni Le parti precedute dal simbolo I (adattate dal sistema di aiuto in linea del programma ScientiÞc Workplace) si riferiscono alle procedure da seguire per svolgere i

Dettagli

Crittografia a chiave pubblica

Crittografia a chiave pubblica Crittografia a chiave pubblica Cifrari simmetrici Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci canale

Dettagli

Flops. Differenza tra sustained performance, e di picco (cenni a proposito dei metodi di ottimizzazione, il compilatore ed oltre)

Flops. Differenza tra sustained performance, e di picco (cenni a proposito dei metodi di ottimizzazione, il compilatore ed oltre) LaTop500 Flops Differenza tra sustained performance, e di picco (cenni a proposito dei metodi di ottimizzazione, il compilatore ed oltre) La valutazione dell'effettiva potenza di calcolo dev'essere effettuata

Dettagli

Prob(CCCCCCCCCC) = 1 2 10

Prob(CCCCCCCCCC) = 1 2 10 12. Contenuto di Informazione Algoritmico (AIC) - 17/05/12 Vogliamo adesso introdurre una nozione di contenuto di informazione di una stringa infinita, prodotta da una sorgente di informazione, che non

Dettagli

Prova finale di Ingegneria del software

Prova finale di Ingegneria del software Prova finale di Ingegneria del software Scaglione: Prof. San Pietro Andrea Romanoni: Francesco Visin: andrea.romanoni@polimi.it francesco.visin@polimi.it Italiano 2 Scaglioni di voto Scaglioni di voto

Dettagli

Aggiornamento dispositivo di firma digitale

Aggiornamento dispositivo di firma digitale Aggiornamento dispositivo di firma digitale Updating digital signature device Questo documento ha il compito di descrivere, passo per passo, il processo di aggiornamento manuale del dispositivo di firma

Dettagli

Introduzione all informatica (cosa è, di cosa si occupa) 9/2/2015 Informatica applicata alla comunicazione multimediale Cristina Bosco

Introduzione all informatica (cosa è, di cosa si occupa) 9/2/2015 Informatica applicata alla comunicazione multimediale Cristina Bosco Introduzione all informatica (cosa è, di cosa si occupa) 9/2/2015 Informatica applicata alla comunicazione multimediale Cristina Bosco Indice - Di cosa si occupa l informatica? - Cosa sono gli algoritmi?

Dettagli

dal laboratorio libri in presenza alla collaborazione online

dal laboratorio libri in presenza alla collaborazione online Centro Sovrazonale di Comunicazione Aumentativa Centro Sovrazonale di Comunicazione Aumentativa dal laboratorio libri in presenza alla collaborazione online a cura di Antonio Bianchi sommario L'impostazione

Dettagli

Paola Bonizzoni. Università degli Studi di Milano-Bicocca

Paola Bonizzoni. Università degli Studi di Milano-Bicocca Paola Bonizzoni Università degli Studi di Milano-Bicocca Biologia Bioinformatica: Ricostruzione evoluzione Analisi di sequenze Folding di Proteine Simulazione di processi biologici Informatica 2 In un

Dettagli

I numeri delle macchine

I numeri delle macchine I numeri delle macchine Livello scolare: 1 biennio Abilità interessate Utilizzare in modo consapevole gli strumenti di calcolo automatico. Conoscenze Addizione e moltiplicazione nell insieme dei numeri

Dettagli

Capitolo 1 - Numerazione binaria

Capitolo 1 - Numerazione binaria Appunti di Elettronica Digitale Capitolo - Numerazione binaria Numerazione binaria... Addizione binaria... Sottrazione binaria... Moltiplicazione binaria... Divisione binaria... Complementazione... Numeri

Dettagli

SISTEMI OPERATIVI. Gestione della memoria Domande di verifica. Luca Orrù Centro Multimediale Montiferru 18/06/2007

SISTEMI OPERATIVI. Gestione della memoria Domande di verifica. Luca Orrù Centro Multimediale Montiferru 18/06/2007 2007 SISTEMI OPERATIVI Gestione della memoria Domande di verifica Luca Orrù Centro Multimediale Montiferru 18/06/2007 Gestione della memoria 1. Si descriva il concetto di memoria virtuale (esame del 19-06-2006)

Dettagli

Parte 3. Rango e teorema di Rouché-Capelli

Parte 3. Rango e teorema di Rouché-Capelli Parte 3. Rango e teorema di Rouché-Capelli A. Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Rango di una matrice, 2 Teorema degli orlati, 3 3 Calcolo con l algoritmo di Gauss, 6 4 Matrici

Dettagli

Progetto e analisi di algoritmi

Progetto e analisi di algoritmi Progetto e analisi di algoritmi Roberto Cordone DTI - Università degli Studi di Milano Polo Didattico e di Ricerca di Crema Tel. 0373 / 898089 E-mail: cordone@dti.unimi.it Ricevimento: su appuntamento

Dettagli

Dispense del corso di Logica a.a. 2015/16: Problemi di primo livello. V. M. Abrusci

Dispense del corso di Logica a.a. 2015/16: Problemi di primo livello. V. M. Abrusci Dispense del corso di Logica a.a. 2015/16: Problemi di primo livello V. M. Abrusci 12 ottobre 2015 0.1 Problemi logici basilari sulle classi Le classi sono uno dei temi della logica. Esponiamo in questa

Dettagli

Compatibilità del Portale Piaggio con Internet Explorer 10 e 11. Internet Explorer 10

Compatibilità del Portale Piaggio con Internet Explorer 10 e 11. Internet Explorer 10 Italiano: Explorer 10 pagina 1, Explorer 11 pagina 2 English: Explorer 10 page 3 and 4, Explorer 11 page 5. Compatibilità del Portale Piaggio con Internet Explorer 10 e 11 Internet Explorer 10 Con l introduzione

Dettagli

English-Medium Instruction: un indagine

English-Medium Instruction: un indagine English-Medium Instruction: un indagine Marta Guarda Dipartimento di Studi Linguistici e Letterari (DiSLL) Un indagine su EMI presso Unipd Indagine spedita a tutti i docenti dell università nella fase

Dettagli

Hardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre

Hardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre Hardware, software e periferiche Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre Riepilogo - Concetti di base dell informatica L'informatica è quel settore scientifico disciplinare

Dettagli

quali sono scambi di assicurazione sanitaria

quali sono scambi di assicurazione sanitaria quali sono scambi di assicurazione sanitaria Most of the time, quali sono scambi di assicurazione sanitaria is definitely instructions concerning how to upload it. quali sono scambi di assicurazione sanitaria

Dettagli

http://www.homeaway.it/info/guida-proprietari Copyright HomeAway INC

http://www.homeaway.it/info/guida-proprietari Copyright HomeAway INC Cambiare il testo in rosso con i vostri estremi Esempi di lettere in Inglese per la restituzione o trattenuta di acconti. Restituzione Acconto, nessun danno all immobile: Vostro Indirizzo: Data

Dettagli

La Macchina di Turing come strumento per la divulgazione dell informatica

La Macchina di Turing come strumento per la divulgazione dell informatica & La Macchina di Turing come strumento per la divulgazione dell informatica Mattia Monga Dip. di Informatica Università degli Studi di Milano mattia.monga@unimi.it Centenario A. Turing Milano, 23 giugno

Dettagli

LICEO CLASSICO, LICEO DELLE SCIENZE UMANE, LICEO MUSICALE E COREUTICO, LICEO LINGUISTICO MATEMATICA

LICEO CLASSICO, LICEO DELLE SCIENZE UMANE, LICEO MUSICALE E COREUTICO, LICEO LINGUISTICO MATEMATICA LICEO CLASSICO, LICEO DELLE SCIENZE UMANE, LICEO MUSICALE E COREUTICO, LICEO LINGUISTICO MATEMATICA PROFILO GENERALE E COMPETENZE Al termine del percorso liceale lo studente dovrà padroneggiare i principali

Dettagli

Varianti Macchine di Turing

Varianti Macchine di Turing Varianti Macchine di Turing Esistono definizioni alternative di macchina di Turing. Chiamate Varianti. Tra queste vedremo: MdT a più nastri e MdT non deterministiche. Mostriamo: tutte le varianti ragionevoli

Dettagli

Complessità e Approssimazione

Complessità e Approssimazione 1 Complessità e Approssimazione Corso di Laurea in Scienze dell'informazione Corso di Laurea Specialistica in Matematica Docente: Mauro Leoncini 2 Aspetti organizzativi Sito web: http://algo.ing.unimo.it/people/mauro

Dettagli

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Se a e b sono numeri interi, si dice che a divide b, in simboli: a b, se e solo se esiste c Z tale che b = ac. Si può subito notare che:

Dettagli

PROGRAMMAZIONE DIDATTICA RIFERITA ALLA DISCIPLINA :MATEMATICA

PROGRAMMAZIONE DIDATTICA RIFERITA ALLA DISCIPLINA :MATEMATICA Istituto Istruzione Superiore A. Venturi Modena Liceo artistico - Istituto Professionale Grafica Via Rainusso, 66-41124 MODENA Sede di riferimento (Via de Servi, 21-41121 MODENA) tel. 059-222156 / 245330

Dettagli

Tecniche di DM: Link analysis e Association discovery

Tecniche di DM: Link analysis e Association discovery Tecniche di DM: Link analysis e Association discovery Vincenzo Antonio Manganaro vincenzomang@virgilio.it, www.statistica.too.it Indice 1 Architettura di un generico algoritmo di DM. 2 2 Regole di associazione:

Dettagli

Introduzione alla Crittografia

Introduzione alla Crittografia Liceo Scientifico N. Tron, 6 febbraio 2006 Riassunto Dato n > 1, la funzione di Eulero ϕ(n) è il numero di elementi < n e coprimi con n. Riassunto Dato n > 1, la funzione di Eulero ϕ(n) è il numero di

Dettagli

Algoritmi e strutture di dati 2

Algoritmi e strutture di dati 2 Algoritmi e strutture di dati 2 Paola Vocca Lezione 2: Tecniche golose (greedy) Lezione1- Divide et impera 1 Progettazione di algoritmi greedy Tecniche di dimostrazione (progettazione) o Greedy algorithms

Dettagli

ISAC. Company Profile

ISAC. Company Profile ISAC Company Profile ISAC, all that technology can do. L azienda ISAC nasce nel 1994, quando professionisti con una grande esperienza nel settore si uniscono, e creano un team di lavoro con l obiettivo

Dettagli

Corsi di Laurea in Scienze e Tecnologie Informatiche

Corsi di Laurea in Scienze e Tecnologie Informatiche Corsi di Laurea in Scienze e Tecnologie Informatiche Carla Piazza Facoltà di Scienze Matematiche Fisiche e Naturali Università degli Studi di Udine www.dimi.uniud.it/piazza/salone_studente_2012.pdf Corsi

Dettagli

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Rappresentazione concreta di insiemi e Hash table

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Rappresentazione concreta di insiemi e Hash table Universita' di Ferrara Dipartimento di Matematica e Informatica Algoritmi e Strutture Dati Rappresentazione concreta di insiemi e Hash table Copyright 2006-2015 by Claudio Salati. Lez. 9a 1 Rappresentazione

Dettagli

Società per la Biblioteca Circolante Programma Inglese Potenziato

Società per la Biblioteca Circolante Programma Inglese Potenziato Società per la Biblioteca Circolante Programma Inglese Potenziato STRUTTURE GRAMMATICALI VOCABOLI FUNZIONI COMUNICATIVE Presente del verbo be: tutte le forme Pronomi Personali Soggetto: tutte le forme

Dettagli

C è solo un acca tra pi e phi ing. Rosario Turco, prof. Maria Colonnese

C è solo un acca tra pi e phi ing. Rosario Turco, prof. Maria Colonnese C è solo un acca tra pi e phi ing. Rosario Turco, prof. Maria Colonnese Introduzione Nell articolo vengono mostrate vari possibili legami tra la costante di Archimede (pi greco) e la sezione aurea (phi).

Dettagli