Oggetto:
Oggetto:

Logica per l'Informatica

Oggetto:

Logic for Computer Science

Oggetto:

Anno accademico 2025/2026

Codice attività didattica
INF0102
Docente
Luca Roversi (Titolare)
Corso di studio
[008515] Laurea magistrale in informatica
Anno
1° anno, 2° anno
Periodo
Secondo semestre
Tipologia
A scelta dello studente
Crediti/Valenza
6 CFU - Numero di ore - Number of hours: 48 (in aula)
SSD attività didattica
MAT/01 - logica matematica
Erogazione
Tradizionale
Lingua
Italiano
Frequenza
Facoltativa
Tipologia esame
Scritto
Prerequisiti

Conoscenze di base di teoria degli insiemi, matematica discreta, logica matematica, e nozioni elementari di linguaggi formali. Sono tipicamente fornite da insegnamenti come Fondamenti dell'Informatica (INF0348), Logica Matematica (INF0336).


Basic knowledge of set theory, discrete mathematics, mathematical logic, and elementary notions of formal languages. These are typically provided by courses such as Fundamentals of Computer Science (INF0348), Mathematical Logic (INF0336).
Mutuato da
Oggetto:

Sommario insegnamento

Oggetto:

Avvisi

Regole di comportamento durante gli esami Informazioni per studenti con DSA o Disabilità: servizi di Ateneo e supporto per sostenere gli esami
Oggetto:

Obiettivi formativi

L’insegnamento è tra quelli a scelta libera. In linea con gli Obiettivi formativi specifici del CdS in Informatica (LM18), l'insegnamento fornisce strumenti formali adatti a descrivere senza ambiguità concetti e proprietà necessari negli ambiti in cui opera un informatico: quello informale, tipico di contesti in cui si interagisce con persone in fase progettuale, e quello più rigido e formale, tipico del contesto implementativo, operando su sistemi informatizzati. 

The course is among those freely selectable. In line with the specific educational objectives of the Computer Science degree program (LM18), the course provides formal tools suitable for unambiguously describing concepts and properties necessary in the areas where a computer scientist operates: the informal one, typical of contexts in which interaction with people occurs during the design phase, and the more rigid and formal one, typical of the implementation context in which work is carried out on computerized systems.

Oggetto:

Risultati dell'apprendimento attesi

CONOSCENZA E CAPACITÀ DI COMPRENSIONE. La conoscenza è relativa a: (A) principali modelli per il calcolo proposizionale (classico, intuizionsta, à la Kripke, ...); (B) algoritmi di soddisfacibilità e strumenti che li implementano; (C) sistemi deduttivi, relative proprietà e strumenti che implementano sistemi deduttivi. La capacità di comprensione riguarderà: (A) lettura, interpretazione e sintesi di formule di calcoli proposizionalo, in accordo con i vari modelli proposti; (B) motivi per cui dimostrazioni di proprietà di algoritmi di soddisfacibilità e sistemi deduttivi sono rilevanti e perché esse valgono.

CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE. Si realizzano, sapendo costruire manualmente, o in maniera semi-automatica, tramite gli strumenti opportuni, dimostrazioni o esercizi specfici di formalizzazione, usando algoritmi di soddisfacibilità e sistemi deduttivi in accordo con semantiche note.

AUTONOMIA DI GIUDIZIO. Si esercita maturando conoscenza, capacità di comprensione e applicazione di algoritmi di soddisfacibilità  o sistemi deduttivi, semantiche e proprietà associate, col fine di modellare requisiti relativi al funzionamento di sistemi informatizati. 

ABILITÀ COMUNICATIVE. Si realizzano, innalzando l'abilità media nel descrivere proprietà di sistemi informatizzati, o algoritmi, tramite formule logiche, algoritmi o sistemi deduttivi associati.

CAPACITÀ DI APPRENDIMENTO. Si realizza e migliora come conseguenza della sollecitazione mentale che deriva dal dover descrivere proprietà di sistemi informatizzati, o algoritmi, tramite formule logiche, algoritmi di soddisfacibilità e sistemi deduttivi associati, in accordo con la semantica intesa.

KNOWLEDGE AND UNDERSTANDING. Knowledge relates to: (A) Main models for propositional calculus (classical, intuitionistic, à la Kripke, ...); (B) Satisfiability algorithms and tools that implement them; (C) Deductive systems, their properties, and tools that implement deductive systems. Understanding skills will concern: (A) Reading, synthesys and interpretation of propositional calculus formulas in accordance with the various proposed models; (B) Reasons why proofs of propertis of satisfiability algorithms and deductive system are relevant and valid.

ABILITY TO APPLY KNOWLEDGE AND UNDERSTANDING. Developed by manually constructing or semi-automatically using appropriate tools, proofs, or specific formalization exercises, employing satisfiability algorithms and deductive systems in accordance with known semantics.

AUTONOMY OF JUDGMENT. Practiced by gaining knowledge, understanding, and application of satisfiability algorithms or deductive systems, semantics, and associated properties, with the aim of modeling requirements related to the functioning of computerized systems.

COMMUNICATION SKILLS. Enhanced by improving the ability to describe properties of computerized systems or algorithms through logical formulas, algorithms, or associated deductive systems.

LEARNING ABILITY. Developed and improved as a result of the mental stimulation derived from describing properties of computerized systems or algorithms through logical formulas and associated satisfiability algorithms or deductive systems in accordance with the intended semantics.

Oggetto:

Programma

Allineamento su concetti base: sintassi e semantica di Calcolo Proposizionale Classico.

Parte I

  • Calcolo Proposizionale Classico e Procedure di Decisione: introduzione agli algoritmi come DPLL (Davis-Putnam-Logemann-Loveland) e CDCL (Conflict-Driven Clause Learning); pratica con applicazioni reali tramite SAT solver (ad esempio, MiniSAT);
  • Calcolo Proposizionale Classico e Teoria (Strutturale) della Dimostrazione: studio di sistemi come il sistema di sequenti LK; dimostrazione delle principali proprietà (come correttezza e completezza) e pratica con strumenti come Rocq (ex Coq)/LEAN.

Parte II

  • Dai Proof Assistant al Calcolo Proposizionale Intuizionista: approfondimento della teoria strutturale della dimostrazione, con focus su sistemi come Gentzen-style LJ, integrati con semantica costruttiva; principali proprietà;
  • Corrispondenza Curry-Howard: esplorazione dell'equivalenza fra tipi e prove nell'ambito della logica intuizionista.

Parte III

  • Dal Calcolo Proposizionale Classico alle Logiche Modali:
    • Sistemi deduttivi principali come il sistema di sequenti K (o S4) per calcoli proposizionali modali;
    • Introduzione alla semantica di Kripke per interpretare le logiche modali.


Alignment on basic concepts: syntax and semantics of Classical Propositional Calculus.

Part I

  • Classical Propositional Calculus and Decision Procedures: Introduction to algorithms such as DPLL (Davis-Putnam-Logemann-Loveland) and CDCL (Conflict-Driven Clause Learning); practical applications using SAT solvers (e.g., MiniSAT);
  • Classical Propositional Calculus and (Structural) Proof Theory: Study of systems like the sequent calculus LK; demonstration of key properties (such as soundness and completeness) and practice using tools like Rocq (formerly Coq) or LEAN.

Part II

  • From Proof Assistants to Intuitionistic Propositional Calculus: Exploration of structural proof theory, focusing on systems like Gentzen-style LJ, integrated with constructive semantics; key properties;
  • Curry-Howard Correspondence: Examination of the equivalence between types and proofs in the context of intuitionistic logic.

Part III

  • From Classical Propositional Calculus to Modal Logics:
    • Key deductive systems, such as the sequent systems K (or S4) for modal propositional calculus;
    • Introduction to Kripke semantics to interpret modal logics.
Oggetto:

Modalità di insegnamento

Le lezioni saranno tradizionali, tendenzialmente organizzate con l'illustrazione di esempi motivanti, dei concetti formali che generalizzano gli esempi, per quanto possibile, accompagnati da descrizioni intuitive, e da esperimenti su strumenti adatti.

The lessons will be traditional, generally organized with the illustration of motivating examples, formal concepts that generalize the examples—where possible—accompanied by intuitive descriptions and experiments using suitable tools.

Oggetto:

Modalità di verifica dell'apprendimento

 

Esame scritto in presenza. I compiti saranno costituiti da domande relative ai contenuti del programma didattico: (i) teoremi e parti di dimostrazioni; (ii) definizioni di algoritmi, loro simulazione e proprietà; (iii) esercizi relativi ai concetti chiave sviluppati.

Written in-person exam. The tasks will consist of questions related to the course syllabus: (i) theorems and parts of proofs; (ii) definitions of algorithms, their simulation, and properties; (iii) exercises on the key concepts developed.

 

 

Testi consigliati e bibliografia



Oggetto:
Libro
Titolo:  
Logic in Computer Science: Modelling and Reasoning about Systems (2nd)
Anno pubblicazione:  
2004
Editore:  
Cambridge University Press
Autore:  
Huth, M. and Ryan, M.
ISBN  
Note testo:  
Materiale a cura del docente verra distribuito nella pagina moodle del corso.
Obbligatorio:  
No


Oggetto:
Libro
Titolo:  
Basic Proof Theory (2nd)
Anno pubblicazione:  
2000
Editore:  
Cambridge University Press
Autore:  
A. S. Troelstra e H. Schwichtenberg
ISBN  
Obbligatorio:  
No


Oggetto:
Libro
Titolo:  
Decision Procedures: An Algorithmic Point of View (2nd)
Anno pubblicazione:  
2016
Editore:  
Springer
Autore:  
D. Kroening e O. Strichman
ISBN  
Obbligatorio:  
No
Oggetto:

Altre possibili risorse bibliografiche

  • M. Ben-Ari. Mathematical Logic for Computer Science. 3rd. Springer London, 2012 (e-book disponibile su https://unito.on.worldcat.org/discovery)
  • R. Bornat. Proof and Disproof in Formal Logic: An Introduction for Programmers. Oxford: Oxford University Press, 2005 (cartaceo disponibile su https://unito.on.worldcat.org/discovery)
  • J. P. Bowen, Z. Liu e Z. Zhang, cur. Engineering Trustworthy Software Systems. Springer, 2019. SETSS (International school 2018: Chongqing, China) (e-book disponibile su https://unito.on.worldcat.org/discovery)
  • R. Fagin, J. Y. Halpern, Y. Moses e M. Y. Vardi. Reasoning About Knowledge. Cambridge, MA: The MIT Press, 2003 (cartaceo disponibile su https://unito.on.worldcat.org/discovery)
  • J.-Y. Girard. Proofs and Types. Trad. da P. Taylor e Y. Lafont. Cambridge University Press, 1989 (pdf disponibile a https://www.paultaylor.eu/stable/prot.pdf)
  • A. Indrzejczak. Sequents and Trees: An Introduction to the Theory and Applications of Propositional Sequent Calculi. Studies in Universal Logic. Birkhäuser, 2021. (e-book disponibile su https://unito.on.worldcat.org/discovery)
  • S. Negri e J. von Plato. Structural Proof Theory. Appendix by Aarne Ranta. Cambridge: Cambridge University Press, 2001 (e-book disponibile su https://unito.on.worldcat.org/discovery)
  • A.Wasilewska. Logics for Computer Science: Classical and Non-Classical.
    Berlin, Heidelberg: Springer, 2018 (disponibile su https://www3.cs.stonybrook.edu/~cse541/sbook.pdf)


Oggetto:
Ultimo aggiornamento: 06/06/2025 15:46
Location: https://magistrale.informatica.unito.it/robots.html
Non cliccare qui!