Importation de preuves HOL-Light en Coq
|
|
- Dominique Lecours
- il y a 8 ans
- Total affichages :
Transcription
1 Importation de preuves HOL-Light en Coq Stage de M2 Chantal Keller Sous la direction de Benjamin Werner 7 septembre 2009 Importation de preuves HOL-Light en Coq 1 / 33
2 Idée HOL Light + proof recording Coq + axiomes classiques théorème HOL Light enregis trement terme de preuve exportation terme de preuve fonction de traduction proposition Coq P preuve de P Importation de preuves HOL-Light en Coq 2 / 33
3 But Plusieurs intérêts : utiliser les théorèmes de HOL-Light en Coq (analyse) établir un modèle de HOL-Light en Coq comparer deux systèmes de preuve Importation de preuves HOL-Light en Coq 3 / 33
4 Plan 1 HOL-Light et Coq 2 Enregistrement et exportation des termes de preuve de HOL-Light 3 Modèle de HOL-Light en Coq 4 Résultats Importation de preuves HOL-Light en Coq 4 / 33
5 HOL-Light et Coq Première partie I HOL-Light et Coq Importation de preuves HOL-Light en Coq 5 / 33
6 HOL-Light et Coq Présentation HOL Light + proof recording Coq + axiomes classiques théorème enregis HOL Light trement terme de preuve exportation terme de preuve fonction de traduction proposition Coq P preuve de P Importation de preuves HOL-Light en Coq 6 / 33
7 HOL-Light et Coq HOL-Light HOL-Light HOL-Light : assistant de preuve écrit par John Harrison et al. dans un top-level OCaml logique classique d'ordre supérieur (extensionnelle) outils automatiques, bibliothèque étendue programmable sans compromettre la cohérence noyau logique simple et concis Importation de preuves HOL-Light en Coq 7 / 33
8 HOL-Light et Coq HOL-Light Système logique Système logique : λ-calcul simplement typé polymorphisme : schémas de types variables de types (et de termes) règles logiques traitant de l'égalité entre termes système de tactiques Exemples de règle d'inférence : (λx.t) x = t Γ p q Γ q p où représente = bool. Importation de preuves HOL-Light en Coq 8 / 33
9 HOL-Light et Coq HOL-Light Correction Correction : type thm abstrait (on ne peut construire des théorèmes qu'en utilisant les primitives fournies par HOL-Light) preuves non enregistrées, mais interprétation de HOL-Light à chaque ouverture de session Importation de preuves HOL-Light en Coq 9 / 33
10 HOL-Light et Coq Coq Coq Coq : assistant de preuve compilé calcul des constructions inductives (intuitionniste, calculatoire) preuves réexives noyau logique complexe Importation de preuves HOL-Light en Coq 10 / 33
11 HOL-Light et Coq Coq Système logique et correction Système logique : extension de HOL-Light si on se donne des axiomes classiques Correction : preuves enregistrées et vériables Importation de preuves HOL-Light en Coq 11 / 33
12 Enregistrement et exportation des termes de preuve de HOL-Light Deuxième partie II Enregistrement et exportation des termes de preuve de HOL-Light Importation de preuves HOL-Light en Coq 12 / 33
13 Enregistrement et exportation des termes de preuve de HOL-Light Enregistrement - Exportation Présentation HOL Light + proof recording Coq + axiomes classiques théorème enregis HOL Light trement terme de preuve exportation terme de preuve fonction de traduction proposition Coq P preuve de P Importation de preuves HOL-Light en Coq 13 / 33
14 Enregistrement et exportation des termes de preuve de HOL-Light Enregistrement - Exportation Proof recording (S. Obua) Enregistrement de l'arbre de dérivation : termes de preuve compacts courte durée d'enregistrement granularité type proof = Proof of (proof_info proof_content (unit > unit)) and proof_content = Pconj of proof proof Pconjunct1 of proof Pconjunct2 of proof... Importation de preuves HOL-Light en Coq 14 / 33
15 Enregistrement et exportation des termes de preuve de HOL-Light Enregistrement - Exportation Exportation Exportation des arbres de dérivation : petits chiers petit nombre de chiers partage Inductive proof : Type := Pconj : proof proof proof Pconjunct1 : proof proof Pconjunct2 : proof proof... Poracle : forall h t, deriv h t proof. Importation de preuves HOL-Light en Coq 15 / 33
16 Modèle de HOL-Light en Coq Troisième partie III Modèle de HOL-Light en Coq Importation de preuves HOL-Light en Coq 16 / 33
17 Modèle de HOL-Light en Coq Présentation HOL Light + proof recording Coq + axiomes classiques théorème enregis HOL Light trement terme de preuve exportation terme de preuve fonction de traduction proposition Coq P preuve de P Importation de preuves HOL-Light en Coq 17 / 33
18 Modèle de HOL-Light en Coq Plongements Plongements Plongement profond (deep embedding : types de données pour représenter les types et les termes) : raisonnement par induction sur la structure des objets Plongement peu profond (shallow embedding : en utilisant les types et les termes de Coq) : facilités de Coq Importation de preuves HOL-Light en Coq 18 / 33
19 Modèle de HOL-Light en Coq Plongements Plongements Plongement profond (deep embedding : types de données pour représenter les types et les termes) : raisonnement par induction sur la structure des objets Plongement peu profond (shallow embedding : en utilisant les types et les termes de Coq) : facilités de Coq obtenir des propositions Coq Importation de preuves HOL-Light en Coq 18 / 33
20 Modèle de HOL-Light en Coq Plongements Plongements Plongement profond (deep embedding : types de données pour représenter les types et les termes) : raisonnement par induction sur la structure des objets simple compact Plongement peu profond (shallow embedding : en utilisant les types et les termes de Coq) : facilités de Coq obtenir des propositions Coq Importation de preuves HOL-Light en Coq 18 / 33
21 Modèle de HOL-Light en Coq Plongements Plongements Plongement profond (deep embedding : types de données pour représenter les types et les termes) : raisonnement par induction sur la structure des objets simple compact Plongement peu profond (shallow embedding : en utilisant les types et les termes de Coq) : facilités de Coq obtenir des propositions Coq fonction de traduction de profond vers peu profond Importation de preuves HOL-Light en Coq 18 / 33
22 Modèle de HOL-Light en Coq Plongements Types Inductif type : Bool type X idt TVar X type A, B type A B type... idt un ensemble inni dénombrable Importation de preuves HOL-Light en Coq 19 / 33
23 Modèle de HOL-Light en Coq Plongements Termes Inductif term : n N Dbr n term x idv Var x A term A type u, v term App u v term A type u term Abs A u term... idv un ensemble inni dénombrable Importation de preuves HOL-Light en Coq 20 / 33
24 Modèle de HOL-Light en Coq Plongements Typage Typage : λ-calcul simplement typé contexte pour les indices de De Bruijn (liste de types) Importation de preuves HOL-Light en Coq 21 / 33
25 Modèle de HOL-Light en Coq Traduction Types Types : interface entre syntaxe et sémantique. Traduction d'un type : T Bool Prop A B A B Importation de preuves HOL-Light en Coq 22 / 33
26 Modèle de HOL-Light en Coq Traduction Types Types : interface entre syntaxe et sémantique. Traduction d'un type : T Bool Prop A B A B TVar X? Importation de preuves HOL-Light en Coq 22 / 33
27 Modèle de HOL-Light en Coq Traduction Types Types : interface entre syntaxe et sémantique. Traduction d'un type : T I Bool I Prop A B I A I B I TVar X I I(X ) Importation de preuves HOL-Light en Coq 22 / 33
28 Modèle de HOL-Light en Coq Traduction Termes Utilisation des types dépendants. [GW07] Traduction d'un terme : si Γ t : T, alors t I : T I si t non typable, t I n'est pas déni Exemple : si t p q t a le type Bool et on veut que t I soit une proposition Coq Importation de preuves HOL-Light en Coq 23 / 33
29 Modèle de HOL-Light en Coq Dérivations et termes de preuve Deux types de données Inductive proof : Type := Pconj : proof proof proof Pconjunct1 : proof proof Pconjunct2 : proof proof... Inductive deriv : set term term Prop := Dconj : forall h1 h2 t1 t2, deriv h1 t1 deriv h2 t2 deriv (union h1 h2) t1 t2 Dconjunct1 : forall h t1 t2, deriv h t1 t2 deriv h t1 Dconjunct2 : forall h t1 t2, deriv h t1 t2 deriv h t2... Importation de preuves HOL-Light en Coq 24 / 33
30 Modèle de HOL-Light en Coq Dérivations et termes de preuve Passage de l'un à l'autre p : proof deriv h t proof2deriv sem_deriv { Some (h,t) tels que deriv h t None h correct t correct t correct : t : Bool (t est donc localement clos) la traduction de t est une proposition Coq correcte Importation de preuves HOL-Light en Coq 25 / 33
31 Résultats Quatrième partie IV Résultats Importation de preuves HOL-Light en Coq 26 / 33
32 Résultats Résultats Qualitatifs HOL Light + proof recording Coq + axiomes classiques théorème HOL Light enregis trement terme de preuve exportation terme de preuve fonction de traduction proposition Coq P preuve de P théorèmes utilisables en Coq CONJ_SYM : t 1 t 2. t 1 t 2 t 2 t 1 forall x x0 : Prop, (x x0) = (x0 x) Importation de preuves HOL-Light en Coq 27 / 33
33 Résultats Résultats Quantitatifs Échelle Nombre théorèmes Nombre lemmes Taille Petite , 7 Mo Grande Mo Échelle D. enregistrement D. exportation D. compilation Petite 4 s 1 s 21 s Grande 3 min 7 min 30 X Environ 6900 lignes de code Importation de preuves HOL-Light en Coq 28 / 33
34 Conclusion et perspectives Cinquième partie V Conclusion et perspectives Importation de preuves HOL-Light en Coq 29 / 33
35 Conclusion et perspectives Conclusion HOL-Light : Coq : enregistrer des termes de preuve exporter des termes de preuve modèle de HOL-Light prouvé correct Interface : début de la bibliothèque partage de preuves Importation de preuves HOL-Light en Coq 30 / 33
36 Conclusion et perspectives Perspectives Améliorer l'ecacité : utiliser des types Coq ecaces (ensembles nis) termes de preuve plus petits exportation plus rapide Passer à l'échelle : grands développements interface utilisateur Importation de preuves HOL-Light en Coq 31 / 33
37 Merci de votre attention! Des questions? Importation de preuves HOL-Light en Coq 32 / 33
38 Traduction La fonction de traduction pour les contextes de De Bruijn Γ contexte de De Bruijn (liste de types) Γ I n, match nth n Γ return Type with Some T T I None unit end Si Γ n : T, alors n I,f Γ I f (n) T I. Importation de preuves HOL-Light en Coq 33 / 33
Vérification formelle de la plate-forme Java Card
Vérification formelle de la plate-forme Java Card Thèse de doctorat Guillaume Dufay INRIA Sophia Antipolis Cartes à puce intelligentes Java Card : Environnement de programmation dédié. Dernières générations
Plus en détailThéorie de la Programmation
Théorie de la Programmation http://perso.ens-lyon.fr/daniel.hirschkoff/thpr hop Programmation, Théorie de la programmation Langages de programmation I il existe de nombreux langages de programmation I
Plus en détailCours de Programmation 2
Cours de Programmation 2 Programmation à moyenne et large échelle 1. Programmation modulaire 2. Programmation orientée objet 3. Programmation concurrente, distribuée 4. Programmation monadique 5. Les programmes
Plus en détailRappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme
Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation
Plus en détailUne introduction rapide à Coq
Une introduction rapide à Coq Yves Bertot Janvier 2009 1 Démarrer le système Pour utiliser Coq on dispose de trois commandes, une commande qui sert à compiler des fichiers (coqc), une commande qui fournit
Plus en détailCours 1 : La compilation
/38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà
Plus en détailClasses et Objets en Ocaml.
Classes et Objets en Ocaml. Didier Rémy 2001-2002 http://cristal.inria.fr/ remy/mot/2/ http://www.enseignement.polytechnique.fr/profs/informatique/didier.remy/mot/2/ Cours Exercices Slide 1 1. Objets 2.
Plus en détailRéalisabilité et extraction de programmes
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
Plus en détailAnalyse de sécurité de logiciels système par typage statique
Contexte Modélisation Expérimentation Conclusion Analyse de sécurité de logiciels système par typage statique Application au noyau Linux Étienne Millon UPMC/LIP6 Airbus Group Innovations Sous la direction
Plus en détailMachines virtuelles fonctionnelles (suite) Compilation ML Java
Machines virtuelles fonctionnelles (suite) Compilation ML Java Cours de Compilation Avancée (MI190) Benjamin Canou Université Pierre et Maire Curie Année 2011/2012 Semaine 3 Machines virtuelles fonctionnelles
Plus en détailRecherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
Plus en détailÉvaluation et implémentation des langages
Évaluation et implémentation des langages Les langages de programmation et le processus de programmation Critères de conception et d évaluation des langages de programmation Les fondations de l implémentation
Plus en détailConception de circuits numériques et architecture des ordinateurs
Conception de circuits numériques et architecture des ordinateurs Frédéric Pétrot Année universitaire 2014-2015 Structure du cours C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 Codage des nombres en base 2, logique
Plus en détailArbres binaires de recherche
1 arbre des comparaisons 2 recherche dichotomique l'arbre est recalculé à chaque recherche 2 5 3 4 7 9 1 6 1 2 3 4 5 6 7 9 10 conserver la structure d'arbre au lieu de la reconstruire arbre binaire de
Plus en détailA.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW
A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW Groupe : 322 Exploitation des Banques de données 420-PK6-SL (1-2-1) Étape : 3 Professeur Nom: Marcel Aubin Courriel : maubin@cegep-st-laurent.qc.ca
Plus en détailVérification de programmes et de preuves Première partie. décrire des algorithmes
Vérification de programmes et de preuves Première partie. décrire des algorithmes Yves Bertot September 2012 1 Motivating introduction A partir des années 1940, il a été compris que l on pouvait utiliser
Plus en détailSpécification et certification d implantation chaînée avec des orbites : les hypercartes combinatoires
Spécification et certification d implantation chaînée avec des orbites : les hypercartes combinatoires Jean-François Dufourd ICUBE, Université de Strasbourg - CNRS, France Journée GDR-LTP 2013, Bordeaux,
Plus en détailPlan du cours : Zippers. Des fonctions sur les listes avec position. Des fonctions sur les listes avec position
Plan du cours : Le problème : naviguer efficacement une structure de données Ce qui ne marche pas Ce qui marche : les de Huet Exemples Comment dériver des pour tout type de données Pour en savoir plus
Plus en détailMesures de Risque Multipériodes Cohérentes Appliquées au Compte à Terme
TFE Ingénieur Civil Mathématiques Appliquées 24 juin 2010 Mesures de Risque Multipériodes Cohérentes Appliquées au Compte à Terme Auteur Christophe Pochet Promoteur Pierre Devolder Comment garantir la
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailGestion mémoire et Représentation intermédiaire
Gestion mémoire et Représentation intermédiaire Pablo de Oliveira March 23, 2015 I Gestion Memoire Variables locales Les variables locales sont stockées: Soit dans un registre,
Plus en détail3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes
PLAN CYCLE DE VIE D'UN LOGICIEL EXPRESSION DES BESOINS SPÉCIFICATIONS DU LOGICIEL CONCEPTION DU LOGICIEL LA PROGRAMMATION TESTS ET MISE AU POINT DOCUMENTATION CONCLUSION C.Crochepeyre Génie Logiciel Diapason
Plus en détailChap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1
Chap 4: Analyse syntaxique 1 III- L'analyse syntaxique: 1- Le rôle d'un analyseur syntaxique 2- Grammaires non contextuelles 3- Ecriture d'une grammaire 4- Les méthodes d'analyse 5- L'analyse LL(1) 6-
Plus en détailTraduction des Langages : Le Compilateur Micro Java
BARABZAN Jean-René OUAHAB Karim TUCITO David 2A IMA Traduction des Langages : Le Compilateur Micro Java µ Page 1 Introduction Le but de ce projet est d écrire en JAVA un compilateur Micro-Java générant
Plus en détailAlgorithmique des Systèmes Répartis Protocoles de Communications
Algorithmique des Systèmes Répartis Protocoles de Communications Master Informatique Dominique Méry Université de Lorraine 1 er avril 2014 1 / 70 Plan Communications entre processus Observation et modélisation
Plus en détailChapitre 1 : Introduction aux bases de données
Chapitre 1 : Introduction aux bases de données Les Bases de Données occupent aujourd'hui une place de plus en plus importante dans les systèmes informatiques. Les Systèmes de Gestion de Bases de Données
Plus en détailLicence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter
Plus en détailExpression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e
P r o b l é m a t i q u e OCL : O b j e c t C o n s t r a i n t L a n g u a g e Le langage de contraintes d UML Les différents diagrammes d UML permettent d exprimer certaines contraintes graphiquement
Plus en détail# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun>
94 Programmation en OCaml 5.4.8. Concaténation de deux listes Définissons maintenant la fonction concat qui met bout à bout deux listes. Ainsi, si l1 et l2 sont deux listes quelconques, concat l1 l2 constitue
Plus en détailAlgorithmique et Programmation Fonctionnelle
Algorithmique et Programmation Fonctionnelle RICM3 Cours 9 : Lambda-calcul Benjamin Wack Polytech 2014-2015 1 / 35 La dernière fois Typage Polymorphisme Inférence de type 2 / 35 Plan Contexte λ-termes
Plus en détaillength : A N add : Z Z Z (n 1, n 2 ) n 1 + n 2
1 Univ. Lille1 - Licence info 3ème année 2013-2014 Expression Logique et Fonctionnelle... Évidemment Cours n o 1 : Introduction à la programmation fonctionnelle 1 Introduction La programmation fonctionnelle
Plus en détailPeut-on tout programmer?
Chapitre 8 Peut-on tout programmer? 8.1 Que peut-on programmer? Vous voici au terme de votre initiation à la programmation. Vous avez vu comment représenter des données de plus en plus structurées à partir
Plus en détailLogiciel Libre Cours 2 Fondements: Programmation
Logiciel Libre Cours 2 Fondements: Programmation Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/
Plus en détailRaisonnement probabiliste
Plan Raisonnement probabiliste IFT-17587 Concepts avancés pour systèmes intelligents Luc Lamontagne Réseaux bayésiens Inférence dans les réseaux bayésiens Inférence exacte Inférence approximative 1 2 Contexte
Plus en détail2 Grad Info Soir Langage C++ Juin 2007. Projet BANQUE
2 Grad Info Soir Langage C++ Juin 2007 Projet BANQUE 1. Explications L'examen comprend un projet à réaliser à domicile et à documenter : - structure des données, - objets utilisés, - relations de dépendance
Plus en détailCatalogue des connaissances de base en mathématiques dispensées dans les gymnases, lycées et collèges romands.
Catalogue des connaissances de base en mathématiques dispensées dans les gymnases, lycées et collèges romands. Pourquoi un autre catalogue en Suisse romande Historique En 1990, la CRUS (Conférences des
Plus en détailGénie Logiciel avec Ada. 4 février 2013
Génie Logiciel 4 février 2013 Plan I. Généralités II. Structures linéaires III. Exceptions IV. Structures arborescentes V. Dictionnaires I. Principes II. Notions propres à la POO I. Principes Chapitre
Plus en détailÉléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Plus en détailLes Nouveautés Sage 100 CRM Vi7
Les Nouveautés Sage 100 CRM Vi7 Décembre 2011 Les fonctionnalités apportées par la version Sage 100 CRM vi7 Sage fait évoluer sa gamme de solutions de CRM : Toutes les éditions sont livrés avec le pilotage
Plus en détailMEMOIRE. Présenté à. L École Nationale d Ingénieurs de Sfax. en vue de l obtention du MASTERE
République Tunisienne Ministère de l Enseignement Supérieur, De la Recherche Scientifique et de la Technologie Université de Sfax École Nationale d Ingénieurs de Sfax Ecole Doctorale Sciences et Technologies
Plus en détailPour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère
L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la
Plus en détailMachines virtuelles Cours 1 : Introduction
Machines virtuelles Cours 1 : Introduction Pierre Letouzey 1 pierre.letouzey@inria.fr PPS - Université Denis Diderot Paris 7 janvier 2012 1. Merci à Y. Régis-Gianas pour les transparents Qu est-ce qu une
Plus en détailUNIVERSITE DE NICE-SOPHIA ANTIPOLIS ECOLE DOCTORALE STIC SCIENCES ET TECHNOLOGIES DE L INFORMATION ET DE LA COMMUNICATION THESE
UNIVERSITE DE NICE-SOPHIA ANTIPOLIS ECOLE DOCTORALE STIC SCIENCES ET TECHNOLOGIES DE L INFORMATION ET DE LA COMMUNICATION THESE pour l obtention du grade de Docteur en Sciences de l Université de Nice-Sophia
Plus en détailIntroduction à MATLAB R
Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d
Plus en détailmodules & compilation
Programmation fonctionnelle avec OCaml 3ème séance, 19 mars 2015 modules & compilation samuel.hornus@inria.fr http ://www.loria.fr/ shornus/ocaml/ Modules Un module regroupe un ensemble de définitions
Plus en détailModel checking temporisé
Model checking temporisé Béatrice Bérard LAMSADE Université Paris-Dauphine & CNRS berard@lamsade.dauphine.fr ETR 07, 5 septembre 2007 1/44 Nécessité de vérifier des systèmes... 2/44 Nécessité de vérifier
Plus en détailPlan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml
OCL Object Constraint Language Le langage de contraintes d'uml Plan 1. Introduction 2. Les principaux concepts d'ocl Object Constraint Language 1 Object Constraint Language 2 Exemple: une application bancaire
Plus en détailLogique. Plan du chapitre
Logique Ce chapitre est assez abstrait en première lecture, mais est (avec le chapitre suivant «Ensembles») probablement le plus important de l année car il est à la base de tous les raisonnements usuels
Plus en détail6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr
6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr Interface d un SGF Implémentation d un SGF Gestion de la correspondance entre la structure logique et la structure
Plus en détailD'UN THÉORÈME NOUVEAU
DÉMONSTRATION D'UN THÉORÈME NOUVEAU CONCERNANT LES NOMBRES PREMIERS 1. (Nouveaux Mémoires de l'académie royale des Sciences et Belles-Lettres de Berlin, année 1771.) 1. Je viens de trouver, dans un excellent
Plus en détailLa syllabe (1/5) Unité intuitive (différent du phonème) Constituant essentiel pour la phonologie au même titre que phonème et trait
La syllabe (1/5) Unité intuitive (différent du phonème) Variation des structures syllabiques d une langue à une autre et dans une même langue (cf strict vs à : une seule syllabe mais des structures bien
Plus en détailVérification formelle de la plate-forme Java Card
UNIVERSITÉ DE NICE - SOPHIA ANTIPOLIS École Doctorale STIC UFR Sciences THÈSE pour obtenir le titre de Docteur en Sciences de l Université de Nice - Sophia Antipolis Spécialité : Informatique présentée
Plus en détailLe modèle standard, SPE (1/8)
Le modèle standard, SPE (1/8) Rappel : notion de grammaire mentale modulaire Les composants de la grammaire : module phonologique, sémantique syntaxique Syntaxe première : elle orchestre la relation mentale
Plus en détailFormula Negator, Outil de négation de formule.
Formula Negator, Outil de négation de formule. Aymerick Savary 1,2, Mathieu Lassale 1,2, Jean-Louis Lanet 1 et Marc Frappier 2 1 Université de Limoges 2 Université de Sherbrooke Résumé. Cet article présente
Plus en détailMS SQL Express 2005 Sauvegarde des données
MS SQL Express 2005 Sauvegarde des données Création : 08.04.2011 Modification : 08.04.2011 Situation La base de données gratuite MSSQL Express 2005 ne dispose pas d agent (planificateur de tâche) comme
Plus en détailRapport d activité. Mathieu Souchaud Juin 2007
Rapport d activité Mathieu Souchaud Juin 2007 Ce document fait la synthèse des réalisations accomplies durant les sept premiers mois de ma mission (de novembre 2006 à juin 2007) au sein de l équipe ScAlApplix
Plus en détailSuivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)
Modularité Extensions Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs) généricité modules de première classe : peuvent être
Plus en détailAlgorithmique et Programmation, IMA
Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions
Plus en détailCours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation
Plus en détailProgrammation Orientée Objet
Programmation Orientée Objet Mohamed Tounsi Institut Supérieur d'informatique et de Multimédia Sfax Septembre 2014 Mohamed Tounsi (ISIMS) Programmation Orientée Objet Septembre 2014 1 / 16 Responsable
Plus en détailCorrection Code nécessaire à la compilation : let bs ="\\" let nl = "\n" ;; let appliquer = List.map ;; (* affichage d'un noeud *)
Correction Code nécessaire à la compilation : let bs ="\\" let nl = "\n" let appliquer = List.map (* affichage d'un noeud *) let (noeud_vers_ch : int -> string) = function n -> "fib(" ^ (string_of_int
Plus en détailPerl Console. Votre compagnon pour développer en Perl. Les Journées du Perl 2007 16, 17 novembre, Lyon. Alexis Sukrieh <sukria@sukria.
Perl Console Votre compagnon pour développer en Perl Les Journées du Perl 2007 16, 17 novembre, Lyon Alexis Sukrieh Plan Pourquoi une console? Le modèle «Read-Eval-Print-Loop» Dépendances
Plus en détailXML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)
Présentation du langage XML 1. De SGML à XML 17 2. Les bases de XML 18 2.1 Rappel sur HTML 18 2.2 Votre premier document XML 19 2.3 Les avantages de XML 21 3. La syntaxe XML 21 3.1 La première ligne du
Plus en détailAutomatisation de l administration système
Automatisation de l administration système Plan Problèmatique : trop de systèmes, trop de solutions Typage des solutions Puppet : gestion de configuration de systèmes Capistrano : déploiement d applications
Plus en détailConditions : stage indemnisé, aide au logement possible, transport CEA en Ile-de-France gratuit.
Proposition de stage de BAC+4 ou BAC+5 Pro ou Recherche Etude comparative des outils de vérification d'algorithmes parallèles Logiciels (LSL), localisé à Palaiseau (Essonne), développe les outils d'aide
Plus en détailJava 1.5 : principales nouveautés
Cours 6 - TEP - UPMC - 2008/2009 p. 1/34 Java 1.5 : principales nouveautés classes paramétrées : generics encapsulation des valeurs de types primitifs : auto[un]boxing itération sur les boucles types énumérés
Plus en détailVers l'ordinateur quantique
Cours A&G Vers l'ordinateur quantique Données innies On a vu dans les chapîtres précédents qu'un automate permet de représenter de manière nie (et même compacte) une innité de données. En eet, un automate
Plus en détailScience Direct - Cell Press
Science Direct - Cell Press Type Articles en ligne Domaine Biologie Périmètre d'abonnement Abonnement à trois revues : Cell, Biophysical Journal et Molecular cell Public Éditeur Elsevier Langue(s) Anglais
Plus en détailMIS 102 Initiation à l Informatique
MIS 102 Initiation à l Informatique Responsables et cours : Cyril Gavoille Catherine Pannier Matthias Robine Marc Zeitoun Planning : 6 séances de cours 5 séances de TD (2h40) 4 séances de TP (2h40) + environ
Plus en détailIntroduction au langage C
Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les
Plus en détailWindows Front-End Installation Guide HOPEX V1R1 FR
Révisé le : 5 novembre 2013 Créé le : 31 octobre 2013 Auteur : Jérôme Horber SOMMAIRE Résumé Ce document décrit les procédures et les paramétrages techniques nécessaires à l'installation, à la mise à jour
Plus en détailSécuristation du Cloud
Schémas de recherche sur données chiffrées avancés Laboratoire de Cryptologie Thales Communications & Security 9 Avril 215 9/4/215 1 / 75 Contexte Introduction Contexte Objectif Applications Aujourd hui
Plus en détailFondements de l informatique Logique, modèles, et calculs
Fondements de l informatique Logique, modèles, et calculs Cours INF423 de l Ecole Polytechnique Olivier Bournez Version du 20 septembre 2013 2 Table des matières 1 Introduction 9 1.1 Concepts mathématiques........................
Plus en détailCH.6 Propriétés des langages non contextuels
CH.6 Propriétés des langages non contetuels 6.1 Le lemme de pompage 6.2 Les propriétés de fermeture 6.3 Les problèmes de décidabilité 6.4 Les langages non contetuels déterministes utomates ch6 1 6.1 Le
Plus en détailCours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java
Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page
Plus en détailUne introduction à Java
Une introduction à Java IFT 287 (Semaine 1) UNIVERSITÉ DE SHERBROOKE 1 Java - Historique Développé par Sun Microsystems en 1994 Inventeur James Gosling (canadien!) Objectif langage sûr (fortement typé)
Plus en détailProgrammer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)
Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
Plus en détail! Text Encoding Initiative
Format XML: suite! le contenu d un élément est la concaténation de! texte! et d éléments (imbrication)! => structure arborescente! pas de chevauchement de balises! => exemple : une analyse syntagmatique
Plus en détailRéseaux de preuves booléens sous-logarithmiques
Mémoire en vue de l obtention du M2 L.M.F.I. à l Université Paris VII Encadrants : Virgile Mogbil & Paulin Jacobé de Naurois Laboratoire d accueil : Laboratoire d Informatique de Paris-Nord (UMR 7030 du
Plus en détailLa Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1
La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1 La licence Mathématiques et Economie-MASS de l Université des Sciences Sociales de Toulouse propose sur les trois
Plus en détailCarl-Louis-Ferdinand von Lindemann (1852-1939)
Par Boris Gourévitch "L'univers de Pi" http://go.to/pi314 sai1042@ensai.fr Alors ça, c'est fort... Tranches de vie Autour de Carl-Louis-Ferdinand von Lindemann (1852-1939) est transcendant!!! Carl Louis
Plus en détailArchitecture d'entreprise : Guide Pratique de l'architecture Logique
Guides Pratiques Objecteering Architecture d'entreprise : Guide Pratique de l'architecture Logique Auteur : Version : 1.0 Copyright : Softeam Equipe Conseil Softeam Supervisée par Philippe Desfray Softeam
Plus en détailLambda! Rémi Forax Univ Paris-Est Marne-la-Vallée
Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée forax at univ-mlv dot fr - ParisJUG Java.next() - Mars 2012 What Else? Lambda == Inner class? Java a des lambdas depuis la version 1.1 Exemple utilisant
Plus en détailPrincipes des langages de programmation INF 321. Eric Goubault
Principes des langages de programmation INF 321 Eric Goubault 24 mars 2014 2 Table des matières 1 Introduction 7 2 Programmation impérative 11 2.1 Variables et types........................... 11 2.2 Codage
Plus en détailSeconde et première Exercices de révision sur les probabilités Corrigé
I_ L'univers. _ On lance simultanément deux dés indiscernables donc il n'y a pas d'ordre. Il y a répétition, les dbles. On note une issue en écrivant le plus grand chiffre puis le plus petit. 32 signifie
Plus en détailDate : 18.11.2013 Tangram en carré page
Date : 18.11.2013 Tangram en carré page Titre : Tangram en carré Numéro de la dernière page : 14 Degrés : 1 e 4 e du Collège Durée : 90 minutes Résumé : Le jeu de Tangram (appelé en chinois les sept planches
Plus en détailBernard HAMM, Évelyne LAVOISIER
92 MAÎTRISE DE PROGICIELS DE GESTION DE BASES DE DONNÉES ET DE TRAITEMENT DE TEXTE Compte rendu d'un stage à l'usage des professeurs de sciences sociales. Ce stage a été programmé A la demande et avec
Plus en détailADAPT: un modèle de transcodage des nombres. Une application des systèmes de production au développement
ADAPT: un modèle de transcodage des nombres Une application des systèmes de production au développement Référence Barrouillet, P., Camos, V., Perruchet, P., & Seron, X. (2004). A Developmental Asemantic
Plus en détailProposition de sujet de thèse CIFRE EUROCOPTER / LGI2P
EUROCOPTER SAS Groupe EADS Marignane Ecole des Mines d Alès Laboratoire de Génie Informatique et d Ingénierie de Production LGI2P Nîmes Proposition de sujet de thèse CIFRE EUROCOPTER / LGI2P Titre Domaine
Plus en détailIntroduction à la programmation concurrente
Introduction à la programmation concurrente Moniteurs Yann Thoma Reconfigurable and Embedded Digital Systems Institute Haute Ecole d Ingénierie et de Gestion du Canton de Vaud This work is licensed under
Plus en détailPreuves formelles en arithmétiques à virgule flottante
N d ordre : 292 N attribué par la bibliothèque : 04ENSL0 292 École Normale Supérieure de Lyon Laboratoire de l Informatique du Parallélisme THÈSE présentée et soutenue publiquement le 22 novembre 2004
Plus en détailCompilation (INF 564)
Présentation du cours Le processeur MIPS Programmation du MIPS 1 Compilation (INF 564) Introduction & architecture MIPS François Pottier 10 décembre 2014 Présentation du cours Le processeur MIPS Programmation
Plus en détailLes travaux doivent être remis sous forme papier.
Physique mathématique II Calendrier: Date Pondération/note nale Matériel couvert ExercicesSérie 1 : 25 septembre 2014 5% RH&B: Ch. 3 ExercicesSérie 2 : 23 octobre 2014 5% RH&B: Ch. 12-13 Examen 1 : 24
Plus en détailCHAPITRE IV. L axiome du choix
CHAPITRE IV L axiome du choix Résumé. L axiome du choix AC affirme qu il est légitime de construire des objets mathématiques en répétant un nombre infini de fois l opération de choisir un élément dans
Plus en détailÉquations non linéaires
CHAPTER 1 Équations non linéaires On considère une partie U R d et une fonction f : U R d. On cherche à résoudre { x U 1..1) f x) = R d On distinguera les cas d = 1 et d > 1. 1.1. Dichotomie d = 1) 1.1.1.
Plus en détailCentre CPGE TSI - Safi 2010/2011. Algorithmique et programmation :
Algorithmique et programmation : STRUCTURES DE DONNÉES A. Structure et enregistrement 1) Définition et rôle des structures de données en programmation 1.1) Définition : En informatique, une structure de
Plus en détail1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions
Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 4 : Fonctions La construction de fonctions dans un langage de programmation permet aux
Plus en détailFonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples
45 Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples Les espaces vectoriels considérés sont réels, non réduits au vecteur nul et
Plus en détailLMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour
LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections
Plus en détailMachines Virtuelles. et bazard autour. Rémi Forax
Machines Virtuelles et bazard autour Rémi Forax Avant propos Quelle est la complexité du code ci-dessous? Avec un processeur à 1Ghz, combien de temps le calcul prendra t'il? public static void main(string[]
Plus en détail