<- Archives UCL - Programme d'études ->



Discrete mathematics: logical foundations of computing science [ LINGI1101 ]


4.0 crédits ECTS  30.0 h + 30.0 h   1q 

Teacher(s) Van Lamsweerde Axel ;
Language French
Place
of the course
Louvain-la-Neuve
Online resources http://www.icampus.ucl.ac.be/claroline/course/index.php?cid=INGI1101
Prerequisites
  • Elementary discrete mathematics (functions, sets, ...)
  • Use of different techniques of mathematical proof

as provided by the courses FSAB1101, MAT1111 and SINF1250.

Main themes
  • Introduction to mathematical logic: propositional logic, predicate logic; first-order theories.
  • Reasoning mechanisms: resolution, rewriting, induction on well-founded sets.
  • Discrete structures as first-order theories: equality, partial orders, lattices; nonnegative integers, tuples, lists, trees, sets, multisets, sequences, etc.
Aims

Students completing successfully this course will be able to

  • make good use of basic terminology for functions, relations and together and perform operations associated with these concepts in various concrete cases
  • apply the formalism of propositional logic and predicate to model and reason about various real life situations
  • describe the limitations and advantages of propositional logic and predicate logic, and choice the appropriate one for a given situation
  • master different techniques of proof (direct proof, proof by counterexample, proof by contradiction, mathematical induction) to identify and apply the most appropriate in a particular situation
  • exploit the link between on the one hand, mathematical induction and on the other hand, recursively defined structures and recursive programs in computer science to describe and reason about these programs and structures.

Students will have developed skills and operational methodology. In particular, they have developed their ability to

  • interpret rigorously the concepts to understand in depth a written document or to write themselves a document,
  • argue the use of rigor as a tool to avoid misinterpretation and detect errors in reasoning.
Evaluation methods
  • short test during the semester
  • written exam
Teaching methods
  • 2h of lecture / week
  • 2h of exercise sessions / week
Content
  • Preliminaries: sets, relations, and functions; formal systems.
  • Mathematical logic:
    • proposition calculus -- syntax, semantics, proof theory;
    • first-order predicate calculus -- syntax, semantics, proof theory, resolution and refutation;
    • first-order theories --models, consistency, inclusion, extension, etc.
  • Equational theories: equality, partial orders, lattices, groups.
  • Inductive theories: well-founded relations and the general induction principle. Basic inductive theories : nonnegative integers, tuples, lists, trees, sets, multisets, sequences, etc. Structure generators, systematic construction of axiomatisations, and inductive proofs of typical properties according to various induction rules (recurrence, complete induction, etc.).

Applications to various domains : program verification, specification of abstract data types, automated reasoning, expert systems, robotics, databases, parsing, etc.

Bibliography
  • textbook available to the student printing service
  • slides on icampus
Cycle et année
d'étude
> Bachelor in Mathematics
> Bachelor in Engineering
> Bachelor in Computer Science
Faculty or entity
in charge
> INFO


<<< Page précédente