MACHINE LANGUAGES

MACHINE LANGUAGES

Francesca Pelusi

Instructional goals

This laboratory is the first stage of the overall didactic structure of Legal Informatics of the LUISS master's degree in Law, which is made up of five preparatory laboratories and a course spread over the first three years. These teaching classes constitute a unitary and progressive path according to a logical itinerary studied in order to implement the student's sensitivity for the mutual interaction between information technology and law. The intent is to train a jurist who can be ready to face the legal challenges of the digital dimension, increasingly pervasive and transversal in every professional sector, and of IT applications in the legal sector. To this end, the student will also have to acquire purely technical and IT knowledge to fully understand the technological phenomena of which he or she may be required to evaluate the legal implications and effects. This is a strategic goal that the Department of Law has set itself, as it is impossible to imagine the figure of a jurist today who is not fully familiar with digital tools and is unable to analyze the impact of the most disruptive technological applications on society, law, markets and institutions at a global level. The overwhelming innovation encouraged by national and European public policies requires versatile professional figures, capable of applying the traditional categories of law to unprecedented technological phenomena, or even of building new ones better able to regulate the present. To do this, it is required an understanding of the basic architecture of networks, as well as the languages of mathematics and the logic of algorithms, in order to be able to read them in the forms of law. Specifically, the Laboratory of Language and Logic of Machines aims to form the foundation of such complex knowledge, providing the vocabulary, grammar and syntax of computational thinking, programming, coding and cryptography.

Intended learning outcomes

Knowledge and comprehension: to achieve knowledge of some cutting-edge topics in the relevant field of study with the appropriate teaching support, basic understanding of programming languages and knowledge of computer architecture and networks. Applied knowledge and comprehension: ability to use coding to achieve effective results. Making autonomous judgements: collecting and interpreting relevant information and data. Communication skills: communicating information, ideas, problems and solutions. Ability to learn: having developed the necessary skills to undertake subsequent studies with a high degree of autonomy.

Course Contents

I. Logic and computational thinking II. Programming languages and coding III. Hardware and software architecture IV. Data protection and information security

Reference Books

The teaching material consists of the content of the lessons given by the lecturer related handouts and other materials shared on Luiss Learn. Recommended readings: - Dennis P. Curtin et al., Informatica di Base, edizione 7, Mc-Graw Hill (2021): chapters 2, 6, 8, 9, 13, 14 - Allen B. Downey, Think Python, edition 2, O’Reilly (2018): chapters 1, 2, 5, 7, 8, 10

Teaching Methods

Acquisition: lectures and online quizzes Practice: coding exercises Collaboration: small group project, discussing others’ output and building joint output Discussion: group based class discussion, online forums and synchronous and asynchronous discussion

Assessment Method

The final grade, expressed out of 30, will derive from the evaluation of the following items for the respective percentage share 20% attendance 10% active participation during classes 50% intermediate tests (quizzes) 20% final exam (python programming) N.B. The grade obtained at the outcome of the exam of this Laboratory will participate for the share of 1/7 in the final grade which will be attributed to the outcome of the exam of the Macchine intelligenti e diritto (MID1) course and which regularly falls within the curricular average grade of each student.

Thesis assignment criteria

No thesis can be assigned for this course

Week 1 Contenuto sessioni on line e on campus

I. Logic and computational thinking 1. Presentation of the overall structure of the Legal IT course (6 exams/150 hours, verification methods and calculation of the final grade)

Week 2 Contenuto sessioni on line e on campus

I. Logic and computational thinking 2. Boolean algebra 3. Truth tables

Week 3 Contenuto sessioni on line e on campus

I. Logic and computational thinking 4.De Morgan theorems

Week 4 Contenuto sessioni on line e on campus

I. Logic and computational thinking 5. Elementary inferences

Week 5 Contenuto sessioni on line e on campus

II. Programming languages 1. Theory and fundamental concepts of coding: variables, operators, input/output, conditionals

Week 6 Contenuto sessioni on line e on campus

II. Programming languages 2. Overview of the most common programming languages

Week 7 Contenuto sessioni on line e on campus

II. Programming languages 3. Exercising with Python

Week 8 Contenuto sessioni on line e on campus

II. Programming languages 4. GPT-3

Week 9 Contenuto sessioni on line e on campus

III. Hardware and software architecture 1. Computer architecture 2. Communication protocols

Week 10 Contenuto sessioni on line e on campus

III. Hardware and software architecture 3. The internet and the web 4. 2.0, 3.0 and beyond

Week 11 Contenuto sessioni on line e on campus

IV. Data protection and information security 1. Basic theory 2. Symmetric encryption

Week 12 Contenuto sessioni on line e on campus

IV. Data protection and information security 3. Asymmetric encryption 4. [The issue of quantum cryptography]