Réalisabilité et extraction de programmes



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

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

6. Les différents types de démonstrations

Image d un intervalle par une fonction continue

D'UN THÉORÈME NOUVEAU

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

Logique. Plan du chapitre

CHAPITRE IV. L axiome du choix

Axiomatique de N, construction de Z

Problème : Calcul d'échéanciers de prêt bancaire (15 pt)

La mesure de Lebesgue sur la droite réelle

Introduction à l étude des Corps Finis

Peut-on tout programmer?

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

2. RAPPEL DES TECHNIQUES DE CALCUL DANS R

Limites finies en un point

Problèmes de Mathématiques Filtres et ultrafiltres

Structures algébriques

Date : Tangram en carré page

3 Approximation de solutions d équations

Algorithmique et Programmation Fonctionnelle

Cours3. Applications continues et homéomorphismes. 1 Rappel sur les images réciproques

"Calcul et hyper-calcul"

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

Groupe symétrique. Chapitre II. 1 Définitions et généralités

Problème 1 : applications du plan affine

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

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

Résolution d équations non linéaires

Carl-Louis-Ferdinand von Lindemann ( )

Continuité d une fonction de plusieurs variables

Nombres premiers. Comment reconnaître un nombre premier? Mais...

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

FONCTION EXPONENTIELLE ( ) 2 = 0.

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

par Denis-Charles Cisinski & Georges Maltsiniotis

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

Systèmes déductifs DEA D INFORMATIQUE UNIVERSITÉ BORDEAUX 1. Systèmes déductifs (Retoré) Plan Début Fin Préc. Suiv.

Développements limités. Notion de développement limité

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

Résolution de systèmes linéaires par des méthodes directes

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

Fonctions de plusieurs variables, intégrales multiples, et intégrales dépendant d un paramètre

COURS EULER: PROGRAMME DE LA PREMIÈRE ANNÉE

Chapitre 1 : Évolution COURS

Utilisation des tableaux sémantiques dans les logiques de description

MPI Activité.10 : Logique binaire Portes logiques

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

Raisonnement par récurrence Suites numériques

FONDEMENTS DES MATHÉMATIQUES

Enoncé et corrigé du brevet des collèges dans les académies d Aix- Marseille, Montpellier, Nice Corse et Toulouse en Énoncé.

Calcul fonctionnel holomorphe dans les algèbres de Banach

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

Développement décimal d un réel

Chp. 4. Minimisation d une fonction d une variable

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1

Programmes des classes préparatoires aux Grandes Ecoles

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)

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

Quelques tests de primalité

Informatique Machines à calculer en théorie et en pratique

Fonctions de plusieurs variables

rf( 1 f(x)x dx = O. ) U concours externe de recrutement de professeurs agreg6s composition d analyse

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

Equations cartésiennes d une droite

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

Théorie de la mesure. S. Nicolay

DOCM Solutions officielles = n 2 10.

Polynômes à plusieurs variables. Résultant

Couples de variables aléatoires discrètes

Introduction à la théorie des graphes. Solutions des exercices

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

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

I - PUISSANCE D UN POINT PAR RAPPORT A UN CERCLE CERCLES ORTHOGONAUX POLES ET POLAIRES

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

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1

Cours d arithmétique Première partie

Machines virtuelles Cours 1 : Introduction

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

Logique : ENSIIE 1A - contrôle final

Cours de mathématiques

F1C1/ Analyse. El Hadji Malick DIA

LE PROBLEME DU PLUS COURT CHEMIN

Contrat didactique Mathématiques financières

Cours de Probabilités et de Statistique

Théorèmes du Point Fixe et Applications aux Equations Diérentielles

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.

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

FONDEMENTS MATHÉMATIQUES 12 E ANNÉE. Mathématiques financières

Équations non linéaires

Calculs de probabilités conditionelles

Leçon 01 Exercices d'entraînement

L isomorphisme entre les tours de Lubin-Tate et de Drinfeld et applications cohomologiques par Laurent Fargues

M2 IAD UE MODE Notes de cours (3)

Théorèmes de Point Fixe et Applications 1


Sites web éducatifs et ressources en mathématiques

Examen optimisation Centrale Marseille (2008) et SupGalilee (2008)

UNIVERSITE IBN ZOHR Faculté des sciences Agadir. Filière SMA & SMI. Semestre 1. Module : Algèbre 1

Simulation de variables aléatoires

Transcription:

Mercredi 9 mars 2005

Extraction de programme: qu'est-ce que c'est? Extraire à partir d'une preuve un entier x N tel que A(x). π x N A(x) (un témoin) (En fait, on n'extrait pas un entier, mais un programme qui le calcule) Extraire à partir d'une preuve. π x N y N A(x, y) un programme f : N N t.q. A(x, f (x)) pour tout x N.

Extraction de programme: pourquoi? Intérêt pratique: Fabriquer un algorithme à partir d'une preuve. Intérêt philosophique: Un début d'explication du mystère de la déraisonnable ecacité des mathématiques (E. Wigner) Intérêt ludique: Quel programme peut bien se cacher derrière la preuve du théorème XXX dûe à YYY? Mais l'extraction de programme n'est pas toujours possible...

Une existence sans témoin Théorème Il existe deux nombres irrationnels a et b tels que a b est rationnel. Preuve. On raisonne par cas suivant que 2 2 Q ou non. Si 2 2 Q, on prend a = b = 2. Si 2 2 / Q, on pose a = 2 2, b = 2, et il vient a b = ( 2 2) 2 = 2 2 2 = 2 2 = 2. De cette preuve on ne peut pas extraire un couple (a, b) tel que a, b / Q et a b Q

Une disjonction sans alternative Théorème Ou bien e + π est transcendant, ou bien e π est transcendant. Preuve. Par l'absurde. Supposons S = e + π et P = e π algébriques. On considère l'équation du second degré à coecients algébriques: x 2 Sx + P = 0 Les nombres e et π, qui sont les solutions de cette équation, sont donc algébriques. Contradiction. Cette preuve ne dit pas quelle alternative est vraie!

Existence d'une fonction non calculable Soient: Halt(x) x est le code de Gödel d'une machine de Turing qui termine (sur le ruban vide) A(x, y) (Halt(x) y = 1) ( Halt(x) y = 0) Théorème Pour tout x N, il existe y N tel que A(x, y). Preuve. On raisonne par cas suivant que Halt(x) ou non. Si Halt(x), on prend y = 1. Si Halt(x), on prend y = 0. Ici, la fonction f à extraire est bien dénie... mais non calculable.

La logique intuitionniste (LJ) Brouwer (Luitzen Egbertus Jan, 18811966) Point de vue philosophique: Le rejet de principes non-constructifs tels que le tiers-exclus: A A le raisonnement par l'absurde (déduire A de l'absurdité de A) l'axiome du choix, ou du moins certaines formes (Zorn) Techniquement: La déduction naturelle (Prawitz 1964) Basée sur des séquents asymétriques, de la forme Γ A On a l'inclusion stricte: LJ LK

Logique intuitionniste: ce qu'on conserve/ce qu'on perd En logique: On conserve les implications... A A (Double négation) (A B) ( B A) (Contraposition) ( A B) (A B) (Implication matérielle)... mais les réciproques sont perdues Lois de Morgan: (A B) A B (A B) A B ( x A(x)) x A(x) ( x A(x)) x A(x)

Logique intuitionniste: ce qu'on conserve/ce qu'on perd En algèbre: On conserve toute l'algèbre de base (1er cycle)...... mais on perd une partie de la théorie spectrale En topologie: On conserve la topologie générale...... mais il faut entièrement la reformuler! Topologie sans points, Espaces formels En combinatoire: Y a-t-il quoi que ce soit qui disparaisse?

Logique intuitionniste: ce qu'on conserve/ce qu'on perd En analyse: On conserve l'existence de R...... mais on perd son unicité (à isomorphisme près) Le maximum d'une fonction continue sur un compact n'est plus toujours atteint...... mais on peut toujours l'approcher à ε près. On conserve la mesure (et l'intégrale) de Lebesgue...... pourvu qu'on utilise la bonne construction de R!

Logique intuitionniste: ce qu'on gagne 1 La propriété de la disjonction: D'une preuve de A B (sans hypothèse), on peut extraire une preuve de A ou une preuve de B.. π A B. π 1 A ou. π 2 B 2 La propriété du témoin: D'une preuve de x A(x) (sans hypothèse), on peut extraire un témoin t et une preuve de A(t).. π x A(x) t +. π A(t) 3 Fonctions récursives: Les fonctions dont on peut démontrer l'existence sont toutes calculables

Une critique de la logique classique Signication de A = valeur de vérité de A? Les propositions 2 + 2 = 4 et x, y, z, n N (n > 2 x n + y n z n ) Alfred Tarski ont-elles réellement la même signication? La prouvabilité commute avec, mais pas avec. Les quanticateurs, : (D {0; 1}) {0; 1} ne sont pas des fonctions calculables dès que le domaine D est inni. Quel est le statut de la notion de démonstration?

L'interprétation de Brouwer-Heyting-Kolmogorov (BHK) Le cahier des charges du constructivisme: Signication de A Ensemble des preuves de A L.E.J. Brouwer A. Heyting A.N. Kolmogorov (noté Φ(A)) Démontrer A exhiber une preuve π Φ(A) Signication des connecteurs: Φ(A B) Φ(A) Φ(B) (produit cartésien) Φ(A B) Φ(A) + Φ(B) (union disjointe) Φ(A B) Φ(A) Φ(B) (espace des fonctions) La signication des quanticateurs est un peu plus complexe...

L'interprétation de BHK: Exemple 1 Question: qu'est-ce qui prouve A B B A? A B B A? Réponse: fun (x, y) (y, x)

L'interprétation de BHK: Exemple 2 Question: qu'est-ce qui prouve (A B) (B C) (A C)? (A B) (B C) (A C)? Réponse: fun (f, g) fun x g(f (x))

L'interprétation de BHK: Exemple 3 Rappel: A B A + B Inl of A Inr of B Question: qu'est-ce qui prouve (A B) (B A)? (A + B) (B + A)? Réponse: function Inl(x) Inr(x) Inr(y) Inl(y)

Réalisabilité: les principes On se donne un langage de programmation P: Fonctions récursives (Kleene) λ-calcul, λµ-calcul, etc. PCF, Caml non typé, LISP,... On interprète chaque formule A de la théorie considérée par un ensemble de programmes Φ(A) En suivant les principes de l'interprétation de BHK... adaptés au langage considéré p A p réalise A p Φ(A) On montre que si A est prouvable, alors A est réalisable Le réalisateur p A est construit par induction sur la preuve de A En pratique, il s'agit surtout de vérier que les axiomes de la théorie sont réalisables. S.C. Kleene

Réalisabilité dans le calcul des prédicats intuitionniste Interprétation des connecteurs: Φ(A B) = { p q Φ(A) p q Φ(B) } Φ(A B) = { p p (p 1 Φ(A), p } 2 Φ(B)) Φ(A B) = { p p Inl(p 1 Φ(A)) p Inr(p } 2 Φ(B)) Φ( ) = ( A A ) Interprétation des quanticateurs: Φ( x A(x)) = Φ(A(d)) d D Φ( x A(x)) = d D [D = domaine de la quantication] Φ(A(d)) [ou presque... :-)]

Réalisation de l'égalité Le prédicat d'égalité x = y est interprété par: Par exemple: Φ(x = y) = { P si x = y sinon fun p? p x y [s(x) = s(y) x = y] fun p? p x [s(x) = 0 ] où s désigne la fonction successeur sur N (*) (*) Ou plus généralement toute fonction injective n'admettant pas 0 dans son image.

Réalisation des quantications numériques On introduit un prédicat de relativisation Nat(x) pour distinguer les quantications numériques: N x P(x) x (Nat(x) P(x)) N x A(x) x (Nat(x) P(x)) On pose: Φ(Nat(x)) = { {p p x} si x N sinon Les réalisateurs de N x P(x) calculent le témoin: p N x P(x) ssi p (n, q) avec q A(n)

Un dernier exercice... Soit iter un programme tel que: iter (a, f ) 0 a iter (a, f ) (n + 1) f n (iter (a, f ) n) (n N) Le comportement de iter n'a pas besoin d'être déni dans les autres cas. On considère un prédicat P(x) quelconque. 1 Montrer que si { a P(0) f N x (P(x) P(s(x))) alors pour tout n N on a: iter (a, f ) n P(n) 2 En déduire que iter P(0) N x (P(x) P(s(x))) N x P(x)

Réalisation des preuves de l'arithmétique de Heyting Les transparents précédents donnent les grandes lignes de la réalisabilité dans l'arithmétique de Heyting (HA) (= arithmétique intuitionniste du premier ordre) Théorème (Kleene): Si A est prouvable dans HA, alors A est réalisable par un programme p P. Propriété du témoin: Si p N x P(x), alors p (n, q) avec q P(n) La réalisabilité dans HA s'étend très facilement: Au second ordre: HA2 ( analyse intuitionniste) À l'ordre supérieur: HAω

Conclusion Réalisabilité Un sous-produit mathématique du programme philosophique intuitionniste Principe: Formule Ensemble de réalisateurs Généralisation des notions de valeur de vérité et de modèle Une technique très exible Réalisabilité classique (Krivine) BHK étendue au tiers-exclus backtracking Nécessite un langage de programmation avec des continuations Mais on perd (en général) la propriété d'extraction du témoin Réalisabilité en théorie des ensembles Friedman 73, McCarty 84, Krivine 01, Miquel 03,...