Agrégation de mathématiques Option informatique Logique

Documents pareils
Logique : ENSIIE 1A - contrôle final

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

Utilisation des tableaux sémantiques dans les logiques de description

Réalisabilité et extraction de programmes

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

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

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

1.1 Codage de source et test d hypothèse

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

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

Limites finies en un point

Algorithmique et Programmation, IMA

Continuité d une fonction de plusieurs variables

Image d un intervalle par une fonction continue

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Programmation Par Contraintes

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

Évaluation et implémentation des langages

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

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

Chapitre 7 : Intégration sur un intervalle quelconque

Méthodes de quadrature. Polytech Paris-UPMC. - p. 1/48

Suites numériques 3. 1 Convergence et limite d une suite

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours

Cours 1 : La compilation

Continuité et dérivabilité d une fonction

Le théorème de Perron-Frobenius, les chaines de Markov et un célèbre moteur de recherche

Espérance conditionnelle

Correction du baccalauréat S Liban juin 2007

Logique. Plan du chapitre

Intégration et probabilités TD1 Espaces mesurés

Programmes des classes préparatoires aux Grandes Ecoles

Optimisation Discrète

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

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

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

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

Plan du cours Cours théoriques. 29 septembre 2014

Fonctions de plusieurs variables

Comparaison de fonctions Développements limités. Chapitre 10

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

Travaux dirigés d introduction aux Probabilités

Correction du Baccalauréat S Amérique du Nord mai 2007

Algorithmique des Systèmes Répartis Protocoles de Communications

Calcul de développements de Puiseux et application au calcul du groupe de monodromie d'une courbe algébrique plane

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

LES TYPES DE DONNÉES DU LANGAGE PASCAL

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

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

Introduction à la Programmation par Contraintes (PPC) Ruslan Sadykov LIX, École Polytechnique

Présentation du langage et premières fonctions

3 Approximation de solutions d équations

Objets Combinatoires élementaires

Dualité dans les espaces de Lebesgue et mesures de Radon finies

Baccalauréat ES Antilles Guyane 12 septembre 2014 Corrigé

Intelligence artificielle appliquée à l automatique

LE PROBLEME DU PLUS COURT CHEMIN

CH.6 Propriétés des langages non contextuels

Amphi 3: Espaces complets - Applications linéaires continues

Calcul différentiel sur R n Première partie

Cours Fonctions de deux variables

Systèmes décisionnels et programmation avancée

Intégration et probabilités TD1 Espaces mesurés Corrigé

Tests non-paramétriques de non-effet et d adéquation pour des covariables fonctionnelles

1 Première section: La construction générale

Propriétés des options sur actions

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

GOL502 Industries de services

ALGORITHMIQUE ET PROGRAMMATION En C

Théorie des Langages

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Une introduction aux codes correcteurs quantiques

6. Les différents types de démonstrations

Traduction des Langages : Le Compilateur Micro Java

Introduction à l étude des Corps Finis

Structures algébriques

Cours de mathématiques

Probabilités conditionnelles Loi binomiale

Baccalauréat S Antilles-Guyane 11 septembre 2014 Corrigé

M06/5/COMSC/SP1/FRE/TZ0/XX INFORMATIQUE NIVEAU MOYEN ÉPREUVE 1. Mardi 2 mai 2006 (après-midi) 1 heure 30 minutes INSTRUCTIONS DESTINÉES AUX CANDIDATS

Eteindre. les. lumières MATH EN JEAN Mme BACHOC. Elèves de seconde, première et terminale scientifiques :

FONDEMENTS DES MATHÉMATIQUES

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Corrigé des TD 1 à 5

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

Proposition. Si G est un groupe simple d ordre 60 alors G est isomorphe à A 5.

Rappels sur les suites - Algorithme

Probabilités. C. Charignon. I Cours 3

introduction Chapitre 5 Récursivité Exemples mathématiques Fonction factorielle ø est un arbre (vide) Images récursives

Filtrage stochastique non linéaire par la théorie de représentation des martingales

données en connaissance et en actions?

I. Polynômes de Tchebychev

Intelligence Artificielle Planification

Bureau N301 (Nautile)

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

Problèmes de Mathématiques Filtres et ultrafiltres

Compilation. Algorithmes d'analyse syntaxique

L utilisation d un réseau de neurones pour optimiser la gestion d un firewall

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

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

Transcription:

Agrégation de mathématiques Option informatique Logique

Organisation 16 séances de 3 heures 2 enseignants : Gilles Dowek Sylvain Schmitz

Quelques adresses gilles.dowek@ens-paris-saclay.fr http://www.lsv.ens-cachan.fr/ dowek/cours/agregation/

Six leçons 917 Logique du premier ordre : syntaxe et sémantique. 924 Théories et modèles en logique du premier ordre. Exemples. +++ Lambda calcul pur comme modèle de calcul. 916 Formules du calcul propositionnel : représentation, formes normales, satisfiabilité. Applications. 919 Unification : algorithmes et applications. 918 Systèmes formels de preuve en logique du premier ordre : exemples.

Livres G. Dowek, Les démonstrations et les algorithmes, Introduction à la logique et à la calculabilité, Les Éditions de l École polytechnique (2010). J. Goubault-Larrecq, I. Mackie, Proof Theory and Automated Deduction, Kluwer (2001).

Nos buts Vous préparer à faire un plan de 6 mn et deux développements de 15 mn Vous donner le recul nécessaire pour préparer les exercices et les questions

Quels rapports entre la logique et l informatique? Branche de la philosophie, puis (aussi) des mathématique, puis (aussi) de l informatique Deux concepts communs : calcul (algorithme), langage

Logique du premier ordre : syntaxe et sémantique

Définir l ensemble des propositions Définir le (sous)-ensemble des propositions démontrables

I. Comment définir un ensemble ou une relation?

Par une définition explicite : {x N z N x = 2 z} {(x, y) N 2 z N x = y z} Mais ça ne suffit pas... Par une définition inductive La notion de définition inductive : le théorème du point fixe

Le premier théorème du point fixe E, relation d ordre u 0, u 1,... suite croissante l limite de (u i ) i si l = sup {u 0, u 1,...} E, faiblement complète si toute suite croissante a une limite f croissante est continue si lim i (f u i ) = f (lim i u i ) Théorème : faiblement complète et a un minimum et f continue alors f a un point fixe Le plus petit point fixe est lim i (f i m)

1 0 0 1

Exercice Montrer que [0, 1], est faiblement complète R +, est-elle faiblement complète?

Exercice Montrer que f i m est une suite croissante Montrer que lim i (f i m) est un point fixe Montrer que c est le plus petit

Le second théorème du point fixe Pour les fonctions croissantes (mais pas forcément continues) E, fortement complète si tout ensemble a une borne supérieure Donc tout ensemble a une borne inférieure Théorème : fortement complète et f croissante alors f a un point fixe Le plus petit point fixe est inf {c fc c}

1 0 0 1

Exercice Montrer que [0, 1], est fortement complète R +, est-elle fortement complète? R, est-elle fortement complète? b c Faiblement / fortement complète? a

Exercice Montrer que si tout ensemble a une borne supérieure alors tout ensemble a une borne inférieure

Exercice Montrer que inf {c fc c} est un point fixe Montrer que c est le plus petit

Un autre exemple A ensemble quelconque P(A), est faiblement et fortement complète f fonction croissante de P(A) dans P(A) a un point fixe Le plus petit point fixe est C f C C C (et aussi i f i ( ) si f est continue)

Une première définition inductive P = 2N est défini par 0 P et si n P alors n + 2 P 0 n n + 2 0 P n P n + 2 P

P n est pas le seul ensemble qui contient 0 et qui est clos par la fonction n n + 2 Mais c est le plus petit de ces ensembles F de P(N) dans P(N) F (A) = {0} {x + 2 x A} F croissante et continue (A contient 0 et clos par n n + 2) : F (A) A P est défini comme le plus petit point fixe de F Second théorème du point fixe : c est l intersection de tous les ensembles qui contiennent 0 et qui sont clos par n n + 2 Premier théorème du point fixe : c est la réunion de, F ( ), F (F ( )),...

Cas général Un ensemble E On définit un sous-ensemble B de E par des fonctions de fermeture (règles) f 1, f 2,... F (A) = i {f i(a 1,..., a ni ) a 1,..., a ni A} F croissante et continue B est le plus petit point fixe de F

La notion de dérivation x B si x F k ( ) pour un certain k c.-à-d. s il existe i, y 1,..., y n F k 1 ( ) tq x = f i (y 1,..., y n ) Par récurrence sur k si x B alors il existe un arbre dont les nœuds sont étiquetés par des éléments de E et les enfants d un nœud x sont y 1,..., y n tq il existe une règle f i tq x = f i (y 1,..., y n )

6 4 2 0 2 4 6 0 P 2 P 4 P 6 P 0

Exercice E = {a, b} b X a X a

Exercice E = {0, 1, 2, 3, 4} 4 0 1 3 2 x C x si x R y x C y x C y y C z x C z 0 C 3 3 C 2 0 C 2

Exemple A B A A B B A B B A (P Q) P

(P Q) P P Q Q (P Q) P P

Étiquetées par les éléments et par les noms 0 2 4 6 z p p p z 0 p 2 p 4 p 6

Pause

II. La notion de langage en général

On oublie la contrainte de linéarité du langage On ne s intéresse pas à savoir si on écrit 3 + 4, +(3, 4) ou 34+ Les expressions sont des arbres + 3 4

Les langages sans variables Un langage (sans variables) est un ensemble de symboles, chacun muni d un nombre entier appelé son arité ou nombre d arguments L ensemble des expressions du langage est l ensemble d arbres défini inductivement par la règle t 1... t n si f est un symbole d arité n f (t 1,..., t n ) f t 1... t n

Exemple Une constante (c.-à-d. symbole d arité nulle) 0 Un symbole unaire S Deux symboles binaires +, Deux symboles unaires pair, impair Un symbole binaire impair(s(s(s(0)))) pair(s(s(s(s(0)))))

Si un nombre est impair alors son successeur est pair x (impair(x) pair(s(x))) Des variables Des symboles qui lient des variables

Les langages avec variables L arité d un symbole est un n-uplet (k 1,..., k n ) le symbole a n arguments, il lie k 1 variables dans le premier,..., k n variables dans le n ème Exemple : a l arité (1) Un ensemble de symboles et un ensemble infini de variables Les expressions sont définies inductivement par les règles : les variables sont des expressions, si f est un symbole d arité (1, 3), t et u sont des expressions, w, x, y, z sont des variables alors f (w t, x y z u) est une expression (à généraliser)

f (x 1 1...x 1 k 1 t 1,..., x n 1...x n k n t n ) est l arbre f 2 x 1... 1 x 1 k x... 1 2 x 2 k2 t1 t2...

Les variables et les variables libres Var(x) = {x}, Var(f (x 1 1...x 1 k 1 t 1,..., x n 1...x n k n t n )) = Var(t 1 ) {x 1 1,..., x 1 k 1 } Var(t n ) {x n n,..., x n k n }. VL(x) = {x}, VL(f (x 1 1...x 1 k 1 t 1,..., x n 1...x n k n t n )) = (VL(t 1 ) \ {x 1 1,..., x 1 k 1 }) (VL(t n ) \ {x n n,..., x n k n })

Exercice Var( x (x = x))? VL( x (x = x))? VL( x (x = y))?

Les langages à plusieurs sortes d objets 0, S, +,, pair, impair,, Empêcher 0 0 Distinguer 0, S(0), S(x),... termes de pair(0), impair(0), x (pair(x)),... propositions Mais aussi peut-être les termes de vecteurs, les termes de scalaires...

Les langages à plusieurs sortes d objets Un ensemble de sortes {Terme, Prop} plus généralement S L arité d un symbole est un n + 1-uplet de sortes (s 1,..., s n, s ) Si t 1 terme de sorte s 1, t 2 terme de sorte s 2,..., t n terme de sorte s n et f d arité (s 1,..., s n, s ) alors f (t 1,..., t n ) de sorte s

Plusieurs sortes d objets + variables ((s 1 1,..., s 1 k 1, s 1 ),..., (s n 1,..., s n k n, s n ), s ) Exemple d arité ((Terme, Prop), Prop)

III. La notion de langage de la logique des prédicats

Ensemble S de sortes de termes (souvent une seule) et une sorte de plus Prop Seulement deux symboles lieurs et Les symboles se divisent en les symboles de fonction f d arité (s 1,..., s n, s ) les symboles de prédicat P d arité (s 1,..., s n, Prop) (notée (s 1,..., s n )) les symboles communs à tous les langages,,,,,,, x (pair(x) impair(s(x)))

IV. La notion de proposition démontrable

Une première (et presque bonne) idée Un sous-ensemble de l ensemble des propositions inductivement défini par des règles de déduction A B A A B B A B B A

Mais... Pour démontrer A B : supposons A et démontrons B Non seulement la proposition à démontrer varie, mais aussi l ensemble d hypothèses Un séquent Γ A formé d un ensemble d hypothèses Γ et d une conclusion A

Les règles Un sous-ensemble de l ensemble des séquents inductivement défini par des règles de déduction Γ A B Γ A Γ A B Γ B Γ A B Γ A Γ B Γ, A B Γ A B

La classification des règles La plupart des règles concernent un symbole (connecteur ou quantificateur) unique Γ A Γ B -intro Γ A B classification des règles en fonction du symbole concerné Conclusion ou prémisse : introduction / élimination fabriquer / utiliser Exceptions : axiome, tiers exclu, négation Négation : symbole composite : A peut être défini comme A

Les règles une par une axiome : la notion de contexte, raisonnement hypothético-déductif : pas d élim : pas d intro : ras : intros triviales, élim démonstration par cas : intro : la notion de contexte, raisonnement hypothético-déductif : lien avec, les deux formes de raisonnement par l absurde, forme radicale de raisonnement hypothético-déductif

Les règles une par une : «soit x un objet», notion de généricité (x n apparaît pas (libre) dans Γ), substitution : substitution, «x P, appelons le y», y générique

V. La substitution

-élim et -intro : une opération annexe : la substitution (t/x)u L opération qui donne son sens au mot variable Les langages de la logique des prédicats et tous les autres langages Définition simple pour les langages sans symboles lieurs de var. (t/x)(f (u 1,..., u n )) = f ((t/x)u 1,..., (t/x)u n ) (t/x)x = t (t/x)y = y si x y

Dans les langages avec des symboles lieurs de variables (4/x)( x P(x)) = x P(4) ou x P(x)? Règle 1 : ne substituer que les variables libres Première tentative : t/x ( y A) = y ( t/x A) si x y t/x ( x A) = x A

Exercice 4/y ( x P(x + y))? z/y ( x P(x + y))? x/y ( x P(x + y))?

Mais ce n est pas suffisant Règle 2 : éviter les captures de variables (x/y)( x P(x + y)) = w P(w + x) Renommer la variable liée x en w Pourquoi w plutôt que v? C est équivalent (variable liée = variable muette) Équivalence alphabétique (α-équivalence)

L équivalence alphabétique x A y B si pour toute variable z qui n apparaît ni dans x A ni dans y B on a z/x A z/y B Exemple : x P(x + w) et y P(y + w) sont équivalents Désormais on ne raisonne plus que sur des classes d expressions modulo équivalence alphabétique

La substitution (enfin...) (t/x)( y A) = z (t/x) z/y A où z est une variable quelconque différente de x et y et qui n apparaît ni dans t ni dans A Généraliser tout cela à la substitution simultanée t 1 /x 1,..., t n /x n et à un langage quelconque Un empilement de notions : substitution avec captures équivalence alphabétique classes d expressions substitution De nombreuses erreurs dans les livres De nombreuses erreurs dans les systèmes de calcul symbolique (langages de programmation, systèmes de calcul formel, systèmes de traitement de démonstrations,...)

La notion de modèle La prochaine fois

Deux développements Et...