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

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

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

Transcription

1 UNIVERSITÉ LIBRE DE BRUXELLES (corrected version ) 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 problèmes en logique du premier ordre, et de les résoudre avec l outil Z3. Cet outil permet de chercher des modèles aux formules du premier ordre. Le principal problème considéré est une énigme de la vie quotidienne des informaticiens. 1 L Outil Z3 L outil Z3 est un outil de démonstration automatique de théorèmes (aussi connu comme solveur du premier ordre) développé chez Microsoft Research. Il est disponible à l adresse suivante pour des plateformes Windows, MacOS, et Linux 1 : Z3 prend en entrée une formule de la logique du premier ordre et en fonction du but spécifié, tentera de trouver un modèle à la formule ou de conclure que la formule n est pas satisfaisable, ou que la formule est un théorème, ou de trouver un modèle qui ne satisfait pas la formule. Dans la suite du projet, on ne s intéressera qu à la fonctionnalité de Z3 qui permet soit de trouver un modèle, soit de conclure que la formule n est pas satisfaisable. On va encoder les formules au format TPTP lisible par Z3 (TPTP est un format qui est utilisé aussi par des autres solveurs). Format TPTP La syntaxe complète du format TPTP est détaillée dans le document à l adresse suivante dans la section The Formulae Section : Nous donnons ici les éléments de syntaxe à utiliser pour le projet. Le language TPTP est plus riche mais on vous demande de seulement utiliser une partie assez puissant pour nos besoins. Une spécification au format TPTP est une suite de déclarations de formules de l ordre premier (fof : first order form) de la forme : fof(<nom de la formule>,<type de la formule>,<formule>). tel que nom de la formule est un nom que vous donnez à la formule, type de la formule est toujours axiom pour ce projet. Finalement, formule est une formule dans la syntaxe TPTP. Commençons par un exemple : 1. Vous pouvez aussi utiliser l outil directement en ligne à l adresse cgi-bin/systemontptp mais nous vous recommandons fortement de l installer sur votre machine.

2 Info-F-302 Projet fof(au_moins_deux, axiom,? [X,Y] : X!= Y). fof(tous_rouges, axiom,! [X] : rouge(x)). Cette spécification est composée de deux formules (n oubliez pas le point après chaque déclaration). Ces deux formules sont prises en conjonction (donc, le solveur regarde internement une formule plus grande). La première formule s appelle au moins deux est correspond à X Y X Y. La deuxième formule correspond à X rouge(x) où rouge est interprété comme un prédicat unaire. Quelques remarques : les variables commencent toujours par une majuscule les prédicats et symboles de fonction commencent toujours par une minuscule les symboles de constantes commencent toujours par une minuscule les espaces n ont pas d importance (sauf pour la lisibilité) les commentaires sont toujours précédés de % (et terminent à la fin de la ligne) Voici une liste de symboles logiques du format TPTP : quantification existentielle? [liste variables] : formule quantification universelle! [liste variables] : formule disjonction conjonction & négation ~ (tilde) égalité = différence!= implication => équivalence <=> Il ne faut pas spécifier le langage utilisé explicitement. Tout mot de la formule qui commence par une majuscule est considéré comme une variable. Tout mot qui commence par une minuscule est considéré comme une constante, un prédicat, ou une fonction. Selon l utilisation qui en ai faite, l outil décide automatiquement si c est une constante, un prédicat, ou une fonction. Par exemple, dans la formule ci-dessus, rouge(x) est utilisé comme une valeur vrai/faux, c est donc nécessairement un prédicat. Remarque importante : toute faute de frappe donnera potentiellement de nouveaux symboles de prédicats/fonctions/constantes. Par exemple, si vous taper rouge(x) et plus loin rrouge(x), alors rrouge sera interprété comme un nouveau symbole de prédicat. Attention donc aux fautes de frappes. Utilisation de l outil En supposant que vous avez écrit votre spécification dans un fichier nomdefichier.tptp, on vous demande de lancer Z3 par la commande suivante qui inclut déjà quelques paramètres adaptés à l usage du format TPTP : z3 PULL NESTED QUANTIFIERS=true MODEL COMPACT=true -m -tptp <nomdefichier> 2

3 Projet Info-F-302 Sortie générée par l outil Par défaut, Z3 dit si la formule est satisfaisable. Dans le cas contraire, il se peut qu il ne termine pas et continue à chercher des modèles. Parfois, il est capable de conclure que la formule n est pas satisfaisable. Dans le cas où elle est satisfaisable, l option -m permet d afficher un modèle. Prenons la sortie de Z3 pour l exemple ci-dessus : sortie de Z3 SZS status Satisfiable for example.tptp Y!0 -> $i!val!2 X!1 -> $i!val!1 rouge -> { true La première ligne donne le résultat de Z3 : notre exemple est Satisfaisable. En suite, Z3 donne un modèle qui satisfait la formule. Notez que le modèle trouvé n est pas nécessairement le modèle le plus compact il contient des constantes, et fonctions que Z3 a introduites pour faciliter son raisonnement automatique (même si elles semblent superflues d un point de vue de l utilisateur). Le modèle est donné dans un format fonctionnel qu il faut lire de la manière suivante : il y a une constante y 0 (écrit Y!0) interprétée (->) par l entier 2 ($i!val!2 : int value 2) il y a une constante x 1 interprétée par 1 il y a une fonction rouge qui retourne toujours la valeur true Notez : Les modèles de Z3 représentent des prédicats et relations par des fonctions. Donc, un prédicat rouge est vu comme une fonction caractéristique qui dit pour tous les éléments dans mon modèle (fini) si le prédicat est vrai ou faux pour cet élément. Dans l exemple, pour tout élément du domaine, le prédicat rouge est vrai. Dans ce cas Z3 représente le prédicat rouge comme une fonction qui retourne toujours la valeur vrai. De manière plus générale, lorsqu un prédicat n est pas vrai partout, Z3 devra spécifier pour quels paramètres la prédicat est vrai ou pas. Par exemple, sur les formules fof(au_moins_deux, axiom,? [X,Y] : X!= Y). fof(tous_rouges, axiom, (? [X] : rouge(x)) & (? [X] : ~rouge(x))). Z3 retourne le modèle représenté par X!6 -> $i!val!2 Y!4 -> $i!val!1 X!7 -> $i!val!3 X!5 -> $i!val!0 rouge -> { $i!val!2 -> true $i!val!3 -> false else -> false sortie de Z3 3

4 Info-F-302 Projet qui comprend au moins quatre éléments différents 0, 1, 2, 3, et le prédicat unaire rouge, est vrai pour 2, mais par pour 3, ni pour les autres éléments. Avant de passer aux questions, prenons un exemple plus compliqué : % l élément special n est pas rouge fof(element_special, axiom, ~rouge(special)). % il existe un élément différent de special fof(element_diff_special, axiom,? [X] : X!= special). % la fonction f retourne toujours l élément special sauf s il est l entrée fof(fonction_f, axiom,! [X]: (X!=special <=> f(x)=special)). Le modèle retourné par le système est : special -> $i!val!0 X!0 -> $i!val!1 k!5 -> { $i!val!0 -> $i!val!0 else -> $i!val!1 f!6 -> { $i!val!1 -> $i!val!0 else -> $i!val!2 rouge -> { false f -> { (f!6 (k!5 #0)) sortie de Z3 Donc, la constante special est interprétée par 0, la constante x 0 par 1, et donc il y a un élément différent de special. Le prédicat rouge est toujours faux (donc, en particuliar il est faux pour special). Maintenant il faut regarder les autres fonctions : la fonction k 5 que Z3 a introduite retourne special si l input est special et autrement x 0 ; la fonction f 6 retourne 0 (donc special) pour x 0 et 2 autrement ; la fonction f compose les deux fonctions tel que f(n) = f 6 (k 5 (n)) pour tout élément n du domaine du modèle (#0 représente le premier paramètre (et dans ce cas l unique) de la fonction f). Donc finalement, f(special) = 2 et f retourne special autrement. 4

5 Projet Info-F-302 Question 1 Simplifier le modèle retourné par Z3 sur cet exemple en gardant le format de sortie utilisé par Z3 pour représenter les modèles. Parenthésage des quantifications Attention,! [X]: p(x) & q(x) est équivalent à (! [X]: p(x)) & q(x). La variable X apparaît donc libre dans la deuxième partie. Ceci est valable avec la quantification existentielle et les autres connecteurs logiques (ou, implique, etc.). N hésitez donc pas à parenthéser pour lever toute ambiguité! 2 Prise en Main de Z3 Question 2 Écrire une formule au format TPTP telle que tout modèle de cette formule possède au moins quatre éléments. Vérifier que Z3 retourne bien un modèle qui contient au moins quatre éléments. En théorie des langages, un mot est une suite de caractères sur un alphabet fini. Par exemple, sur l alphabet {0, 1, est un mot. Un mot sur {0, 1 peut être représenté par une structure sur le langage {pluspetit, zero, un, où pluspetit est un prédicat binaire représentant une relation d ordre stricte et totale (toute paire d élements est comparable). zero et un sont des prédicats unaires qui représentent les éléments dont les lettres sont 0 et 1 respectivement. Par exemple, le mot 011 est représentée par la structure M qui a trois éléments {e 1, e 2, e 3 et les relations suivantes : pluspetit M = {(e 1, e 2 ), (e 1, e 3 ), (e 2, e 3 ) zero M = {e 1 un M = {e 2, e 3 Question 3 Écrire une formule au format TPTP telle que tout modèle de cette formule est un mot de longueur au moins 4 sur l alphabet {0, 1. Donner un mot satisfiant cette formule trouvé par Z3. Attention : chaque élément du domaine n est assigné qu à une et une seule lettre. Une relation successeur pour l ordre pluspetit fait correspondre chaque élément à son élément suivant dans l ordre. Nous noterons succ le prédicat binaire représentant la fonction successeur. Par exemple, pour le mot 011, ce prédicat est interprété dans M par : succ M = {(e 1, e 2 ), (e 2, e 3 ) Question 4 Écrire une formule au format TPTP définissant le prédicat successeur, à partir de la relation d ordre. 5

6 Info-F-302 Projet 3 Résoudre des Énigmes avec Z3 Dans cette section, l objectif est de formaliser une énigme en logique du premier ordre, d utiliser Z3 pour trouver un modèle s il existe, et si oui d interpréter ce modèle pour résoudre l énigme. Énigme du local serveur Le nouvel apprenti de l équipe système doit changer l ancien disque dur de 20GB d une machine du local serveur pour un disque de 1.5TB. En arrivant dans le local, il trouve cinq machines alignées les unes à côté des autres. Ses collègues logiciens, en guise d initiation, ne lui ont pas indiqué de quelle machine il s agissait, mais lui ont donné plusieurs indices. Il y a une séquence linéaire de cinq ordinateurs, chaque machine a les propriétés suivantes : chaque serveur appartient à une et seulement une équipe de l ULB, et chacune offre un et seulement un service. En plus, chaque machine utilise un processeur d une plateforme différente, un système d exploitation différent et il y a un et seulement un disque dur par machine, tous de tailles différentes. Les possibilités sont les suivantes : équipes : mathématique, informatique, physique, économie, géographie. systèmes d exploitation : Linux, MacOS, Windows, Solaris, OpenBSD. plateformes : Sparc, Itanium, x86-64, PowerPC, x86-32 services offerts : serveur www, une base de données, un serveur smtp, un serveur svn, une machine pour des simulations numériques taille des disque durs : 2TB, 20GB, 1TB, 350GB, 500GB On lui a donné les indices suivants : 1. la machine avec le disque dur de 500GB est voisin du serveur smtp 2. la plateforme de la base de données est Itanium 3. la machine svn est voisine de la machine avec platerforme Sparc 4. la machine des physiciens a un disque dur de 2TB 5. la machine placé au centre des cinq est un PowerPC 6. les mathématiciens utilisent Linux 7. les économistes font des simulations sur leur serveur 8. le processeur du serveur des informaticiens est un x le premier serveur appartient à la géographie 10. la machine à côté du serveur svn a un disque de 1TB 11. le Windows est installé sur un machine x la machine de la géographie est à côté d une avec MacOS 13. le serveur www a un disque dur de 350GB 14. la machine Windows est à gauche de la machine avec Solaris 15. on utilise OpenBSD pour le serveur smtp. 6

7 Projet Info-F-302 Après quelques minutes de reflexion, l apprenti a trouvé dans quelle machine il faut changer le disque dur. Vous aussi? Question 5 Si vous deviez tester toutes les possibilités, combien y en aurait-il? Justifier. (Attention pour cette question l ordre des ordinateurs a de l importance.) Question 6 Écrire un ensemble de formules du premier ordre au format TPTPdans un fichier enigme.tptp qui modélise le problème posé ci-dessus. Exécuter Z3 pour qu il trouve un modèle et donner la réponse à l énigme. Le but principal de cette question est d écrire une formalisation correcte du problème en logique du premier ordre. Le modèle trouvé doit vous indiquer exactement, pour chacune des cinq machines, sa position par rapport aux autres, sa plateforme, son système d exploitation, la taille du disque dur et l équipe à laquelle il appartient. Vous êtes libres d utiliser le langage de prédicats que vous voulez, mais choisissez-les de telle sorte que votre spécification soit lisible. Commentez dans le fichier toutes les formules que vous écrivez en donnant leur signification intuitive. Par exemple, si vous écrivez une formule fof(f,axiom,? [X,Y]: X!=Y)., ajoutez audessus le commentaire il existe deux éléments dans la structure. La clarté et la lisibilité de votre fichier sera prise en compte dans l évaluation. Il est conseillé de représenter les modèles du problème comme des structures à cinq éléments ordonnés, chaque élément représentant un ordinateur. Les autres informations (plateforme, équipe, etc.) seront représentées par des prédicats unaires. Question 7 L apprenti veut vérifier qu on ne lui a pas tendu un piège. Utiliser Z3 pour montrer qu il existe une unique solution à l énigme. Autrement dit, montrer qu il n existe pas d autre propriétaire possédant le disque dur de 20GB. Question 8 L apprenti aimerait bien se venger et donner une petite leçon de logique aux logiciens. Est-ce que tous les indices sont nécessaires pour résoudre l énigme? Expliquer comment répondre à cette question avec Z3. Donner les indices inutiles s il en existe. Modalités Le projet se fait en binôme, il est à rendre au bureau de Maryka Peetroons au plus tard pour le 27 Avril 2012 midi 12h (fuseau horaire de Bruxelles). Il doit comprendre un rapport papier qui répond aux questions dans ce énoncé (mettre aussi le contenu des fichiers TPTP générés dans le rapport). Envoyez également les fichiers TPTP dans un dossier compressé (zip) portant les noms de famille des deux étudiants du binôme par à Alexander Heußner et avec la ligne de sujet de courrier Projet Logique 7

8 Info-F-302 Projet 2012: nom de famille1-nom de famille2. Le fichier est à envoyer pour la même date que la version papier. Si l évaluation n est pas possible sur base du rapport seul (et du fichier.tptp), on vous demandera de défendre vos solutions dans une présentation orale. Quelques astuces Utiliser des commentaires dans vos fichiers TPTP pour donner la sémantique intuitive de toutes vos formules. Cela permet d argumenter sur la nécessité d une formule. Rappelez vous le principe KISS ( keep it simple stupid! ). Donc, essayez de ne pas ajouter des constantes, prédicats, relations, formules,... superflus dans vos fichiers TPTP. Le format TPTP est utilisé aussi par d autres solveurs du premier ordre. Il y a une interface web commune à un ensemble de solveurs qui est accessible ici : N hésitez pas à essayer votre spécification TPTP avec un autre solveur pour comparer le résultat avec Z3 (attention : le format de modèle trouvé sera possiblement différent de celui de Z3!). 8

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

Chapitre 2. Eléments pour comprendre un énoncé Chapitre 2 Eléments pour comprendre un énoncé Ce chapitre est consacré à la compréhension d un énoncé. Pour démontrer un énoncé donné, il faut se reporter au chapitre suivant. Les tables de vérité données

Plus en détail

TP 1. Prise en main du langage Python

TP 1. Prise en main du langage Python TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer

Plus en détail

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

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental

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

Logique. Plan du chapitre

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

STAGE IREM 0- Premiers pas en Python

STAGE IREM 0- Premiers pas en Python Université de Bordeaux 16-18 Février 2014/2015 STAGE IREM 0- Premiers pas en Python IREM de Bordeaux Affectation et expressions Le langage python permet tout d abord de faire des calculs. On peut évaluer

Plus en détail

L informatique en BCPST

L informatique en BCPST L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité

Plus en détail

1 Introduction et installation

1 Introduction et installation TP d introduction aux bases de données 1 TP d introduction aux bases de données Le but de ce TP est d apprendre à manipuler des bases de données. Dans le cadre du programme d informatique pour tous, on

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

Présentation du langage et premières fonctions

Présentation du langage et premières fonctions 1 Présentation de l interface logicielle Si les langages de haut niveau sont nombreux, nous allons travaillé cette année avec le langage Python, un langage de programmation très en vue sur internet en

Plus en détail

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique

Plus en détail

LES TYPES DE DONNÉES DU LANGAGE PASCAL

LES TYPES DE DONNÉES DU LANGAGE PASCAL LES TYPES DE DONNÉES DU LANGAGE PASCAL 75 LES TYPES DE DONNÉES DU LANGAGE PASCAL CHAPITRE 4 OBJECTIFS PRÉSENTER LES NOTIONS D ÉTIQUETTE, DE CONS- TANTE ET DE IABLE DANS LE CONTEXTE DU LAN- GAGE PASCAL.

Plus en détail

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

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

Algorithme. Table des matières

Algorithme. Table des matières 1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

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

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

Expression 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

Première étape : créer le fichier de données - extraire les données de PMB et les transférer dans Excel

Première étape : créer le fichier de données - extraire les données de PMB et les transférer dans Excel A.-M. Cubat Démo (Apli) : imprimer des cartes de lecteurs ou une «planche-contact» - avec les codes-barres Page 1 Première étape : créer le fichier de données - extraire les données de PMB et les transférer

Plus en détail

Chapitre 1 Qu est-ce qu une expression régulière?

Chapitre 1 Qu est-ce qu une expression régulière? Chapitre 1 Qu est-ce qu une expression régulière? Les ordinateurs n ont pas du tout la même conception des textes que nous : pour nous, un texte est un ensemble d idées couchées sur papier. Nous nous en

Plus en détail

Algorithmique et Programmation, IMA

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

Chapitre I Notions de base et outils de travail

Chapitre I Notions de base et outils de travail Chapitre I Notions de base et outils de travail Objectifs Connaître les principes fondateurs et l historique du langage Java S informer des principales caractéristiques du langage Java Connaître l environnement

Plus en détail

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

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies INF 232: Langages et Automates Travaux Dirigés Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies Année Académique 2013-2014 Année Académique 2013-2014 UNIVERSITÉ JOSEPH

Plus en détail

Image d un intervalle par une fonction continue

Image d un intervalle par une fonction continue DOCUMENT 27 Image d un intervalle par une fonction continue La continuité d une fonction en un point est une propriété locale : une fonction est continue en un point x 0 si et seulement si sa restriction

Plus en détail

Créer le schéma relationnel d une base de données ACCESS

Créer le schéma relationnel d une base de données ACCESS Utilisation du SGBD ACCESS Polycopié réalisé par Chihab Hanachi et Jean-Marc Thévenin Créer le schéma relationnel d une base de données ACCESS GENERALITES SUR ACCESS... 1 A PROPOS DE L UTILISATION D ACCESS...

Plus en détail

Utilisation d objets : String et ArrayList

Utilisation d objets : String et ArrayList Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons

Plus en détail

Recherche dans un tableau

Recherche 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

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

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C IN 102 - Cours 1 Qu on le veuille ou non, les systèmes informatisés sont désormais omniprésents. Même si ne vous destinez pas à l informatique, vous avez de très grandes chances d y être confrontés en

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

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un

Plus en détail

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

R, Bonnes pratiques. Christophe Genolini

R, Bonnes pratiques. Christophe Genolini R, Bonnes pratiques Christophe Genolini 1 Table des matières 1 Des bonnes pratiques, pour quoi faire? 4 2 Choix de l éditeur de texte 4 3 Architecture du code 6 4 Variables 10 5 Commentaires et documentation

Plus en détail

OCL - Object Constraint Language

OCL - Object Constraint Language OCL - Object Constraint Language Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon SIMA - OCL - Object

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de

Plus en détail

Seconde Généralités sur les fonctions Exercices. Notion de fonction.

Seconde Généralités sur les fonctions Exercices. Notion de fonction. Seconde Généralités sur les fonctions Exercices Notion de fonction. Exercice. Une fonction définie par une formule. On considère la fonction f définie sur R par = x + x. a) Calculer les images de, 0 et

Plus en détail

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

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

Cours 1 : Qu est-ce que la programmation?

Cours 1 : Qu est-ce que la programmation? 1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre

Plus en détail

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février 2014 17:30 à 20:30

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février 2014 17:30 à 20:30 Examen intra 20 février 2014 17:30 à 20:30 Nom, prénom : Code permanent : Répondez directement sur le questionnaire. Question #1 5% Quelle influence peut avoir le typage dynamique sur la maintenabilité

Plus en détail

2 Comment fonctionne un ordinateur, dans les grandes lignes

2 Comment fonctionne un ordinateur, dans les grandes lignes Programmation 1 Cours n 1 GB3, 2 nd semestre 2014-2015 Cours de Python Gilles Bernot Les notes de cours et les feuilles de TD sont disponibles (avec un peu de retard par rapport au déroulement du cours)

Plus en détail

Plan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml

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

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!»

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!» Corrigé Cours de Mr JULES v3.3 Classe de Quatrième Contrat 1 Page 1 sur 13 CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!» «Correction en rouge et italique.» I. Les nombres décimaux relatifs.

Plus en détail

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

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2 éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........

Plus en détail

Cours de Probabilités et de Statistique

Cours de Probabilités et de Statistique Cours de Probabilités et de Statistique Licence 1ère année 2007/2008 Nicolas Prioux Université Paris-Est Cours de Proba-Stat 2 L1.2 Science-Éco Chapitre Notions de théorie des ensembles 1 1.1 Ensembles

Plus en détail

SQL Server Installation Center et SQL Server Management Studio

SQL Server Installation Center et SQL Server Management Studio SQL Server Installation Center et SQL Server Management Studio Version 1.0 Grégory CASANOVA 2 SQL Server Installation Center et SQL Server Management Studio [03/07/09] Sommaire 1 Installation de SQL Server

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

Chapitre 7. Récurrences

Chapitre 7. Récurrences Chapitre 7 Récurrences 333 Plan 1. Introduction 2. Applications 3. Classification des récurrences 4. Résolution de récurrences 5. Résumé et comparaisons Lectures conseillées : I MCS, chapitre 20. I Rosen,

Plus en détail

Cours d initiation à la programmation en C++ Johann Cuenin

Cours d initiation à la programmation en C++ Johann Cuenin Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................

Plus en détail

Titre : Communiquer avec des formules mathématiques

Titre : Communiquer avec des formules mathématiques Titre : Communiquer avec des formules mathématiques Auteurs : Jean-François Nicaud, Christophe Viudez jeanfrancois.nicaud@laposte.net - cviudez@free.fr La communication sur dispositif informatique avec

Plus en détail

1 Recherche en table par balayage

1 Recherche en table par balayage 1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément

Plus en détail

Activité 4. Tour de cartes Détection et correction des erreurs. Résumé. Liens pédagogiques. Compétences. Âge. Matériels

Activité 4. Tour de cartes Détection et correction des erreurs. Résumé. Liens pédagogiques. Compétences. Âge. Matériels Activité 4 Tour de cartes Détection et correction des erreurs Résumé Lorsque les données sont stockées sur un disque ou transmises d un ordinateur à un autre, nous supposons généralement qu elles n ont

Plus en détail

TP Codage numérique des caractères. Un ordinateur ne manipule que des 0 et des 1 : Comment alors code-t-il du texte?

TP Codage numérique des caractères. Un ordinateur ne manipule que des 0 et des 1 : Comment alors code-t-il du texte? TP Codage numérique des caractères Un ordinateur ne manipule que des 0 et des 1 : Comment alors code-t-il du texte? I Le code ASCII 1. Une première approche Ouvrir un fichier Excell Sur la ligne 1 du tableau,

Plus en détail

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

Suites numériques 3. 1 Convergence et limite d une suite Suites numériques 3 1 Convergence et limite d une suite Nous savons que les termes de certaines suites s approchent de plus en plus d une certaine valeur quand n augmente : par exemple, les nombres u n

Plus en détail

Pourquoi l apprentissage?

Pourquoi l apprentissage? Pourquoi l apprentissage? Les SE sont basés sur la possibilité d extraire la connaissance d un expert sous forme de règles. Dépend fortement de la capacité à extraire et formaliser ces connaissances. Apprentissage

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

F7n COUP DE BOURSE, NOMBRE DÉRIVÉ

F7n COUP DE BOURSE, NOMBRE DÉRIVÉ Auteur : S.& S. Etienne F7n COUP DE BOURSE, NOMBRE DÉRIVÉ TI-Nspire CAS Mots-clés : représentation graphique, fonction dérivée, nombre dérivé, pente, tableau de valeurs, maximum, minimum. Fichiers associés

Plus en détail

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.

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. 1 Définitions, notations 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. On utilise aussi la notation m n pour le

Plus en détail

Introduction à l étude des Corps Finis

Introduction à l étude des Corps Finis Introduction à l étude des Corps Finis Robert Rolland (Résumé) 1 Introduction La structure de corps fini intervient dans divers domaines des mathématiques, en particulier dans la théorie de Galois sur

Plus en détail

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme? Exercices Alternatifs Quelqu un aurait-il vu passer un polynôme? c 2004 Frédéric Le Roux, François Béguin (copyleft LDL : Licence pour Documents Libres). Sources et figures: polynome-lagrange/. Version

Plus en détail

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme? Exercices Alternatifs Quelqu un aurait-il vu passer un polynôme? c 2004 Frédéric Le Roux, François Béguin (copyleft LDL : Licence pour Documents Libres). Sources et figures: polynome-lagrange/. Version

Plus en détail

Exonet : sauvegarde automatisée d une base de données

Exonet : sauvegarde automatisée d une base de données Exonet : sauvegarde automatisée d une base de données Description Propriétés Description Intitulé long Formation concernée Matière Présentation Notions Transversalité Outils Mots-clés Durée 4h. Auteur(es)

Plus en détail

Ordinateur Logiciel Mémoire. Entrées/sorties Périphériques. Suite d'instructions permettant de réaliser une ou plusieurs tâche(s), de résoudre un

Ordinateur Logiciel Mémoire. Entrées/sorties Périphériques. Suite d'instructions permettant de réaliser une ou plusieurs tâche(s), de résoudre un ESZ Introduction à l informatique et à l environnement de travail Éric Gaul (avec la collaboration de Dominic Boire) Partie 1: Concepts de base Ordinateur Logiciel Mémoire Données Entrées/sorties Périphériques

Plus en détail

Licence Sciences et Technologies Examen janvier 2010

Licence Sciences et Technologies Examen janvier 2010 Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.

Plus en détail

Compléments de documentation Scilab : affichage de texte et formatage de nombres

Compléments de documentation Scilab : affichage de texte et formatage de nombres Université des Sciences et Technologies de Lille U.F.R. de Mathématiques Pures et Appliquées Agrégation externe Année 2002-2003 Compléments de documentation Scilab : affichage de texte et formatage de

Plus en détail

Vous allez le voir au cours de ce premier chapitre, 1. Découvrir l ipad

Vous allez le voir au cours de ce premier chapitre, 1. Découvrir l ipad 1. Découvrir l ipad Vous allez le voir au cours de ce premier chapitre, l utilisation de l ipad est très intuitive et, surtout, votre tablette obéit au doigt et à l œil. Vous ne pourrez bientôt plus vous

Plus en détail

Débuter avec Excel. Excel 2007-2010

Débuter avec Excel. Excel 2007-2010 Débuter avec Excel Excel 2007-2010 Fabienne ROUX Conseils & Formation 10/04/2010 TABLE DES MATIÈRES LE RUBAN 4 LE CLASSEUR 4 RENOMMER LES FEUILLES DU CLASSEUR 4 SUPPRIMER DES FEUILLES D UN CLASSEUR 4 AJOUTER

Plus en détail

TD : Codage des images

TD : Codage des images TD : Codage des images Les navigateurs Web (Netscape, IE, Mozilla ) prennent en charge les contenus textuels (au format HTML) ainsi que les images fixes (GIF, JPG, PNG) ou animée (GIF animée). Comment

Plus en détail

IUT de Laval Année Universitaire 2008/2009. Fiche 1. - Logique -

IUT de Laval Année Universitaire 2008/2009. Fiche 1. - Logique - IUT de Laval Année Universitaire 2008/2009 Département Informatique, 1ère année Mathématiques Discrètes Fiche 1 - Logique - 1 Logique Propositionnelle 1.1 Introduction Exercice 1 : Le professeur Leblond

Plus en détail

Programmation Web. Madalina Croitoru IUT Montpellier

Programmation Web. Madalina Croitoru IUT Montpellier Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance

Plus en détail

IV- Comment fonctionne un ordinateur?

IV- Comment fonctionne un ordinateur? 1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions

Plus en détail

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. Sciences et Technologies de l Industrie et du Développement Durable Formation des enseignants parcours : ET24 Modèle de

Plus en détail

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

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie Chapitre I : Les bases du C++ Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie du logiciel, et ce depuis

Plus en détail

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

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,

Plus en détail

Aide Webmail. L environnement de RoundCube est très intuitif et fonctionne comme la plupart des logiciels de messagerie traditionnels.

Aide Webmail. L environnement de RoundCube est très intuitif et fonctionne comme la plupart des logiciels de messagerie traditionnels. Aide Webmail 1. Découverte de l environnement : L environnement de RoundCube est très intuitif et fonctionne comme la plupart des logiciels de messagerie traditionnels. 1. La barre d application (1) Les

Plus en détail

Voici un extrait du guide de rédaction. Le guide complet est téléchargeable sur le lien suivant

Voici un extrait du guide de rédaction. Le guide complet est téléchargeable sur le lien suivant Voici un extrait du guide de rédaction. Le guide complet est téléchargeable sur le lien suivant Guide de rédaction d un BUSINESS PLAN dans la restauration Auteur : Amandine Prat Conseils en création et

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

MODE D EMPLOI OUTLOOK ADD-IN POUR SELECTLINE

MODE D EMPLOI OUTLOOK ADD-IN POUR SELECTLINE MODE D EMPLOI OUTLOOK ADD-IN POUR SELECTLINE IOWARE SA WARPELSTRASSE 10 3186 DÜDINGEN +41 26 492 90 30 WWW.IOWARE.SA INFO@IOWARE.CH MODE D EMPLOI MODULE ADD IN (pour Outlook) L Add In est un programme

Plus en détail

Quelques éléments de compilation en C et makefiles

Quelques éléments de compilation en C et makefiles Quelques éléments de compilation en C et makefiles Guillaume Feuillade 1 Compiler un programme C Le principe de la compilation consiste à passer d un ensemble de fichiers de code à un programme exécutable

Plus en détail

Programmation C. Apprendre à développer des programmes simples dans le langage C

Programmation C. Apprendre à développer des programmes simples dans le langage C Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités

Plus en détail

Dotez-vous des moyens de communication d une grande entreprise au prix d une petite entreprise. Avaya vous aide à atteindre vos objectifs.

Dotez-vous des moyens de communication d une grande entreprise au prix d une petite entreprise. Avaya vous aide à atteindre vos objectifs. Avaya vous aide à atteindre vos objectifs. Toute TPE-PME est à la recherche de solutions pour réduire ses coûts et améliorer son mode de fonctionnement. Comme n importe quelle entreprise, vous souhaitez

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

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

Université Paris-Dauphine DUMI2E 1ère année, 2009-2010. Applications Université Paris-Dauphine DUMI2E 1ère année, 2009-2010 Applications 1 Introduction Une fonction f (plus précisément, une fonction réelle d une variable réelle) est une règle qui associe à tout réel x au

Plus en détail

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES Dossier G11 - Interroger une base de données La base de données Facturation contient tout un ensemble d'informations concernant la facturation de la SAFPB (société anonyme de fabrication de produits de

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

Les nombres entiers. Durée suggérée: 3 semaines

Les nombres entiers. Durée suggérée: 3 semaines Les nombres entiers Durée suggérée: 3 semaines Aperçu du module Orientation et contexte Pourquoi est-ce important? Dans le présent module, les élèves multiplieront et diviseront des nombres entiers concrètement,

Plus en détail

Les chaînes de caractères

Les chaînes de caractères Les chaînes de caractères Dans un programme informatique, les chaînes de caractères servent à stocker les informations non numériques comme par exemple une liste de nom de personne ou des adresses. Il

Plus en détail

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

Analyse stochastique de la CRM à ordre partiel dans le cadre des essais cliniques de phase I Analyse stochastique de la CRM à ordre partiel dans le cadre des essais cliniques de phase I Roxane Duroux 1 Cadre de l étude Cette étude s inscrit dans le cadre de recherche de doses pour des essais cliniques

Plus en détail

PLAN DE COURS. Reconnaître le rôle des mathématiques ou de l informatique dans la société contemporaine (0011)

PLAN DE COURS. Reconnaître le rôle des mathématiques ou de l informatique dans la société contemporaine (0011) PLAN DE COURS Titre du cours : Logiciels appliqués en sciences Numéro du cours : 360-ESZ-03 Programme : Sciences de la Nature 200B0 Pondération : 1-2-3 Session : Hiver 2010 Enseignant : Éric Gaul François

Plus en détail

[WINDOWS 7 - LES FICHIERS] 28 avril 2010. Logiciel / Windows

[WINDOWS 7 - LES FICHIERS] 28 avril 2010. Logiciel / Windows Ce dossier a une forme un peu différente des précédentes : c est un ensemble de «fiches» décrivant chacune une des opérations que l on peut effectuer avec un fichier (enregistrer, renommer, etc.). Chaque

Plus en détail

Chapitre VI- La validation de la composition.

Chapitre VI- La validation de la composition. Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions

Plus en détail

Chapitre 2 Devine mon nombre!

Chapitre 2 Devine mon nombre! Python 3 : objectif jeux Chapitre 2 Chapitre 2 Devine mon nombre! 2.1. Thèmes abordés dans ce chapitre commentaires modules externes, import variables boucle while condition : if... elif... else la fonction

Plus en détail

Petit guide des sous-réseaux IP

Petit guide des sous-réseaux IP Petit guide des sous-réseaux IP Robert Hart, hartr@interweft.com.au version française par Laurent Caillat-Vallet, caillat@univ-lyon1.fr v1.0, 31 Mars 1997 Ce document décrit pourquoi et comment découper

Plus en détail

Premiers Pas en Programmation Objet : les Classes et les Objets

Premiers Pas en Programmation Objet : les Classes et les Objets Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.

Plus en détail

Programmation linéaire

Programmation linéaire 1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit

Plus en détail

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

Chapitre 2 Le problème de l unicité des solutions Université Joseph Fourier UE MAT 127 Mathématiques année 2011-2012 Chapitre 2 Le problème de l unicité des solutions Ce que nous verrons dans ce chapitre : un exemple d équation différentielle y = f(y)

Plus en détail

TP : Gestion d une image au format PGM

TP : Gestion d une image au format PGM TP : Gestion d une image au format PGM Objectif : L objectif du sujet est de créer une classe de manipulation d images au format PGM (Portable GreyMap), et de programmer des opérations relativement simples

Plus en détail

Python - introduction à la programmation et calcul scientifique

Python - introduction à la programmation et calcul scientifique Université de Strasbourg Environnements Informatique Python - introduction à la programmation et calcul scientifique Feuille de TP 1 Avant de commencer Le but de ce TP est de vous montrer les bases de

Plus en détail

Guide de l administrateur DOC-OEMCS8-GA-FR-29/09/05

Guide de l administrateur DOC-OEMCS8-GA-FR-29/09/05 Guide de l administrateur DOC-OEMCS8-GA-FR-29/09/05 Les informations contenues dans le présent manuel de documentation ne sont pas contractuelles et peuvent faire l objet de modifications sans préavis.

Plus en détail

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

ALGORITHMIQUE ET PROGRAMMATION En C

ALGORITHMIQUE ET PROGRAMMATION En C Objectifs ALGORITHMIQUE ET PROGRAMMATION Une façon de raisonner Automatiser la résolution de problèmes Maîtriser les concepts de l algorithmique Pas faire des spécialistes d un langage Pierre TELLIER 2

Plus en détail

GEI 465 : Systèmes répartis

GEI 465 : Systèmes répartis Université de Sherbrooke GEI 465 : Systèmes répartis Travaux à effectuer Ahmed Khoumsi Automne 2004 Page 1 Les deux premiers travaux que vous effectuerez vous donneront, respectivement, l occasion d utiliser

Plus en détail

Installation de TeamLab sur un serveur local Ce guide est destiné aux utilisateurs ayant des connaissances de base en administration Windows

Installation de TeamLab sur un serveur local Ce guide est destiné aux utilisateurs ayant des connaissances de base en administration Windows Information sur la version serveur TeamLab Serveur TeamLab est une version du portail destinée à ceux qui ont décidé d'installer et de configurer TeamLab sur leur propre serveur. A partir de la version

Plus en détail