TD 2 - Modèles de calcul
|
|
- Lucien Leblanc
- il y a 8 ans
- Total affichages :
Transcription
1 TD 2 - Modèles de calcul Remarques préliminaires Si ou désigne une relation binaire (de dérivation/transition suivant le contexte), on notera ou sa clôture transitive, comprendre la relation obenue en itérant la relation initiale un nombre arbitraire de fois Suivant le modèle considéré, on définira une notion de fonction calculée (de N k N ou, ce qui est équivalent à codage près, de N N) ou de langage reconnu (que l'on peut interpréter comme une fonction calculée de N {0, 1}) Machine RAM La machine RAM (pour Random-Access Machine) est un modèle formellement assez proche de l'assembleur de nos microprocesseurs Une machine RAM (sur les entiers) dispose d'un nombre infini dénombrable de registres, notés [1], [2], et pouvant contenir des entiers naturels (arbitrairement grands), et d'un programme constitué d'une séquence d'instructions parmi : UNIT r : effectue [r] := 1 ; ADD r d r 1 r 2 : effectue [r d ] := [r 1 ] + [r 2 ] ; SUB r d r 1 r 2 : effectue [r d ] := [r 1 ] [r 2 ] ; SHIFT r : effectue [r] := [r]/2 (en division entière) ; COPY_I r d r s : effectue [r d ] := [[r s ]] (attention à l'accès indirect de la source) ; I_COPY r d r s : effectue [[r d ]] := [r s ] (attention à l'accès indirect de la destination) ; JNZ r i : sauter à la i e instruction si [r] > 0 ; HALT : mettre fin au programme La machine exécute séquentiellement les instructions dans l'ordre du programme et s'arrête à la dernière instruction ou lorsqu'elle rencontre l'instruction HALT Fonction calculée Une fonction (partielle) f : N k N est calculable par machine RAM s'il existe une machine RAM telle que, pour tous v 1,, v k N : si f (v 1,, v k ) est définie, la machine s'arrête avec [1] = f (v 1,, v k ) lorsqu'elle est lancée depuis la configuration initiale dans laquelle [1] = v 1,, [k] = v k et [i] = 0 pour tout i > k ; sinon, la machine ne s'arrête pas depuis cette même configuration initiale Exercice 1 Un peu d'arithmétique Programmer une machine RAM prenant en entrée deux entiers n et i et calculant le i e bit de l'écriture binaire de n Programmer une machine RAM réalisant la multiplication de deux entiers Programmer une machine RAM calculant la factorielle de son entrée Exercice 2 Indirections Les instructions COPY_I et I_COPY permettent des accès indirects Supposons que l'on veuille stocker dans des registres les termes successifs d'une suite numérique jusqu'à un rang arbitrairement grand (par exemple donné en entrée) Justifier l'intérêt de ces indirections Qu'implique la non utilisation des indirections dans un programme? Comment pourrait-on répondre à la question précédente sans les indirections? Et si les registres étaient de taille bornée (et ne pouvaient par exemple contenir que des entiers codés sur 64 bits)? 1/5
2 Automate à pile(s) Un automate à pile est un automate fini qui dispose d'un espace de stockage sous la forme d'une pile L'automate effectue des transitions en fonction de la lettre courante du mot d'entrée mais également de la lettre de haut de pile À chaque transition, il dépile la lettre de haut de pile et peut empiler un nombre arbitraire de lettres à la place Formellement, un automate à pile (non déterministe) A est un 6-uplet A = (Q, Σ, Γ, δ, q 0, F ) où Q est l'ensemble fini des états, Σ l'alphabet d'entrée, Γ l'alphabet de pile qui contient un symbole spécial Z de fond de pile, δ : Q Σ {ε} Γ P(Q Γ ) la fonction de transition, q 0 l'état initial et F l'ensemble des états finaux Une configuration de A est un triplet (q, w, p) Q Σ Γ où q représente l'état courant, w le suffixe du mot d'entrée restant à lire et p le contenu actuel de la pile On définit alors la relation de transition sur les configurations : (q, aw, bp) (q, w, p p) (q, p ) δ(q, a, b) (q, w, bp) (q, w, p p) (q, p ) δ(q, ε, b) (ε-transition) On généralise naturellement cette définition à un nombre k 2 arbitraire de piles Langage reconnu Un mot w Σ est accepté par l'automate A s'il existe une séquence de transitions (q 0, w, Z) (q f, ε, p) avec q f F Cela définit le langage L(A) reconnu par l'automate Exercice 3 Des langages typiquement algébriques Programmer un automate à (une) pile qui reconnaît le langage {a n b n, n N} sur l'alphabet d'entrée Σ = {a, b} Programmer un automate à (une) pile qui reconnaît le langage des mots bien parenthésés 1 sur l'alphabet d'entrée Σ = {(, )} (qui ne contient qu'une seule forme de parenthèses) Automate à compteur(s) Un automate à k compteurs (déterministe), ou machine de Minsky, est un quintuplet A = (k, Q, δ, q 0, q f ) où k 1 est le nombre de compteurs, Q est l'ensemble fini des états, δ : Q\{q f } {0, +} k Q { 1, 0, 1} k est la fonction partielle de transition, q 0, q f Q sont les états initial et final Une configuration de A est un (k + 1)-uplet (q, n 1,, n k ) Q N k où q représente l'état courant et n 1,, n k les valeurs courantes des k compteurs Soit sgn la fonction signe définie sur N par sgn(n) = 0 si n = 0 et sgn(n) = + sinon On définit la relation de transition sur l'ensemble des configurations : (q, n 1,, n k ) (q, n 1 + d 1,, n k + d k ) si δ(q, sgn(n 1 ),, sgn(n k )) = (q, d 1,, d k ) et i, n i + d i 0 1 Un théorème de Chomsky et Schützenberger affirme que tous les langages reconnus par automate à une pile sont, à des transformations simples près, des langages de mots bien parenthésés (mais pour un nombre arbitraire de symboles de parenthèses) 2/5
3 Fonction calculée Une fonction (partielle) f : N k N est calculable par automate à compteurs s'il existe un automate à au moins k compteurs tel que, pour tous v 1,, v k N : si f (v 1,, v k ) est définie, l'automate atteint l'état q f avec le premier compteur à f (v 1,, v k ) lorsqu'il est lancé depuis la configuration initiale dans laquelle les k premiers compteurs contiennent respectivement v 1, v k et les autres 0 ; sinon, soit l'automate ne s'arrête pas, soit il s'arrête (c'est à dire qu'aucune transition n'est possible) dans un état différent de q f depuis cette même configuration initiale Exercice 4 Un peu d'arithmétique Encore? Programmer un automate à compteurs qui calcule l'addition, puis la multiplication de deux entiers naturels Programmer un automate à compteurs qui calcule le n e terme de la suite de Fibonacci pour n donné en entrée Système de Post Les systèmes de Post (tag systems) sont des systèmes de réécriture déterministes et séquentiels introduits par E Post dès les années 1920 Formellement, un k-système de Post est un triplet (k, Σ, p) où k 1, Σ est un alphabet fini et p : Σ Σ Le k-système transforme un mot w Σ en supprimant ses k premières lettres et en ajoutant p(w 1 ) à la fin (où w 1 est la première lettre de w) Formellement, on définit la relation de dérivation sur Σ par : w w k+1,, w p(w 1 ) si w k Cette relation n'est correctement définie que sur les mots w de taille au moins k Langage reconnu Un mot initial w est accepté par un k-système de Post si la séquence de dérivations partant de w s'arrête, c'est-à-dire que l'on atteint un mot de taille strictement plus petite que k Cela définit le langage L Σ reconnu par le système Exercice 5 Comme une lettre à la poste Programmer un système de Post qui reconnaît le langage des mots de longueur paire Programmer un système de Post qui calcule la suite de Syracuse en unaire définie par la relation de récurrence u n+1 = u n /2 si u n est pair et u n+1 = 3u n + 1 sinon Le système s'arrête dès que l'on atteint la valeur 1 Quel est le langage reconnu par ce système? 3/5
4 λ-calcul Le λ-calcul est un système formel (purement syntaxique) introduit par A Church dans les années 1930 Il constitue le cœur des langages de programmation fonctionnels contemporains comme OCaml ou Haskell Les termes (éléments syntaxiques) du λ-calcul sont appelés λ-termes et suivent la syntaxe récursive suivante (où x représente une variable et M un terme) : M ::= x M M λxm Ainsi, un λ-terme est soit une variable x (penser à une variable x en OCaml), soit l'application M M d'un terme M à un terme M (penser à l'application M M' d'un argument M' à une fonction M en OCaml), soit une fonction qui prend un paramètre représenté par la variable x et dont le corps est le terme M (penser à fun x -> M en OCaml) On associe à cette syntaxe un système de réécriture, noté, dont la seule règle est la β-réduction (où M[M /x] désigne le terme M dans lequel on a remplacé toutes les occurences de la variable x par le terme M ) : (λxm)m M[M /x] Ainsi l'application d'un argument M à une fonction λxm se réécrit en le corps M[M /x] de la fonction dans lequel on a remplacé les x par des M Les autres règles de réduction du λ-calcul, que l'on n'énoncera par formellement ici, ne servent qu'à permettre l'usage de la β-réduction à l'intérieur d'un terme Exercice 6 Quelques réductions Pas si β On pose I = λxx et F = λxλy(y (y I)) Réduire F (I I) F (I I) autant que possible (en ne faisant qu'une β-réduction à chaque étape) et comparez votre résultat avec celui de vos voisins Même question avec Ω = (λxx x) (λxx x) Proposer un terme dont la taille augmente à l'infini au fil des réductions Entiers de Church En λ-calcul, on représente l'entier n N par le terme suivant : [n] = λf λx(f (f ( (f x) )) = λf λx(f n x) } {{ } n Fonction calculée Une fonction (partielle) f : N k N est λ-calculable s'il existe un λ-terme T tel que T [v 1 ] [v k ] [f (v 1,, v k )] lorsque f (v 1,, v k ) est définie, la séquence des dérivations ne terminant pas sinon Exercice 7 Un peu d'arithmétique Toujours! Programmer une fonction incr telle que incr [n] [n + 1] Programmer une fonction add telle que add [n] [m] [n + m] Programmer une fonction mult telle que mult [n] [m] [n m] 4/5
5 Équivalence des modèles Exercice 8 En vous appuyant sur votre cours de compilation, que pensez-vous du lien entre le modèle de la machine RAM et le langage IMP vu en cours? Exercice 9 Le cycle des machines Montrer que l'on peut simuler une machine de Turing avec un automate à 2 piles déterministe On supposera pour cette simulation que le mot d'entrée lu par l'automate dispose d'un délimiteur # de fin de mot (et l'on rappelle que l'automate peut faire des ε-transitions qui ne consomment aucune lettre du mot d'entrée) Utiliser une pile pour stocker la partie du ruban située à droite de la tête de lecture et l'autre pour la partie gauche Montrer que l'on peut simuler un automate à 1 pile par un automate à 2 compteurs En déduire que l'on peut simuler un automate à 2 piles par un automate à 4 compteurs, justifier que l'on peut immédiatement réduire ce nombre à 3 compteurs Proposer enfin une méthode afin de réduire le nombre de compteurs à 2 Montrer que l'on peut simuler un automate à compteurs par une machine RAM Montrer que l'on peut simuler une machine RAM par machine de Turing On en conclurera que les quatre modèles précédents sont équivalents Exercice 10 Le cycle des systèmes de réécriture Montrer que l'on peut simuler une machine de Turing à l'aide d'un 2-système de Post Montrer que l'on peut simuler un 2-système de Post par un λ-terme du λ-calcul Justifier que l'on peut calculer une séquence de réductions d'un λ-terme sur machine de Turing On en conclurera que les trois modèles précédents sont équivalents 5/5
Algorithmique et Programmation Fonctionnelle
Algorithmique et Programmation Fonctionnelle RICM3 Cours 9 : Lambda-calcul Benjamin Wack Polytech 2014-2015 1 / 35 La dernière fois Typage Polymorphisme Inférence de type 2 / 35 Plan Contexte λ-termes
Plus en détailVers l'ordinateur quantique
Cours A&G Vers l'ordinateur quantique Données innies On a vu dans les chapîtres précédents qu'un automate permet de représenter de manière nie (et même compacte) une innité de données. En eet, un automate
Plus en détailConception de circuits numériques et architecture des ordinateurs
Conception de circuits numériques et architecture des ordinateurs Frédéric Pétrot Année universitaire 2014-2015 Structure du cours C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 Codage des nombres en base 2, logique
Plus en détailMachines virtuelles Cours 1 : Introduction
Machines virtuelles Cours 1 : Introduction Pierre Letouzey 1 pierre.letouzey@inria.fr PPS - Université Denis Diderot Paris 7 janvier 2012 1. Merci à Y. Régis-Gianas pour les transparents Qu est-ce qu une
Plus en détailModèles de Calcul. Yassine Lakhnech. 2007/08 Université Joseph Fourier Lab.: VERIMAG. Yassine.Lakhnech@imag.fr. Modèles de Calcul Start p.
Modèles de Calcul Yassine Lakhnech Yassine.Lakhnech@imag.fr 2007/08 Université Joseph Fourier Lab.: VERIMAG Modèles de Calcul Start p.1/81 Équipe pédagogique Cours : Saddek Bensalem et Yassine Lakhnech
Plus en détailGPA770 Microélectronique appliquée Exercices série A
GPA770 Microélectronique appliquée Exercices série A 1. Effectuez les calculs suivants sur des nombres binaires en complément à avec une représentation de 8 bits. Est-ce qu il y a débordement en complément
Plus en détailCH.6 Propriétés des langages non contextuels
CH.6 Propriétés des langages non contetuels 6.1 Le lemme de pompage 6.2 Les propriétés de fermeture 6.3 Les problèmes de décidabilité 6.4 Les langages non contetuels déterministes utomates ch6 1 6.1 Le
Plus en détailUEO11 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étailCHAPITRE VIII : Les circuits avec résistances ohmiques
CHAPITRE VIII : Les circuits avec résistances ohmiques VIII. 1 Ce chapitre porte sur les courants et les différences de potentiel dans les circuits. VIII.1 : Les résistances en série et en parallèle On
Plus en détailINF 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étailChap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1
Chap 4: Analyse syntaxique 1 III- L'analyse syntaxique: 1- Le rôle d'un analyseur syntaxique 2- Grammaires non contextuelles 3- Ecriture d'une grammaire 4- Les méthodes d'analyse 5- L'analyse LL(1) 6-
Plus en détailNOTATIONS PRÉLIMINAIRES
Pour le Jeudi 14 Octobre 2010 NOTATIONS Soit V un espace vectoriel réel ; l'espace vectoriel des endomorphismes de l'espace vectoriel V est désigné par L(V ). Soit f un endomorphisme de l'espace vectoriel
Plus en détailCours 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étailGénéralités sur le Langage Java et éléments syntaxiques.
Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques....1 Introduction...1 Genéralité sur le langage Java....1 Syntaxe de base du Langage...
Plus en détailI. Introduction aux fonctions : les fonctions standards
Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons
Plus en détailIntroduction à NetCDF
Introduction à NetCDF École normale supérieure L3 géosciences 2014/2015 Lionel GUEZ guez@lmd.ens.fr Laboratoire de météorologie dynamique Explications préliminaires Deux distinctions générales sur les
Plus en détailRecherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
Plus en détailD'UN THÉORÈME NOUVEAU
DÉMONSTRATION D'UN THÉORÈME NOUVEAU CONCERNANT LES NOMBRES PREMIERS 1. (Nouveaux Mémoires de l'académie royale des Sciences et Belles-Lettres de Berlin, année 1771.) 1. Je viens de trouver, dans un excellent
Plus en détailchapitre 4 Nombres de Catalan
chapitre 4 Nombres de Catalan I Dénitions Dénition 1 La suite de Catalan (C n ) n est la suite dénie par C 0 = 1 et, pour tout n N, C n+1 = C k C n k. Exemple 2 On trouve rapidement C 0 = 1, C 1 = 1, C
Plus en détailComplexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation
Complexité Objectifs des calculs de complexité : - pouvoir prévoir le temps d'exécution d'un algorithme - pouvoir comparer deux algorithmes réalisant le même traitement Exemples : - si on lance le calcul
Plus en détailArchitecture des ordinateurs TD1 - Portes logiques et premiers circuits
Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice
Plus en détailFICHE UE Licence/Master Sciences, Technologies, Santé Mention Informatique
NOM DE L'UE : Algorithmique et programmation C++ LICENCE INFORMATIQUE Non Alt Alt S1 S2 S3 S4 S5 S6 Parcours : IL (Ingénierie Logicielle) SRI (Systèmes et Réseaux Informatiques) MASTER INFORMATIQUE Non
Plus en détaillength : A N add : Z Z Z (n 1, n 2 ) n 1 + n 2
1 Univ. Lille1 - Licence info 3ème année 2013-2014 Expression Logique et Fonctionnelle... Évidemment Cours n o 1 : Introduction à la programmation fonctionnelle 1 Introduction La programmation fonctionnelle
Plus en détailLicence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter
Plus en détailI- Définitions des signaux.
101011011100 010110101010 101110101101 100101010101 Du compact-disc, au DVD, en passant par l appareil photo numérique, le scanner, et télévision numérique, le numérique a fait une entrée progressive mais
Plus en détailCours d Informatique
Cours d Informatique 1ère année SM/SMI 2007/2008, Info 2 Département de Mathématiques et d Informatique, Université Mohammed V elbenani@hotmail.com sayah@fsr.ac.ma 2007/2008 Info2, 1ère année SM/SMI 1
Plus en détailL'instruction if permet d'exécuter des instructions différentes selon qu'une condition est vraie ou fausse. Sa forme de base est la suivante:
420-183 Programmation 1 8. Les structures conditionnelles Dans l'écriture de tout programme informatique, une des premières nécessités que nous rencontrons est de pouvoir faire des choix. Dans une application
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailSuivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)
Modularité Extensions Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs) généricité modules de première classe : peuvent être
Plus en détailNombre de marches Nombre de facons de les monter 3 3 11 144 4 5 12 233 5 8 13 377 6 13 14 610 7 21 15 987 8 34 16 1597 9 55 17 2584 10 89
Soit un escalier à n marches. On note u_n le nombre de façons de monter ces n marches. Par exemple d'après l'énoncé, u_3=3. Pour monter n marches, il faut d'abord monter la première. Soit on la monte seule,
Plus en détailLe chiffre est le signe, le nombre est la valeur.
Extrait de cours de maths de 6e Chapitre 1 : Les nombres et les opérations I) Chiffre et nombre 1.1 La numération décimale En mathématique, un chiffre est un signe utilisé pour l'écriture des nombres.
Plus en détailPeut-on tout programmer?
Chapitre 8 Peut-on tout programmer? 8.1 Que peut-on programmer? Vous voici au terme de votre initiation à la programmation. Vous avez vu comment représenter des données de plus en plus structurées à partir
Plus en détailSystème binaire. Algèbre booléenne
Algèbre booléenne Système binaire Système digital qui emploie des signaux à deux valeurs uniques En général, les digits employés sont 0 et 1, qu'on appelle bits (binary digits) Avantages: on peut utiliser
Plus en détailProgrammation C++ (débutant)/instructions for, while et do...while
Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de
Plus en détailInitiation à l algorithmique
Informatique S1 Initiation à l algorithmique procédures et fonctions 2. Appel d une fonction Jacques TISSEAU Ecole Nationale d Ingénieurs de Brest Technopôle Brest-Iroise CS 73862-29238 Brest cedex 3 -
Plus en détailLogique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.
Logique binaire I. L'algèbre de Boole L'algèbre de Boole est la partie des mathématiques, de la logique et de l'électronique qui s'intéresse aux opérations et aux fonctions sur les variables logiques.
Plus en détailCalculabilité Cours 3 : Problèmes non-calculables. http://www.irisa.fr/lande/pichardie/l3/log/
Calculabilité Cours 3 : Problèmes non-calculables http://www.irisa.fr/lande/pichardie/l3/log/ Problèmes et classes de décidabilité Problèmes et classes de décidabilité Nous nous intéressons aux problèmes
Plus en détailLa conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA)
La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA) I. L'intérêt de la conversion de données, problèmes et définitions associés. I.1. Définitions:
Plus en détailTP 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étailLa NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.
La NP-complétude Johanne Cohen PRISM/CNRS, Versailles, France. Références 1. Algorithm Design, Jon Kleinberg, Eva Tardos, Addison-Wesley, 2006. 2. Computers and Intractability : A Guide to the Theory of
Plus en détail1 Introduction C+ + Algorithm e. languag. Algorigramm. machine binaire. 1-1 Chaîne de développement. Séance n 4
1 Introduction 1-1 Chaîne de développement Algorithm e C+ + Algorigramm e languag e machine binaire Le programme est écrit à l aide de Multiprog sous forme d algorigramme puis introduit dans le microcontrôleur
Plus en détailProgrammation assembleur : aperçu
Assembleur : Younès EL AMRANI. 1 Programmation assembleur : aperçu Programmation en assembleur : NASM Module M14 Semestre 4 Printemps 2010 Equipe pédagogique : Younès El Amrani, Abdelhakim El Imrani, Faissal
Plus en détailStructures algébriques
Structures algébriques 1. Lois de composition s Soit E un ensemble. Une loi de composition interne sur E est une application de E E dans E. Soient E et F deux ensembles. Une loi de composition externe
Plus en détailLes diagrammes de modélisation
L approche Orientée Objet et UML 1 Plan du cours Introduction au Génie Logiciel L approche Orientée Objet et Notation UML Les diagrammes de modélisation Relations entre les différents diagrammes De l analyse
Plus en détailLambda-calcul et langages fonctionnels
Lambda-calcul et langages fonctionnels Jean Goubault-Larrecq Abstract Ceci est la version 4 de la première partie du cours de lambda-calcul, datant du 02 juin 2014. La version 3 datait du 28 janvier 2011
Plus en détailRéalisabilité et extraction de programmes
Mercredi 9 mars 2005 Extraction de programme: qu'est-ce que c'est? Extraire à partir d'une preuve un entier x N tel que A(x). π x N A(x) (un témoin) (En fait, on n'extrait pas un entier, mais un programme
Plus en détailThéorie des Langages
Théorie des Langages Analyse syntaxique descendante Claude Moulin Université de Technologie de Compiègne Printemps 2010 Sommaire 1 Principe 2 Premiers 3 Suivants 4 Analyse 5 Grammaire LL(1) Exemple : Grammaire
Plus en détailInformatique Théorique : Théorie des Langages, Analyse Lexicale, Analyse Syntaxique Jean-Pierre Jouannaud Professeur
Université Paris-Sud Licence d Informatique Informatique Théorique : Théorie des Langages, Analyse Lexicale, Analyse Syntaxique Jean-Pierre Jouannaud Professeur Adresse de l auteur : LIX École Polytechnique
Plus en détail6 - La conscience est-elle un processus algorithmique?
6 - La conscience est-elle un processus algorithmique? par Hervé Zwirn Le problème de la conscience est sans doute l'un des plus difficiles sinon le plus difficile auquel on puisse s'attaquer. J'en veux
Plus en détailExercices de dénombrement
Exercices de dénombrement Exercice En turbo Pascal, un entier relatif (type integer) est codé sur 6 bits. Cela signifie que l'on réserve 6 cases mémoires contenant des "0" ou des "" pour écrire un entier.
Plus en détailIV- 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étailArchitecture des ordinateurs
Architecture des ordinateurs Cours 4 5 novembre 2012 Archi 1/22 Micro-architecture Archi 2/22 Intro Comment assembler les différents circuits vus dans les cours précédents pour fabriquer un processeur?
Plus en détailCours Informatique Master STEP
Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions
Plus en détailIntégration et probabilités TD1 Espaces mesurés
Intégration et probabilités TD1 Espaces mesurés 2012-2013 1 Petites questions 1) Est-ce que l ensemble des ouverts de R est une tribu? 2) Si F et G sont deux tribus, est-ce que F G est toujours une tribu?
Plus en détailMultiPlus sans limites
MultiPlus sans limites La maîtrise de l'énergie avec le Phoenix Multi/MultiPlus de Victron Energy Parfois les possibilités offertes par un nouveau produit sont si uniques qu'elles sont difficiles à comprendre,
Plus en détailAlgorithmique avec Algobox
Algorithmique avec Algobox 1. Algorithme: Un algorithme est une suite d instructions qui, une fois exécutée correctement, conduit à un résultat donné Un algorithme doit contenir uniquement des instructions
Plus en détailCHAPITRE IX : Les appareils de mesures électriques
CHAPITRE IX : Les appareils de mesures électriques IX. 1 L'appareil de mesure qui permet de mesurer la différence de potentiel entre deux points d'un circuit est un voltmètre, celui qui mesure le courant
Plus en détail2 Grad Info Soir Langage C++ Juin 2007. Projet BANQUE
2 Grad Info Soir Langage C++ Juin 2007 Projet BANQUE 1. Explications L'examen comprend un projet à réaliser à domicile et à documenter : - structure des données, - objets utilisés, - relations de dépendance
Plus en détail1/ Présentation de SQL Server :
Chapitre II I Vue d ensemble de Microsoft SQL Server Chapitre I : Vue d ensemble de Microsoft SQL Server Module: SQL server Semestre 3 Année: 2010/2011 Sommaire 1/ Présentation de SQL Server 2/ Architerture
Plus en détailLicence 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étailChapitre 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étailLes 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étailCompression de Données - Algorithme de Huffman Document de Conception
ROLLET Samuel SALLE Jennifer Compression de Données - Algorithme de Huffman Document de Conception Projet d'algorithmique et Structure des Données 1 SOMMAIRE 1. Domaine d application....4 1.1 Objectifs
Plus en détailChapitre IV : La Tenue Des Livres Le journal Le grand Livre
Chapitre IV : La Tenue Des Livres Le journal Le grand Livre A - Notion sur la tenue des livres : 1) Notions Générales : La tenue des livres consiste à inscrire sur des registres comptables les différentes
Plus en détailTD Architecture des ordinateurs. Jean-Luc Dekeyser
TD Architecture des ordinateurs Jean-Luc Dekeyser Fiche 1 Nombres de l informatique Exercice 1 Une entreprise désire réaliser la sauvegarde de ses données sur un site distant. Le volume de données à sauvegarder
Plus en détailChapitre 1 I:\ Soyez courageux!
Chapitre 1 I:\ Soyez courageux! Pour ne rien vous cacher, le langage d'assembleur (souvent désigné sous le terme "Assembleur", bien que ce soit un abus de langage, puisque "Assembleur" désigne le logiciel
Plus en détailCapacité d un canal Second Théorème de Shannon. Théorie de l information 1/34
Capacité d un canal Second Théorème de Shannon Théorie de l information 1/34 Plan du cours 1. Canaux discrets sans mémoire, exemples ; 2. Capacité ; 3. Canaux symétriques ; 4. Codage de canal ; 5. Second
Plus en détailDate : 18.11.2013 Tangram en carré page
Date : 18.11.2013 Tangram en carré page Titre : Tangram en carré Numéro de la dernière page : 14 Degrés : 1 e 4 e du Collège Durée : 90 minutes Résumé : Le jeu de Tangram (appelé en chinois les sept planches
Plus en détailTravaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation
Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des
Plus en détailExécution des instructions machine
Exécution des instructions machine Eduardo Sanchez EPFL Exemple: le processeur MIPS add a, b, c a = b + c type d'opération (mnémonique) destination du résultat lw a, addr opérandes sources a = mem[addr]
Plus en détailCompilation (INF 564)
Présentation du cours Le processeur MIPS Programmation du MIPS 1 Compilation (INF 564) Introduction & architecture MIPS François Pottier 10 décembre 2014 Présentation du cours Le processeur MIPS Programmation
Plus en détailChapitre 4 : les stocks
Chapitre 4 : les stocks Stocks et actifs Une entreprise achète généralement des biens pour les utiliser dans son processus de production, ce sont les matières premières et les fournitures, elle peut également
Plus en détailLe codage informatique
Outils de Bureautique Le codage informatique (exemple : du binaire au traitement de texte) PLAN 3) Le codage binaire 4) Représentation physique des bits 5) Le bit est un peu court... 6) Codage de texte
Plus en détailLeçons et exemples de programmation en Logo
Leçons et exemples de programmation en Logo Francis Leboutte Le 18 mai 2005 1 www.algo.be/logo.html IDDN.BE.010.0093308.000.R.C.2001.035.42000 Droits d'utilisation et de reproduction La reproduction et
Plus en détailELP 304 : Électronique Numérique. Cours 1 Introduction
ELP 304 : Électronique Numérique Cours 1 Introduction Catherine Douillard Dépt Électronique Les systèmes numériques : généralités (I) En électronique numérique, le codage des informations utilise deux
Plus en détailAlgorithmique et Programmation, IMA
Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions
Plus en détailFondements de l informatique Logique, modèles, et calculs
Fondements de l informatique Logique, modèles, et calculs Cours INF423 de l Ecole Polytechnique Olivier Bournez Version du 20 septembre 2013 2 Table des matières 1 Introduction 9 1.1 Concepts mathématiques........................
Plus en détailOptimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications
Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications A. Optimisation sans contrainte.... Généralités.... Condition nécessaire et condition suffisante
Plus en détailDéfinitions. Numéro à préciser. (Durée : )
Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.
Plus en détailTexte Agrégation limitée par diffusion interne
Page n 1. Texte Agrégation limitée par diffusion interne 1 Le phénomène observé Un fût de déchets radioactifs est enterré secrètement dans le Cantal. Au bout de quelques années, il devient poreux et laisse
Plus en détailIntroduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes.
Introduction L'objectif de mon TIPE est la reconnaissance de sons ou de notes de musique à l'aide d'un réseau de neurones. Ce réseau doit être capable d'apprendre à distinguer les exemples présentés puis
Plus en détailIntégration et probabilités TD1 Espaces mesurés Corrigé
Intégration et probabilités TD1 Espaces mesurés Corrigé 2012-2013 1 Petites questions 1 Est-ce que l ensemble des ouverts de R est une tribu? Réponse : Non, car le complémentaire de ], 0[ n est pas ouvert.
Plus en détailLE PROBLEME DU PLUS COURT CHEMIN
LE PROBLEME DU PLUS COURT CHEMIN Dans cette leçon nous définissons le modèle de plus court chemin, présentons des exemples d'application et proposons un algorithme de résolution dans le cas où les longueurs
Plus en détailRaisonnement par récurrence Suites numériques
Chapitre 1 Raisonnement par récurrence Suites numériques Terminale S Ce que dit le programme : CONTENUS CAPACITÉS ATTENDUES COMMENTAIRES Raisonnement par récurrence. Limite finie ou infinie d une suite.
Plus en détail6. Les différents types de démonstrations
LES DIFFÉRENTS TYPES DE DÉMONSTRATIONS 33 6. Les différents types de démonstrations 6.1. Un peu de logique En mathématiques, une démonstration est un raisonnement qui permet, à partir de certains axiomes,
Plus en détailImage 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étailTout savoir sur le matériel informatique
Tout savoir sur le matériel informatique Thème de l exposé : Les Processeurs Date : 05 Novembre 2010 Orateurs : Hugo VIAL-JAIME Jérémy RAMBAUD Sommaire : 1. Introduction... 3 2. Historique... 4 3. Relation
Plus en détailLimites finies en un point
8 Limites finies en un point Pour ce chapitre, sauf précision contraire, I désigne une partie non vide de R et f une fonction définie sur I et à valeurs réelles ou complees. Là encore, les fonctions usuelles,
Plus en détailMEDIAplus elearning. version 6.6
MEDIAplus elearning version 6.6 L'interface d administration MEDIAplus Sommaire 1. L'interface d administration MEDIAplus... 5 2. Principes de l administration MEDIAplus... 8 2.1. Organisations et administrateurs...
Plus en détailFONCTION EXPONENTIELLE ( ) 2 = 0.
FONCTION EXPONENTIELLE I. Définition Théorème : Il eiste une unique fonction f dérivable sur R telle que f ' = f et f (0) =. Démonstration de l'unicité (eigible BAC) : L'eistence est admise - Démontrons
Plus en détailAlgorithmes de recherche
Algorithmes de recherche 1 Résolution de problèmes par recherche On représente un problème par un espace d'états (arbre/graphe). Chaque état est une conguration possible du problème. Résoudre le problème
Plus en détailProgrammation Objet - Cours II
Programmation Objet - Cours II - Exercices - Page 1 Programmation Objet - Cours II Exercices Auteur : E.Thirion - Dernière mise à jour : 05/07/2015 Les exercices suivants sont en majorité des projets à
Plus en détail1. Cliquez sur dans le coin supérieur gauche de l'écran 2. Sélectionnez la Langue de l'interface désirée 3. Cliquez sur
NOTIFICATIONS GUIDE Le module Notifications permet de retrouver des notifications en utilisant les champs spécifiques de la base de données du Registre central des notifications (RCN). Il comporte une
Plus en détailCarl-Louis-Ferdinand von Lindemann (1852-1939)
Par Boris Gourévitch "L'univers de Pi" http://go.to/pi314 sai1042@ensai.fr Alors ça, c'est fort... Tranches de vie Autour de Carl-Louis-Ferdinand von Lindemann (1852-1939) est transcendant!!! Carl Louis
Plus en détailÉléments d'architecture des ordinateurs
Chapitre 1 Éléments d'architecture des ordinateurs Machines take me by surprise with great frequency. Alan Turing 1.1 Le Hardware Avant d'attaquer la programmation, il est bon d'avoir quelques connaissances
Plus en détailGUIDE D'INSTRUCTIONS
French GUIDE D'INSTRUCTIONS LECTEUR CD/MP3 AVEC RADIO FM ET LECTEUR USB Veuillez lire ces instructions avant d'utiliser votre appareil. Respectez-les scrupuleusement. VUE D'ENSEMBLE DU LECTEUR 1 2 3 10
Plus en détailUniversité du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.
Université du Québec à Chicoutimi Département d informatique et de mathématique Plan de cours Titre : Élément de programmation Sigle : 8inf 119 Session : Automne 2001 Professeur : Patrice Guérin Local
Plus en détailLes différents types de données et leurs opérations de base
Séquence 2 Les différents types de données et leurs opérations de base Contenu Présentation générale... 21 Partie 1 Les 3 familles de données et l'opération d'affectation... 22 1. Les trois familles de
Plus en détailChapitre 1 : Introduction aux bases de données
Chapitre 1 : Introduction aux bases de données Les Bases de Données occupent aujourd'hui une place de plus en plus importante dans les systèmes informatiques. Les Systèmes de Gestion de Bases de Données
Plus en détail