Print this page

Fausto Giunchiglia

fausto [ at ] disi.unitn.it
Alessandro Agostini

agostini [ at ] disi.unitn.it
Vincenzo Maltese

maltese [ at ] disi.unitn.it
Rui Zhang

zhang [ at ] disi.unitn.it


The goal of this course is to provide motivations, definitions and techinques in support of the usefulness of logic in the effective and efficient modeling of data and knowledge.

The course will have succeeded if it stimulates the interested students to continue their career with higher interest into logic-based models for data and knowledge representation in their own field of expertise, and to produce computer-processable solutions of relevant problems.


The use of logic in computer science is very well-documented. The exponential increase of literature on every area of computer science has forced both definition and use of logical formalisms for knowledge representation and reasoning into greater complexity, and this complexity has in turn necessitated a deeper study of the principles by which logical models may be constucted. It has become more and more apparent, say since the 1989' First International Conference on the Principles of Knowledge Representation and Reasoning (KR-89), that knowledge representation models and reasoning models are only different views of the same common problem.

Different logic-based approaches to data and knowledge representation and reasoning are beginning to converge. It seems therefore useful to try to accelerate this process by trying to provide a survey, as uniform as possible presentation of the whole problem of logic-based modeling of data and knowlege, treating the subject on general theoretical lines, yet filled in with practical examples from real-world scenarios, problems and applications, with a particular attention paid to the borderlines and inter-relationships among all logics presented.

There is as yet no unified theory of logic-based models for data and knowledge representation, and a good deal of practical systems and working devices are not logic-based in their design foundation and unsullied by any logical model. There is nevertheless a real need for the subject to be looked at as a whole.


Mathematical logic knowledge at the undergraduate graduate level is strongly recommended. The prerequisite topics are covered, for example, by the course "Mathematical logic" of the first year of the Master Program in Computer Science.

The course provides the necessary definitions, properties and examples, as well as pointers to the suggested background readings. The ability to follow and appreciate abstract arguments is encouraged.


  1. Data, Knowledge, Representation, Logics.
  2. From world to models.
  3. The Logic of Propositions
  4. The Logic of Classes.
  5. Application: Lightweight ontologies and matching.
  6. The Logic of Predicates.
  7. Application: Querying of databases.
  8. The Logic of Descriptions.
  9. Application: Ontology modeling.
  10. Application: OWL.
  11. Application: Security.
  12. Application: Query-answering
  13. The Logic of Defaults.
  14. Application: Inheritance Hierachies.
  15. The Logic of Contexts.
  16. Application: C-OWL.
  17. Conclusions and thesis proposals.


Formal lectures with lots of examples and exercises will be held twice a week on Tuesdays and Thursdays for 1.5 hours according to the scheduling above. You are responsible for material presented in lectures, including oral comments made by the lecturers.

The course encourages and increases the opportunities for students to be involved in research under the guidance of the lecturers. As soon as our LDKR Web 2.0 platform has been activated (see below), the course actively engages students in learning opportunities provided by adding extra-contents like examples, questions and exercises on the course's topics.


All material presented in class will be available through handouts. Most handouts (i.e., lectures notes or 6 pages per sheet slides' layout) will be made available on the server in formats suitable for printing. Students should download and print out the handouts from this site---please see the links in the course. We will post the material a few days after each lecture, if not stated otherwise.



A list of suggested readings (e.g. chapters in advanced/reference textbooks and collections, and research papers) will be available as the course proceeds.


A list of web resources will be available as the course proceeds.


The exam consists of various written exercises and tests. An exercise can be: a "yes/no" question, proving some simple properties, formalizing an informal specification, and so on. There is also an optional oral examination, which starts from a discussion of the written exam.