MAT 115 Logique et mathématiques discrètes

Documents pareils
Utilisation des tableaux sémantiques dans les logiques de description

Calculabilité Cours 3 : Problèmes non-calculables.

PLAN DE COURS. GPA750 Ordonnancement des systèmes de production aéronautique

Corps des nombres complexes, J Paul Tsasa

Informatique Machines à calculer en théorie et en pratique

Réalisabilité et extraction de programmes

Soutien technique en informatique

Le Collège de France crée une chaire pérenne d Informatique, Algorithmes, machines et langages, et nomme le Pr Gérard BERRY titulaire

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.

Cours 1 : La compilation

OPTION SCIENCES BELLE-ISLE-EN-TERRE

Fondements de l informatique Logique, modèles, et calculs

Dessin Technique GMEC1311. PROFESSEUR Gabriel Cormier, Ph.D. Bureau : 217G2 Tél : Courriel : gabriel.cormier@umoncton.ca

Évaluation et implémentation des langages

Logique. Plan du chapitre

MATHÉMATIQUES. Les préalables pour l algèbre MAT-P020-1 DÉFINITION DU DOMAINE D EXAMEN

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

Baccalauréat universitaire (bachelor) en mathématiques et sciences informatiques

PLAN DE COURS DÉPARTEMENT ÉLECTRONIQUE INDUSTRIELLE. TITRE DU COURS Ordinateur Outil RA 1-4-2

Présentation du Master Ingénierie Informatique et du Master Science Informatique , Année 2 Université Paris-Est Marne-la-Vallée

Logiciel Libre Cours 3 Fondements: Génie Logiciel

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

Conception des systèmes répartis

Bachelor Informatique et Systèmes de Communication

MRK A : Méthodes d Analyse de Données en Marketing Automne 2010

"Calcul et hyper-calcul"

Intelligence Artificielle et Robotique

Contribution aux rapports entre la logique combinatoire et les T[Σ]-algèbres.

Laboratoire 4 Développement d un système intelligent

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

PLAN DE COURS. Reconnaître le rôle des mathématiques ou de l informatique dans la société contemporaine (0011)

Indications pour une progression au CM1 et au CM2

Né le 13/06/1984 Russe Célibataire Langues : Russe, Anglais,

DESS Arts, création et technologies

Problèmes arithmétiques issus de la cryptographie reposant sur les réseaux

UFR d Informatique. FORMATION MASTER Domaine SCIENCES, TECHNOLOGIE, SANTE Mention INFORMATIQUE

Etudier Ailleurs. Présentation et réalisation: Caroline Gagnon. 19/02/2015 Etudier Ailleurs Canada par Caroline Gagnon

4.2 Unités d enseignement du M1

FICHE UE Licence/Master Sciences, Technologies, Santé Mention Informatique

Cours Composant 2. Qualité logicielle et spécications algébriques

Introduction aux Bases de Données

21 mars Simulations et Méthodes de Monte Carlo. DADI Charles-Abner. Objectifs et intérêt de ce T.E.R. Générer l'aléatoire.

Une forme générale de la conjecture abc

Informatique Générale

La persistance des nombres

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Vérification formelle de la plate-forme Java Card

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique

COLLÈGE D'ENSEIGNEMENT GÉNÉRAL ET PROFESSIONNEL BEAUCE-APPALACHES POLITIQUE RELATIVE À LA FORMATION GÉNÉRALE COMPLÉMENTAIRE

MASTER LPL : LANGUE ET INFORMATIQUE (P)

TP 1. Prise en main du langage Python

Solution A La Gestion Des Objets Java Pour Des Systèmes Embarqués

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies

Synthèse «Le Plus Grand Produit»

Chères collègues, chers collègues,

PLAN DE COMMUNICATION TACTIQUE COMM Faculté des lettres : Département d'information et de communication PLAN DE COURS

Le Master Mathématiques et Applications

ISFA INSTITUT DE SCIENCE FINANCIÈRE ET D ASSURANCES GRANDE ÉCOLE D ACTUARIAT ET DE GESTION DES RISQUES

Intelligence Artificielle Planification

ELEMENTS DE BUREAUTIQUE

Peut-on tout programmer?

Master de Recherche première année. Programme de cours

Maîtrise universitaire ès sciences en mathématiques

PLAN DE COURS CEGEP DU VIEUX-MONTRÉAL

Les formations de remise à niveau(!) l'entrée des licences scientifiques. Patrick Frétigné CIIU

MASTER (LMD) MODELISATION, OPTIMISATION, COMBINATOIRE ET ALGORITHME

Informatique et Société : une brève histoire

Ce cours introduit l'électrodynamique classique. Les chapitres principaux sont :

O, i, ) ln x. (ln x)2

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.

Formation des enseignants. Le tensiomètre. Objet technique modélisable issu de l environnement des élèves

CHARGÉE DE COURS : Catherine Pelletier, MBA, chargée de communication, Service des communications et des relations avec le milieu, FSA

Introduction au génie logiciel

Département Informatique

Programmes des classes préparatoires aux Grandes Ecoles

Etudier l informatique

Guide du/de la candidat/e pour l élaboration du dossier ciblé

Les bonnes pratiques d un PMO

ASR-2102 : Produits financiers: assurances et rentes

Raisonnement par récurrence Suites numériques


REFORME LMD SCIENCES APPLIQUEES & TECHNOLOGIES PROPOSEES PAR LA COMMISSION NATIONALE SECTORIELLE EN SCIENCES APPLIQUEES & TECHNOLOGIES

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

O b s e r v a t o i r e E V A P M. Taxonomie R. Gras - développée

Tâche complexe produite par l académie de Clermont-Ferrand. Mai 2012 LE TIR A L ARC. (d après une idée du collège des Portes du Midi de Maurs)

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

Guide du mémoire de fin d études

Chapitre 2 Le problème de l unicité des solutions

6. Les différents types de démonstrations

Résumé CONCEPTEUR, INTEGRATEUR, OPERATEUR DE SYSTEMES CRITIQUES

Inf IREM N 89 SOMMAIRE

Solutions de gestion de la sécurité Livre blanc

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Cours d algorithmique pour la classe de 2nde

C est quoi le SWAT? Les équipes décrites par James Martin s appellent SWAT : Skilled With Advanced Tools.

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

Polynômes à plusieurs variables. Résultant

1 Définition et premières propriétés des congruences

Faculté des Sciences Mathématiques, Physiques et Naturelles de Tunis

Transcription:

Département d informatique MAT 115 Logique et mathématiques discrètes Plan de cours Hiver 2016 Enseignant Horaire Martin Beaudry Courriel : Martin.Beaudry@USherbrooke.ca Local : D4-1010-9 Téléphone : (819) 821-8000 poste 62016 Site : http://www.usherbrooke.ca/informatique/personnel/professeurs/professeurs/martin-beaudry/ Disponibilité : flexible ; prendre rendez-vous par courriel. Exposé magistral : mercredi 10 h 30 à 12 h 20 salle D3-2039 vendredi 10 h 30 à 12 h 20 salle D3-2039 Description officielle de l activité pédagogique 1 Objectifs 1. Traduire des exigences exprimées en langue naturelle en une représentation formelle à l aide de la logique et des mathématiques discrètes. 2. Modéliser des systèmes discrets en utilisant la logique du premier ordre et les mathématiques discrètes. 3. Valider un modèle d un système en utilisant la preuve formelle et la vérification par exploration de modèles finis en utilisant des outils tels que Alloy, ProB ou Atelier B. 4. Prouver la correction de programmes impératifs simples à l aide du calcul des plus faibles préconditions de Dijkstra. 5. Prouver une formule de logique du premier ordre en utilisant un système formel d inférence comme la déduction naturelle et un outil pédagogique d apprentissage de la preuve comme Panda. 6. Prouver une formule de logique du premier ordre en utilisant une notation rigoureuse pour exprimer des preuves faites par un humain, comme par exemple la notation de Gries et Schneider. 7. Modéliser des langages simples à l aide d automates finis déterministes ou non déterministes. 8. Construire un automate fini déterministe à partir d un d automate fini non déterministe. 9. Construire l automate fini déterministe minimal correspondant d un automate fini déterministe. 1. http ://www.usherbrooke.ca/fiches-cours/mat115 30 novembre 2015 1

Contenu Logique propositionnelle et logique des prédicats du premier ordre: syntaxe, sémantique, règles d inférence (déduction naturelle), preuve formelle, axiome, théorème, théorie. Axiomatisation de l arithmétique de base (axiomes de Peano: successeur, addition, plus petit) afin d illustrer le concept de preuve formelle. Preuve de propriétés simples en utilisant les techniques usuelles: induction, contraposée, contradiction. Notation rigoureuse pour présenter des preuves faites à la main (par opposition aux preuves formelles effectuées par un prouveur automatisé). Mathématiques discrètes: ensemble, relation, fonction, séquence : opérateurs, propriétés. Modélisation de systèmes à l aide de la logique et des mathématiques discrètes en utilisant une méthode outillée telle que B ou Alloy; étude de cas dans différents domaines tels que les bases de données relationnelles, les systèmes critiques simples et les systèmes de contrôle de procédés. Validation de modèle de systèmes discrets: animation de modèles, spécification et vérification de propriétés (invariant, impasse) à l aide d outils tels que ProB et Alloy. Distinction entre preuve et vérification par modèle. Automates finis déterministes et non déterministes, traduction d un automate non déterministe en un automate déterministe, minimisation d un automate. Crédits 3 Organisation 2 heures d exposé magistral par semaine 2 heure d exercices par semaine 5 heures de travail personnel par semaine Préalable aucun Particularités Cette activité pédagogique se présente sous la forme d un cours magistral avec des séances de laboratoire qui permettront l utilisation d outils basés sur la logique et les mathématiques discrètes. 1 Présentation Cette section présente les objectifs spécifiques et le contenu détaillé de l activité pédagogique. Cette section, non modifiable sans l approbation d un comité de programme du Département d informatique, constitue la version officielle. 1.1 Mise en contexte La logique est au centre du développement des sciences et du bon fonctionnement de la société en général. L humain est capable de raisonnement, c est-à-dire de déduire des faits ou de nouvelles connaissances, à partir d autres faits. On qualifie d esprit logique une personne capable d agir avec cohérence et rigueur, de raisonner correctement. Les mathématiques constituent le langage commun des sciences, et la logique est le fondement des mathématiques. L informatique a été fondée dans les années 30 en tenant de résoudre un problème fondamental de la logique, proposé par Hilbert et Ackermann en 1928, soit de déterminer si une formule quelconque est un théorème. Ce problème a été résolu par Alonzo Church et Alan Turing, de manière indépendante, en 1935 et 1936. Ils ont démontré que cela était impossible en général. Ces travaux ont nécessité le développement de la notion d algorithme et d ordinateur, sous la forme de la machine de Turing (par Turing) et du lambda calcul (par Church et Kleene). La logique date d Aristote, mais sa version moderne date de la fin du 19 ième au début du 20 ième siècle. Ses pionniers furent Boole, De Morgan, Frege, Peano, Peirce, Whitehead, Russell, Hilbert, Ackermann, Gödel, ainsi que plusieurs autres. La logique permet principalement deux choses, soit d exprimer de manière formelle des faits, et de déduire de manière formelle de nouveaux faits. La logique est utilisée dans tous les domaines de l informatique. Tous les langages de programmation utilisent les connecteurs (c est-à-dire opérateurs) de la logique propositionnelle. Les méthodes les plus avancées pour déterminer la correction d un logiciel (c est-à-dire vérifier qu un logiciel fait bien ce qu il est supposé faire, vérifier qu un logiciel est correct, vérifier qu un logiciel ne contient pas de faute (bug)) sont fondées sur la logique. Les logiciels contrôlent maintenant une foule d objets comme des trains, des avions, des autos, des centrales nucléaires, des stimulateurs cardiaques, des appareils de radiologie. Une erreur dans ces logiciels peut entraîner des conséquences dramatiques pour les humains et l environnement. L étude de leur correction est primordiale. Cela ne serait possible sans la logique. Les opérations les plus élémentaires d un ordinateur (opérations arithmétiques) sont 30 novembre 2015 2

exprimées en logique propositionnelle. Le fonctionnement de base d un ordinateur est fondée sur l algèbre de Boole, qui est essentiellement la même chose que la logique propositionnelle. Une algèbre permet de faire des calculs, c està-dire appliquer des opérateurs à des opérandes. La logique permet aussi de faire des calculs, comme déterminer si une formule est vrai ou fausse pour une interprétation donnée, mais aussi de déduire de nouvelles formules. 1.2 Objectifs spécifiques À la fin de cette activité pédagogique, l étudiante ou l étudiant sera capable : 1. de traduire des exigences exprimées en langue naturelle en une représentation formelle à l aide la logique et des mathématiques discrètes; 2. de modéliser des systèmes discrets en utilisant la logique du premier ordre et les mathématiques discrètes; (a) modéliser les données d un état en utilisant des ensembles, des relations, des fonctions et des séquences; (b) modéliser les contraintes sur les données d un état (invariant) en utilisant la logique du premier ordre; (c) modéliser les transitions d un système à l aide de préconditions, postconditions ou substitutions généralisées exprimées en logique du premier ordre; 3. de valider un modèle d un système en utilisant la preuve formelle et la vérification par exploration de modèles finis en utilisant des outils tels que Alloy, ProB ou Atelier B; (a) illustrer la structure d un état; (b) illustrer le graphe de transition d un système; (c) vérifier les propriétés des états d un système; (d) vérifier les propriétés des transitions d un système; (e) comprendre la notion de contre-exemple invalidant une propriété; (f) comprendre la relation entre un invariant, une precondition et une postcondition; 4. de comprendre la distinction entre une preuve formelle et une vérification par exploration de modèles finis; 5. de prouver la correction de programmes impératifs simples à l aide du calcul des plus faibles préconditions de Dijkstra; 6. de prouver une formule de logique du premier ordre en utilisant un système formel d inférence comme la déduction naturelle et un outil pédagogique d apprentissage de la preuve comme Panda; 7. de prouver une formule de logique du premier ordre en utilisant une notation rigoureuse pour exprimer des preuves faites par un humain, comme par exemple la notation de Gries et Schneider; 8. de modéliser des langages simples à l aide d automates finis déterministes ou non déterministes, de construire un automate fini déterministe à partir d un d automate fini non déterministe et de construire l automate fini déterministe minimal à partir d un d automate fini déterministe. 30 novembre 2015 3

2 Organisation Cette section propre à l approche pédagogique de chaque enseignante ou enseignant présente la méthode pédagogique, le calendrier, le barème et la procédure d évaluation ainsi que l échéancier des travaux. Cette section doit être cohérente avec le contenu de la section précédente. 2.1 Méthode pédagogique Une semaine comporte quatre heures de présence en classe réparties en deux heures de cours magistral et deux heures d exercices en classe ou en laboratoire. Cependant, les proportions pourront varier d une semaine à l autre, de manière à ce que les exercices soient synchronisés avec le contenu enseigné. 2.2 Calendrier Semaines Thèmes Évaluations 1 6 et 8 janvier 1-2 2 13 et 15 2 3 20 et 22 2 devoir 4 29 2 5 3 et 5 février 3 devoir 6 10 et 12 3 7 17 et 19 3 devoir 8 examen périodique 9 9 et 11 mars 4 10 16 et 18 4 devoir 11 23 5 12 30 et 1 avril 5 devoir 13 6 et 8 5 14 13 et 15 5 devoir 15 16 examen final 2.3 Évaluation devoirs 30 % examen intra 35 % examen final 35 % Conformément aux règlementations universitaire et facultaire, tout texte soumis pour fins d évaluation pourra être pénalisé jusqu à concurrence de 5% de la note maximale s il est rédigé dans un français incorrect. Par ailleurs, les correcteurs pourront refuser de considérer un texte si la qualité de la présentation ou du français est jugée inacceptable. Directives particulières : Toute situation de plagiat sera traitée en conformité, entre autres, avec l article 8.1.2 du Règlement des études de l Université de Sherbrooke disponible à l adresse http://www.usherbrooke.ca/programmes/references/reglement On trouvera en annexe un document d information relatif à l intégrité intellectuelle qui fait état de l article 8.1.2. 30 novembre 2015 4

2.4 Échéancier des travaux Les directives, la date de remise et le barème relatifs aux devoirs seront connus à la remise de l énoncé de chaque devoir aux étudiantes ou aux étudiants. Les travaux remis par courriel ne seront pas considérés. La remise des devoirs s effectue au jour et à l heure spécifiés. Les travaux remis en retard ne seront pas corrigés et recevront automatiquement la note zéro. 3 Références [1] J.-R. Abrial. The B-book : Assigning Programs to Meanings. Cambridge University Press, New York, NY, USA, 1996. Manuel disponible à la bibliothèque. [2] F. Baril Boudreau, B. Fraikin, M. Frappier, and R. St-Denis. Apprentissage de la logique et des mathématiques discrètes à l aide de ALLOY. Département d informatique, Université de Sherbrooke, 2012. Manuel disponible sur le Web : http://info.usherbrooke.ca/mat115/. [3] D. Gries and F. B. Schneider. A Logical Approach to Discrete Math. Springer-Verlag New York, Inc., New York, NY, USA, 1993. Manuel disponible à la bibliothèque. [4] Daniel Jackson. Software Abstractions : Logic, Language, and Analysis. The MIT Press, 2012. Manuel disponible à la bibliothèque. [5] R. Lalement. Logique, réduction, résolution. Masson, Paris, 1990. [6] K. H. Rosen. Discrete Mathematics and Its Applications, Fourth Edition. McGraw-Hill, 1999. Manuel disponible à la bibliothèque. [7] T. A. Sudkamp. Languages and Machines : An Introduction to the Theory of Computer Science, Third Edition. Addison Wesley, 2005. Manuel disponible à la bibliothèque. 30 novembre 2015 5