Logique des prédicats

Documents pareils
Chapitre 2. Eléments pour comprendre un énoncé

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

Logique : ENSIIE 1A - contrôle final

Bases de données Cours 5 : Base de données déductives

Systèmes décisionnels et programmation avancée

Huitième partie VIII. Logique du premier ordre. Plan. En bref... Avantages et inconvénients de la logique propositionnelle. Avantages.

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Initiation à la Programmation en Logique avec SISCtus Prolog

Présentation du langage et premières fonctions

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

1ère partie Nadine Cullot. Bases de données déductives. Bases de données déductives Introduction et Motivation

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Chapitre I Notions de base et outils de travail

3. Conditionnement P (B)

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

3 Approximation de solutions d équations

C2i Niveau 1 Enoncé Activité 1 UPJV

Géométrie dans l espace Produit scalaire et équations

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

TP3 : Manipulation et implantation de systèmes de fichiers 1

Université de Sherbrooke, Département d informatique

Logique. Plan du chapitre

UNIVERSITÉ DU QUÉBEC EN OUTAOUAIS VÉRIFICATION ET ANALYSE DES POLITIQUES DE CONTRÔLE D ACCÈS : APPLICATION AU LANGAGE XACML

Formes quadratiques. 1 Formes quadratiques et formes polaires associées. Imen BHOURI. 1.1 Définitions

Cours Premier semestre

CNAM UE MVA 210 Ph. Durand Algèbre et analyse tensorielle Cours 4: Calcul dierentiel 2

Structures algébriques

Fonctions de deux variables. Mai 2011

Les structures de données. Rajae El Ouazzani

La mémoire. Un ordinateur. L'octet. Le bit

(51) Int Cl.: H04L 29/06 ( ) G06F 21/55 ( )

Langage SQL : créer et interroger une base

Générer du code à partir d une description de haut niveau

Créer et modifier un fichier d'import des coordonnées approximatives avec Excel

Étude des Corrélations entre Paramètres Statiques et Dynamiques des Convertisseurs Analogique-Numérique en vue d optimiser leur Flot de Test

OM 1 Outils mathématiques : fonction de plusieurs variables

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

Algorithmique des Systèmes Répartis Protocoles de Communications

STI 20 Édition 3 /Novembre 2002

Espérance conditionnelle

Premiers pas avec Mathematica

Equations différentielles linéaires à coefficients constants

Gnuplot. Chapitre Lancer Gnuplot. 3.2 Options des graphes

Java Licence Professionnelle CISII,

Différentiabilité ; Fonctions de plusieurs variables réelles

Utilisation des tableaux sémantiques dans les logiques de description

Programmes des classes préparatoires aux Grandes Ecoles

Notes du cours MTH1101 Calcul I Partie II: fonctions de plusieurs variables

STAGE IREM 0- Premiers pas en Python

Machines virtuelles Cours 1 : Introduction

Fonctions de plusieurs variables et applications pour l ingénieur

Intelligence artificielle appliquée à l automatique

F7n COUP DE BOURSE, NOMBRE DÉRIVÉ

Introduction au Data-Mining

Une situation d'apprentissage du lexique en MS Les activités gymniques

Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34

Cours de Programmation Impérative: Zones de mémoires et pointeurs

Amphi 3: Espaces complets - Applications linéaires continues

Exercices sur les interfaces

Physique Chimie. Utiliser les langages scientifiques à l écrit et à l oral pour interpréter les formules chimiques

Analyse stochastique de la CRM à ordre partiel dans le cadre des essais cliniques de phase I

L informatique en BCPST


Attestation de maîtrise des connaissances et compétences au cours moyen deuxième année

Cours No 3 : Identificateurs, Fonctions, Premières Structures de contrôle.

Conception des systèmes répartis

Cours de C++ François Laroussinie. 2 novembre Dept. d Informatique, ENS de Cachan

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

BAREME sur 40 points. Informatique - session 2 - Master de psychologie 2006/2007

Introduction. Mathématiques Quantiques Discrètes

Indications pour une progression au CM1 et au CM2

MEMOIRE. Présenté à. L École Nationale d Ingénieurs de Sfax. en vue de l obtention du MASTERE

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

Du bon usage de gnuplot

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

Chap17 - CORRECTİON DES EXERCİCES

8.1 Généralités sur les fonctions de plusieurs variables réelles. f : R 2 R (x, y) 1 x 2 y 2

Université Paris-Dauphine DUMI2E 1ère année, Applications

Quantification Scalaire et Prédictive

TP 1. Prise en main du langage Python

Etudier l influence de différents paramètres sur un phénomène physique Communiquer et argumenter en utilisant un vocabulaire scientifique adapté

VÉRIFICATION DES SYSTÈMES À PILE AU MOYEN DES ALGÈBRES DE KLEENE

Stage : "Développer les compétences de la 5ème à la Terminale"

I- Définitions des signaux.

4.2 Unités d enseignement du M1

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

Brique BDL Gestion de Projet Logiciel

EES : Engineering Equation Solver Fiche récapitulative - Marie-Sophie Cabot

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

Présentation du cours de mathématiques de D.A.E.U. B, remise à niveau

AVENIR EMPRUNTEUR. Etude Personnalisée. Caractéristiques du (des) prêt(s) Cotisations ASSURE 1 ASSURE 2. Votre conseiller

TP 1 Prise en main de l environnement Unix

Aide - mémoire gnuplot 4.0

Transcription:

Logique des prédicats MLO Catherine Dubois, Julien Narboux (Strasbourg) Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 1/40

Introduction Soit le syllogisme de Socrate suivant : Tous les hommes sont mortels Socrate est un homme donc Socrate est mortel Si on modélise ceci en logique des propositions, on arrive à p q r avec p la variable propositionnelle qui représente Tous les hommes sont mortels q la variable propositionnelle qui représente Socrate est un homme et r la variable propositionnelle qui représente Socrate est mortel La proposition p q r n est évidemment pas toujours vraie... = la logique des proposiitons n est pas assez fine pour rendre compte de ce raisonnement = logique des prédicats ou logique du 1er ordre Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 2/40

Mettre en évidence ce qui est commun entre les 3 propositions : être mortel et être un homme. Ce sont les atomes, les briques de base du langage. Socrate est un objet qui a la propriété d être un homme et d être mortel. Il faut aussi un moyen de parler de tous : énoncer une propriété pour tous les objets quantificateur universel On arrive à la formalisation suivante : ( x, homme(x) mortel(x)) homme(socrate) mortel(socrate) Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 3/40

Volet Syntaxe Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 4/40

Syntaxe ou Comment écrire une formule de la logique des prédicats? Plus compliqué qu en logique des prédicats. On doit d abord fixer de quoi on veut parler : comment on va construire les objets dont on parle? quelles sont les proporiétés de base que l on pourra utiliser? Notion de langage ou de signature Puis on pourra construire la notion de terme et enfin définir la notion de formule ou de prédicat. Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 5/40

Signature Une signature (ou langage) est composée de: un ensemble F de symboles de fonctions munies de leur arité un ensemble R de symboles de relations munies de leur arité un ensemble dénombrable de variables V (parfois hors de la signature) Arité = nombre d arguments. Remarque : une constante est un symbole de fonction d arité 0 Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 6/40

Signature Une signature (ou langage) est composée de: un ensemble F de symboles de fonctions munies de leur arité un ensemble R de symboles de relations munies de leur arité un ensemble dénombrable de variables V (parfois hors de la signature) Arité = nombre d arguments. Remarque : une constante est un symbole de fonction d arité 0 Exemple du syllogisme de Socrate : On a deux symboles de relation d arité 1 : homme et mortel et une constante Socrate. Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 6/40

Terme Soit Σ une signature. L ensemble des Σ-termes (ou plus simplement termes) l ensemble défini inductivement par les règles suivantes: si x est une variable, alors x est un terme ; si f est un symbole de fonction d arité n (dans Σ) et si t 1,...,t n sont des termes, alors f (t 1, t 2,...,t n )estunterme. Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 7/40

Terme Soit Σ une signature. L ensemble des Σ-termes (ou plus simplement termes) l ensemble défini inductivement par les règles suivantes: si x est une variable, alors x est un terme ; si f est un symbole de fonction d arité n (dans Σ) et si t 1,...,t n sont des termes, alors f (t 1, t 2,...,t n )estunterme. Quand on écrit f (t 1, t 2,...,t n ), on sous-entend (sauf mention contraire) que f a la bonne arité (soit n). Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 7/40

Terme Soit Σ une signature. L ensemble des Σ-termes (ou plus simplement termes) l ensemble défini inductivement par les règles suivantes: si x est une variable, alors x est un terme ; si f est un symbole de fonction d arité n (dans Σ) et si t 1,...,t n sont des termes, alors f (t 1, t 2,...,t n )estunterme. Quand on écrit f (t 1, t 2,...,t n ), on sous-entend (sauf mention contraire) que f a la bonne arité (soit n). La notation infixe est parfois préférée : on écrit x + y au lieu de +(x, y). Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 7/40

Terme Soit Σ une signature. L ensemble des Σ-termes (ou plus simplement termes) l ensemble défini inductivement par les règles suivantes: si x est une variable, alors x est un terme ; si f est un symbole de fonction d arité n (dans Σ) et si t 1,...,t n sont des termes, alors f (t 1, t 2,...,t n )estunterme. Quand on écrit f (t 1, t 2,...,t n ), on sous-entend (sauf mention contraire) que f a la bonne arité (soit n). La notation infixe est parfois préférée : on écrit x + y au lieu de +(x, y). Un terme peut être vu comme un arbre Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 7/40

Formule L ensemble des Σ-formules (ou formules ou encore prédicats) l ensemble défini inductivement par les règles suivantes: si p un symbole de prédicat d arité n (dans Σ) et si t 1,...,t n sont n termes, alors p(t 1, t 2,...,t n ) est une formule (atomique) ; est une formule ; si F est une formule alors F est une formule; si F 1 et F 2 sont des formules alors F 1 F 2, F 1 F 2, F 1 F 2 sont des formules; si x est une variable et F est une formule, alors x, F et x, F sont des formules. et sont appelés des quantificateurs. Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 8/40

Formule L ensemble des Σ-formules (ou formules ou encore prédicats) l ensemble défini inductivement par les règles suivantes: si p un symbole de prédicat d arité n (dans Σ) et si t 1,...,t n sont n termes, alors p(t 1, t 2,...,t n ) est une formule (atomique) ; est une formule ; si F est une formule alors F est une formule; si F 1 et F 2 sont des formules alors F 1 F 2, F 1 F 2, F 1 F 2 sont des formules; si x est une variable et F est une formule, alors x, F et x, F sont des formules. et sont appelés des quantificateurs. La quantification ne porte que sur les variables (objets du discours). En logique du second ordre ou d ordre supérieur, on peut quantifier sur les fonctions et les relations. Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 8/40

Les priorités ont les mêmes qu en logique des propositions en ce qui concerne les connecteurs. On a donc par ordre de priorité décroissante : les symboles de relations la négation, les quantificateurs et ou implique Ainsi x, F G C D s interpète comme (( x, F ) G) (( C) D) Rappel : est associatif à droite : F G H s interprète comme F (G H) Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 9/40

Variables libres/variables liées La présence des quantificateurs pose des problèmes relatifs au nom des variables. Une variable est dite liée quand le nom que l on utilise pour définir un objet n a pas d importance. x, x.y = y.x alemêmesens z, z.y = y.z Les deux formules sont les mêmes au renommage près des variables quantifiées : variables liées Mais x, x.y = y.x n a pas le même sens que x, x.t = t.x 1ère formule : propriété sur y, la 2ème une propriété sur t. Ces deux variables ne sont pas introduites par un quantificateur : variables libres Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 10 / 40

Variables libres/variable liées Une même variable peut être liée et libre dans une formule, ou plus exactement elle peut avoir des occurrences libres et des occurrences liées. une occurrence d une variable = un endroit où la variable apparaît dans la formule (sauf derrière un quantificateur) ( x, R(x)) P(x) occurrence liée de x occurrence libre de x On dit qu une variable est libre dans une formule si elle possède au moins une occurrence libre dans cette formule. On dit qu une variable est liée dans une formule si toutes les occurrences de la variable dans la formule sont liées. Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 11 / 40

Variables libres/variable liées Variables libres d un terme FV (t) =ensembledesvariableslibresdet =ensembledesvariablesqui apparaissent dans t (FV comme free variables) FV (x) = {x} FV (f (t 2, t 2,...,t n )) = FV (t 1 ) FV (t 2 )... FV (t n ) Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 12 / 40

Variables libres/variable liées Variables libres d une formule FV (p(t 1, t 2,...,t n )) = FV (t 1 ) FV (t 2 )... FV (t n ) FV ( A) = FV (A) FV (A B) = FV (A) FV (B) FV (A B) = FV (A) FV (B) FV (A B) = FV (A) FV (B) FV ( x, P) = FV (P) {x} FV ( x, P) = FV (P) {x} Toutes les occurrences de x dans la formule Qx, P sont liées avec Q {, } Une variable peut être liée dans une formule et libre dans une sous-formule. Exemple y est liée dans x, x.y = y.x mais libre dans x.y = y.x. Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 13 / 40

Vocabulaire Un terme (ou une formule) sans variable libre est dit clos. Une théorie est un ensemble de formules closes. Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 14 / 40

Renommage (ou α-conversion) On dit que deux formules F et G sont α-équivalentes ssi elles sont identiques au renommage près des occurrences liées de leurs variables. On écrit F α G. Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 15 / 40

Renommage (ou α-conversion) On dit que deux formules F et G sont α-équivalentes ssi elles sont identiques au renommage près des occurrences liées de leurs variables. On écrit F α G. Exemple : x, x.y = y.x Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 15 / 40

Renommage (ou α-conversion) On dit que deux formules F et G sont α-équivalentes ssi elles sont identiques au renommage près des occurrences liées de leurs variables. On écrit F α G. Exemple : x, x.y = y.x α Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 15 / 40

Renommage (ou α-conversion) On dit que deux formules F et G sont α-équivalentes ssi elles sont identiques au renommage près des occurrences liées de leurs variables. On écrit F α G. Exemple : x, x.y = y.x α z, z.y = y.z Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 15 / 40

Renommage (ou α-conversion) On dit que deux formules F et G sont α-équivalentes ssi elles sont identiques au renommage près des occurrences liées de leurs variables. On écrit F α G. Exemple : x, x.y = y.x α z, z.y = y.z Mais on ne peut pas renommer x en y : on aurait alors y, y.y = y.y Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 15 / 40

Renommage (ou α-conversion) On dit que deux formules F et G sont α-équivalentes ssi elles sont identiques au renommage près des occurrences liées de leurs variables. On écrit F α G. Exemple : x, x.y = y.x α z, z.y = y.z Mais on ne peut pas renommer x en y : on aurait alors y, y.y = y.y Problème : capture de y par le quantificateur : il devient lié... Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 15 / 40

Renommage (ou α-conversion) On dit que deux formules F et G sont α-équivalentes ssi elles sont identiques au renommage près des occurrences liées de leurs variables. On écrit F α G. Exemple : x, x.y = y.x α z, z.y = y.z Mais on ne peut pas renommer x en y : on aurait alors y, y.y = y.y Problème : capture de y par le quantificateur : il devient lié... Usuellement on choisit pour renommer une variable fraîche (i.e. une variable qui n apparaît pas déjà). Il suffit de choisir une variable non libre dans la formule. Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 15 / 40

Codage permettant de rendre syntaxiquement identiques deux formules équivalentes au renommage près. Notation très cintéressante pour les programmes (prouveurs par exemple) mais peu lisible pour des humains. les noms des variables disparaissent. Une occurrence de variable est représentée par le nombre de quantificateurs qu il faut traverser (dans une représentation arborescente) avant de trouver le quantificateurs qui lie l occurrence. Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 16 / 40

Exemple : x, (( y, x y = y x) x E = E x). sous forme arborescente x / / y x*e=e*x 0*E=E*0 x*y=y*x 1*0=0*1 La formule x, (( y, x y = y x) x E = E x) s écrit.((.1 0=0 1) 0 E = E 0). La formule z, (( y, z y = y z) z E = E z) s écritaussi.((.1 0=0 1) 0 E = E 0). Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 17 / 40

Substitution Remplacer toutes les occurrences libres d une variable x par un terme t dans une formule F : F [x ::= t] Attention au renommage! que si x = y et y FV (t)! ( y, P)[x ::= t] = y, P[x ::= t] On définit formellement d abord la substitution dans un terme puis dans une formule (Voir le tableau!) Eviter la capture de variables libres de t Remède : renommage des variables liées de F. Catherine Dubois, Julien Narboux (Strasbourg) () Logique des prédicats 18 / 40