Plan du module Informatique théorique 2 1ère partie - Systèmes relationnels Relations sur un ensemble Théorie des treillis 20h cours/30h TD Licence 2 Informatique 2ème partie - Algèbre Théorie des groupes Anneaux, corps 2005/2006 3ème partie - Séries Frédéric Fürst - bureau 205 - [email protected] www.u-picardie.fr/~ff-laria/ Licence Informatique - Informatique théorique 2 2005/2006 Séries, polynomes formels Fonctions génératrices Licence Informatique - Informatique théorique 2 Systèmes relationnels • Les systèmes relationnels sous-tendent de nombreux systèmes informatiques : – Base de données et langages relationnels – Structures ordonnées : arborescence des systèmes de fichiers, piles, files, arbres, hiérarchies objet, … • Bibliographie : – Mathématiques discrètes et informatique, N.H. Xuong, Masson – Mathématiques pour l’informatique, A. Arnold & I. Guessarian, Masson – Mathématiques discrètes, S. Lipschutz, Serie Schaum Licence Informatique - Informatique théorique 2 2005/2006 Relation sur des ensembles • Ensemble : un ensemble (notion première) est défini quand il est possible pour tout élément (notion première) de dire s’il appartient ou pas à cet ensemble • Relation (binaire) : soit E et F deux ensembles. On appelle relation binaire entre E et F tout sous-ensemble de E× F (E× F est le produit cartésien de E et F). • Notes : - une relation peut lier un ensemble à lui-même - une relation n’est pas forcément binaire • Exemples : - relation de notation entre l’ensemble des étudiants en L2 et l’ensemble des notes en IT2 [0..20] - la relation de divisibilité dans N Licence Informatique - Informatique théorique 2 • Exemples : - une relation unaire sur un ensemble E est une partie de E (par ex. l’ensemble des entiers pairs peut être vu comme une relation unaire sur N). - 3 ensembles d’identifiants client, d’identifiants produit et de numéros de facture sont liés par une relation ternaire « achat » Tartempion Chaise Dupont Table Dupond fourchette Licence Informatique - Informatique théorique 2 2005/2006 Facture 22 Facture 23 Facture 32 2005/2006 Opérations sur les relations (1/3) Relations n-aires • Relation : soit E1, .. , En n ensembles. On appelle relation entre les Ei tout sous-ensemble de E1× .. En. 2005/2006 • Les relations sont des sous-ensembles d’un produit cartésien d’ensembles => on peut leur appliquer des opérations ensemblistes, c’est l’algèbre relationnelle des SGBD (BD2) • Inclusion de relation : l’inclusion des relations binaires R et S, notée R ⊆ S, est définie par (x,y) ∈ R => (x,y) ∈ S. On peut généraliser à des relations n-aires. • Exemple : {(Tartempion,chaise,facture22)} est incluse dans {(Tartempion,chaise,facture22),(Dupont,table,facture23),(Dupont,fourchette, facture32)} Licence Informatique - Informatique théorique 2 2005/2006 1 Opérations sur les relations (2/3) Opérations sur les relations (3/3) • Union et intersection de relations : soit R et S deux relations binaires entre E et F. – R ∪ S union de R et S est définie par x (R ∪ S) y ssi xRy ou xSy. – R ∩ S intersection de R et S est définie par x (R ∩ S) y ssi xRy et xSy. – On généralise à des relations n-aires • Inverse d’une relation binaire : soit R relation entre E et F. R-1 inverse de R est définie par x R-1 y ssi yRx. • • Relation identité : la relation identité entre E et F, notée Id E×F, est définie par (e,f) ∈ IdE×F ssi e = f Exemples : - l'union de {(Tartempion,chaise,facture22)} et {(Tartempion,chaise,facture22), (Dupont,table,facture23), (Dupont,fourchette, facture32)} est {(Tartempion,chaise,facture22), (Dupont,table,facture23), (Dupont,fourchette, facture32)} - l'intersection de {(Tartempion,chaise,facture22)} et {(Tartempion,chaise,facture22), (Dupont,table,facture23), (Dupont,fourchette, facture32)} est {(Tartempion,chaise,facture22)} Licence Informatique - Informatique théorique 2 2005/2006 • Complémentaire d’une relation : la relation R’ complémentaire d’une relation R entre E et F est définie par (e,f) ∈ R’ ssi (e,f) ∉ R. On généralise à des relations n-aires. • Relation pleine : la relation pleine entre E et F, notée ∏ E×F, est définie par ∀(e,f) ∈ E×F, (e,f) ∈ ∏ E×F Licence Informatique - Informatique théorique 2 Propriétés des relations binaires (1/2) Composition des relations • Composition des relations binaires : soit R une relation entre E et F et S une relation entre F et G. La relation T binaire composée de R et S, et notée RoS, est définie par ∀(x,z) ∈ E×G, xTz ⇔ ∃y ∈ F tel que xRy et ySz A B C D 1 2 3 4 • Symétrie : une relation R est symétrique si pour tout x et y tels que xRy, alors yRx. Si R est symétrique, R=R-1 • × Ob où Ob est l'ensemble • Antisymétrie : une relation R est anti-symétrique si pour tout x et y tels que xRy et yRx, alors x = y roger • rodolphe 2005/2006 Propriétés des relations binaires (2/2) • Réflexivité : une relation R est réflexive si pour tout x, alors xRx • Exemple : la relation "à coté de" définie sur Ob des objets matériels est symétrique robert Exemple : la relation "est située au même endroit" définie sur Ob × Ob est réflexive Exemple : la relation "posée sur" définie sur Ob × Ob est antisymétrique • Transitivité : une relation R est transitive si pour tout x, y et z tels que xRy et yRz, alors xRz • Licence Informatique - Informatique théorique 2 2005/2006 Exemple : la relation "à coté de" est transitive Licence Informatique - Informatique théorique 2 2005/2006 Fermetures des relations • Fermeture d’une relation binaire : Soit R une relation binaire définie sur un ensemble E. On appelle fermeture réflexive, de R la plus petite (au sens de l’inclusion) relation réflexive définie sur E contenant R. On note r(R) la fermeture réflexive de R, t(R) sa fermeture transitive, s(R) sa fermeture symétrique. • Théorème 1 : Soit R une relation binaire sur un ensemble E. • Antiréflexivité : une relation R est anti-réflexive si pour tout x, alors xRx est faux • Exemple : la relation "est posée sur" est antiréflexive – r(R) = R ∪ Id (Id = relation d’identité) – t(R) = ∪ Ri i=1..∞ (Ri = RoRo .. oR i fois) – s(R) = R ∪ R -1 Licence Informatique - Informatique théorique 2 2005/2006 Licence Informatique - Informatique théorique 2 2005/2006 2 Fonctions, applications (1/2) • Fonction : une fonction d'un ensemble E vers un ensemble F est une relation de E vers F pour laquelle tout élément x de E est en relation avec au plus un élément y de F – on note y = f(x) et on dit que y est l’image de x par f et que x est l’antécédent de y par f. – l'ensemble des éléments x de E pour lesquels il existe un élément de F en relation avec x est appelé ensemble de définition de la fonction f. Fonctions, applications (2/2) • Injection : une application de E vers F est dite injective lorsque deux éléments distincts de E ont toujours des images distinctes dans F. • Surjection : une application de E vers F est dite surjective lorsque tout élément de F admet au moins un antécédent dans E. • Application : une application d'un ensemble E vers un ensemble F est une relation de E vers F pour laquelle tout élément de E est en relation avec exactement un élément de F. C'est une fonction de E vers F dont le domaine de définition est E. • Bijection : une application de E vers F est dite bijective lorsqu'elle est à la fois injective et surjective. Licence Informatique - Informatique théorique 2 Licence Informatique - Informatique théorique 2 2005/2006 Relations d’équivalence • Relation d’équivalence : une relation d’équivalence (notée ≡) est une relation réflexive, transitive et symétrique. • Exemples : - la relation de proximité spatiale "à coté de" - dans Z, la relation définie par aRb ssi a-b est pair • Classe d’équivalence : la classe d’équivalence d’un élément x d’un ensemble E relative à une relation d’équivalence ≡ est l’ensemble des éléments y de E tels que x ≡ y (ou y ≡ x) • Ensembles quotient • Ensemble quotient : le quotient d’un ensemble E par une relation d’équivalence ≡ est l’ensemble dont les éléments sont les classes d’équivalences des éléments de E relativement à ≡. • Exemples : - le quotient de l’ensemble {Pierre, Paul, Jacques, Marie, Jeanne} par la relation « a même sexe » est {{Pierre,Paul,Jacques}, {Marie,Jeanne}} - le quotient de N par la relation R définie par xRy ssi x-y est multiple de 2 est l’ensemble réduit à deux éléments, l’ensemble des entiers pairs et l’ensemble des entiers impairs Théorè me 2 : l’ ensemble des classes d’équivalence qu’une relation d’équivalence induit sur un ensemble E est une partition de E. Inversement, toute partition de E induit une relation d’équivalence. Licence Informatique - Informatique théorique 2 2005/2006 2005/2006 Licence Informatique - Informatique théorique 2 2005/2006 Relations d’ordre Ensembles ordonnés • Relation d’ordre : une relation d’ordre partiel (notée ≤) est une relation réflexive, transitive et antisymétrique. Une relation antiréflexive, transitive et antisymétrique est une relation d’ordre strict (une relation réflexive et transitive est appelée préordre). • Ensemble ordonné (ou partiellement ordonné) : un ensemble E ordonné est un ensemble muni d’une relation d’ordre ≤. On note cet ensemble (E, ≤ ). • Exemples : - la relation « plus grand que » - dans N, la relation définie par aRb ssi a divise b • Elément dominant : dans E muni de ≤, un élément x domine un élément y si y ≤ x et qu’il n’ existe pas d’élément z tel que y ≤ z ≤ x. On dit aussi que x est le successeur de y. • Exemples : - dans N muni de la relation de division, 4 domine 2 - dans N muni de la relation « plus grand que », 3 domine 2 Licence Informatique - Informatique théorique 2 2005/2006 • Ensemble totalement ordonné (ou chaine) : un ensemble E est totalement ordonné si pour tout couple (x,y) d’éléments de E, x ≤ y ou y ≤ x • Notes : - un ensemble peut être doté de plusieurs relations d’ordre - toute relation d’ordre ≤ admet une relation duale ≥ - tout ensemble ordonné (E, ≤) admet un dual (E, ≥) • Exemples : - l’arborescence d’un système de fichiers est partiellement ordonnée - l’ordre lexicographique est un ordre total permettant de trier des chaînes de caractères Licence Informatique - Informatique théorique 2 2005/2006 3 Représentation des ensembles ordonnés (1/2) • Diagramme de Hasse : sur un ensemble E ordonné par ≤, pour tout couple d’éléments (x,y) tels que x ≤ y et ¬∃ z dans E tel que x ≤ z ≤ y (y domine x), on crée un arc fléché de x à y Représentation des ensembles ordonnés (2/2) • Dans le cas d’un ensemble totalement ordonné, par transitivité de la relation d’ordre, le diagramme devient une « chaine » {1,2,3} • Exemple : l’ensemble des parties de {1,2,3} ordonné par la relation d’inclusion. {1,2} {1} {1,3} u {2,3} y {2} {3} 2005/2006 t v x ∅ Licence Informatique - Informatique théorique 2 z Licence Informatique - Informatique théorique 2 Profondeur et hauteur 2005/2006 Extension linéaire • Soit E un ensemble ordonné. Considérons les sous-ensembles totalement ordonnés de E. • Extension : si un ensemble E est ordonné par <, tout ordre « sur E tel que x < y ==> x « y est appelé une extension de <. • Hauteur : la hauteur d’un élément x de E est le maximum, s’il existe, de la longueur des chaînes admettant x comme élément maximum • Extension linéaire : en particulier si « est un ordre total il est appelé une extension linéaire de <. • Profondeur : la profondeur d’un élément x de E est le maximum, s’il existe, des longueurs des chaînes admettant x comme élément minimum • Exemple : - la relation d’ordre aRb ssi a divise b ordonne N. La relation d’ordre usuelle sur N est une extension linéaire de la précédente. • • Note : - dans le cas des ensembles finis ou dénombrables, une extension linéaire « d'un ordre < permet d'énumérer les éléments selon l'ordre croissant (pour «), cette énumération étant compatible avec l'ordre d'origine <. Exemples : - dans N muni de la relation aRb ssi a divise b, les nombres premiers ont pour hauteur 1 - dans l’ensemble des parties de {1,2,3} muni de l’inclusion, la profondeur de {3} est 2 Licence Informatique - Informatique théorique 2 2005/2006 Linéarisation d’un ordre partiel • Tout ordre partiel peut être étendu à un ordre total. Il n'y a pas en général unicité de l'extension et l'une de ces extensions peut être obtenue à l'aide du tri topologique. • Algorithme du tri topologique : on l'applique au graphe sans boucle d'un ordre partiel. 1- on initialise une liste vide 2- on associe à chaque sommet son degré entrant 3- on choisit un sommet de degré entrant 0 – on l'ajoute à la liste – on le marque – on diminue de 1 le degré entrant de tous ses successeurs 4- on recommence en 3 jusqu'à épuisement des sommets non marqués • La liste obtenue est la linéarisation de l'ordre initial. On en déduit un ordre total compatible avec l'ordre partiel de départ. Un tri topologique d’un ensemble E est une numérotation des éléments de E, c’est-à-dire une injection de E dans N respectant l’ordre naturel sur N. Licence Informatique - Informatique théorique 2 2005/2006 Licence Informatique - Informatique théorique 2 2005/2006 Exemple de tri topologique [] [∅ ] {1,2,3} [∅ ,{1}] {1,3} [∅ ,{1},{2}] {2,3} {1,2} [∅ ,{1},{2},{3}] [∅ ,{1},{2},{3},{1,2}] {1} {2} {3} [∅ ,{1},{2},{3},{1,2},{1,3}] [∅ ,{1},{2},{3},{1,2},{1,3},{2,3}] ∅ [∅ ,{1},{2},{3},{1,2},{1,3},{2,3},{1,2,3}] Mais [∅ ,{1},{3},{1,3},{2},{1,2},{2,3},{1,2,3}] est aussi une extension linéaire de cet ordre partiel Licence Informatique - Informatique théorique 2 2005/2006 4 Eléments particuliers dans un ensemble ordonné (1/3) Eléments particuliers dans un ensemble ordonné (2/3) • Dans un ensemble E muni d’une relation d’ordre ≤ : – x est un minorant (resp. majorant) de y si x ≤ y (resp. y – x ∈ E est maximal (resp. minimal) s’il n’a pas d’autre majorant dans E (resp. minorant) que lui-même ≤ x) – x est la borne supérieure de E (notée sup(E)) s’il est le plus petit des majorants de E – x ∈ E est le maximum (ou universel) de E si ∀y ∈ E, y – x ∈ E est le minimum (ou élément nul) de E si ∀y ∈ E, x ≤ y – x est la borne inférieure de E (notée inf(E)) s’il est le plus grand des minorants de E • • Exemple : b est la borne sup de [a,b] sur (R, ≤) et aussi celle de [a,b[ • Note : un majorant ou minorant, et donc une borne supérieure ou inférieure n’existe par toujours ([0,+∞[ n’a pas de majorant) Licence Informatique - Informatique théorique 2 2005/2006 Notes : - un maximum ou un minimum n’existe pas toujours (N muni de la relation de divisibilité n’a pas de maximum) - un maximal ou un minimal n’existe pas toujours (l’intervalle réel [a,b[ n’a pas de maximal, mais il a un majorant) - dans le cas où un maximum (resp. minimum) existe, il est le seul élément maximal (resp. minimal) de E - dans le cas d’un ordre total, les notions de minimum (resp. maximum) et de minimal (resp. maximal) sont confondues • Différence entre maximum et maximal : – E, C et D sont maximaux mais pas maximums • Dans l'ensemble ordonné de la figure : – Le sous-ensemble {D,E,F} possède 4 majorants A, B, C, D et une borne inf D. D est maximal et maximum. E et F sont minimaux (mais pas minimums). – Le sous-ensemble {A,B,C,D} ne possède aucun majorant, 3 minorants E, D et F et une borne inf D. B et C sont maximaux mais non maximums et D est minimal et minimum. C D 2005/2006 Licence Informatique - Informatique théorique 2 Ensemble ordonné fini • • C B – Le sous-ensemble {D,E,F,G} ne possède ni majorant ni minorant E B 2005/2006 Exemples d'éléments remarquables A Licence Informatique - Informatique théorique 2 Exemples : - dans l’ensemble des sous-ensembles d’un ensemble E, E est le maximum et ∅ le minimum - dans N muni de la relation de divisibilité, 1 est minimum, il n’y a pas de maximum Licence Informatique - Informatique théorique 2 Eléments particuliers dans un ensemble ordonné (2/2) • Théorè me 3 : Soit A une partie finie non vide d’un ensemble ordonné (E,≤). Pour tout x de A, il existe dans A un minimal m et un maximal s tels que m ≤ x ≤ s. Preuve : par induction sur |A|. Vrai pour |A|=1. Supposons la propriété vraie pour |A|=n-1. Soit x de A tel que |A|=n et B=A\{y} où y≠x. B contient donc un maximal s et un minimal m tels que m ≤ x ≤ s. 3 cas se pr ésentent : s ≤ y : posons s’ = y et m ’ = m y ≤ m : posons s’ = s et m ’ = y – m ≤ y ≤ s : posons m ’ = m et s’ = s ≤x A H D G E F 2005/2006 Ordre bien fondé • Ordre bien fondé : un ordre sur un ensemble E est dit bien fondé (ou noethérien) si toute partie non vide de E admet un élément minimal. • Exemple : - une arborescence de fichiers muni de l’ordre « est sous-arbre de » est bien fondée – – • Dans les 3 cas, s ’ et m’ sont les maximal et minimal cherchés. • Théorème 4 : dans un ordre bien fondé, tout élément non maximal admet un dominant. Corollaire : Tout ensemble ordonn é fini admet un maximal et un minimal. En particulier, toute chaîne finie admet un maximum et un minimum. • Preuve : soit x un élément non maximal de (E,≤) bien fondé et F={y∈E, x ≤ y}. F n’ est pas vide puisque x n’ est pas maximal, donc F admet un minimal qui est clairement un dominant de x. Licence Informatique - Informatique théorique 2 2005/2006 Licence Informatique - Informatique théorique 2 2005/2006 5 Définition ensembliste des Treillis Bon ordre • Bon ordre : un bon ordre sur un ensemble E est un ordre tel que toute partie non vide de E admet un minimum. • Exemples : - (N,≤) est un ensemble bien ordonné mais pas (Z,≤) • Théorème 5 : un ordre est bon si et seulement s’il est bien fondé et total. • Preuve : la condition suffisante est évidente. Un bon ordre est clairement bien fondé. De plus, toute partie à 2 éléments admet un minimum, donc deux éléments quelconques sont comparables. • Treillis : Un treillis est un ensemble ordonné dans lequel toute paire d'éléments admet une borne supérieure et une borne inférieure, c’est-à-dire qu’étant donnés deux éléments x et y, l’ensemble des majorants communs à x et y n’est pas vide et admet un minimum noté x ∨ y et l’ensemble de leurs minorants communs n’est pas vide et admet un maximum noté x ∧ y. • Note : - on parle aussi de demi-treillis. Un inf-demi-treillis (resp. sup-demitreillis) est un ensemble ordonné où toute paire d’éléments admet une borne inférieure (resp. supérieure). - un treillis T admet un dual T’ tel que ∧ ≡ ∨’ et ∨ ≡ ∧’ • Exemples : - N muni de la relation divise (∧ = pgcd et ∨ = ppcm) - tout ensemble totalement ordonné - l’ensemble des parties d’un ensemble ordonné par l’inclusion (x ∨ y = x ∪ y et x ∧ y = x ∩ y) • Corollaire : dans un ensemble bien ordonné, tout élément non maximum admet un dominant unique. Licence Informatique - Informatique théorique 2 2005/2006 Licence Informatique - Informatique théorique 2 Treillis et diagramme de Hasse b Deux exemples de treillis e e d c c a a f d b Un contre-exemple de treillis f d e b c a 2005/2006 Partie finie d’un treillis • Théorème 6 : toute partie finie d’un treillis admet une borne inférieure et une borne supérieure. • Preuve : toute partie de cardinal 1 ou 2 vérifie la propriété. Supposons la propriété vraie pour toute partie de cardinal n-1 et soit P={x1, .. ,xn} une partie à n éléments. P\{xn} admet un inf a et un sup b. La partie {a,xn}, ayant deux éléments, admet un inf qui est celui de P et la partie {b,xn}, ayant deux éléments, admet un sup qui est celui de P. • Corollaire : tout treillis fini admet une borne inférieure et une borne supérieure Licence Informatique - Informatique théorique 2 2005/2006 Licence Informatique - Informatique théorique 2 Sous-treillis • Sous-treillis : une partie (P, ≤) d’un treillis (T, ≤) est un soustreillis de T si pour tout x et y de P, x ∧ y et x ∨ y sont dans P. Treillis E défini par son diagramme de Hasse e {a,b,c,d}, muni du même ordre, est un sous-treillis de E d b c a Licence Informatique - Informatique théorique 2 {a,b,c,e}, muni du même ordre, est un treillis mais pas un sous-treillis de E 2005/2006 2005/2006 Treillis complets (1/2) • Treillis complet : un treillis est dit complet lorsque toute partie non vide admet une borne supérieure et une borne inférieure. • Note : - si dans un treillis complet, il n’existe pas de minimum ou maximum, il est toujours possible de rajouter les inf et sup, qui sont notés ⊥ (bottom) et T (top) • Exemples : - tout treillis fini est complet - l’ensemble des parties d’un ensemble muni de l’inclusion est un treillis complet avec sup({Ei})=Ui Ei et inf({Ei})=∩i Ei - (N,≤) est un inf-demi-treillis complet mais pas un treillis complet Licence Informatique - Informatique théorique 2 2005/2006 6 Treillis complets (2/2) • Théorème 7 : tout treillis sans chaîne infinie est complet. • Preuve : soit A une partie non vide d’un treillis T sans chaine infinie. Soit x0 un élément de A. Si x0 est un minorant de A, c’est le minimum et x0=inf(A). Sinon, il existe un élément x1 de A tel que ¬(x0≤ x1) et donc (x1 ∧ x0) ≤ x0. Si x1 ∧ x0 est un minorant de A, alors x1 ∧ x0 = inf(A) car pour tout minorant m de A, m≤x0 et m≤x1 donc m ≤ x1 ∧ x0. Sinon il existe un élément x2 de A tel que (x2 ∧ x1 ∧ x0) ≤ (x1 ∧ x0) ≤ x0. Puisque le treillis ne contient pas de chaine infinie, le processus s’arrête au bout d’un temps fini et conduit à inf(A). De même pour sup(A). Licence Informatique - Informatique théorique 2 2005/2006 Morphismes d’ordre (1/2) • Morphisme d’ordre : soient (E1,≤1) et (E2,≤2) deux treillis. Une fonction f : E 1→E2 est un morphisme d’ordre si pour tout x et y de E 1, x ≤1 y => f(x) ≤2 f(y). Un morphisme est donc une fonction qui respecte l'ordre. Un morphisme d’ordre est aussi appelé fonction croissante. • Note : - une fonction décroissante est définie par x ≤ 1 y => f(y) ≤2 f(x) - on utilise parfois le terme d’homomorphisme à la place de morphisme • Exemples : – l'application note de {Albert, Bertrand, Caroline, Hervé}, ordonné par l'ordre lexicographique dans {11,12,13}, ordonné par l'ordre naturel des entiers et définie par note(Albert) = 11, note(Bertrand) = 13, note(Caroline) = 12 et note(Hervé) = 13 n'est pas un morphisme d'ordre Licence Informatique - Informatique théorique 2 Morphismes d’ordre (2/2) – l'application taille définie entre les ensembles {Albert, Bertrand, Caroline, Hervé}, ordonné par l'ordre lexicographique dans {160,167,182,190}, ordonné par l'ordre naturel des entiers et définie par taille(Albert) = 160, taille(Bertrand) = 167, taille(Caroline) = 182 et taille(Hervé) = 190 est un morphisme d'ordre • Isomorphisme : un isomorphisme est un morphisme bijectif. Dans ce cas, on a ∀x,y de E 1, x ≤1 y <=> f(x) ≤2 f(y) • Endomorphisme : un endomorphisme est un morphisme d’un ensemble dans lui-même 2005/2006 Morphismes de treillis • Morphisme de treillis : soient (E 1,≤1) et (E2,≤2) deux treillis. Une fonction f : E 1→E2 est un morphisme de treillis si pour tout x et y de E1, f(x) ∧ f(y)=f(x ∧ y) et f(x) ∨ f(y)=f(x ∨ y). Un morphisme qui respecte ∨ est un ∨-morphisme, et un morphisme qui respecte ∧ est un ∧-morphisme. Un morphisme est à la fois ∨morphisme et ∧-morphisme. • Théorème 8 : tout morphisme de treillis est un morphisme d’ordre • Preuve : si x ≤1 y, x ∧ y = x et f(x) = f(x) ∧ f(y) donc f(x) ≤2 f(y) • Note : - un morphisme d’ordre n’est pas forcément un morphisme de treillis • Automorphisme : un automorphisme est un endomorphisme bijectif • Exemple : - Id : (N,div) → (N,≤ ). 4 ∨ 6 = 12 dans (N,div) et 4 ∨ 6 = 6 dans (N, ≤) donc Id(4 ∨ 6) = 12 ≠ Id(4) ∨ Id(6) = 6. Licence Informatique - Informatique théorique 2 Licence Informatique - Informatique théorique 2 2005/2006 2005/2006 Isomorphismes Point fixe (1/2) • Théorème 9 : soient deux ensembles ordonnés (E1,≤) et (E2,≤2) isomorphes (d’ordre). Si l’un est un treillis, l’autre aussi, et ils sont isomorphes (de treillis). • Point fixe : une fonction f : E→E admet un point fixe x si f(x) = x. • Preuve : soit f la bijection d’ordre de E1 dans E2. Supposons que E 1 soit un treillis, donc x ∧ y existe. f(x ∧ y) est un minorant de {f(x),f(y)} car x ∧ y ≤1 x => f(x ∧ y) ≤2 f(x) et x ∧ y ≤1 y => f(x ∧ y) ≤2 f(y). Montrons que c’est le plus grand minorant. Soit m un minorant de {f(x),f(y)}. Puisque f est un isomorphisme (d’ordre), il existe z dans E1 tel que m = f(z) avec z ≤1 x et z ≤1 y. Donc z ≤1 (x ∧ y) et donc m = f(z) ≤2 f(x ∧ y). Par dualité, on montre aussi que f est un ∨-morphisme. Et par bijection, on montre la propriété si E2 est un treillis. Licence Informatique - Informatique théorique 2 2005/2006 • Rôle des points fixes en programmation : public int fact(int n){ if(n == 0) return 1; else return n*fact(n-1); } • Soit le programme suivant : • Posons f la fonction qui à un programme P associe le programme suivant travaillant sur un entier n donné en entrée • if(n == 0) return 1; else return n*P(n-1); La fonction fact définie précédemment est le point fixe de la fonction f. Licence Informatique - Informatique théorique 2 2005/2006 7 Point fixe (2/2) • La notion de point fixe apparait également dans les boucles qui peuvent être décrites comme des récursions. • Exemple : la boucle while(cond) inst; de la fonction récursive suivante peut être écrite sous forme public void boucle(){ if(cond){ inst; boucle(); } } Licence Informatique - Informatique théorique 2 2005/2006 Théorème de point fixe • Théorème (Knaster-Tarski, 1942) : toute fonction croissante d’un treillis complet dans lui-même admet un plus petit et un plus grand point fixe (c’est-à-dire que l’ensemble des points fixes admet un inf et un sup) • Preuve : soit f une fonction croissante d’un treillis complet (T,≤) dans lui-même. Posons F={x∈T, f(x) ≤ x}. F est non vide car sup(T) existe et sup(T) ∈ F (au besoin on le rajoute). Donc F admet une borne inférieure a = inf(F). f étant croissante, ∀ x ∈ F, a ≤ x => f(a) ≤ f(x) ≤ x. Donc f(a) est un minorant de F et f(a) ≤ a. Donc a ∈ F et est le minimum de F. Ainsi, si a est un point fixe de f, ce sera le plus petit, car tout point fixe de f est dans F. Or f(a) ≤ a => f(f(a)) ≤ f(a), donc f(a) ∈ F, d’où a ≤ f(a). Licence Informatique - Informatique théorique 2 2005/2006 Point fixe et informatique • La notion de point fixe et le théorème de point fixe sont utilisés largement en informatique – base de données : mise à jour des données – analyse de programme et compilation : transformation des boucles et récursions en points fixes, contrôle de terminaison – contrôle de systèmes : stabilité, vérification de système – ... Licence Informatique - Informatique théorique 2 2005/2006 8