Analyse de Données Structurées - Cours 6
|
|
- Camille Lussier
- il y a 6 ans
- Total affichages :
Transcription
1 Analyse de Données Structurées - Cours 6 Ralf Treinen Université Paris Diderot UFR Informatique Institut de Recherche en Informatique Fondamentale treinen@irif.fr 1 er mars 2017 c Ralf Treinen
2 Rappel et Compléments : LL(1) et LL(k) dans des cas simples Construction d'un arbre de dérivation Règles de la grammaire : (1) S i (2) S [ S + S ] S [ S + S ] [ S + S ] [ [ i + i ] + [ i + i ] ] Choisir règle (1) : c'est la seule qui peut produire à partir de S un mot qui commence sur i.
3 Rappel et Compléments : LL(1) et LL(k) dans des cas simples Grammaires LL(1) Intuition derrière les grammaires LL(1) : dans la construction d'une dérivation gauche, le symbole suivant de l'entrée nous indique quelle règle de la grammaire appliquer au non-terminal le plus à gauche de l'arbre de dérivation. Conséquence : toute grammaire LL(1) (ou même LL(k)) est non-ambiguë. Un critère très simple pour être LL(1) : Si tous les côtés droites de la grammaire pour le même non-terminal commencent sur des terminaux diérents, alors la grammaire est LL(1). Ce critère ne s'applique ni au cas des côtés droites qui commencent sur un non-terminal, ni au cas des côtés droites ɛ.
4 Rappel et Compléments : LL(1) et LL(k) dans des cas simples Une caractérisation des grammaires LL(k) en général Théorème Une grammaire G = (V, Σ, S, P) est LL(k) ssi si A β et A γ sont deux règles diérentes et S waα une dérivation gauche, w Σ alors FIRSTk(βα) FIRSTk(γα) = Preuve omise (conséquence immédiate de la dénition) Attention, cette caractérisation générale prend en compte le contexte dans lequel on peut obtenir A. Elle parle de toutes les dérivations permises par la grammaire. Comment en obténir un critère qu'on peut appliquer à la grammaire?
5 Rappel et Compléments : LL(1) et LL(k) dans des cas simples Un meilleur critère pour être LL(1) Dénition de FIRST 1 (α) : l'ensemble des symboles avec lesquelles un mot terminal dérivé à partir de α peut commencer (plus ɛ dans le cas où α ɛ). Vu au dernier cours : calcul de FIRST 1 dans le cas où aucun côté droite est ɛ. Critère vu la semaine dernière : Si tous les côtés droites de la grammaire pour le même non-terminal ont des ensembles FIRST 1 disjointes, et aucun non-terminal est annulant, alors la grammaire est LL(1).
6 Rappel et Compléments : LL(1) et LL(k) dans des cas simples Exemple vu au dernier cours Grammaire G = ({a, (, ), +, F, S}, {a, (, ), +}, S, P) où P est F a S (F+S) S F Le première critère simple ne s'applique pas. On obtient pour les côtés droites des règles : FIRST 1 (a) = {a} FIRST 1 ((F+S)) = {(} FIRST 1 (F) = {a}
7 Rappel et Compléments : LL(1) et LL(k) dans des cas simples Reconnaître la n de l'entrée Le programme vu au dernier cours a un défaut : il accepte aussi des expressions correctes, avec un texte quelconque ajouté à la n : (a+(a+a))%$#@ Solution : l'analyse lexicale envoie un jeton qui signale la n de l'entrée (par exemple, EOF pour end of le) remplacer l'axiome par S, avec une règle S S EOF où S est l'ancien axiome de la grammaire.
8 Rappel et Compléments : LL(1) et LL(k) dans des cas simples Le même exemple avec reconnaissance de la n G = ({a, (, ), +, EOF, F, S, S }, {a, (, ), +, EOF}, S, P) où P est F a S (F+S) S F S S EOF On obtient pour les côtés droites des règles : FIRST 1 (a) = {a} FIRST 1 ((F+S)) = {(} FIRST 1 (F) = {a} FIRST 1 (S EOF) = {a, (}
9 Analyse LL(1) dans le cas général Un exemple un peu plus avancé Une grammaire pour les expressions arithmétiques partiellement parenthésées. Terminaux : {i, +, *, (, ), EOF} Règles : S E EOF E E+T T T T*F F F (E) i Axiome : S
10 Analyse LL(1) dans le cas général L'exemple des expressions partiellement parenthésées Cette grammaire est non-ambiguë Intuition : Les + peuvent être produites seulement à partir du E. Tout mot engendré par E au-dessous d'un * est protégé par des parenthèses ( et ). (Il y a aussi une preuve formelle mais je vous en fait grâce.) Exercice : construire les arbres de dérivation pour i+i*i i+i+i Cette grammaire, est-elle aussi LL(1)? Ou au moins LL(k) pour quelque k N? Elle n'est pas LL(k), pour aucun k!
11 Analyse LL(1) dans le cas général Un critère pour ne pas pas être LL(k) Dénition Une grammaire G = (V, Σ, S, P) est récursive à gauche s'il y a un non-terminal N V Σ tel que N + Nα pour un α V. + : dérivation en au moins une étape. Exemple : notre grammaire pour les expressions partiellement parenthésées, car E E+T Lemme Si la grammaire G est réduite est récursive à gauche, alors G n'est pas pas LL(k), pour aucun k N.
12 Analyse LL(1) dans le cas général Preuve (simpliée) Supposons par l'absurde que G est LL(k) et récursive à gauche. Il y a donc une règle X X α (hypothèse simplicatrice) Il y a donc une dérivation gauche S wx γ (sinon X ne serait pas atteignable). Il y aussi une règle diérente X β (sinon X ne serait pas productif). Il existe donc une dérivation gauche S wx γ wx α k γ Par le théorème du début du cours : FIRSTk(X α k+1 γ) FIRSTk(βα k γ) =
13 Analyse LL(1) dans le cas général Preuve (2) On a : FIRSTk(X α k+1 γ) FIRSTk(βα k γ) = Donc, grâce à la règle X β : FIRSTk(βα k+1 γ) FIRSTk(βα k γ) = Contradiction (deux cas : α ɛ ou pas).
14 Analyse LL(1) dans le cas général Quoi faire? On peut transformer la grammaire en une grammaire équivalente (qui dénit le même langage), et qui est LL(1). C'est toujours possible, mais il y a deux inconvénients : la grammaire résultante peux être plus grande ; la structure de l'arbre de dérivation peut changer. Il y a un troisième inconvénient : la transformation peut introduire des règles N ɛ, il faut donc adapter la technique à ce cas.
15 Analyse LL(1) dans le cas général La grammaire transformée Une grammaire pour les expressions arithmétiques partiellement parenthésées. Terminaux : {i, +, *, (, ), EOF} grammaire originale grammaire tranformée S E EOF E E+T T T T*F F F (E) i Axiome : S S E EOF E T E E ɛ +E T F T T ɛ *T F (E) i
16 Analyse LL(1) dans le cas général Explication de la transformation Les deux règles originales pour le non-terminal E : E T E E+T Dans la grammaire d'origine, le non-terminal E engendre une séquence non-vide de non-terminaux T, séparés par des +. Dans la grammaire transformée, le non-terminal E engendre la suite de cette séquence après un T : E T E E ɛ +E Pareil pour le non-terminal T.
17 But de l'analyse d'une grammaire Détecter des propriétés des non-terminaux dans une grammaires Détecter des propriétés de grammaires Exemple : non-terminaux atteignables ou pas, productifs ou pas, annulable ou pas? Grammaires LL(1), LL(k) ou pas? Dés : récurrence entre les non-terminaux d'une grammaire. Dans certains cas on maîtrise une descente récursive sur un mot donné pour la construction d'une dérivation - cas des grammaires LL(k). Dans une analyse de la grammaire, on a pas de mot d'entrée xe donné mais on s'intéresse à une propriété générale de la grammaire.
18 Illustration du problème d'une descente récursive Un non-terminal N est productif s'il y a une règle N α telle que tous les non-terminaux dans α sont productifs. (C'est en particulier vrai quand α ne contient que des terminaux.) Imaginez les règles suivantes de la grammaire : A BCa B Cb C Ac Il faut éviter une descente récursive qui mène dans une boucle : A productif? B productif? C productif? A productif?...
19 Calcul d'un point xe Notre dénition de productivité est correcte, mais il faut organiser le calcul diéremment : Au début, on pose que tout non-terminal N pour lequel existe une règle N w, où w Σ, est productif. Puis, s'il y a une règle N α, où on a déjà reconnu tous les non-terminaux dans α comme étant productifs, alors on conclut que N est aussi productif. On s'arrête si on ne peu plus ajouter d'information de cette façon. Il s'agit d'un point xe!
20 Points xes En maths : un point xe d'une fonction f : D D est une valeur x D telle que f (x) = x. Application à notre algorithme : Soit N = V Σ. Le domaine D est 2 N, l'ensemble des parties de N. La fonction f transforme une partie de N en une autre, par propagation de l'information de productivité d'un non-terminal à un autre. On ne cherche pas un point xe quelconque, mais on commence avec une valeur initiale, puis on applique f jusqu'on obtient un point xe.
21 Calcul des symboles productives par point xe Nous utiliserons dans nos algorithmes la construction do... until X x. Exemple productivité : PROD = {A N (A α) P, α Σ } do PROD = PROD {A N (A α) P α (PROD Σ) } u n t i l PROD f i x Lemma Pour tout A N : A PROD ssi A est productif.
22 La construction do... until... x Le code // code i n i t i a l i s a t i o n de X do // code m i s e a j o u r de X u n t i l X f i x peut être traduit vers : // code i n i t i a l i s a t i o n de X do Xold = X // code m i s e a j o u r de X w h i l e (X!= Xold )
23 Exemple S ABC AD D BD A B B C C a Calcul de PROD : PROD = {C} PROD = {C, B} PROD = {C, B, A} PROD = {C, B, A, S} point xe atteint Donc : D n'est pas productif.
24 Remarques L'algorithme termine toujours car à chaque étape soit on incrémente PROD soit PROD reste constant, et on termine Donc, on fait au maximum tant d'itérations de la boucle qu'il y a de non-terminaux. Propagation de l'information de droite à gauche : quand tous les symboles de α sont productifs et A α, alors A est également productif.
25 Autre exemple : symboles atteignables Un non-terminal A est atteignable (à partir de l'axiome S) s'il existe une dérivation S αaβ. Calcul des non-terminaux atteignables : transparent suivant. Une grammaire est réduite si tous ses non-terminaux sont productifs et tous ses non-terminaux sont atteignables. Dans la suite nous supposons que toutes les grammaires sont réduites.
26 Calcul des non-terminaux atteignables Algorithme Donnée une grammaire G = (V, Σ, S, P). ATT = {S} do ATT = ATT {A N (B αaβ) P, B ATT } u n t i l ATT f i x Lemma Pour tout A N : A ATT ssi A est atteignable.
27 Exemple S A A B B CA C ab D a Calcul de ATT : ATT = {S} ATT = {S, A} ATT = {S, A, B} ATT = {S, A, B, C} point xe atteint Donc, D n'est pas atteignable.
28 Remarques L'algorithme termine toujours pour la même raison que pour le calcul de PROD. Schéma qui termine toujours : calcul du point xe en X, où l'action de mise à jour est X = X... dans le cas où on a une borne supérieure nie pour X. Propagation de gauche à droite : quand A est atteignable et A α, alors tous les symboles de α sont également atteignables.
29 Non-terminaux annulable Algorithme Donnée une grammaire G = (V, Σ, S, P). EPS = {A N (A ɛ) P} do EPS = EPS {A N (A α) P, α EPS } u n t i l EPS f i x Lemme Pour tout A N : A EPS ssi A ɛ.
30 Calcul de EPS sur l'exemple E T E E ɛ +E T F T T ɛ *T F (E) i S E EOF Initialisation : EPS = {E, T } C'est déjà un point xe!
31 Comment calculer FIRST 1 dans le cas général? Imaginez une règle A B C d E Tous les non-terminaux peuvent a priori engendrer ɛ. Si B EPS : dans cette règle, seulement FIRST 1 (B) peut contribuer à FIRST 1 (A). Si B EPS : FIRST 1 (C) peut aussi contribuer à FIRST 1 (A). Si B EPS et C EPS : d doit être dans FIRST 1 (A). Dans aucun des cas, FIRST 1 (E) ne peut contribuer car il se trouve derrière le terminal d.
32 Le calcul de FIRST 1 dans le cas général Pour des raisons techniques, il est plus facile de calculer d'abord une variante de FIRST 1 sans ɛ, et seulement pour les symboles non-terminaux : Fi(A) = {a Σ A aw, w Σ } Puis on en obtient FIRST 1 (α) en utilisant EPS que nous avons déjà calculé, et la fonction Fi.
33 Calcul de Fi dans le cas général Algorithme Donnée une grammaire G = (V, Σ, S, P). pour t o u t N V Σ : F i (N) = {a V T (N N 1... N n aα) P, N 1,..., N n EPS} do pour t o u t (N N 1... N n Mα) R t e l que M V N, N 1,..., N n EPS : F i (N) = F i (N) F i (M) u n t i l F i f i x Lemme Pour tout N V N : Fi(N) = FIRST 1 (N) {ɛ}
34 Calcul de Fi sur l'exemple Calcul E T E E ɛ +E T F T T ɛ *T F (E) i S E EOF EPS = {E, T } Initial Iteration1 Iteration2 Iteration3 S {i, (} E {i, (} {i, (} E {+} {+} {+} {+} T {i, (} {i, (} {i, (} T {*} {*} {*} {*} F {i, (} {i, (} {i, (} {i, (}
35 Calcul de FIRST 1 dans le cas général On déni maintenant FIRST 1 sur V : FIRST 1 (ɛ) = {ɛ} pour tout a Σ : FIRST 1 (aα) = {a} pour tout A V Σ : { Fi(A) si A EPS FIRST 1 (Aα) = Fi(A) FIRST 1 (α) si A EPS
36 Calcul de FIRST 1 des côtés droites dans l'exemple E T E E ɛ +E T F T T ɛ *T F (E) i S E EOF A Fi(A) S {i, (} E {i, (} E {+} T {i, (} T {*} F {i, (} EPS = {E, T } α FIRST 1 (α) T E {i, (} ɛ {ɛ} + E {+} F T {i, (} * T {*} ( E ) {(} i {i} S EOF {i, (}
Chap 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étailRappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme
Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation
Plus en dé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étailRapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/2011. 1.1 Présentation. 1.2 Ressources
Master Maths Finances 2010/2011 Data Mining janvier 2011 RapidMiner 1 Introduction 1.1 Présentation RapidMiner est un logiciel open source et gratuit dédié au data mining. Il contient de nombreux outils
Plus en détail1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)
1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d
Plus en détailAlgorithmes d'apprentissage
Algorithmes d'apprentissage 1 Agents qui apprennent à partir d'exemples La problématique : prise de décision automatisée à partir d'un ensemble d'exemples Diagnostic médical Réponse à une demande de prêt
Plus en détailInitiation à 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é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é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é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étailContinuité et dérivabilité d une fonction
DERNIÈRE IMPRESSIN LE 7 novembre 014 à 10:3 Continuité et dérivabilité d une fonction Table des matières 1 Continuité d une fonction 1.1 Limite finie en un point.......................... 1. Continuité
Plus en détailOrganigramme / Algorigramme Dossier élève 1 SI
Organigramme / Algorigramme Dossier élève 1 SI CI 10, I11 ; CI 11, I10 C24 Algorithmique 8 février 2009 (13:47) 1. Introduction Un organigramme (ou algorigramme, lorsqu il est plus particulièrement appliqué
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étailDéfinition : On obtient les nombres entiers en ajoutant ou retranchant des unités à zéro.
Chapitre : Les nombres rationnels Programme officiel BO du 8/08/08 Connaissances : Diviseurs communs à deux entiers, PGCD. Fractions irréductibles. Opérations sur les nombres relatifs en écriture fractionnaire.
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étailIntroduction a l'algorithmique des objets partages. Robert Cori. Antoine Petit. Lifac, ENS Cachan, 94235 Cachan Cedex. Resume
Introduction a l'algorithmique des objets partages Bernadette Charron{Bost Robert Cori Lix, Ecole Polytechnique, 91128 Palaiseau Cedex, France, charron@lix.polytechnique.fr cori@lix.polytechnique.fr Antoine
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étailApplication 1- VBA : Test de comportements d'investissements
Application 1- VBA : Test de comportements d'investissements Notions mobilisées Chapitres 1 à 5 du cours - Exemple de récupération de cours en ligne 1ère approche des objets (feuilles et classeurs). Corps
Plus en détailRappels sur les suites - Algorithme
DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................
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étailDéroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009
Déroulement Algorithmes et structures de données Cours 1 et 2 Patrick Reuter http://www.labri.fr/~preuter/asd2009 CM mercredi de 8h00 à 9h00 (Amphi Bât. E, 3 ème étage) ED - Groupe 3 : mercredi, 10h30
Plus en détailLogiciel de Base. I. Représentation des nombres
Logiciel de Base (A1-06/07) Léon Mugwaneza ESIL/Dépt. Informatique (bureau A118) mugwaneza@univmed.fr I. Représentation des nombres Codage et représentation de l'information Information externe formats
Plus en détailPropagation sur réseau statique et dynamique
Université de la Méditerranée UFR Sciences de Luminy Rapport de stage informatique pour le Master 2 de Physique, Parcours Physique Théorique et Mathématique, Physique des Particules et Astroparticules.
Plus en détailPourquoi 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étailDOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10.
A1 Trouvez l entier positif n qui satisfait l équation suivante: Solution 1 2 10 + 1 2 9 + 1 2 8 = n 2 10. En additionnant les termes du côté gauche de l équation en les mettant sur le même dénominateur
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é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étailCalcul de développements de Puiseux et application au calcul du groupe de monodromie d'une courbe algébrique plane
Calcul de développements de Puiseux et application au calcul du groupe de monodromie d'une courbe algébrique plane Poteaux Adrien XLIM-DMI, UMR-CNRS 6172 Université de Limoges Soutenance de thèse 15 octobre
Plus en détailÉquations non linéaires
Équations non linéaires Objectif : trouver les zéros de fonctions (ou systèmes) non linéaires, c-à-d les valeurs α R telles que f(α) = 0. y f(x) α 1 α 2 α 3 x Equations non lineaires p. 1/49 Exemples et
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é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étailCours d algorithmique pour la classe de 2nde
Cours d algorithmique pour la classe de 2nde F.Gaudon 10 août 2009 Table des matières 1 Avant la programmation 2 1.1 Qu est ce qu un algorithme?................................. 2 1.2 Qu est ce qu un langage
Plus en détailOrdonnancement temps réel
Ordonnancement temps réel Laurent.Pautet@enst.fr Version 1.5 Problématique de l ordonnancement temps réel En fonctionnement normal, respecter les contraintes temporelles spécifiées par toutes les tâches
Plus en détailLe théorème de Thalès et sa réciproque
Le théorème de Thalès et sa réciproque I) Agrandissement et Réduction d une figure 1) Définition : Lorsque toutes les longueurs d une figure F sont multipliées par un même nombre k on obtient une autre
Plus en détailLogiciel Libre Cours 3 Fondements: Génie Logiciel
Logiciel Libre Cours 3 Fondements: Génie Logiciel Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/
Plus en dé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é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étailACTIVITÉ DE PROGRAMMATION
ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,
Plus en détailRésolution de systèmes linéaires par des méthodes directes
Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.
Plus en détailMéthodes de développement. Analyse des exigences (spécification)
1 / 16 Méthodes de développement Analyse des exigences (spécification) 1 -Objectifs de l'analyse des exigences... 2 2 - Approfondissement et formalisation du besoin... 2 2.1 Séparation des besoins, contraintes
Plus en détail* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours
Exo7 Continuité (étude globale). Diverses fonctions Exercices de Jean-Louis Rouget. Retrouver aussi cette fiche sur www.maths-france.fr * très facile ** facile *** difficulté moyenne **** difficile *****
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é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étailCalcul 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étail1.6- Génération de nombres aléatoires
1.6- Génération de nombres aléatoires 1- Le générateur aléatoire disponible en C++ 2 Création d'un générateur aléatoire uniforme sur un intervalle 3- Génération de valeurs aléatoires selon une loi normale
Plus en détailCONJUGUÉ D'UN POINT PAR RAPPORT À UN TRIANGLE
CONJUGUÉ D'UN POINT PAR RAPPORT À UN TRIANGLE Jean Luc Bovet, Auvernier L'article de Monsieur Jean Piquerez (Bulletin de la SSPMP No 86), consacré aux symédianes me paraît appeler une généralisation. En
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étailDéveloppements limités. Notion de développement limité
MT12 - ch2 Page 1/8 Développements limités Dans tout ce chapitre, I désigne un intervalle de R non vide et non réduit à un point. I Notion de développement limité Dans tout ce paragraphe, a désigne un
Plus en détailAxiomatique de N, construction de Z
Axiomatique de N, construction de Z Table des matières 1 Axiomatique de N 2 1.1 Axiomatique ordinale.................................. 2 1.2 Propriété fondamentale : Le principe de récurrence.................
Plus en détailGrandes 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é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é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étailProblème : Calcul d'échéanciers de prêt bancaire (15 pt)
Problème : Calcul d'échéanciers de prêt bancaire (15 pt) 1 Principe d'un prêt bancaire et dénitions Lorsque vous empruntez de l'argent dans une banque, cet argent (appelé capital) vous est loué. Chaque
Plus en détailExamen Médian - 1 heure 30
NF01 - Automne 2014 Examen Médian - 1 heure 30 Polycopié papier autorisé, autres documents interdits Calculatrices, téléphones, traducteurs et ordinateurs interdits! Utilisez trois copies séparées, une
Plus en détailSimulation de variables aléatoires
Chapter 1 Simulation de variables aléatoires Références: [F] Fishman, A first course in Monte Carlo, chap 3. [B] Bouleau, Probabilités de l ingénieur, chap 4. [R] Rubinstein, Simulation and Monte Carlo
Plus en détailExo7. Limites de fonctions. 1 Théorie. 2 Calculs
Eo7 Limites de fonctions Théorie Eercice Montrer que toute fonction périodique et non constante n admet pas de ite en + Montrer que toute fonction croissante et majorée admet une ite finie en + Indication
Plus en détailSub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"
TD1 : traduction en Visual BASIC des exemples du cours sur les structures de contrôle de l'exécution page 1 'TRADUCTION EN VBA DES EXEMPLES ALGORITHMIQUES SUR LES STRUCTURES 'DE CONTROLE DE L'EXECUTION
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étailÉvaluation et implémentation des langages
Évaluation et implémentation des langages Les langages de programmation et le processus de programmation Critères de conception et d évaluation des langages de programmation Les fondations de l implémentation
Plus en détailPremière partie. Préliminaires : noyaux itérés. MPSI B 6 juin 2015
Énoncé Soit V un espace vectoriel réel. L espace vectoriel des endomorphismes de V est désigné par L(V ). Lorsque f L(V ) et k N, on désigne par f 0 = Id V, f k = f k f la composée de f avec lui même k
Plus en détailCours 420-KEG-LG, Gestion de réseaux et support technique. Atelier No5-1
Atelier No5-1 Utilisation des commandes Active Directory pour la gestion des comptes utilisateurs Utilisation de la commande DSADD pour l automatisation des tâches (40 minutes, avec explications) Définition
Plus en détailCorrigé des TD 1 à 5
Corrigé des TD 1 à 5 1 Premier Contact 1.1 Somme des n premiers entiers 1 (* Somme des n premiers entiers *) 2 program somme_entiers; n, i, somme: integer; 8 (* saisie du nombre n *) write( Saisissez un
Plus en détailI. Ensemble de définition d'une fonction
Chapitre 2 Généralités sur les fonctions Fonctions de références et fonctions associées Ce que dit le programme : Étude de fonctions Fonctions de référence x x et x x Connaître les variations de ces 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étailCours 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étailGéométrie dans l espace Produit scalaire et équations
Chapitre 11. 2ème partie Géométrie dans l espace Produit scalaire et équations Terminale S Ce que dit le programme : CONTENUS CAPACITÉS ATTENDUES COMMENTAIRES 2ème partie Produit scalaire Produit scalaire
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étailExo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.
Eo7 Calculs de déterminants Fiche corrigée par Arnaud Bodin Eercice Calculer les déterminants des matrices suivantes : Correction Vidéo ( ) 0 6 7 3 4 5 8 4 5 6 0 3 4 5 5 6 7 0 3 5 4 3 0 3 0 0 3 0 0 0 3
Plus en détailSuites 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étailIntroduction à la théorie des graphes. Solutions des exercices
CAHIERS DE LA CRM Introduction à la théorie des graphes Solutions des exercices Didier Müller CAHIER N O 6 COMMISSION ROMANDE DE MATHÉMATIQUE 1 Graphes non orientés Exercice 1 On obtient le graphe biparti
Plus en détailÉlasticité des applications à base de services dans le Cloud
1/40 Élasticité des applications à base de services dans le Cloud Mourad Amziani 12 Tarek Melliti 1 Samir Tata 2 1 IBISC, EA4526, Université d'évry Val-d'Essonne, Évry, France 2 UMR CNRS Samovar, Institut
Plus en détailActivités numériques [13 Points]
N du candidat L emploi de la calculatrice est autorisé. Le soin, la qualité de la présentation entrent pour 2 points dans l appréciation des copies. Les résultats seront soulignés. La correction est disponible
Plus en détailIFT1215 Introduction aux systèmes informatiques
Introduction aux circuits logiques de base IFT25 Architecture en couches Niveau 5 Niveau 4 Niveau 3 Niveau 2 Niveau Niveau Couche des langages d application Traduction (compilateur) Couche du langage d
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étailNIVEAU D'INTERVENTION DE LA PROGRAMMATION CONCURRENTE
NIVEAU D'INTERVENTION DE LA PROGRAMMATION CONCURRENTE Une application se construit par étapes 1) CAHIER DES CHARGES + ANALYSE FONCTIONNELLE = organisation fonctionnelle (QUE FAIRE) 2) ANALYSE OPERATIONNELLE
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étailCORRECTION EXERCICES ALGORITHME 1
CORRECTION 1 Mr KHATORY (GIM 1 A) 1 Ecrire un algorithme permettant de résoudre une équation du second degré. Afficher les solutions! 2 2 b b 4ac ax bx c 0; solution: x 2a Solution: ALGORITHME seconddegré
Plus en détailArithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot
Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,
Plus en détailCours Composant 2. Qualité logicielle et spécications algébriques
UPMC Paris Universitas Master Informatique STL Cours Composant 2. Qualité logicielle et spécications algébriques c 2005-2008 Frédéric Peschanski UPMC Paris Universitas 24 février 2008 c 2005-2008 Frédéric
Plus en détailV- Manipulations de nombres en binaire
1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,
Plus en détailChp. 4. Minimisation d une fonction d une variable
Chp. 4. Minimisation d une fonction d une variable Avertissement! Dans tout ce chapître, I désigne un intervalle de IR. 4.1 Fonctions convexes d une variable Définition 9 Une fonction ϕ, partout définie
Plus en détail2.4 Représentation graphique, tableau de Karnaugh
2 Fonctions binaires 45 2.4 Représentation graphique, tableau de Karnaugh On peut définir complètement une fonction binaire en dressant son tableau de Karnaugh, table de vérité à 2 n cases pour n variables
Plus en détailAlgorithmique et Programmation Fonctionnelle
Algorithmique et Programmation Fonctionnelle RICM3 Cours 9 : Lambda-calcul Benjamin Wack Polytech 2014-2015 1 / 35 La dernière fois Typage Polymorphisme Inférence de type 2 / 35 Plan Contexte λ-termes
Plus en détailReprésentation d un entier en base b
Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir
Plus en détailAlgorithmes pour la planification de mouvements en robotique non-holonome
Algorithmes pour la planification de mouvements en robotique non-holonome Frédéric Jean Unité de Mathématiques Appliquées ENSTA Le 02 février 2006 Outline 1 2 3 Modélisation Géométrique d un Robot Robot
Plus en détailCours 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étailmodélisation solide et dessin technique
CHAPITRE 1 modélisation solide et dessin technique Les sciences graphiques regroupent un ensemble de techniques graphiques utilisées quotidiennement par les ingénieurs pour exprimer des idées, concevoir
Plus en détailLicence Sciences, Technologies, Santé Mention Informatique Codage de l'information
1 Licence Sciences, Technologies, Santé Mention Informatique Codage de l'information année universitaire 2013-2014 Licence Creative Commons cbea 2 Introduction Objectifs du cours Le cours de Codage de
Plus en détailCours d arithmétique Première partie
Cours d arithmétique Première partie Pierre Bornsztein Xavier Caruso Pierre Nolin Mehdi Tibouchi Décembre 2004 Ce document est la première partie d un cours d arithmétique écrit pour les élèves préparant
Plus en détailRésolution d équations non linéaires
Analyse Numérique Résolution d équations non linéaires Said EL HAJJI et Touria GHEMIRES Université Mohammed V - Agdal. Faculté des Sciences Département de Mathématiques. Laboratoire de Mathématiques, Informatique
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é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étailExo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.
Exo7 Matrice d une application linéaire Corrections d Arnaud odin. Exercice Soit R muni de la base canonique = ( i, j). Soit f : R R la projection sur l axe des abscisses R i parallèlement à R( i + j).
Plus en détailAlgorithmique et structures de données I
Algorithmique et structures de données I Riadh Ben Messaoud Université 7 novembre à Carthage Faculté des Sciences Économiques et de Gestion de Nabeul 1ère année Licence Fondamentale IAG 1ère année Licence
Plus en détailLa fonction exponentielle
DERNIÈRE IMPRESSION LE 2 novembre 204 à :07 La fonction exponentielle Table des matières La fonction exponentielle 2. Définition et théorèmes.......................... 2.2 Approche graphique de la fonction
Plus en détailENSIIE. Macroéconomie - Chapitre I
ENSIIE Macroéconomie - Chapitre I Le 13 avril 2013 Table des matières 1 Introduction 2 2 La théorie Keynésienne 3 2.1 Keynes......................................... 3 2.2 Quelques ordres de grandeur.............................
Plus en détailTravaux pratiques avec RapidMiner
Travaux pratiques avec RapidMiner Master Informatique de Paris 6 Spécialité IAD Parcours EDOW Module Algorithmes pour la Fouille de Données Janvier 2012 Prise en main Généralités RapidMiner est un logiciel
Plus en détailExercices - Polynômes : corrigé. Opérations sur les polynômes
Opérations sur les polynômes Exercice 1 - Carré - L1/Math Sup - Si P = Q est le carré d un polynôme, alors Q est nécessairement de degré, et son coefficient dominant est égal à 1. On peut donc écrire Q(X)
Plus en détailELASTICITE DE LA DEMANDE Calcul de l'elasticite & Applications Plan du cours I. L'elasticite de la demande & ses determinants II. Calcul de l'elasticite & pente de la courbe de demande III. Applications
Plus en détail