Devoir 1 en temps limité Un corrigé

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

Download "Devoir 1 en temps limité Un corrigé"

Transcription

1 Devoir 1 en temps limité Un corrigé ARBRES DE BETH 1 Arbre de Beth associé à une formule 1. (a) Les branches de N(0, B 1, B 2 ) sont exactement celles de B 1 et celles de B 2 auxquelles on ajoute un 0 en tête. Comme on ne tient pas compte de 0, les clauses de N(0, B 1, B 2 ) sont donc exactement celles de B 1 et celles de B 2. (b) La formule associée à N(0, B 1, B 2 ) est donc ( F 1 F 2 ). Comme F i et F i sont logiquement identiques, ( F 1 F 2 ) est logiquement identique à (F 1 F 2 ). 2. (a) Les branches de B sont les concaténations d une branche de B 1 et d une branche de B 2. Les clauses associées à B sont donc exactement les conjonctions d une clause de F 1 et d une clause de F 2. En notant F 1 = C 1 C u et F 2 = C 1 C v où les C k et C k sont des clauses, la formule associée à B est ainsi C i C j (b) Par distributivité, cette formule est identique à ( ) ( ) C i = F 1 F 2 et donc aussi identique à F 1 F 2. i i,j (c) Comme il convient de parcourir uniquement le premier arbre (la récursivité ne porte pas sur le second) j ai choisi d écrire une fonction auxiliaire locale parcourt : betharbre betharbre qui pr uniquement en argument le premier arbre (et renvoie l arbre obtenu en ajoutant le second comme fils gauche aux feuilles). let concatene b1 b2 = let rec parcourt b = match b with Vide -> Vide N(i,Vide,Vide) -> N(i,b2,Vide) N(i,g,d) -> N(i,parcourt g,parcourt d) in parcourt b1;; 3. Comme (( F 1 )) est identique à F 1, l arbre B 1 convient. 4. Par formule de DeMorgan, (F 1 F 2 ) (( F 1 ) ( F 2 )). Il nous suffit donc de construire les arbres B i associés aux ( F i) et d utiliser la technique de concaténation de la question 2. De même, (F 1 F 2 ) (( F 1 ) ( F 2 )). Il nous suffit donc de construire les arbres B i associés aux ( F i ) et de renvoyer N(0, B 1, B 2 ). 5. On a (F 1 F 2 ) ( F 1 ) F 2. Avec les notations précédentes, on renvoie N(0, B 1, B 2). De même (F 1 F 2 ) F 1 ( F 2 ) et il suffit de renvoyer la concaténation de B 1 et de B Si on suit l algorithme précédent, on trouve l arbre ci-dessous : i C i 1

2 Il suffit de suivre les formules des questions qui précédent. let rec construitb f = match f with Var i -> N(i,Vide,Vide) Non(Var i) -> N(-i,Vide,Vide) Ou (f1,f2) -> N(0,construitB f1,construitb f2) Et (f1,f2) -> concatene (construitb f1) (construitb f2) Non (Non f) -> construitb f Non (Ou(f1,f2)) -> concatene (construitb(non f1)) (construitb(non f2)) Non (Et(f1,f2)) -> N(0,construitB(Non f1),construitb(non f2)) Imp(f1,f2) -> N(0,construitB (Non f1),construitb f2) Non (Imp(f1,f2)) -> concatene (construitb f1) (construitb (Non f2));; Dans les appels réursifs, le nombre de connecteurs présents dans la formule argument diminue strictement. On finit donc par des appels avec des formules sans connecteurs, ce qui est un cas de base. On prouve donc la terminaison de l appel construitb f par récurrence sur le nombre de connecteurs présents dans f. 2 Forme disjonctive 8. (a) On parcourt la liste en tirant partie de l évaluation paresseuse. let rec mem x l = match l with [] -> false y::q -> (x==y) (mem x q);; (b) Si la clause s écrit [i 1 ;... ; i k ], il suffit de vérifier que u < v, i u i v. On utilise encore l évaluation paresseuse qui évite un appel récursif inutile. let rec satisclause c = match c with [] -> true i::q -> (not (mem (-i) q)) && (satisclause q);; Le choix du cas de base est cohérent avec le cas d une clause de longueur 1. (c) mem étant de complexité linéaire en fonction de la taille de la liste, satisclause est de complexité quadratique en fonction de la taille de la clause. 2

3 9. Une forme disjonctive est satisfiable si et seulement si l une des clauses qui la composent l est. On teste donc la satisfiabilité de la première clause et, en cas d échec, de la liste des autres (l évaluation paresseuse assure que l appel récursif n est pas effectué quand la première clause est satisfiable). let rec satisfd f = match f with [] -> false c::q -> (satisclause c) (satisfd q) ;; Le choix du cas de base est cohérent avec le cas d une formule comportant une unique clause. 10. (a) On veut montrer que deux clauses c et c sont logiquement identiques si et seulement si on est dans l un des cas suivants : - c et c sont non satisfiables ; - c et c sont composées des mêmes littéraux. Le sens réciproque est immédiat. On remarque qu une valuation satisfait une clause si et seulement si elle r égaux à vrai tous les littéraux composant la clause. Une clause satisfiable a donc une valuation satisfaisante minimum : celle qui r égaux à vrai tous les littéraux et à faux toutes les variables qui n apparaissent pas dans la clause. Supposons donc c c et que c ou c est satisfiable. Ceci entraîne que c et c sont satisfiables et le sont pour les mêmes valuations. Elles ont donc même valuation minimum et donc les mêmes littéraux. (b) On regarde si le premier élément de c1 est dans c2 puis on effectue un appel récursif avec la queue de c1. let rec inferieur c1 c2 = match c1 with [] -> true i::q -> (mem i c2) && (inferieur q c2) ;; (c) Il suffit d appliquer la CNS trouvée plus haut. let testclauses c1 c2 = (not (satisclause c1) && not (satisclause c2)) ( (inferieur c1 c2) && (inferieur c2 c1) );; 11. (a) Fonction récurrente élémentaire sur une liste. let rec ajoute x l = match l with [] -> [] l1::q -> (x::l1)::(ajoute x q) ;; (b) Dans l arbre vide, on n a aucune feuille et donc aucune branche, la forme disjonctive est donc vide. Dans le cas d une feuille on a une branche qui contient un unique élément. Si cet élément est non nul, on a une unique clause de taille 1. Sinon, on a une unique clause de taille 0. Dans le cas général, on a un arbre N(i, g, d). On concatène les formules associées à g et d et à chaque clause de la liste, on ajoute i en tête si i 0 avec la fonction ajoute. let rec beth_to_fd b = match b with Vide -> [] N(0,Vide,Vide) -> [[]] N(i,Vide,Vide) -> [[i]] N(0,g,d) -> (beth_to_fd g)@(beth_to_fd d) N(i,g,d) -> ajoute i ((beth_to_fd g)@(beth_to_fd d));; 3

4 3 Satisfiabilité d une formule 12. On gère une valuation initialement égale à [ 0; 0; 0; 0; 0 ]. - On parcourt l arbre où l on rencontre 1 puis 2 ce qui nous amène à une valuation égale à [ 0; 1; 1; 0; 0 ]. - On rencontre alors 1 et ceci nous indique que la première branche ne peut être satisfaite (la clause contient x 1 et ( x 1 )). - On revient sur nos pas et on rencontre 2 ce qui indique encore que la seconde branche est non satisfiable. - Il faut alors remonter jusqu au premier embranchement non exploré. Ici, il faut remonter jusqu à la racine. Lors de cette remontée, il faut à nouveau mettre à jour la valuation pour ne pas polluer l exploration suivante et on retombe sur [ 0; 0; 0; 0; 0 ]. - On explore des noeuds d étiquettes 2, 3 et on obtient la valuation [ 0; 0; 1; 1; 0 ]. - On continue et on trouve l étiquette 2 qui interrompt la recherche sur cette branche. - On remonte au précédent embranchement utile ce qui nous fait revenir au noeud d étiquette 2 avec une valuation [ 0; 0; 1; 0; 0 ]. - On rencontre alors 1 puis 3 pour obtenir une valuation [ 0; 1; 1; 1; 0 ]. Comme on est au bout de la branche, on a trouvé une valuation validant une clause. La formule est satisfiable et on a trouvé une valuation convenable. On renvoie [ 1; 1; 1; 1; 0 ]. 13. Le numéro maximal d une variable est le maximum de l étiquette et des numéros de variables des fils droit et gauche. Dans le cas de base où l arbre est vide, on choisit de renvoyer 0 ce qui est cohérent avec le cas d une feuille ou d un noeud ayant un unique fils non vide (cette valeur 0 ne changeant pas la valeur du maximum calculé). let rec nbvariable b = match b with Vide -> 0 N(i,g,d) -> max (abs i) (max (nbvariable g) (nbvariable d));; 14. Le cas de base est celui où l on tombe sur une feuille. Si on peut donner une valeur non contradictoire avec ce que l on a déjà à la variable associée, on le fait et on renvoie true. Sinon, on renvoie false. Ceci nous amène à distinguer deux cas symétriques selon le signe du littéral représenté par la feuille. Notons qu à priori, il ne doit pas exister de feuille étiquetée par 0. Cepant, dans ce cas, il est naturel de renvoyer true sans rien faire car la formule est vide. Dans le cas récurrent, on daoit encore distinguer selon que l étiquette de la racine est nulle ou non. Dans le second cas, on a deux situations symétriques selon le signe de l étiquette. Dans chaque cas, on essaye de donner une valeur à la variable associée. Si ce n est pas possible, on a une contradiction et on renvoie false. Sinon, on donne cette valeur et on examine les fils ; si les deux générent un échec il faut redonner à la variable associée à l étiquette sa valeur initiale. Le cas de l arbre vide est douteux. Si on veut que les appels récurrentes avec l arbre vide soient cohérents, on doit renvoyer la valeur false dans ce cas. let satisfiable b = let n=nbvariable b in let v=make_vect (n+1) 0 in let rec parcourt b = match b with Vide -> false N(0,Vide,Vide) -> true N(i,Vide,Vide) -> if i>0 then begin if v.(i)=(-1) then false v.(i) <- 1; true 4

5 else begin if v.(-i)=1 then false v.(-i) <- -1; true N(0,g,d) -> (parcourt g) (parcourt d) N(i,g,d) -> if i>0 then begin (* littéral positif *) if v.(i)=(-1) then false (* contradiction *) let x=v.(i) in (* mémorisation de la valeur *) v.(i) <- 1 ; if (parcourt g) (parcourt d) then true (* échec sur les fils *) v.(i) <- x; (* on redonne la valeur à la variable *) false (* cas similaire d un littéral négatif *) if v.(-i)=1 then false let x=v.(-i) in v.(-i) <- -1; if (parcourt g) (parcourt d) then true v.(-i) <- x; false in if parcourt b then begin (* cas satisfiable *) v.(0) <- 1; v v.(0) <- -1; v ;; GRAPHES EULERIENS 1 Chemins Eulériens fermés 1. On suppose G Eulérien. Il existe donc un chemin fermé P = x 1, x 2,..., x k, x 1 contenant toutes les arêtes du graphe. Comme le graphe est connexe, tous les sommets font partie du chemin. Si s est un sommet, le degré de s est le nombre d arêtes auxquelles participe s. Si s x 1, ce nombre est double du nombre d apparitions de s dans P. Si s = x 1, il est égal au double du nombre d apparitions de x 1 parmi x 2,..., x k plus deux (les deux apparitions du bord). Dans tous les cas, s est de degré pair. 5

6 2. Il suffit de voir si toutes les listes d adjacence sont de longueur paire. On peut s interrompre dès que l une de ces listes est de longueur impaire et on utilise donc une boucle conditionnelle. let est_eulerien g = let n=vect_length g in let i=ref 0 in while!i<n && list_length g.(!i) mod 2 = 0 do incr i done;!i=n;; Dans le cas le pire, on calcule la longueur de toutes les listes et la complexité est donc O( A ) (linéaire en fonction du nombre d arêtes). 3. (a) Soit s 1,..., s k un chemin non prolongeable. Soit H le graphe induit par ce chemin. Comme en question 1, si le chemin n est pas fermé, s 1 et s k ont un degré impair dans H. Comme Ils ont un degré pair dans G par hypothèse, on peut donc trouver une arête s k y dans G et pas dans H et on peut donc prolonger le chemin. On en déduit que s 1 = s k. (b) Dans le cas de l exemple, on obtient le chemin fermé [7; 6; 1; 7]. Le nouveau graphe est alors (c) On va avoir besoin de modifier les listes d adjacence en leur retirant des éléments. On écrit donc une fonction enlever : a a list a list qui à partir d une liste et d un élément renvoie la liste privée de la première occurence de l élément. let rec enlever y l = match l with [] -> [] x::q -> if x=y then q else x::(enlever y q);; Dans la fonction demandée, il suffit alors de modifier les cases g.(x) et g.(y) du tableau g. let supprime_arete x y g = g.(x) <- enlever y g.(x) ; g.(y) <- enlever x g.(y) ;; (d) J écris une fonction auxiliaire locale depart : int int list. Dans l appel depart y, on renvoie un chemin de y à x (connu puisque la fonction est locale). Il suffit de l appeler avec x. La fonction est simplement récurrente (on trouve un successeur z de y et on ajoute y à un chemin de z à x obtenu récursivement ; le cas de base est celui où x est le successeur trouvé pour y). let cheminferme g x = let rec depart y = let z=hd g.(y) in supprimer_arete y z g; if z = x then [y;x] else y::(depart z) in depart x 6

7 4. (a) Le chemin fermé P trouvé induit un sous-graphe dont les sommets sont tous degré pair. On ne change donc pas la parité des degrés en retranchant de G les arêtes de P. (b) On suppose qu il reste une arête xy dans G. Si x est l un des sommets de P alors on a directement un sommet de P de degré non nul dans G. Sinon, par connexité, il existe dans G un chemin de x vers l un des sommets de P. Ce chemin va d un sommet hors de P à un sommet dans P et il existe donc une première arête qui nous fait passer sur un sommet de P. Cette arête relie un sommet z de P à un sommet z hors de P. z est alors un sommet de P de degré non nul dans G. (c) On cherche un élément de la liste dont la liste d ajacence est non vide! let rec cherchersommet g p = match p with [] -> failwith "graphe non Eulérien" x::q -> if g.(x)=[] then cherchersommet g q else x ;; 5. (a) Puisque l on continue à privilégier les sommets de grand numéro, on obtient Incorporer P dans P donne le chemin fermé P = [7; 5; 4; 0; 5; 2; 0; 1; 3; 7] [7; 5; 4; 0; 5; 2; 0; 1; 3; 7; 6; 1; 7] qui est un chemin Eulérien fermé du graphe de départ. (b) La fonction incorporer : chemin chemin chemin pr en argument deux chemins c et p. On SUPPOSE que le premier élément x de c est élément de p et on remplace la première occurence de x dans p par c. let rec incorporer c p = match p with [] -> failwith "graphe non eulérien" x::q -> if x=hd c then c@q else x::(incorporer c q);; 6. (a) On a besoin d une fonction estvide :graphe bool testant si le graphe possède des arêtes. On teste si les listes d adjacence sont vides. On peut s arrêter dès que l on en trouve une non vide et on utilise donc une boucle conditionnelle. let estvide g = let n=vect_length g in let i=ref 0 in while!i<n && g.(!i)=[] do incr i done;!i=n;; Il reste à enchaîner les étapes. let rec agranditchemin g p = if estvide g then p let x=cherchersommet g p in let pp=cheminferme g x in agranditchemin g (incorporer pp p) ;; (b) Pour la fonction principale, j ai choisi ici de travailler avec une copie du graphe (même si l énoncé ne le demande pas). Il nous suffit de lancer le processus avec un chemin de longueur 0 et contenant donc un unique sommet. let chemineulerienferme g = let gg=copy_vect g in agranditchemin gg [0];; 7

8 2 Chemins Eulériens 7. Considérons l exemple suivant : Ce n est pas un graphe Eulérien d après le théorème d Euler (3 est de degré 3). Cepant, 1, 0, 3, 2, 1, 3 est un chemin Eulérien. Le graphe est donc semi-eulérien. 8. Un graphe connexe est semi-eulérien si et seulement si tous ses sommets sont de degré pair sauf deux qui sont de degré impair. - La condition est nécessaire. En effet, supposons que l on dispose d un chemin Eulérien ouvert x 1,..., x k alors tous les sommets sont parcourus. A part x k et x 1, il font tous partie d un nombre pair d arêtes (à chaque occurence d un sommet dans le chemin sont associées deux arêtes). x k et x 1 sont, eux, de degré impair (égal à 1 plus le nombre de fois où on les trouve parmi x 2,..., x k 1 ). - Réciproquement, supposons que G vérifie la condition sur les degrés. Soit G le graphe obtenu à partir de G en ajoutant un sommet s que l on relie aux deux sommets de degré impair (notés x 1 et x k ). G est alors Eulérien et on trouve un chemin Eulérien fermé pour G. Quitte à permuter, ce chemin fermé s écrit s, x 1,..., x k, s où les x i sont les sommets de G. x 1,..., x k est alors un chemin Eulérien pour G. 9. Il s agit d adapter l algorithme de parcours en profondeur à partir d un sommet. Il y a deux choses à prre en compte : - il faut s arrêter quand on a atteint le sommet cible (on ne veut pas chercher TOUS les sommets atteignables) ; - il faut stocker un chemin depuis le sommet source jusqu au sommets atteints (et pas seulement savoir qu on les a atteints). Pour le premier point, il suffit, dans la fonction récurrente, de ne pas faire l appel récursif quand on tombe sur le sommet cible. Pour le second point, il suffit de gérer un tableau des marques non plus constitué de booléens mais de chemins. Quand on découvre un sommet x, on place dans la case numéro x une liste [x;... ; b] constituant un chemin de x vers b. let route g a b = let n=vect_length g in let marque=make_vect n [] in marque.(b) <- [b] ; let rec parcourt x l = match l with [] -> () y::q -> if y=a then marque.(y) <- a::marque.(x) if marque.(y)=[] then begin marque.(y) <- y::marque.(x); parcourt y g.(y) ; parcourt x q 8

9 in parcourt b g.(b); marque.(a);; 10. On commence par trouver les deux sommets a et b de degré impair. C est le rôle de extremites : graphe int*int. let extremites g = let a=ref (-1) and b=ref (-1) in for i=0 to (vect_length g - 1) do if list_length g.(i) mod 2 =1 then if!a=(-1) then a:=i else b:=i done;!a,!b;; On cherche alors un chemin P entre les deux sommets trouvés (fonction route). En supprimant P du graphe, on se ramène alors au cas d un graphe Eulérien et on peut réutiliser la technique vue. On a besoin d une fonction supprime : chemin graphe unit transformant un graphe en enlevant les arêtes d un chemin. let rec supprime c g = match c with [] -> () [x] -> () x::y::q -> supprime_arete x y g ; supprime (y::q) g;; On suit alors le programme énoncé ci-dessus. let chemineulerien g = let gg=copy_vect g in let (a,b)=extremites gg in let p=route gg a b in supprime p gg ; agranditchemin gg p;; 9

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

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

Plus en détail

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours

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

Introduction à la théorie des graphes. Solutions des exercices

Introduction à 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

# 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>

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

MIS 102 Initiation à l Informatique

MIS 102 Initiation à l Informatique MIS 102 Initiation à l Informatique Responsables et cours : Cyril Gavoille Catherine Pannier Matthias Robine Marc Zeitoun Planning : 6 séances de cours 5 séances de TD (2h40) 4 séances de TP (2h40) + environ

Plus en détail

Résolution d équations non linéaires

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

Recherche dans un tableau

Recherche dans un tableau Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6

Plus en détail

Résolution de systèmes linéaires par des méthodes directes

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

Les arbres binaires de recherche

Les arbres binaires de recherche Institut Galilée Année 2010-2011 Algorithmique et arbres L2 TD 6 Les arbres binaires de recherche Type en C des arbres binaires (également utilisé pour les ABR) : typedef struct noeud_s { struct noeud_s

Plus en détail

Fonctions de deux variables. Mai 2011

Fonctions de deux variables. Mai 2011 Fonctions de deux variables Dédou Mai 2011 D une à deux variables Les fonctions modèlisent de l information dépendant d un paramètre. On a aussi besoin de modéliser de l information dépendant de plusieurs

Plus en détail

Groupe symétrique. Chapitre II. 1 Définitions et généralités

Groupe symétrique. Chapitre II. 1 Définitions et généralités Chapitre II Groupe symétrique 1 Définitions et généralités Définition. Soient n et X l ensemble 1,..., n. On appelle permutation de X toute application bijective f : X X. On note S n l ensemble des permutations

Plus en détail

3 Approximation de solutions d équations

3 Approximation de solutions d équations 3 Approximation de solutions d équations Une équation scalaire a la forme générale f(x) =0où f est une fonction de IR dans IR. Un système de n équations à n inconnues peut aussi se mettre sous une telle

Plus en détail

Les indices à surplus constant

Les indices à surplus constant Les indices à surplus constant Une tentative de généralisation des indices à utilité constante On cherche ici en s inspirant des indices à utilité constante à définir un indice de prix de référence adapté

Plus en détail

Théorème du point fixe - Théorème de l inversion locale

Théorème du point fixe - Théorème de l inversion locale Chapitre 7 Théorème du point fixe - Théorème de l inversion locale Dans ce chapitre et le suivant, on montre deux applications importantes de la notion de différentiabilité : le théorème de l inversion

Plus en détail

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4)

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4) FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4) Bernard Le Stum Université de Rennes 1 Version du 13 mars 2009 Table des matières 1 Fonctions partielles, courbes de niveau 1 2 Limites et continuité

Plus en détail

Chapitre 6. Fonction réelle d une variable réelle

Chapitre 6. Fonction réelle d une variable réelle Chapitre 6 Fonction réelle d une variable réelle 6. Généralités et plan d étude Une application de I dans R est une correspondance entre les éléments de I et ceu de R telle que tout élément de I admette

Plus en détail

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

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

Eléments de Théorie des Graphes et Programmation Linéaire

Eléments de Théorie des Graphes et Programmation Linéaire INSTITUT NATIONAL POLYTECHNIQUE DE LORRAINE Ecole Nationale Supérieure d Electricité et de Mécanique Eléments de Théorie des Graphes et Programmation Linéaire Didier Maquin Professeur à l INPL Version

Plus en détail

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé A. P. M. E. P. Exercice 1 5 points 1. Réponse d. : 1 e Le coefficient directeur de la tangente est négatif et n est manifestement pas 2e

Plus en détail

Probabilités sur un univers fini

Probabilités sur un univers fini [http://mp.cpgedupuydelome.fr] édité le 7 août 204 Enoncés Probabilités sur un univers fini Evènements et langage ensembliste A quelle condition sur (a, b, c, d) ]0, [ 4 existe-t-il une probabilité P sur

Plus en détail

Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.

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

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

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

Eteindre. les. lumières MATH EN JEAN 2013-2014. Mme BACHOC. Elèves de seconde, première et terminale scientifiques :

Eteindre. les. lumières MATH EN JEAN 2013-2014. Mme BACHOC. Elèves de seconde, première et terminale scientifiques : MTH EN JEN 2013-2014 Elèves de seconde, première et terminale scientifiques : Lycée Michel Montaigne : HERITEL ôme T S POLLOZE Hélène 1 S SOK Sophie 1 S Eteindre Lycée Sud Médoc : ROSIO Gauthier 2 nd PELGE

Plus en détail

Comparaison de fonctions Développements limités. Chapitre 10

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

Examen Médian - 1 heure 30

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

Programmation linéaire

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

Plus en détail

Calcul différentiel sur R n Première partie

Calcul différentiel sur R n Première partie Calcul différentiel sur R n Première partie Université De Metz 2006-2007 1 Définitions générales On note L(R n, R m ) l espace vectoriel des applications linéaires de R n dans R m. Définition 1.1 (différentiabilité

Plus en détail

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation

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

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

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

Dérivées d ordres supérieurs. Application à l étude d extrema.

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

Cours d algorithmique pour la classe de 2nde

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

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

Algorithmique et programmation : les bases (VBA) Corrigé

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

Équations non linéaires

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

Image d un intervalle par une fonction continue

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

Plus en détail

Algorithmique et Programmation, IMA

Algorithmique et Programmation, IMA Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions

Plus en détail

6. Les différents types de démonstrations

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

Probabilités sur un univers fini

Probabilités sur un univers fini [http://mp.cpgedupuydelome.fr] édité le 10 août 2015 Enoncés 1 Proailités sur un univers fini Evènements et langage ensemliste A quelle condition sur (a,, c, d) ]0, 1[ 4 existe-t-il une proailité P sur

Plus en détail

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. 1 Définitions, notations Calcul matriciel Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. On utilise aussi la notation m n pour le

Plus en détail

Chapitre 5 : Flot maximal dans un graphe

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

Chapitre 3. Les distributions à deux variables

Chapitre 3. Les distributions à deux variables Chapitre 3. Les distributions à deux variables Jean-François Coeurjolly http://www-ljk.imag.fr/membres/jean-francois.coeurjolly/ Laboratoire Jean Kuntzmann (LJK), Grenoble University 1 Distributions conditionnelles

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

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

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

Plus en détail

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples, Non-linéarité Contexte Pour permettre aux algorithmes de cryptographie d être sûrs, les fonctions booléennes qu ils utilisent ne doivent pas être inversées facilement. Pour cela, elles doivent être très

Plus en détail

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

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

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

Chapitre 2. Matrices

Chapitre 2. Matrices Département de mathématiques et informatique L1S1, module A ou B Chapitre 2 Matrices Emmanuel Royer emmanuelroyer@mathuniv-bpclermontfr Ce texte mis gratuitement à votre disposition a été rédigé grâce

Plus en détail

Organigramme / Algorigramme Dossier élève 1 SI

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

Théorie des Graphes Cours 3: Forêts et Arbres II / Modélisation

Théorie des Graphes Cours 3: Forêts et Arbres II / Modélisation IFIPS S7 - informatique Université Paris-Sud 11 1er semestre 2009/2010 Théorie des Graphes Cours 3: Forêts et Arbres II / 1 Forêts et arbres II Théorème 1.1. Les assertions suivantes sont équivalentes

Plus en détail

Vérification de programmes et de preuves Première partie. décrire des algorithmes

Vérification de programmes et de preuves Première partie. décrire des algorithmes Vérification de programmes et de preuves Première partie. décrire des algorithmes Yves Bertot September 2012 1 Motivating introduction A partir des années 1940, il a été compris que l on pouvait utiliser

Plus en détail

LE PROBLEME DU PLUS COURT CHEMIN

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

Quelques algorithmes simples dont l analyse n est pas si simple

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

Optimisation des fonctions de plusieurs variables

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

Simulation de variables aléatoires

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

Extrait du poly de Stage de Grésillon 1, août 2010

Extrait du poly de Stage de Grésillon 1, août 2010 MINI-COURS SUR LES POLYNÔMES À UNE VARIABLE Extrait du poly de Stage de Grésillon 1, août 2010 Table des matières I Opérations sur les polynômes 3 II Division euclidienne et racines 5 1 Division euclidienne

Plus en détail

Java Licence Professionnelle CISII, 2009-10

Java Licence Professionnelle CISII, 2009-10 Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation

Plus en détail

Optimisation Discrète

Optimisation Discrète Prof F Eisenbrand EPFL - DISOPT Optimisation Discrète Adrian Bock Semestre de printemps 2011 Série 7 7 avril 2011 Exercice 1 i Considérer le programme linéaire max{c T x : Ax b} avec c R n, A R m n et

Plus en détail

Calcul fonctionnel holomorphe dans les algèbres de Banach

Calcul fonctionnel holomorphe dans les algèbres de Banach Chapitre 7 Calcul fonctionnel holomorphe dans les algèbres de Banach L objet de ce chapitre est de définir un calcul fonctionnel holomorphe qui prolonge le calcul fonctionnel polynômial et qui respecte

Plus en détail

Licence Sciences et Technologies Examen janvier 2010

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

Plus en détail

chapitre 4 Nombres de Catalan

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

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation

Plus en détail

Théorèmes de Point Fixe et Applications 1

Théorèmes de Point Fixe et Applications 1 Théorèmes de Point Fixe et Applications 1 Victor Ginsburgh Université Libre de Bruxelles et CORE, Louvain-la-Neuve Janvier 1999 Published in C. Jessua, C. Labrousse et D. Vitry, eds., Dictionnaire des

Plus en détail

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

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

Plus en détail

Resolution limit in community detection

Resolution limit in community detection Introduction Plan 2006 Introduction Plan Introduction Introduction Plan Introduction Point de départ : un graphe et des sous-graphes. But : quantifier le fait que les sous-graphes choisis sont des modules.

Plus en détail

CCP PSI - 2010 Mathématiques 1 : un corrigé

CCP PSI - 2010 Mathématiques 1 : un corrigé CCP PSI - 00 Mathématiques : un corrigé Première partie. Définition d une structure euclidienne sur R n [X]... B est clairement symétrique et linéaire par rapport à sa seconde variable. De plus B(P, P

Plus en détail

Items étudiés dans le CHAPITRE N5. 7 et 9 p 129 D14 Déterminer par le calcul l'antécédent d'un nombre par une fonction linéaire

Items étudiés dans le CHAPITRE N5. 7 et 9 p 129 D14 Déterminer par le calcul l'antécédent d'un nombre par une fonction linéaire CHAPITRE N5 FONCTIONS LINEAIRES NOTION DE FONCTION FONCTIONS LINEAIRES NOTION DE FONCTION FONCTIONS LINEAIRES NOTION DE FONCTION Code item D0 D2 N30[S] Items étudiés dans le CHAPITRE N5 Déterminer l'image

Plus en détail

TP3 : Manipulation et implantation de systèmes de fichiers 1

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

Pourquoi l apprentissage?

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

Plus en détail

Développements limités, équivalents et calculs de limites

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

Limites finies en un point

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

Exercices - Polynômes : corrigé. Opérations sur les polynômes

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

3. Conditionnement P (B)

3. Conditionnement P (B) Conditionnement 16 3. Conditionnement Dans cette section, nous allons rappeler un certain nombre de définitions et de propriétés liées au problème du conditionnement, c est à dire à la prise en compte

Plus en détail

Arbres binaires de recherche

Arbres binaires de recherche 1 arbre des comparaisons 2 recherche dichotomique l'arbre est recalculé à chaque recherche 2 5 3 4 7 9 1 6 1 2 3 4 5 6 7 9 10 conserver la structure d'arbre au lieu de la reconstruire arbre binaire de

Plus en détail

SNT4U16 - Initiation à la programmation 2014-2015. TD - Dynamique de POP III - Fichiers sources

SNT4U16 - Initiation à la programmation 2014-2015. TD - Dynamique de POP III - Fichiers sources SNT4U16 - Initiation à la programmation Licence SVT 2 ème année 2014-2015 TD - Dynamique de POP III - Fichiers sources contacts : mathias.gauduchon@univ-amu.fr, melika.baklouti@univ-amu.fr, xavier.giraud@univ-amu.fr,

Plus en détail

Cours Fonctions de deux variables

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

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

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

Plus en détail

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

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

La persistance des nombres

La persistance des nombres regards logique & calcul La persistance des nombres Quand on multiplie les chiffres d un nombre entier, on trouve un autre nombre entier, et l on peut recommencer. Combien de fois? Onze fois au plus...

Plus en détail

Plus courts chemins, programmation dynamique

Plus courts chemins, programmation dynamique 1 Plus courts chemins, programmation dynamique 1. Plus courts chemins à partir d un sommet 2. Plus courts chemins entre tous les sommets 3. Semi-anneau 4. Programmation dynamique 5. Applications à la bio-informatique

Plus en détail

Exclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011

Exclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011 Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr Université de Provence 9 février 2011 Arnaud Labourel (Université de Provence) Exclusion Mutuelle 9 février 2011 1 / 53 Contexte Epistémologique

Plus en détail

BACCALAUREAT GENERAL MATHÉMATIQUES

BACCALAUREAT GENERAL MATHÉMATIQUES BACCALAUREAT GENERAL FEVRIER 2014 MATHÉMATIQUES SERIE : ES Durée de l épreuve : 3 heures Coefficient : 5 (ES), 4 (L) 7(spe ES) Les calculatrices électroniques de poche sont autorisées, conformement à la

Plus en détail

Optimisation 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 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

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR Mickaël Bergem 25 juin 2014 Maillages et applications 1 Table des matières Introduction 3 1 La modélisation numérique de milieux urbains

Plus en détail

modules & compilation

modules & compilation Programmation fonctionnelle avec OCaml 3ème séance, 19 mars 2015 modules & compilation samuel.hornus@inria.fr http ://www.loria.fr/ shornus/ocaml/ Modules Un module regroupe un ensemble de définitions

Plus en détail

DOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10.

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

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2) Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter

Plus en détail

I. Polynômes de Tchebychev

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

Qualité du logiciel: Méthodes de test

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

Première partie. Préliminaires : noyaux itérés. MPSI B 6 juin 2015

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

Proposition. Si G est un groupe simple d ordre 60 alors G est isomorphe à A 5.

Proposition. Si G est un groupe simple d ordre 60 alors G est isomorphe à A 5. DÉVELOPPEMENT 32 A 5 EST LE SEUL GROUPE SIMPLE D ORDRE 60 Proposition. Si G est un groupe simple d ordre 60 alors G est isomorphe à A 5. Démonstration. On considère un groupe G d ordre 60 = 2 2 3 5 et

Plus en détail

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

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

Plus en détail

Logique. Plan du chapitre

Logique. Plan du chapitre Logique Ce chapitre est assez abstrait en première lecture, mais est (avec le chapitre suivant «Ensembles») probablement le plus important de l année car il est à la base de tous les raisonnements usuels

Plus en détail

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

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

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

Plus en détail

Chp. 4. Minimisation d une fonction d une variable

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

Correction TD algorithmique

Correction TD algorithmique Affectation Correction TD algorithmique Exercice 1 algo affect1b b 5 a b+1 b 2 Il vaut faire passer la notion de variable et la notion de stockage mémoire. Une variable n a donc pas d historique et à un

Plus en détail

TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options

TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options Université de Lorraine Modélisation Stochastique Master 2 IMOI 2014-2015 TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options 1 Les options Le but de ce

Plus en détail

CH.6 Propriétés des langages non contextuels

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

Objets Combinatoires élementaires

Objets Combinatoires élementaires Objets Combinatoires élementaires 0-0 Permutations Arrangements Permutations pour un multi-ensemble mots sous-ensemble à k éléments (Problème du choix) Compositions LE2I 04 1 Permutations Supposons que

Plus en détail

Initiation à la Programmation en Logique avec SISCtus Prolog

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

Plus en détail