Chapitre 1. Introduction
|
|
- Julien Larose
- il y a 6 ans
- Total affichages :
Transcription
1 Chapitre 1 Introduction En programmation : on definit des programmes En programmation fonctionnelle : programmes = fonctions Question 1 : qu est ce qu un programme fonctionnel? Calcule un résultat en fonction de ses entrées. = pas de modification physiques de ces entrées = pas d effets de bord (modification de variables globales, affichage...) = Sur les mêmes entrées produit toujours les mêmes sorties = composition de fonctions plutôt que séquence. En math : on définit des fonctions Question 2 : programme fonctionnel = fonction mathématique? 1
2 2 CHAPITRE 1. INTRODUCTION 1.1 Qu est ce qu une fonction en mathématique? Intuitivement, une fonction f d un ensemble E vers un ensemble F est un procédé pour associer à chaque élément de E un unique élément f(x) de F. Une correspondance C de E vers F est un ensemble de couples (x, y) où x E et y F. (un sous ensemble du produit cartésien). On dit que E est l ensemble de départ et F est l ensemble d arrivée L ensemble dom(c) = {x E; y F (x, y) C} est le domaine de définition de C et L ensemble Im(C) = {y F ; x E (x, y) C} est l image de C Une correspondance de E vers F est un fonction (partielle) si tout élément de E a au plus une image dans F. Une fonction de E vers F est un fonction totale (application) si son domaine est E tout entier. (i.e) tout element de E a une image Notation : On note une fonction comme suit f : E F x e
3 1.1. QU EST CE QU UNE FONCTION EN MATHÉMATIQUE? 3 Exercice : Voici des correspondances de N vers N. Parmi elles lesquelles sont des fonctions, fonctions totales. Donner les premiers couples du graphe (ou faire les dessins). id = {(x, x); x N} F 1 = {(x, y); x N y N y = 2 x} F 2 = {(x, y); x N y N z(x = z y)} F 3 = {((x, y), z); x, y, z N x = y + z)} F 4 = {(x, y); x N y N y est le plus petit multiple de x x}
4 4 CHAPITRE 1. INTRODUCTION 1.2 Fonctions mathématiques et programmes fonctionnels Certaines définitions mathématiques de fonctions ressemblent à des programmes fonctionnels : F 1 let F1 x = 2*x ; ; D autres non : ne sont pas calculatoires : F 3, F 4. Disent quelle est la solution, pas comment on la calcule. Math = déclaratif. Programme=algorithmique. Prog fonctionnel = un moyen de calculer la sortie à partir des entrées. Notion de calcul est absente de la notion de fonction math. Signature des fonctions typage des programmes. ex F 1 : N N. Parmi les programmes fonctionnels suivants : lesquels ressemblent à des fonctions? let succ x = x+1;; let f x = if x<= 10 then x+1 else if x >= 10 then x+2 else x+3 ;; let g x = match x with 0 -> 1 n -> 2;; let h x = match x with 0 -> 1 1 -> 2;;
5 1.2. FONCTIONS MATHÉMATIQUES ET PROGRAMMES FONCTIONNELS 5 succ : pas de problème : fonction totale de N N. f = {((0, 1)...(10, 11), (11, 13)...(23, 25)...} Mais c est vrai par les règles de calcul du if : le cas x=10 est partagé entre le then et le else. Au niveau math : ambiguités. Au niveau prog : pas d ambiguité a condition de connaitre les règles de calcul. : g : même problème. Le filtre n inclut le cas 0, mais les règles de calcul du match nous permettent de lever l ambiguité. Au niveau math : pas une fonction : (0,1) et (0,2) h : problème inverse : il manque des cas. Le programme terminera en erreur à l exécution. Pas de sens en math. A la rigueur : on peut considérer que erreur à l execution = pas défini. Fonction partielle de N vers N. Dom={0, 1}.
6 6 CHAPITRE 1. INTRODUCTION Conclusion :Un programme fonctionnel : a un type (ensemble de départ et d arrivée) lève des exceptions (domaine de définition des fonctions partielles) peut mener à des erreurs d exécution (???) donne un moyen effectif de calculer les images, lorsque l exécution est normale. Un programme fonctionnel : qui ne produit aucune erreur à l exécution et ne déclenche pas d exception, définit une fonction totale sur son type. Pour savoir quelle fonction est définie, il faut connaitre les règles de calcul du langage. qui ne produit aucune erreur et lève des exceptions définit une fonction partielle sur son type. domaine = les valeurs où aucune exception n est levée. Pour montrer qu un programme fonctionnel f de type E F définit une fonction (totale), il faut montrer x E, y F f(x) y L unicité de y est donnée par le modèle d exécution.
7 1.3. LA RÉCURSION la récursion Travail sur des programmes récursifs exercice Tracer l exécution des programmes suivants sur des exemples bien choisis et dire lesquels définissent des fonctions. Quel nouveau phénomène apparait avec les définitions récursives? Essayer de définir les critères permettant d affirmer qu une définition récursive définit une fonction totale. let rec fact0 n= n* fact1 (n-1);; let rec fact1 n= if n=0 then 1 else n* fact1 (n-1);; let rec fact2 n= if n<=0 then 1 else n* fact2 (n-1);; let rec estpair1 n = match n with 0 -> true n -> estpair1(n -2);; let rec estpair2 n = if n<0 then raise (Failure Pas defini ) else match n with 0 -> true n -> estpair1(n -2);;
8 8 CHAPITRE 1. INTRODUCTION let rec estpair3 n = match n with 0 -> true 1 -> false n -> estpair2(n -2);; let rec estpair4 n = if n<0 then raise (Failure Pas defini ) match n with 0 -> true 1 -> false n -> estpair2(n -2);; else Exécution de fact0 fact0(1) 1* fact0(0) 1*0*fact0(-1)... Problème de terminaison. Sur n importe quel entier, la fonction se rappelle elle même un nombre infini de fois. Une fonction définie récursivement doit comporter au moins un cas non récursif (= cas d arrêt). Ce qui n est pas le cas ici. Ce programme boucle quelquesoit son entrée. ne définit pas une fonction (ou alors ).
9 1.3. LA RÉCURSION 9 Exécution de fact1 fact1(3) 3* fact1(2) 3*2*fact1(1) 3*2*1*fact1 (0) = 3*2*1*1 = 6 Pas de problème. La fonction se rappelle elle même, mais ce phénomène ne se produit qu un nombre fini de fois, car on finit toujours par tomber sur l appel fact1(0) qui n est pas récursif. fact1(-2) -2* fact1(-3) -2*-3*fact1(-4)... Problème de terminaison du calcul. Sur les entiers négatifs, la fonction se rappelle elle même un nombre infini de fois, car la suite des appels ne vient pas buter sur fact(0). toutes les suites de calcul possibles doivent venir buter sur le cas d arrêt. fact1 ne définit pas une fonction totale, mais une fonction partielle de domaine N. Exécution de fact2 Sur les entiers négatifs ou nuls, la fonction rend 1. Sur les entiers positifs, la fonction se rappelle elle même jusqu a tomber sur le cas d arrêt. fact2 est une fonction totale de Z N.
10 10 CHAPITRE 1. INTRODUCTION Exécution de estpair1 Boucle sur les entiers négatifs, termine sur les entiers positifs pairs, boucle sur les entiers positifs impairs car en descendant de 2 en 2 la fonction finit par se rappeler sur 1 puis sur -1 etc... Là encore, le cas d arrêt n est pas atteint. Exécution de estpair2 Lance une exception sur les entiers négatifs et les entiers positifs impairs. Fait ce qu il faut sur les entiers pairs. Exécution de estpair3 Termine sur les entiers positifs, boucle sur les négatifs. Exécution de estpair4 Termine sur les entiers positifs et négatifs.
11 1.3. LA RÉCURSION 11 Nouveauté avec les programmes récursifs : le problème de la terminaison. Sans récursion, les programmes peuvent produire des erreurs à l exécution s ils oublient des cas. Avec la récursion, ils peuvent ne jamais s arréter. Critère pour définir récursivement une fonction totale Il faut, comme pour toutes fonctions, que tous les cas de l ensemble de départ soient prévus dans la définition. En plus, il faut que sur toutes les entrées, le calcul termine. Ceci est possible si 1. Il y a au moins un cas non récursif. 2. Tous les cas récursifs viennent converger vers un cas d arrêt.
12 12 CHAPITRE 1. INTRODUCTION definition récursive et mathématiques En math, on définit des fonctions recursivement, comme en programmation. fact(0) = 1 fact(n) = n fact(n 1) si n > 0 : c est un ensemble d égalités (équations). On ne parle pas de terminaison mais on doit montrer que ces équations définissent bien une fonction (même chose) : pour tout entier n, il existe un unique entier m tel que fact(n)=m Comment montrer cela? par un raisonnement par récurrence Nous verrons dans ce cours que raisonnement par récurrence et définition de fonctions de façon recursive sont intimement liés.
13 Chapitre 2 Ordres bien fondés et Induction 2.1 Lien entre définition récursive et structure de l ensemble de départ Programme t on récursivement sur n importe quel type de données (ensemble de départ)? Le cas de N Les exemples précédents : int int mais en fait le comportement qui nous interesse : N N. Pareil pour tous les exemples vus en cours de Ocaml. Autres types de données : listes, arbres,.... Pourquoi est ce facile de définir des fonctions récursives sur N? Parce que c est facile de trouver un cas de base : 0 Parce que 0 est le plus petit élément de N. On peut ordonner les éléments de N : < Il y a un élément 0 qui est plus petit que tout le monde. Définition récursive : appel recursif f(x) f(t) avec t < x Cas de base parmi les éléments les plus petits de N (0, 1... ). 13
14 14 CHAPITRE 2. ORDRES BIEN FONDÉS ET INDUCTION Le cas de Z Comment procéder pour définir des fonctions récursivement sur Z? Exercice : Définir récursivement la fonction pair sur Z avec estpair(-6) true. let rec estpair n = match n with 0 -> true; 1 -> false; n -> if n<0 then estpair(n+2) else estpair(n-2);; Il y a une relation d ordre sur Z : < Mais dans la définition, on ne fait pas que des appels récursifs sur des éléments < : Pair(n) -> pair(n+2) si n négatif. On a raison car si on le faisait : ne termine pas (cf estpair3) < sur Z est une relation d ordre, Mais qui n a pas de plus petit élément. Ce n est pas un ordre bien fondé > 2 > 1 > 0 > 1 > 2 >... < ne peut pas être utilisé pour faire decroître les appels récursifs. Mais : estpair utilise une autre relation d ordre : inf = (x, y) = true ssi x, y positifs et x <= y. ou x, y négatifs et x >= y ou x positif et y négatif
15 2.1. LIEN ENTRE DÉFINITION RÉCURSIVE ET STRUCTURE DE L ENSEMBLE DE DÉPART15 On a bien inf(n 2, n) si n positif. inf(n + 2, n) si n négatif. inf(0, n) pour tout n. Définition récursive : appel recursif f(x) f(t) avec inf(t, x) Cas de base parmi les éléments les plus petits de Z (0, 1, 1... ). L ordre usuel < sur Z n a pas de plus petit élément et ne peut donc pas être utilisé pour définir des fonctions récursives. Pour procéder récursivement sur Z, il faut trouver un ordre avec plus petit élément (exemple inf=) et respecter cet ordre dans les appels récursifs Le cas de R Procéder récursivement sur R? Impossible car... 0,, 1, 2, 3... Pas d ordre bien fondé possible.
16 16 CHAPITRE 2. ORDRES BIEN FONDÉS ET INDUCTION Généralisation Dès qu on a une relation d ordre avec plus petits éléments sur l ensemble de départ de la fonction qu on veut définir, on peut procéder de façon récursive : Chaque appel récursif doit décroître pour cet ordre. Les cas d arrêt seront proches et contiendront les plus petits éléments pour l ordre. Ces notions sont encore floues. On va maintenant les définir précisemment. En particulier être une relation d ordre avec plus petits éléments s appelle une relation d ordre bien fondée. Nous allons définir ces notions, puis fonder sur elles la possibilité de définir des fonctions par récurrence et de raisonner par récurrence (en fait par induction). Nous aurons ainsi le cadre général dans lequel vient s inscrire notre pratique intuitive de la définition de programmes récursifs. 2.2 Qu est ce qu une relation d ordre? Une relation d ordre large est une relation reflexive antisymétrique et transitive. Une relation d ordre stricte est une relation irrreflexive antisymétrique et transitive. Soit E un ensemble et R une relation de E vers E : R est reflexive ssi pour tout x dans E on a R(x,x) R est irreflexive ssi pour tout x dans E on a R(x,x) R est transitive ssi pour tout x,y,z dans E, dès que R(x,y) et R(y,z), on a aussi R(x,z) R est antisymétrique ssi pour tout x,y dans E, dès que R(x,y) et R(y,x), on a aussi x=y
17 2.3. QU EST CE QU UN BON ORDRE? 17 On note en général les relations d ordre large et les relations d ordre strict <. Passer d un ordre strict à un ordre large et réciproquement : x < y equivalent à x y et x y x y equivalent à x < y ou x = y Une relation d ordre est totale si tous les éléments sont deux à deux comparables. Sinon elle est partielle. 2.3 Qu est ce qu un bon ordre? Une relation d ordre sur un ensemble E est bien fondée s il n y a pas de suites strictement decroissante d éléments de E. Un ensemble muni d une relation d ordre (E, ) est bien fondé si est bien fondée sur E. un bon ordre est un ordre total bien fondé. La propriété importante : Un ensemble ordonné E est bien fondé ssi tout sous ensemble non vide de E admet un plus petit élément. Cela signifie en particulier que E à au moins un plus petit élément.si de plus, E est un bon ordre (total), il en a exactement un.
18 18 CHAPITRE 2. ORDRES BIEN FONDÉS ET INDUCTION 2.4 correction des définitions récursives Soit E un ensemble et un bon ordre sur E et a le plus petit élément de E. Soit F un ensemble quelconque. Pour définir une fonction f : E F il suffit de donner une définition qui donne 1. le cas pour a : qui doit etre non récursif. 2. autant d autres cas n incluant pas a que l on veut. Ces cas peuvent comporter des appels récursifs : f(n)=... f(m)... Ils doivent tous vérifier : m n.
# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun>
94 Programmation en OCaml 5.4.8. Concaténation de deux listes Définissons maintenant la fonction concat qui met bout à bout deux listes. Ainsi, si l1 et l2 sont deux listes quelconques, concat l1 l2 constitue
Plus en détailUniversité 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étailChapitre 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é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étailChapitre 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étailCours de Programmation 2
Cours de Programmation 2 Programmation à moyenne et large échelle 1. Programmation modulaire 2. Programmation orientée objet 3. Programmation concurrente, distribuée 4. Programmation monadique 5. Les programmes
Plus en détailSTAGE 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étailGnuplot. Chapitre 3. 3.1 Lancer Gnuplot. 3.2 Options des graphes
Chapitre 3 Gnuplot Le langage C ne permet pas directement de dessiner des courbes et de tracer des plots. Il faut pour cela stocker résultats dans des fichier, et, dans un deuxième temps utiliser un autre
Plus en détailExercices 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é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é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étailEquations cartésiennes d une droite
Equations cartésiennes d une droite I) Vecteur directeur d une droite : 1) Définition Soit (d) une droite du plan. Un vecteur directeur d une droite (d) est un vecteur non nul la même direction que la
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é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é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étailOCL - 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étailDe même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que
Introduction. On suppose connus les ensembles N (des entiers naturels), Z des entiers relatifs et Q (des nombres rationnels). On s est rendu compte, depuis l antiquité, que l on ne peut pas tout mesurer
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é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é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étailIN 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é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étailAngles orientés et fonctions circulaires ( En première S )
Angles orientés et fonctions circulaires ( En première S ) Dernière mise à jour : Jeudi 01 Septembre 010 Vincent OBATON, Enseignant au lycée Stendhal de Grenoble (Année 006-007) Lycée Stendhal, Grenoble
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étailClasses et Objets en Ocaml.
Classes et Objets en Ocaml. Didier Rémy 2001-2002 http://cristal.inria.fr/ remy/mot/2/ http://www.enseignement.polytechnique.fr/profs/informatique/didier.remy/mot/2/ Cours Exercices Slide 1 1. Objets 2.
Plus en détailContinuité d une fonction de plusieurs variables
Chapitre 2 Continuité d une fonction de plusieurs variables Maintenant qu on a défini la notion de limite pour des suites dans R n, la notion de continuité s étend sans problème à des fonctions de plusieurs
Plus en détailTP 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étailExemples de problèmes et d applications. INF6953 Exemples de problèmes 1
Exemples de problèmes et d applications INF6953 Exemples de problèmes Sommaire Quelques domaines d application Quelques problèmes réels Allocation de fréquences dans les réseaux radio-mobiles Affectation
Plus en détailCours Fonctions de deux variables
Cours Fonctions de deux variables par Pierre Veuillez 1 Support théorique 1.1 Représentation Plan et espace : Grâce à un repère cartésien ( ) O, i, j du plan, les couples (x, y) de R 2 peuvent être représenté
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étailProblème 1 : applications du plan affine
Problème 1 : applications du plan affine Notations On désigne par GL 2 (R) l ensemble des matrices 2 2 inversibles à coefficients réels. Soit un plan affine P muni d un repère (O, I, J). Les coordonnées
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étailLangage SQL : créer et interroger une base
Langage SQL : créer et interroger une base Dans ce chapitre, nous revenons sur les principales requêtes de création de table et d accès aux données. Nous verrons aussi quelques fonctions d agrégation (MAX,
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étailFonctions de plusieurs variables
Module : Analyse 03 Chapitre 00 : Fonctions de plusieurs variables Généralités et Rappels des notions topologiques dans : Qu est- ce que?: Mathématiquement, n étant un entier non nul, on définit comme
Plus en détailCalcul intégral élémentaire en plusieurs variables
Calcul intégral élémentaire en plusieurs variables PC*2 2 septembre 2009 Avant-propos À part le théorème de Fubini qui sera démontré dans le cours sur les intégrales à paramètres et qui ne semble pas explicitement
Plus en détailPré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é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é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é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é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étailAlgorithmique et programmation : les bases (VBA) Corrigé
PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 1 mai juin 2006 Corrigé Résumé Ce document décrit l écriture dans le langage VBA des éléments vus en algorithmique. Table des matières 1 Pourquoi
Plus en détailUne dérivation du paradigme de réécriture de multiensembles pour l'architecture de processeur graphique GPU
Une dérivation du paradigme de réécriture de multiensembles pour l'architecture de processeur graphique GPU Gabriel Antoine Louis Paillard Ce travail a eu le soutien de la CAPES, agence brésilienne pour
Plus en détailManuel 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étailLogique. Plan du chapitre
Logique Ce chapitre est assez abstrait en première lecture, mais est (avec le chapitre suivant «Ensembles») probablement le plus important de l année car il est à la base de tous les raisonnements usuels
Plus en dé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étailAnnexe commune aux séries ES, L et S : boîtes et quantiles
Annexe commune aux séries ES, L et S : boîtes et quantiles Quantiles En statistique, pour toute série numérique de données à valeurs dans un intervalle I, on définit la fonction quantile Q, de [,1] dans
Plus en détailCours 1 : La compilation
/38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà
Plus en détailLogiciel Libre Cours 2 Fondements: Programmation
Logiciel Libre Cours 2 Fondements: Programmation Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/
Plus en détailCours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation
Plus en détailDérivées d ordres supérieurs. Application à l étude d extrema.
Chapitre 5 Dérivées d ordres supérieurs. Application à l étude d extrema. On s intéresse dans ce chapitre aux dérivées d ordre ou plus d une fonction de plusieurs variables. Comme pour une fonction d une
Plus en détailChapitre 1 : Évolution COURS
Chapitre 1 : Évolution COURS OBJECTIFS DU CHAPITRE Savoir déterminer le taux d évolution, le coefficient multiplicateur et l indice en base d une évolution. Connaître les liens entre ces notions et savoir
Plus en détailCours d Analyse. Fonctions de plusieurs variables
Cours d Analyse Fonctions de plusieurs variables Licence 1ère année 2007/2008 Nicolas Prioux Université de Marne-la-Vallée Table des matières 1 Notions de géométrie dans l espace et fonctions à deux variables........
Plus en détailOptimisation des fonctions de plusieurs variables
Optimisation des fonctions de plusieurs variables Hervé Hocquard Université de Bordeaux, France 8 avril 2013 Extrema locaux et globaux Définition On étudie le comportement d une fonction de plusieurs variables
Plus en détailComparaison de fonctions Développements limités. Chapitre 10
PCSI - 4/5 www.ericreynaud.fr Chapitre Points importants 3 Questions de cours 6 Eercices corrigés Plan du cours 4 Eercices types 7 Devoir maison 5 Eercices Chap Et s il ne fallait retenir que si points?
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étailQualité du logiciel: Méthodes de test
Qualité du logiciel: Méthodes de test Matthieu Amiguet 2004 2005 Analyse statique de code Analyse statique de code Étudier le programme source sans exécution Généralement réalisée avant les tests d exécution
Plus en détailCours de Génie Logiciel
Cours de Génie Logiciel Sciences-U Lyon Diagrammes UML (2) http://www.rzo.free.fr Pierre PARREND 1 Avril 2005 Sommaire Les Diagrammes UML Diagrammes de Collaboration Diagrammes d'etats-transitions Diagrammes
Plus en détailUne forme générale de la conjecture abc
Une forme générale de la conjecture abc Nicolas Billerey avec l aide de Manuel Pégourié-Gonnard 6 août 2009 Dans [Lan99a], M Langevin montre que la conjecture abc est équivalente à la conjecture suivante
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étailDéveloppements limités, équivalents et calculs de limites
Développements ités, équivalents et calculs de ites Eercice. Déterminer le développement ité en 0 à l ordre n des fonctions suivantes :. f() e (+) 3 n. g() sin() +ln(+) n 3 3. h() e sh() n 4. i() sin(
Plus en détailProgrammation 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étailConventions d écriture et outils de mise au point
Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette
Plus en détailQuatrième partie IV. Test. Test 15 février 2008 1 / 71
Quatrième partie IV Test Test 15 février 2008 1 / 71 Outline Introduction 1 Introduction 2 Analyse statique 3 Test dynamique Test fonctionnel et structurel Test structurel Test fonctionnel 4 Conclusion
Plus en détailExpression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e
P r o b l é m a t i q u e OCL : O b j e c t C o n s t r a i n t L a n g u a g e Le langage de contraintes d UML Les différents diagrammes d UML permettent d exprimer certaines contraintes graphiquement
Plus en détailBac Blanc Terminale ES - Février 2011 Épreuve de Mathématiques (durée 3 heures)
Bac Blanc Terminale ES - Février 2011 Épreuve de Mathématiques (durée 3 heures) Eercice 1 (5 points) pour les candidats n ayant pas choisi la spécialité MATH Le tableau suivant donne l évolution du chiffre
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étailQuelques algorithmes simples dont l analyse n est pas si simple
Quelques algorithmes simples dont l analyse n est pas si simple Michel Habib habib@liafa.jussieu.fr http://www.liafa.jussieu.fr/~habib Algorithmique Avancée M1 Bioinformatique, Octobre 2008 Plan Histoire
Plus en détailCHAPITRE IV. L axiome du choix
CHAPITRE IV L axiome du choix Résumé. L axiome du choix AC affirme qu il est légitime de construire des objets mathématiques en répétant un nombre infini de fois l opération de choisir un élément dans
Plus en détailIntroduction au langage C
Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les
Plus en détailChapitre 5 : Flot maximal dans un graphe
Graphes et RO TELECOM Nancy A Chapitre 5 : Flot maximal dans un graphe J.-F. Scheid 1 Plan du chapitre I. Définitions 1 Graphe Graphe valué 3 Représentation d un graphe (matrice d incidence, matrice d
Plus en détailI. Polynômes de Tchebychev
Première épreuve CCP filière MP I. Polynômes de Tchebychev ( ) 1.a) Tout réel θ vérifie cos(nθ) = Re ((cos θ + i sin θ) n ) = Re Cn k (cos θ) n k i k (sin θ) k Or i k est réel quand k est pair et imaginaire
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étailCours de Programmation en Langage Synchrone SIGNAL. Bernard HOUSSAIS IRISA. Équipe ESPRESSO
Cours de Programmation en Langage Synchrone SIGNAL Bernard HOUSSAIS IRISA. Équipe ESPRESSO 24 septembre 2004 TABLE DES MATIÈRES 3 Table des matières 1 Introduction 5 1.1 La Programmation Temps Réel.........................
Plus en détailExercices - Fonctions de plusieurs variables : corrigé. Pour commencer
Pour commencer Exercice 1 - Ensembles de définition - Première année - 1. Le logarithme est défini si x + y > 0. On trouve donc le demi-plan supérieur délimité par la droite d équation x + y = 0.. 1 xy
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étailProbabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12
Probabilités. I - Rappel : trois exemples. Exemple 1 : Dans une classe de 25 élèves, il y a 16 filles. Tous les élèves sont blonds ou bruns. Parmi les filles, 6 sont blondes. Parmi les garçons, 3 sont
Plus en détailCours No 3 : Identificateurs, Fonctions, Premières Structures de contrôle.
Université Montpellier-II UFR des Sciences - Département Informatique - Licence Informatique UE GLIN302 - Programmation Applicative et Récursive Cours No 3 : Identificateurs, Fonctions, Premières Structures
Plus en détailPlan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml
OCL Object Constraint Language Le langage de contraintes d'uml Plan 1. Introduction 2. Les principaux concepts d'ocl Object Constraint Language 1 Object Constraint Language 2 Exemple: une application bancaire
Plus en dé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é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étailModèles à Événements Discrets. Réseaux de Petri Stochastiques
Modèles à Événements Discrets Réseaux de Petri Stochastiques Table des matières 1 Chaînes de Markov Définition formelle Idée générale Discrete Time Markov Chains Continuous Time Markov Chains Propriétés
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étailTP3 : Manipulation et implantation de systèmes de fichiers 1
École Normale Supérieure Systèmes et réseaux Année 2012-2013 TP3 : Manipulation et implantation de systèmes de fichiers 1 1 Répertoire de travail courant Le but de l exercice est d écrire une commande
Plus en détailFeuille TD n 1 Exercices d algorithmique éléments de correction
Master Sciences, Technologies, Santé Mention Mathématiques, spécialité Enseignement des mathématiques Algorithmique et graphes, thèmes du second degré Feuille TD n 1 Exercices d algorithmique éléments
Plus en détailThéorie de la Mesure et Intégration
Université Pierre & Marie Curie (Paris 6) Licence de Mathématiques L3 UE LM364 Intégration 1 & UE LM365 Intégration 2 Année 2010 11 Théorie de la Mesure et Intégration Responsable des cours : Amaury LAMBERT
Plus en détailCours 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étailProbabilités et Statistiques. Feuille 2 : variables aléatoires discrètes
IUT HSE Probabilités et Statistiques Feuille : variables aléatoires discrètes 1 Exercices Dénombrements Exercice 1. On souhaite ranger sur une étagère 4 livres de mathématiques (distincts), 6 livres de
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étailCorrection du Baccalauréat S Amérique du Nord mai 2007
Correction du Baccalauréat S Amérique du Nord mai 7 EXERCICE points. Le plan (P) a une pour équation cartésienne : x+y z+ =. Les coordonnées de H vérifient cette équation donc H appartient à (P) et A n
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étailPrincipes des langages de programmation INF 321. Eric Goubault
Principes des langages de programmation INF 321 Eric Goubault 24 mars 2014 2 Table des matières 1 Introduction 7 2 Programmation impérative 11 2.1 Variables et types........................... 11 2.2 Codage
Plus en dé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étailVision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007
Vision industrielle et télédétection - Détection d ellipses Guillaume Martinez 17 décembre 2007 1 Table des matières 1 Le projet 3 1.1 Objectif................................ 3 1.2 Les choix techniques.........................
Plus en détailChapitre 7 : Intégration sur un intervalle quelconque
Universités Paris 6 et Paris 7 M1 MEEF Analyse (UE 3) 2013-2014 Chapitre 7 : Intégration sur un intervalle quelconque 1 Fonctions intégrables Définition 1 Soit I R un intervalle et soit f : I R + une fonction
Plus en détailPremiers 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étailChapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme
Chapitre 3 Quelques fonctions usuelles 1 Fonctions logarithme et eponentielle 1.1 La fonction logarithme Définition 1.1 La fonction 7! 1/ est continue sur ]0, +1[. Elle admet donc des primitives sur cet
Plus en détailt 100. = 8 ; le pourcentage de réduction est : 8 % 1 t Le pourcentage d'évolution (appelé aussi taux d'évolution) est le nombre :
Terminale STSS 2 012 2 013 Pourcentages Synthèse 1) Définition : Calculer t % d'un nombre, c'est multiplier ce nombre par t 100. 2) Exemples de calcul : a) Calcul d un pourcentage : Un article coûtant
Plus en détailThéorie de la Programmation
Théorie de la Programmation http://perso.ens-lyon.fr/daniel.hirschkoff/thpr hop Programmation, Théorie de la programmation Langages de programmation I il existe de nombreux langages de programmation I
Plus en dé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