Course Unit Profile

<--- Back to Course Diagram

Basic Information

Course Unit Title: INTRODUCTION TO LOGIC FOR PROGRAMMING

Course Unit Code: 009AA

Level of course unit

First Cycle (Laurea) Degree Programme in Computer Science

Year of study

First year

Semester when the course is delivered

First semester

Number of ECTS credits allocated: 6

Name of Lecturer(s):

Prof.: Francesca Levi
Email: francesca.levi@unipi.it

Prof.: Andrea Corradini
Email: andrea.corradini@unipi.it

Language of instruction

Italian

General Information

Learning outcomes

The target of the course is to introduce the basic elements of Mathematical Logic and its use to analyse the correctness of simle programs. The students will be familiar with the Propositional Calculus and First Order Logic, and their use in formalizing natural language statements. Besides they will master some formal proof techniques and be able to apply them to the verification of simple imperative programs via Hoare's triples.


Course contents

Introduction to Mathematical Logic and its relevance to programming.
Propositional Calculus and its proof techniques.
First Odr Predicate Calculus.
FOrmalizing natural language assertions.
Number ranges and related connectives.
Hoare's triples for a subset of the C language.

Specific Information

Prerequisites, co-requisites, as a prerequisite for further study

Prerequisites

None.

Co-requisites

None.

Prerequisite for

None.

Mode of delivery

Delivery

face to face

Attendance

Advised

Teaching methods

Learning activities

Recommended or required reading

Reading material provided by the instructor available at http://compass2.di.unipi.it/didattica/inf31/share/corsi/corso.asp?id=3813&cds=inf31&anno=2013

Assessment methods and criteria

Assessment methods

Assessment criteria

Work placement

No

<--- Back to Course Diagram