LINGUAGGIO E LOGICA DELLE MACCHINE
Obiettivi formativi
Il laboratorio è il primo insegnamento della complessiva struttura didattica di Informatica Giuridica del corso di laurea magistrale a ciclo unico in Giurisprudenza della LUISS, che si compone di cinque laboratori propedeutici ed un corso distribuiti sui primi tre anni. Tali insegnamenti costituiscono un percorso unitario e progressivo secondo un itinerario logico studiato al fine di implementare la sensibilità dello studente per la reciproca interazione fra l’informatica ed il diritto.
L’intento è quello di formare un giurista realmente pronto ad affrontare le sfide legali della dimensione digitale, sempre più pervasiva e trasversale in ogni settore professionale, e delle applicazioni informatiche nell’ambito legale.
A tal fine lo studente dovrà acquisire conoscenze anche puramente tecniche ed informatiche per comprendere a fondo i fenomeni tecnologici dei quali potrà essergli/le richiesto di valutare risvolti ed effetti giuridici.
È questo un obiettivo strategico che il Dipartimento di Giurisprudenza si è prefisso, non potendosi contemplare la figura di un giurista che oggi non possieda piena dimestichezza anche degli strumenti digitali e non sappia analizzare l’impatto delle applicazioni tecnologiche più dirompenti sulla società, sul diritto, sui mercati e sulle istituzioni a livello globale.
L’innovazione travolgente ed incentivata dalle politiche pubbliche nazionali ed europee esige figure professionali versatili, capaci di applicare le categorie tradizionali del diritto a fenomeni tecnologici inediti, o addirittura di costruirne di nuove meglio in grado di regolare il presente.
Per far ciò si richiede una comprensione dell’architettura di base delle reti, nonché dei linguaggi della matematica e della logica degli algoritmi, per poterli quindi leggere nelle forme del diritto.
Il Laboratorio di Linguaggio e logica delle macchine, nello specifico, vuole costituire il fondamento di tali complesse conoscenze, fornendo il vocabolario, la grammatica e la sintassi del pensiero computazionale, della programmazione e del coding e della crittografia.
Risultati di apprendimento attesi
Conoscenza e capacità di comprensione: raggiungere la conoscenza di alcuni argomenti d'avanguardia nel campo di studio con il supporto didattico appropriato, comprensione elementare dei linguaggi di programmazione e conoscenza dell'architettura e delle reti dei computer.
Conoscenza e comprensione applicate: capacità di utilizzare il coding di base per ottenere risultati efficaci.
Autonomia di giudizio: raccogliere e interpretare informazioni e dati rilevanti.
Abilità comunicative: comunicare informazioni, idee, problemi e soluzioni.
Capacità di apprendere: aver sviluppato le competenze necessarie per intraprendere gli studi successivi con un elevato grado di autonomia.
Contenuti Del Corso
I. Logica e pensiero computazionale
II. Linguaggi di programmazione e coding
III. Architettura hardware e software
IV. Protezione del dato e sicurezza dell’informazione
Testi Di Riferimento
Il materiale didattico è costituito dal contenuto delle lezioni impartite dal docente, relative dispense e altri materiali condivisi su Luiss Learn.
Letture consigliate:
G.D’Acquisto, M. Naldi, Big Data e privacy by Design, Giappichelli
G.D’Acquisto, D.Benedetti, L.Nobile, Innovazione tecnologica per umanisti, Giappichelli
Jake VanderPlas, A Whirlwind Tour of Python, ed. O'Reilly
Dennis Curtin, Kim Foley, Kunal Sen, Cathy Morin, Agostino Marengo e Alessandro Pagano, Informatica di base, McGraw-Hill
Metodologie Didattiche
Apprendimento: lezioni frontali, podcast e quiz online
Pratica: ospiti esperti e simulazioni di coding
Indagine: analisi di idee e informazioni fra una gamma di materiali e risorse, utilizzando metodi convenzionali per raccogliere e analizzare dati e confrontare testi
Collaborazione: lavori in piccoli gruppi, discussione dei risultati altrui e proposta di risultati comuni
Discussione: seminari, discussioni di gruppo in classe, forum online e discussioni sincrone e asincrone
Produzione: saggi, relazioni, presentazioni e blog
Modalità di verifica dell'apprendimento
Il voto finale, espresso in 30/trentesimi deriverà dalla valutazione delle seguenti voci per la rispettiva quota percentuale
20% frequenza
10% partecipazione attiva in aula
50% valutazioni delle prove intermedie
20% esame finale (scritto e orale)
N.B. Il voto conseguito all’esito dell’esame del presente Laboratorio parteciperà per 1/7 al voto finale che sarà attribuito all’esito dell’esame del corso di Macchine intelligenti e diritto (MID1) e che rientra regolarmente nella media curriculare dello studente.
Criteri per l’assegnazione dell’elaborato finale
La valutazione sarà basata su una prova scritta e orale. Il 50% della valutazione verrà data parte di teoria, il 50% della valutazione verrà dato dalla parte pratica.
Settimana 1
I. Logica e pensiero computazionale
1. Presentazione della struttura complessiva del corso di Informatica giuridica (struttura in 6 esami/150 ore, modalità di verifica e calcolo del voto finale)
Lezione frontale, Pratica, Discussione
Settimana 2
I. Logica e pensiero computazionale
2. Algebra di Boole
3. Tavole di verità
Lezione frontale, Pratica, Discussione
Settimana 3
I. Logica e pensiero computazionale
4. Teoremi di De Morgan
Esercizi
Lezione frontale, Pratica, Discussione
Settimana 4
I. Logica e pensiero computazionale
5. Inferenze elementari
Lezione frontale, Pratica, Discussione
Settimana 5
II. Linguaggi di programmazione
1. Teoria e concetti fondamentali del coding
Variabil e tipi
Istruzioni iterative
Istruzioni condizionali
Lezione frontale, Pratica, Discussione
Settimana 6
II. Linguaggi di programmazione
2. Introduzione ai linguaggi di programmazione maggiormente diffusi
Modalità interattive
Modalità compilate
Lezione frontale, Pratica, Discussione
Settimana 7
II. Linguaggi di programmazione
Esercitazioni Python
Lezione frontale, Pratica, Discussione
Settimana 8
II. Linguaggi di programmazione
GPT-3
Discussione, Produzione
Settimana 9
III. Architettura hardware e software
1. Struttura del calcolatore
2. Protocolli di comunicazione
Lezione frontale, Pratica, Discussione
Settimana 10
III. Architettura hardware e software
3. Internet e Web
4. 2.0, 3.0 e oltre
Lezione frontale, Pratica, Discussione
Settimana 11
IV. Protezione del dato e sicurezza dell’informazione
1. Teoria di base: obiettivi di sicurezza
2. Crittografia simmetrica
Esempi
Lezione frontale, Pratica, Discussione
Settimana 12
IV. Protezione del dato e sicurezza dell’informazione
Crittografia asimmetrica
Esempi
4. [Il problema della crittografia quantistica]
Lezione frontale, Pratica, Discussione