Autres langages de l IA

Dimension: px
Commencer à balayer dès la page:

Download "Autres langages de l IA"

Transcription

1 Autres langages de l IA Cours en cours de réalisation Module Programmation Logique Pierre De Loor enib

2 Exemples Programmation logiques par contraintes Programmation fonctionnelle CLIPS SOAR Programmation logique parallèle Programmation des logiques modales Programmation des logiques temporelles Programmation logique inductive Programmation logique abductive

3 Programmation logique par contraintes CHIP CLP CLP(FD) Distribution AWC

4 Programmation fonctionnelle (PF) Fonctions Origine mathématique Lambda-calcul : Church 1932 Formalisation de la notion de fonctions Exclusion de la dualité Intension/extension Fonctions définies par des règles Récursivité intrinsèque : le domaine des lambdafonctions est l ensemble des termes du lambdacalcul Applications Mathématiques Informatique Linguistique

5 PF : lambda calcul Langage naturel Appliquer la consigne au véhicule Partir en véhicule consigne En utilisant Un traineau Partir en traineau

6 PF : lambda-calcul Lambda Langage λ.x Partir en x consigne En utilisant Un traineau Partir en traineau

7 PF : lambda calcul Lambda-calcul λ.x(partir en x) traineau

8 PF : lambda calcul Mise en cascade λ.y(λ.x(partir en x y) traîneau) bleu) Réduction λ.x(partir en x bleu) traîneau (partir en traîneau bleu)

9 PF : lambda calcul Récursivité F (G F) Exemple du factoriel G λ.f[λ.n[if(=n 0) 1 (* n(f(-n 1)))]]

10 PF : Exemple en LISP (defun fact (n)) (if (eq n 0) 1 (* n fact (- n 1)) ) )

11 PF : conclusion (1/2) Puissance d expression Parler de fonctions sans connaitre leur valeur Fonctions d ordres supérieurs Languages : LISP Miranda OCaml Haskell

12 PF : conclusion (2/2) PF et PL Pas d unification ni de retour arrière Ordre supérieur Fusionner les deux? Curry

13 CLIPS NASA (CLIPS 1985 CLIPS ) «Système de production» Langage de description de S.E. Noyau de plusieurs milliers de SE. Faits et règles typés Assertion et délétion Chaînage avant Hiérarchie des règles «salience» Règles actives à un instant : agenda Réfraction Algorithme RETE : complexité linéaire nbfait nbrègles

14 CLIPS : Principe Base de règles règles Type de faits réfraction Agenda Règles «activables» activation Faits cycle production Appariement (Rete)

15 CLIPS : Mots clés Base de règles règles defrule deftemplate Type de faits Agenda Règles «activables» refresh réfraction activation assert/modify duplicate/retract/deffacts/reset Faits run<n> production appariement

16 CLIPS : Execution Une règle activée est mise dans l agenda Lorsqu elle est exécutée elle est retirée de l agenda : «refraction» Au prochain pas, elle ne sera pas réactivée Sauf si c est par de nouveaux faits Une régle peut être mise en plusieurs exemplaires dans l agenda si elle est activée par plusieurs faits La fonction (refresh <règle>) remet la règle dans l agenda comme si elle n avait pas été activée

17 CLIPS : Types faits et règles exemple 1 (deftemplate objet (slot nom) (slot position) (slot couleur)) (deftemplate posseder (slot objet)) (deftemplate liste-nombres (multislot values)) (defrule prendre (objet (nom?unnom)) => (assert(posseder (objet?unnom))

18 CLIPS : Types faits et règles exemple 1 ; faits initiaux en ligne : assert (assert(objet (nom cafetiere) (position 5-7) (couleur bleue))) ; faits initiaux en vrac : deffacts ; ils seront insérés suite à l'instruction (reset) (deffacts scene1 "Exemple de scene" (objet (nom theiere) (position 4-4) (couleur verte)) (objet (nom chaise) (position 1-1) (couleur jaune)) (objet (nom pomme) (position 4-8) (couleur rouge)))

19 CLIPS : Exemple d exécution exemple 1 clips CLIPS (V /15/03) CLIPS> (load "coursexample1.clp") Defining deftemplate: objet Defining deftemplate: posseder Defining deftemplate: liste-nombres Defining defrule: prendre +j Defining deffacts: scene1 TRUE CLIPS> (assert (objet (nom cafetiere) (position 1-2) (couleur bleue))) <Fact-0> CLIPS> (facts) f-0 (objet (nom cafetiere) (position 1-2) (couleur bleue)) For a total of 1 fact. CLIPS> (agenda) 0 prendre: f-0 For a total of 1 activation. CLIPS> (run) CLIPS> (facts) f-0 (objet (nom cafetiere) (position 1-2) (couleur bleue)) f-1 (posseder (objet cafetiere)) For a total of 2 facts. CLIPS> (agenda) CLIPS> (reset) CLIPS> (facts) f-0 (initial-fact) f-1 (objet (nom theiere) (position 4-4) (couleur verte)) f-2 (objet (nom chaise) (position 1-1) (couleur jaune)) f-3 (objet (nom pomme) (position 4-8) (couleur rouge)) For a total of 4 facts. CLIPS> (agenda) 0 prendre: f-3 0 prendre: f-2 0 prendre: f-1 For a total of 3 activations. CLIPS> (run) CLIPS> (facts) f-0 (initial-fact) f-1 (objet (nom theiere) (position 4-4) (couleur verte)) f-2 (objet (nom chaise) (position 1-1) (couleur jaune)) f-3 (objet (nom pomme) (position 4-8) (couleur rouge)) For a total of 4 facts. CLIPS> (agenda) 0 prendre: f-3 0 prendre: f-2 0 prendre: f-1 For a total of 3 activations. CLIPS> (run) CLIPS> (facts) f-0 (initial-fact) f-1 (objet (nom theiere) (position 4-4) (couleur verte)) f-2 (objet (nom chaise) (position 1-1) (couleur jaune)) f-3 (objet (nom pomme) (position 4-8) (couleur rouge)) f-4 (posseder (objet pomme)) f-5 (posseder (objet chaise)) f-6 (posseder (objet theiere)) For a total of 7 facts. CLIPS> (agenda) CLIPS>

20 CLIPS : Exemple 2 (deftemplate vehicule (slot nom) (slot position) (slot vitesse)) (defrule sortirparking?f1 <- (vehicule (position parking)) => (modify?f1 (position route) (vitesse 40km/heures))) clips CLIPS (V /15/03) CLIPS> (load "coursexemple2.clp") Defining deftemplate: vehicule Defining defrule: sortirparking +j TRUE CLIPS> (assert (vehicule (nom trotinette) (position parking) (vitesse 0))) <Fact-0> CLIPS> (assert (vehicule (nom kart) (position route) (vitesse 12km/h))) <Fact-1> CLIPS> (facts) f-0 (vehicule (nom trotinette) (position parking) (vitesse 0)) f-1 (vehicule (nom kart) (position route) (vitesse 12km/h)) For a total of 2 facts. CLIPS> (agenda) 0 sortirparking: f-0 For a total of 1 activation. CLIPS> (run) CLIPS> (facts) f-1 (vehicule (nom kart) (position route) (vitesse 12km/h)) f-2 (vehicule (nom trotinette) (position route) (vitesse 40km/heures)) For a total of 2 facts. CLIPS> (agenda) CLIPS>

21 CLIPS : Hiérarchiser les règles Utilisation de salience Méta-règles Exemple : Utiliser les règles relatives à la couleur des champignons Puis celles relatives à la température Sauf si l on rencontre certains faits

22 CLIPS : Stratégie de chaînage Correspond à un tri par défaut des règles Largeur + salience Profondeur + salience Aléatoire Lexicale Complexité

23 CLIPS : calcul de la salience Explicitée par l utilisateur Règles pré-définies : Lors de l activation des règles Lors de la définitions de règles A Chaque cycles

24 CLIPS : conclusions C Language Integrated Production System Version JAVA : Jess CLIPS et PL? Chaînage avant Unification Mixage? «Quelle est donc cette fleur» [Aichelle] Beaucoup de Systèmes Experts définis en CLIPS

25 Programmation Logique Parallèle Quoi : paralléliser la résolution de Prolog a :- b,c,d. a :- c,d. a :- f. % règle r1 % règle r2 % règle r3 prolog est séquentiel : scrutation des conjonctions (b puis c puis d) scrutation des disjonctions (r1 puis r2 puis r3)

26 PLP : Pourquoi paralléliser prolog Pas de justification de la scrutation séquentielle Branches infinies Optimisation

27 PLP : Exemple concaplat(t1,t2,t3): aplatir(t1,t1p), aplatir(t2,t2p), conc(t1p,t2p,t3). conc peut commencer dès que l on a le début de T1P et de T2P. mieux : concaplat peut commencer dès que l on a le début de T1 et T2 (possibilité de listes infinies). lazy evaluation. problème : il existe une règle conc([],[],[]).

28 PLP : Parallélisation des conjonctions a(x,y) :- b(x,z),c(z,q),d(x,q,y). en parallèle problème d unification priorités? direction (flots de données) échec ou «suspension»

29 PLP : Parallélisation des disjonctions couleur(jaune). couleur(vert). couleur(orange). en parallèle -? couleur(x). problème de choix indeterminisme problème de suspension

30 PLP : Imposer des flots Parlog Concurrent Prolog mode conc(?,?, ). mode applatir(?, ). mode concapplat(?,?, ). concapplat aplatir aplatir conc

31 PLP : Revoir l unification Si une entrée est une variable la règle n est pas en échec elle est «suspendue» ensuite : unification classique

32 PLP : Exemple -? concaplat([a,[b]],[c,d],l): 1 2 aplatir([a,[b]],x) aplatir([c,d],y) aplatir([[b]],x1) X=[a X1] aplatir([d],x2) Y=[d X2] Dès que 1 et 2 sont finies on peut lancer conc([a X1],[b X2],L) Si 1 va + vite que 2 on peut arriver à conc([a,b],[c X2]). Si 2 va + vite que 1 on peut arriver à conc([a X1],[c,d]).

33 PLP : Indéterminisme par essence plusieurs processus peuvent être la source d une même variable. solution dépendante de la «vitesse» relative des processus. la solution est «logiquement» bonne

34 PLP : Le retour arrière n existe plus comme si chaque prédicat commençait par un! toutes les unifications des têtes sont évaluées en parallèle l engagement : la première tête unifiable trouvée a gagné les autres sont abandonnées non déterministe choix délibéré : engagement dans une branche si la branche est en échec «fail» et c est tout on ne trouve qu une solution ou aucune (incomplet)

35 PLP : Limiter les engagements : les gardes «:» régle :- g1,g2 : b1,b2. garde engagement si la garde est vraie sinon suspension : attente d une garde vraie mode on_ord_tree(?,,?). on_ord_tree(key,value,bt(x,(key,value),y)). on_ord_tree(key,value,bt(x,(key2,_),y)):- KEY<KEY2 : on_ord_tree(key,value,x). on_ord_tree(key,value,bt(x,(key2,_),y)):-key>key2 on_ord_tree(key,value,y):.

36 PLP : Pas facile de trouver les gardes Exemple de recherche sur un arbre non ordonné mode on_tree(?,,?). on_tree(key,value,bt(x,(key,value),y)). on_tree(key,value,bt(x,(_,_),y)):- on_tree(key,value,x):. on_tree(key,value,bt(x,(_,_),y)):- on_tree(key,value,y):.

37 PLP : Quelques variantes Concerne surtout le mécanisme de garde L évaluation de la garde ne peut «envoyer» de résultats aux buts (sauf lors de l engagement) Que faire si la résolution des buts modifie la valeur de la garde? Concurrent Prolog [Shapiro, 1983] Guarded Horn Clauses [Ueda 1985] Parlog [Gregory 1987] travaux récents : «Continuations for Parallel Logic Programming (2000)» [Eneia Todoran]

38 Programmation en Logique Modale : PLM Objectifs : Expressivité Spécification plus «naturelle» Modalité : vouloir, savoir, pouvoir, croire, devoir, possible Puissance Extension du système de résolution (ou système de preuve)

39 PLM : Rappel sur les systèmes formels réel Concept Principe Idée formaliser théorie système formel prédire fonctionne seul

40 PLM : Rappel sur les systèmes formels complétude réel modèle axiomatique adéquation Notion de vérité {v,f} de validité Notion de preuve : théorèmes

41 PLM : Calcul propositionnel Langage : propositions, connecteurs, règle d équivalence Axiomatique : 3 axiomes, 1 règle d inférence Modèle : tables de vérité Proposition langage naturel

42 PLM : Logiques Modales Langage : propositions, connecteurs modaux, règle d équivalence Axiomatique : T S1..S5 Modèle : mondes possibles Modalités de raisonnement

43 PLM : Paradoxe d implication matérielle A B (A B) (A B) (A B) (A B) t t t t t t t f f f f t f t f t f t f f t t f f Si A = f, A B est vrai (quelque soit B)!!

44 PLM : Modalités selon le dictionnaire Linguistique Comparer les langues Mots qui représentent des valeurs Désirative, éventuelle, hypothétique, probable, possible, nécessaire Représentant des opinions, attitudes, jugements, propositions Déontique, épistémique, aléthique Logiciens Fluctuation entre le nécessaire, le possible et le probable

45 PLM : Modalités, différents courants Philosophie/logique Propositions modales Aristote : Possibilité/nécessité Kant : Problématique Assertorique Logique classique : Possibilité/impossibilité Contingence/nécessité

46 PLM : modalités (exemple de classification d après Paul Laurendeau) Assertion Modalisation Modalité objective Modalité subjective Modalité Mixte Ontique (stabilité) Aléthique (fluctuation s à être) Épistémique (connaissance du sujet, fluctuation sur le connaître) Appréciative (bon/mauvaisnormal/étrang e) Déontique (devoir être) -objectif +subjectif (morale) Volitive (désir, volonté) assertion stricte Assertion subjective (selon mon expérience) Négation d une fluctuation, prise en charge, prise en compte Possible, probable, incertain. S appuie sur un étalon extérieur au sujet Jugement de valeur + être et ne pas être dans le monde Subjectivité (je réclame) + être et n être pas dans le monde Il fait chaud Il fait, selon moi, chaud Je dis qu il vient Je t assure qu il vient Je vais peut-être visiter cette ville. Il va bien venir. Il est probable qu il vienne Je crois qu il vient Je prétends qu il viendra J ai peutêtre visité cette ville Je me réjouis qu il vienne Tu devrais rendre visite àta mère Je veux qu il vienne

47 PLM : modalités (selon Antoine Culioli)

48 PLM : Logiques Aléthiques Opérateurs modaux : Possibilité : Nécessité : Modèles : mondes possibles Spécialisation : Logique des connaissances SAVOIR COMPATIBLE AVEC MES CONNAISSANCES Logique des croyances Logiques temporelle modales (toujours/parfois)

49 PLM : modèle : pas de table de vérité Exemple Fait : le ciel est bleu Ciel_bleu

50 Bibliographie [Aichelle] Aichelle D., «Quelle est donc cette fleur», Fernand Nathan. [All 92] Alliot J.M. et al, «Implementing Prolog extensions : A Parallel Inference Machine», International Conference on Fifth Generation Computer System, [Bal 88] Balbiani P., Farinas del Cerro L. Herzig A, «Declarative semantics for modal logic programs», Proc. Int. Conf. On Fifth Generation Computer Systems (FGCS-88). [Dix 98] Dix J. et al «The Logic Programming Paradigm», AI Communication vol 11, pages , [Fish 93] Fisher M. et al, «An Introduction to Executable Modal and Temporal Logics» In Proc. of the IJCAI 93 workshop on Executable Modal and Temporal Logics, volume 897 of LNAI, pages 1-20, springerverlag, [Ger 01] Gergatsoulis «Temporal and Modal Logic Programming Langages», Encyclopedia of Microcomputers, vol 27, supplement 6, pages , New-York, [Giarratano 98] Giarratano & Ripley, «Expert Systems, Principles and programming», PWS Publishing Compagny, [Gre 87] Gregory S. «Parallel Logic Programming in PARLOG», [Liu 98] Liu C. «A Temporal Reasoning Methodology for Concurrent Systems Using Chronolog (MC)», Proc of the 2st Australian Computer Science Conference, [Org 93] Orgun M.A «Chronolog(Z): Linear-time Logic programming», in Proc of the Fith International Conference on Computing and Information, pages , IEE Computer Society Press, [Ron 98] Rondogiannis P. et al, «Branching-time Logic Programming: The Language Cactus and its Applications», Computer Languages Vol 24, Issue 3, pages , [Sha 83] Shapiro, «Concurrent Prolog», [Tod 00] Eneia Tordoran, «Continuation for Parallel Logic Programming», [Ued 85] Ueda, «Guarded Horn Clauses»,

Systèmes à base de règles

Systèmes à base de règles Systèmes à base de règles 1/100 Introduction Méthode classique de représentation de connaissances (1943, règles de production). Souvent utilisé en IA et dans les systèmes experts (semblable aux raisonnements

Plus en détail

Programmation Avancée - Prolog

Programmation Avancée - Prolog Programmation Avancée - Prolog N. Prcovic Programmation Avancée - Prolog p.1/26 Introduction La programmation logique est une forme particulière de programmation déclarative. La programmation déclarative

Plus en détail

Programmation fonctionnelle

Programmation fonctionnelle Programmation fonctionnelle Cours + exos corrigés Éric Violard Maître de conférences HDR à l université de Strasbourg Au terme de ce projet, je souhaite dédier ce livre à ma fille Julie et à son bonheur

Plus en détail

Programme de la licence informatique, université de Caen http://www.info.unicaen.fr

Programme de la licence informatique, université de Caen http://www.info.unicaen.fr Programme de la licence informatique, université de Caen http://www.info.unicaen.fr Unité Systèmes d'information CM : 45h - TD : 60h - TP : 12h - Coeff 2 Systèmes de Gestion de Bases de Données Modéliser

Plus en détail

Système à Base de Règles. EPITA SYBR SCIA Adrien Pain -Version 1 (11) Philippe Morignot V2(oct. 12), V3 (oct. 13), V4 (sept. 15)

Système à Base de Règles. EPITA SYBR SCIA Adrien Pain -Version 1 (11) Philippe Morignot V2(oct. 12), V3 (oct. 13), V4 (sept. 15) Système à Base de Règles EPITA SYBR SCIA Adrien Pain -Version 1 (11) Philippe Morignot V2(oct. 12), V3 (oct. 13), V4 (sept. 15) Plan du cours 1. Diagnostic 2. Systèmes experts 3. Algorithme RETE 4. Travaux

Plus en détail

Principes de fonctionnement des moteurs d inférences. Le Moteur d Inférences (MI)

Principes de fonctionnement des moteurs d inférences. Le Moteur d Inférences (MI) Principes de fonctionnement des moteurs d inférences 1 Le Moteur d Inférences (MI) BCD Si A et B -> D Si A et non D -> non C BCP Moteur d Inférences A vrai C faux B? D? Le MI décide, en fonction de la

Plus en détail

Évaluation et implémentation des langages

É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étail

Utilisation des tableaux sémantiques dans les logiques de description

Utilisation des tableaux sémantiques dans les logiques de description Utilisation des tableaux sémantiques dans les logiques de description IFT6281 Web Sémantique Jacques Bergeron Département d informatique et de recherche opérationnelle Université de Montréal bergerja@iro.umontreal.ca

Plus en détail

Informatique Machines à calculer en théorie et en pratique

Informatique Machines à calculer en théorie et en pratique Licence Physique-Chimie Histoire des Sciences Informatique Machines à calculer en théorie et en pratique Notes de Cours 1 Introduction Étymologie En Allemagne (1957) le terme «Informatik» est créé par

Plus en détail

1. Les fondements de l informatique 13

1. Les fondements de l informatique 13 Introduction à l'algorithmique 1. Les fondements de l informatique 13 1.1 Architecture de Von Neumann 13 1.2 La machine de Turing 17 1.3 Représentation interne des instructions et des données 19 1.3.1

Plus en détail

Logique et bases de données

Logique et bases de données Logique et bases de données Plan Théorie du premier ordre Hypothèses CWA, unique name, domain closure BD comme interprétation BD comme théorie du 1er ordre BD déductives Signification des différentes formes

Plus en détail

Cours de Master Recherche

Cours de Master Recherche Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction

Plus en détail

Langage dédié pour le pilotage de solveurs de contraintes

Langage dédié pour le pilotage de solveurs de contraintes LABORATOIRE D INFORMATIQUE DE NANTES-ATLANTIQUE UMR 6241 ÉCOLE DOCTORALE STIM, N. 503 «Sciences et technologies de l information et des mathématiques» Sujet de thèse pour 2010 Langage dédié pour le pilotage

Plus en détail

Algorithmique - Techniques fondamentales de programmation Exemples en Python (nombreux exercices corrigés) - BTS, DUT informatique

Algorithmique - Techniques fondamentales de programmation Exemples en Python (nombreux exercices corrigés) - BTS, DUT informatique Introduction à l'algorithmique 1. Les fondements de l informatique 13 1.1 Architecture de Von Neumann 13 1.2 La machine de Turing 17 1.3 Représentation interne des instructions et des données 19 1.3.1

Plus en détail

AL5L Architecture logicielle. Séance 3 Paradigmes de programmation

AL5L Architecture logicielle. Séance 3 Paradigmes de programmation AL5L Architecture logicielle Séance 3 Paradigmes de programmation Sébastien Combéfis mardi 3 février 2015 Ce(tte) œuvre est mise à disposition selon les termes de la Licence Creative Commons Attribution

Plus en détail

Plan du cours de Programmation logique

Plan du cours de Programmation logique Plan du cours de Programmation logique 1 Introduction 2 3 Igor Stéphan 1/ 64 La logique comme langage de programmation Un langage de programmation logique est défini par : un langage des données Ω; et

Plus en détail

P R O G R A M M E E T I N S T R U C T I O N S O F F I C I E L L E S

P R O G R A M M E E T I N S T R U C T I O N S O F F I C I E L L E S P R O G R A M M E E T I N S T R U C T I O N S O F F I C I E L L E S POUR L ENSEIGNEMENT DE L INFORMATIQUE MPSI première année I. Objectifs de la formation II-1 Développement de compétences et d aptitudes

Plus en détail

Programmation par contraintes Cours 3 : Programmation logique avec contraintes PLC

Programmation par contraintes Cours 3 : Programmation logique avec contraintes PLC Cours 3 : avec contraintes PLC ESIL Université de la méditerranée Odile.Papini@esil.univ-mrs.fr http://pages-perso.esil.univmed.fr/ papini/ Plan du cours 3 1 Introduction 2 3 4 Bibliographie Livres : K.

Plus en détail

Diagnostic et décision

Diagnostic et décision Diagnostic et décision Bibliographie J. N. Chatain, DIagnostic par Système Expert, Traité des Nouvelles Technologies, série Diagnostic et Maintenance, édition Hermes 1993. B. Dubuisson, Diagnostic, intelligence

Plus en détail

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

Bases de données Cours 5 : Base de données déductives Cours 5 : ESIL Université de la méditerranée Odile.Papini@esil.univmed.fr http://odile.papini.perso.esil.univmed.fr/sources/bd.html Plan du cours 1 Introduction 2 approche sémantique approche axiomatique

Plus en détail

Typage et Analyse Statique

Typage et Analyse Statique Typage et Analyse Statique Cours 1 Emmanuel Chailloux Spécialité Science et Technologie du Logiciel Master mention Informatique Université Pierre et Marie Curie année 2015-2016 Cours 1 - Typage et Analyse

Plus en détail

Mémoire de Magister. Formalisation de la logique temporelle dans Coq

Mémoire de Magister. Formalisation de la logique temporelle dans Coq N d ordre :.../Faculté des sciences/umbb 2012 RÉPUBLIQUE ALGÉRIENNE DÉMOCRATIQUE ET POPULAIRE. MINISTERE DE L ENSEIGNEMENT SUPÉRIEUR ET DE LA RECHERCHE SCIENTIFIQUE. UNIVERSITÉ M HAMED BOUGARA - BOUMERDES

Plus en détail

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com Intelligence Artificielle et Systèmes Multi-Agents Badr Benmammar bbm@badr-benmammar.com Plan La première partie : L intelligence artificielle (IA) Définition de l intelligence artificielle (IA) Domaines

Plus en détail

Vérification formelle de la plate-forme Java Card

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étail

Cours de logique pour l informatique

Cours de logique pour l informatique Cours de logique pour l informatique Prof. Jean-François Raskin Département d Informatique Faculté des Sciences Université Libre de Bruxelles Année académique 2007-2008 0-0 Organisation pratique du cours

Plus en détail

Démonstrations. Chapitre 4. 4.1 Introduction

Démonstrations. Chapitre 4. 4.1 Introduction Chapitre 4 Démonstrations L objectif de ce chapitre est de commencer à aborder la question fondamentale suivante : qu est-ce qu une démonstration? Pour cela, plus précisément, on va se focaliser dans ce

Plus en détail

INFO-F-302 Informatique Fondamentale Projet : Logique du Premier Ordre et Utilisation de l Outil Z3

INFO-F-302 Informatique Fondamentale Projet : Logique du Premier Ordre et Utilisation de l Outil Z3 UNIVERSITÉ LIBRE DE BRUXELLES (corrected version 20120416) INFO-F-302 Informatique Fondamentale Projet : Logique du Premier Ordre et Utilisation de l Outil Z3 L objectif de ce projet est de modéliser des

Plus en détail

Leçon 1: les entiers

Leçon 1: les entiers Leçon 1: les entiers L ensemble N des entiers naturels Compter, dresser des listes, classer et comparer des objets interviennent dans de multiples activités humaines. Les nombres entiers naturels sont

Plus en détail

Génie logiciel. Concepts fondamentaux. Bruno MERMET, Université du Havre 1

Génie logiciel. Concepts fondamentaux. Bruno MERMET, Université du Havre 1 Génie logiciel Concepts fondamentaux Bruno MERMET, Université du Havre 1 Nécessité du Génie Logiciel Bruno MERMET, Université du Havre 2 Développement d un logiciel Caractéristiques souhaitées : Adéquation

Plus en détail

Correction de programmes : Logique de Hoare

Correction de programmes : Logique de Hoare 16 juillet 2009 Logique et informatique Vis-à-vis de l informatique la logique a au moins 2 rôles : 1 Externe et théorique (fondements de l informatique - Électif en S4) : Logique comme méta-informatique

Plus en détail

Systèmes décisionnels et programmation avancée

Systèmes décisionnels et programmation avancée Systèmes décisionnels et programmation avancée M1 SIR Philippe Muller et Mustapha Mojahid, Matthieu Serrurier, Marie-Christine Scheix 2014-2015 Introduction structure du cours intervenants introduction

Plus en détail

GIND5439 Systèmes Intelligents. Chapitre 2: Systèmes à base de règles

GIND5439 Systèmes Intelligents. Chapitre 2: Systèmes à base de règles GIND5439 Systèmes Intelligents Chapitre 2: Systèmes à base de règles Contenu du chapitre Définition de connaissances Représentation des connaissances Les règles Chaînage avant et arrière Résolution de

Plus en détail

FSAB 1402 - Suggestions de lecture

FSAB 1402 - Suggestions de lecture FSAB 1402 - Suggestions de lecture 2006 Concepts, techniques and models of computer programming Cours 1 - Intro Chapitre 1 (sections 1.1, 1.2, 1.3, pages 1-3) Introduction aux concepts de base Chapitre

Plus en détail

Introduction au model-checking et application à la vérification des protocoles cryptographiques

Introduction au model-checking et application à la vérification des protocoles cryptographiques Introduction au model-checking et application à la vérification des protocoles cryptographiques Prof. John MULLINS École Polytechnique de Montréal Prof. John MULLINS (École Polytechnique) Introduction

Plus en détail

Introduction à l Intelligence Artificielle

Introduction à l Intelligence Artificielle 1 / 14 Introduction à l Intelligence Artificielle Présentation de l option 2 nd semestre 2014-15 Philippe Chatalic chatalic@lri.fr Université Paris Sud Laboratoire de Recherche en Informatique (UMR CNRS

Plus en détail

Inroduction à Jess (Java Expert System Shell)

Inroduction à Jess (Java Expert System Shell) Inroduction à Jess (Java Expert System Shell) Jess Developed at Sandia National Laboratories in late 1990s. Created by Dr. Ernest J. Friedman-Hill. Inspired by the AI production rule language CLIPS. Fully

Plus en détail

Introduction au lambda-calcul pur

Introduction au lambda-calcul pur Introduction au lambda-calcul pur Yves Bertot Février 2006 1 Le plus petit langage de programmation du monde Pour l informaticien, l étude du λ-calcul (prononcer lambda-calcul) permet de comprendre sur

Plus en détail

Systèmes d'informations Géographiques - Graphes

Systèmes d'informations Géographiques - Graphes Systèmes d'informations Géographiques - Graphes Institut National des Sciences Appliquées - Rouen Département Architecture des Systèmes d'information michel.mainguenaud@insa-rouen.fr Graphe et Spatialisation!

Plus en détail

Rapport des travaux du bureau d étude Prolog «Programmer en Prolog»

Rapport des travaux du bureau d étude Prolog «Programmer en Prolog» Ministère d Enseignement Supérieur, de Recherche Scientifique et de Technologies *** Ecole Nationale d Ingénieurs de Tunis ***** Département de Technologies d Informations et de Communications *******

Plus en détail

Analyse syntaxique et application aux langues naturelles. Grammaires Lexicales Fonctionnelles (LFG)

Analyse syntaxique et application aux langues naturelles. Grammaires Lexicales Fonctionnelles (LFG) Université de Nice Sophia Antipolis Master 2 Recherche PLMT Analyse syntaxique et application aux langues naturelles Grammaires Lexicales Fonctionnelles (LFG) Jacques Farré et Sylvain Schmitz Analyse syntaxique

Plus en détail

Génération aléatoire de structures ordonnées

Génération aléatoire de structures ordonnées Génération aléatoire de structures ordonnées Olivier Roussel Équipe APR Laboratoire d Informatique de Paris 6 Université Pierre et Marie Curie ALÉA 2011 7 mars 2011 Olivier Roussel (LIP6) Génération de

Plus en détail

LA PROGRAMMATION LOGIQUE PAR CONTRAINTES MOTIVATIONS

LA PROGRAMMATION LOGIQUE PAR CONTRAINTES MOTIVATIONS LA PROGRAMMATION LOGIQUE PAR CONTRAINTES MOTIVATIONS De la PL vers la PLC 1) Introduction de la PLC : motivations, exemples 2) Principes de la programmation par contraintes (définition, résolution) 3)

Plus en détail

Les Microprocesseurs partie2

Les Microprocesseurs partie2 Université Constantine 2 Abdelhamid Mehri Faculté des NTIC Département MI Electronique des Composants & Systèmes Les Microprocesseurs partie2 Cours de L1 - TRONC COMMUN DOMAINE MATHEMATIQUES INFORMATIQUE

Plus en détail

Autostabilisation. de l exclusion mutuelle sur un anneau à l élection d un chef sur un graphe quelconque

Autostabilisation. de l exclusion mutuelle sur un anneau à l élection d un chef sur un graphe quelconque : de l exclusion mutuelle sur un anneau à l élection d un chef sur un graphe quelconque Laboratoire d Informatique Fondamentale d Orléans, Université d Orléans, Orléans, FRANCE JIRC 30 juin 2005 Blois

Plus en détail

COMPUTER SCIENCE Paris 7 Denis Diderot

COMPUTER SCIENCE Paris 7 Denis Diderot COMPUTER SCIENCE Paris 7 Denis Diderot LICENCE 1 SEMESTER 2 (Spring) o Initiation à la programmation 2 o Concepts informatiques o Internet et outils o Mathématiques élémentaires 2 COURSE DESCRIPTION Initiation

Plus en détail

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3 I Arbres binaires 2014-2015 Table des matières 1 Rappels 2 1.1 Définition................................................ 2 1.2 Dénombrements............................................ 2 1.3 Parcours.................................................

Plus en détail

Initiation à l Intelligence Artificielle

Initiation à l Intelligence Artificielle Initiation à l Intelligence Artificielle Philippe Beaune, Gauthier Picard, Laurent Vercouter École Nationale Supérieure des Mines de Saint-Étienne gauthierpicard@emsefr Pôle XXI 2010-2011 Initiation à

Plus en détail

Systèmes experts. MASTER 1 /IUP 3 Informatique. ISTV Université de Valenciennes et du Hainaut-Cambrésis E. ADAM

Systèmes experts. MASTER 1 /IUP 3 Informatique. ISTV Université de Valenciennes et du Hainaut-Cambrésis E. ADAM Systèmes experts MASTER 1 /IUP 3 Informatique ISTV Université de Valenciennes et du Hainaut-Cambrésis E. ADAM Introduction Premiers Systèmes Experts fin 1970 But du SE = reproduire le comportement d'un

Plus en détail

Introduction à l algorithmique et à la programmation 2013-2014. Cyril Nicaud Cyril.Nicaud@univ-mlv.fr. Cours 1 / 5

Introduction à l algorithmique et à la programmation 2013-2014. Cyril Nicaud Cyril.Nicaud@univ-mlv.fr. Cours 1 / 5 Introduction à l algorithmique et à la programmation IUT 1ère année 2013-2014 Cyril Nicaud Cyril.Nicaud@univ-mlv.fr Cours 1 / 5 Déroulement du cours Organisation : 5 séances de 2h de cours 10 séances de

Plus en détail

Linear-algebraic λ-calculus Lineal

Linear-algebraic λ-calculus Lineal Linear-algebraic λ-calculus Lineal (Janvier 2005) Pabo Arrighi (Leibniz), Gilles Dowek (LIX) Yliès Falcone (ufr ima) Mardi 21 Mars 2006 Yliès Falcone () Module IQ - 1/18 Mardi 21 Mars 2006 1 / 18 IQ, et

Plus en détail

Programme de la 3ème année

Programme de la 3ème année Programme de la 3ème année de la licence informatique Recopié du Syllabus L3 Informatique. 2003-2004 (UPS Toulouse) Algorithmes, Types de données et preuves (84h) Objectif : Approfondir l'algorithmique

Plus en détail

Technique d Intelligence Artificielle : Résumé

Technique d Intelligence Artificielle : Résumé Technique d Intelligence Artificielle : Résumé Chapitre 1 : Préambule 1.1 Système classique de gestion! Processus bien défini et bien connu! Utilisateur passif! Ex : logiciel de gestion Généralement, il

Plus en détail

DIC9305 Logique, informatique et sciences cognitives

DIC9305 Logique, informatique et sciences cognitives DIC9305 Logique, informatique et sciences cognitives Logique modale II Roger Villemaire Département d informatique UQAM le 6 mars 2014 Plan 1 Choix d une logique modale 2 Relations de Allen 3 Logiques

Plus en détail

Programmation avancée en C

Programmation avancée en C Département Informatique Nom : Prénom : Année scolaire : 2007 2008 Date : 23 juin 2008 Module INF446 Session de juin Programmation avancée en C Contrôle de connaissance 1 de 45 minutes ÅERCI de répondre

Plus en détail

Informatique UE 102. Jean-Yves Antoine. Architecture des ordinateurs et Algorithmique de base. UFR Sciences et Techniques Licence S&T 1ère année

Informatique UE 102. Jean-Yves Antoine. Architecture des ordinateurs et Algorithmique de base. UFR Sciences et Techniques Licence S&T 1ère année UFR Sciences et Techniques Licence S&T 1ère année Informatique UE 102 Architecture des ordinateurs et Algorithmique de base Jean-Yves Antoine http://www.intro.univ-tours.fr/~antoine/ UFR Sciences et Techniques

Plus en détail

ENCADREMENT DE TRAVAUX DE RECHERCHE (Mémoires de master et thèses de doctorat) 1. Mémoire de Master 1

ENCADREMENT DE TRAVAUX DE RECHERCHE (Mémoires de master et thèses de doctorat) 1. Mémoire de Master 1 Jean-Baptiste Joinet Professeur des universités Faculté de philosophie Université Jean Moulin - Lyon 3 ENCADREMENT DE TRAVAUX DE RECHERCHE (Mémoires de master et thèses de doctorat) 1. Mémoire de Master

Plus en détail

Jade. Projet Intelligence Artificielle «Devine à quoi je pense»

Jade. Projet Intelligence Artificielle «Devine à quoi je pense» Jade Projet Intelligence Artificielle «Devine à quoi je pense» Réalisé par Djénéba Djikiné, Alexandre Bernard et Julien Lafont EPSI CSII2-2011 TABLE DES MATIÈRES 1. Analyse du besoin a. Cahier des charges

Plus en détail

Programmation logique par contraintes. Partie II

Programmation logique par contraintes. Partie II Programmation logique par contraintes Partie II Plan du cours Programmation logique et Prolog (PL) SWI-Prolog, Sicstus Programmation logique par contraintes (PLC) Sicstus Problèmes de satisfaction de contraintes

Plus en détail

INFO-F-302, Cours d Informatique Fondamentale Logique pour l Informatique

INFO-F-302, Cours d Informatique Fondamentale Logique pour l Informatique 1- INFO-F-302 - / INFO-F-302, Cours d Informatique Fondamentale Logique pour l Informatique Emmanuel Filiot Département d Informatique Faculté des Sciences Université Libre de Bruxelles Année académique

Plus en détail

Initiation à la Programmation en Logique avec SISCtus Prolog

Initiation à la Programmation en Logique avec SISCtus Prolog Initiation à la Programmation en Logique avec SISCtus Prolog Identificateurs Ils sont représentés par une suite de caractères alphanumériques commençant par une lettre minuscule (les lettres accentuées

Plus en détail

Langage fonctionnel et Récursivité

Langage fonctionnel et Récursivité Langage fonctionnel et Récursivité Programmation Fonctionnelle Master 2 I2L apprentissage Sébastien Verel verel@lisic.univ-littoral.fr http://www-lisic.univ-littoral.fr/~verel Université du Littoral Côte

Plus en détail

Programmation des Systèmes Experts

Programmation des Systèmes Experts Programmation des Systèmes Experts James L. Crowley Deuxième Année ENSIMAG Deuxième Semestre 2000/2001 TD 4 : 20 avril 2001 Exercice : L'objet de cet exercice est de réaliser un système de schémas permettant

Plus en détail

Aperçu rapide des méthodes formelles

Aperçu rapide des méthodes formelles Méthodes formelles 1 Aperçu rapide des méthodes formelles Christian Attiogbé Faculté des sciences Université de Nantes Christian.Attiogbe@univ-nantes.fr Méthodes formelles 2 Développement de logiciels

Plus en détail

Partie I : Automates et langages

Partie I : Automates et langages 2 Les calculatrices sont interdites. N.B. : Le candidat attachera la plus grande importance à la clarté, à la précision et à la concision de la rédaction. Si un candidat est amené à repérer ce qui peut

Plus en détail

λ-calcul et typage Qu est-ce qu une fonction?

λ-calcul et typage Qu est-ce qu une fonction? λ-calcul et typage Nicolas Barnier, Pascal Brisset ENAC Avril 2009 Nicolas Barnier, Pascal Brisset (ENAC) λ-calcul et typage Avril 2009 1 / 1 Qu est-ce qu une fonction? Classiquement Pas de notation uniforme/standard

Plus en détail

Cours 1 : La compilation

Cours 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étail

Ingénierie d aide à la décision

Ingénierie d aide à la décision Ingénierie d aide à la décision Maria Malek 1 er septembre 2009 1 Objectifs et débouchés Nous proposons dans cette option deux grands axes pour l aide à la décision : 1. La recherche opérationnelle ; 2.

Plus en détail

Machine de Turing. Informatique II Algorithmique 1

Machine de Turing. Informatique II Algorithmique 1 Machine de Turing Nous avons vu qu un programme peut être considéré comme la décomposition de la tâche à réaliser en une séquence d instructions élémentaires (manipulant des données élémentaires) compréhensibles

Plus en détail

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

3. 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étail

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

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite

Plus en détail

BASES DU RAISONNEMENT

BASES DU RAISONNEMENT BASES DU RAISONNEMENT P. Pansu 10 septembre 2006 Rappel du programme officiel Logique, différents types de raisonnement. Ensembles, éléments. Fonctions et applications. Produit, puissances. Union, intersection,

Plus en détail

Métriques de performance pour les algorithmes et programmes parallèles

Métriques de performance pour les algorithmes et programmes parallèles Métriques de performance pour les algorithmes et programmes parallèles 11 18 nov. 2002 Cette section est basée tout d abord sur la référence suivante (manuel suggéré mais non obligatoire) : R. Miller and

Plus en détail

Evaluation paresseuse et structure fonctionnelles persistantes efficaces. La stratégie d évaluation dans les langages fonctionnels

Evaluation paresseuse et structure fonctionnelles persistantes efficaces. La stratégie d évaluation dans les langages fonctionnels Evaluation paresseuse et structure fonctionnelles persistantes efficaces Evaluation stricte et evaluation paresseuse Les Queues de la sémaine passée : efficacité ou persistance? Les Queues révisitéés :

Plus en détail

Analyse syntaxique ou grammaticale

Analyse syntaxique ou grammaticale Analyse syntaxique ou grammaticale Analyse syntaxique traditionnelle Généralement fondée sur le paradigme génératif de Chomsky La grammaire a pour objet de générer tous et seulement les énoncés possibles

Plus en détail

Méthodes de test. Mihaela Sighireanu

Méthodes de test. Mihaela Sighireanu UFR d Informatique Paris 7, LIAFA, 175 rue Chevaleret, Bureau 6A7 http://www.liafa.jussieu.fr/ sighirea/cours/methtest/ Partie I 1 Propriétés 2 Un peu de génie logiciel de test 3 Eléments Problèmes Point

Plus en détail

Analyse Statique de Programmes

Analyse Statique de Programmes Analyse statique et application. Typage. Analyse de flots de données. Exemples de transformations simples de programmes au niveau source. Prépa Agreg de Maths, option Info - ENS Cachan-Bretagne Thomas

Plus en détail

Langages de programmation: approche scientifique

Langages de programmation: approche scientifique IGE 2004 - ENS 29 juin 2004 Présentation au CGTI 1 Informatique théorique 2 3 Une science? Informatique théorique Chaque science repose un dogme fondamental. Les mathématiques Les raisonnements formels

Plus en détail

Conception des systèmes répartis

Conception des systèmes répartis Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan

Plus en détail

Algorithmique et Analyse d Algorithmes

Algorithmique et Analyse d Algorithmes Algorithmique et Analyse d Algorithmes L3 Info Cours 5 : Structures de données linéaires Benjamin Wack 2015-2016 1 / 37 La dernière fois Logique de Hoare Dichotomie Aujourd hui Type Abstrait de Données

Plus en détail

INFORMATIQUE. Licence 3 e année (L3) & Master (M1-M2) Centre d Etudes Suisse Romande Formation universitaire

INFORMATIQUE. Licence 3 e année (L3) & Master (M1-M2) Centre d Etudes Suisse Romande Formation universitaire Centre d Etudes Suisse Romande Formation universitaire INFORMATIQUE Licence 3 e année (L3) & Master (M1-M2) En collaboration avec l Université de Franche-Comté CTU de Besançon Unidistance 2 GÉNÉRALITÉS

Plus en détail

Approche logique de l intelligence artificielle

Approche logique de l intelligence artificielle Approche logique de l intelligence artificielle Où l on voit comment une méthode de démonstration formelle en logique des prédicats a permis la réalisation d un langage de programmation logique Prolog

Plus en détail

Introduc)on à la logique Michel Rueher

Introduc)on à la logique Michel Rueher Introduc)on à la logique Michel Rueher SI3 Qu est ce que la logique? Etre Logique? Formaliser le raisonnement? Automatiser le raisonnement? Un art paradoxal? A quoi peut servir la logique? Formaliser le

Plus en détail

L enseignement de la programmation logique à l École des Mines de Nantes

L enseignement de la programmation logique à l École des Mines de Nantes L enseignement de la programmation logique à l École des Mines de Nantes Narendra Jussien École des Mines de Nantes 4 rue Alfred Kastler BP 20722 F-44307 Nantes Cedex 3 Narendra.Jussien@emn.fr RÉSUMÉ.

Plus en détail

Projet de Programmation Fonctionnelle

Projet de Programmation Fonctionnelle Projet de Programmation Fonctionnelle L objectif de ce projet est de concevoir, en Objective Caml, un évaluateur pour le langage mini-ml (un sous ensemble du langage Objective Caml). Votre programme devra

Plus en détail

Listes et arbres binaires

Listes et arbres binaires Des structures de données dynamiques Listes, Listes ordonnées Arbres binaires, arbre binaires de recherche Listes chaînées Utile si le nombre d éléments n est pas connu à l avance et évolue beaucoup. Permet

Plus en détail

Fiche de TD-TP no. 4

Fiche de TD-TP no. 4 Master 1 Informatique Programmation Fonctionnelle, p. 1 Fiche de TD-TP no. 4 Exercice 1. Voici trois façons différentes de définir le type Image : type Image = [[ Int ]] data Image = Image [[ Int ]] newtype

Plus en détail

Intelligence Artificielle Planification

Intelligence Artificielle Planification Intelligence Artificielle Planification Bruno Bouzy http://web.mi.parisdescartes.fr/~bouzy bruno.bouzy@parisdescartes.fr Licence 3 Informatique UFR Mathématiques et Informatique Université Paris Descartes

Plus en détail

Programmation fonctionnelle avec OCaml

Programmation fonctionnelle avec OCaml Programmation fonctionnelle avec OCaml 1ère séance, 19 février 2015 6 séances de 1h30 de cours et 3h de TP 3 projets avec soutenance D autres transparents sont disponibles avec vidéo (intranet) Samuel

Plus en détail

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)

Suivant 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étail

Langages de spécification cours 4

Langages de spécification cours 4 Langages de spécification cours 4 Diagrammes de décision binaire(bdd) Catalin Dima Arbres de décision binaire Étant donnée une formule logique, on peut lui associer un arbre qui permet d évaluer la valeur

Plus en détail

Les arbres Florent Hivert

Les arbres Florent Hivert 1 de 1 Algorithmique Les arbres Florent Hivert Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 2 de 1 Algorithmes et structures de données La plupart des bons algorithmes fonctionnent

Plus en détail

Analyse de programme

Analyse de programme Analyse de programme À quoi ça sert? Comment ça marche? Bertrand Jeannet et Alain Girault INRIA Rhône-Alpes 25 janvier 2012 A. Girault et B. Jeannet (INRIA) Analyse de programme 25 janvier 2012 1 / 41

Plus en détail

Introduction Tableaux / Vecteurs Listes chaînées Un principe général Quelques algorithmes de tri À faire pour lundi prochain. Tableaux VS Listes

Introduction Tableaux / Vecteurs Listes chaînées Un principe général Quelques algorithmes de tri À faire pour lundi prochain. Tableaux VS Listes Tableaux VS Listes Tableaux VS Listes Petit chapitre. Plan Introduction Tableaux / Vecteurs Définition abstraite Qu a-t-on fait avec des vecteurs? Que peut-on faire avec des vecteurs? Listes chaînées Définition

Plus en détail

Une extension pour RDF/RDFS utilisant des relations procédurales

Une extension pour RDF/RDFS utilisant des relations procédurales Une extension pour RDF/RDFS utilisant des relations procédurales Jean-François Baget * * INRIA Sophia-Antipolis & LIRMM(CNRS - UM2) LIRMM, 161 rue Ada, 34392 Montpellier Cedex 5 baget@lirmm.fr RÉSUMÉ.

Plus en détail

Modélisation de la Résolution de Problèmes

Modélisation de la Résolution de Problèmes Modélisation de la Résolution de Problèmes - Rappels : «Suite d opérations par lesquelles on conclut qu une proposition implique la vérité d une autre proposition» ( * ) Historiquement : Nécessité de séparer

Plus en détail

1 de 1. Algorithmique. Récursivité. Florent Hivert. Mél : Florent.Hivert@lri.fr Adresse universelle : http://www.lri.fr/ hivert

1 de 1. Algorithmique. Récursivité. Florent Hivert. Mél : Florent.Hivert@lri.fr Adresse universelle : http://www.lri.fr/ hivert 1 de 1 Algorithmique Récursivité Florent Hivert Mél : Florent.Hivert@lri.fr Adresse universelle : http://www.lri.fr/ hivert 2 de 1 Récursivité et Récurrence Deux notions très proche : mathématiques : récurrence

Plus en détail

Intelligence Artificielle et Robotique

Intelligence Artificielle et Robotique Intelligence Artificielle et Robotique Introduction à l intelligence artificielle David Janiszek david.janiszek@parisdescartes.fr http://www.math-info.univ-paris5.fr/~janiszek/ PRES Sorbonne Paris Cité

Plus en détail

1.2 Unité responsable Département d informatique, Faculté des sciences

1.2 Unité responsable Département d informatique, Faculté des sciences 1. Identification du programme 1.1 Titre du programme Maîtrise ès sciences (informatique) 1.2 Unité responsable Département d informatique, Faculté des sciences 1.3 Diplôme accordé M. Sc. (Informatique)

Plus en détail

Formula Negator, Outil de négation de formule.

Formula 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étail

Introduction au développement du logiciel

Introduction au développement du logiciel Introduction au développement du logiciel Vers le génie logiciel Université de Nantes Master Miage M1 Plan 1 Introduction 2 Génie logiciel 3 Projet informatique 4 Méthode de développement 5 Qualité Bibliographie

Plus en détail