théorie des ensembles et sgbd-r -...

50
IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 1/50 Théorie des ensembles et SGBD-R Bertrand LIAUDET SOMMAIRE SOMMAIRE 1 ENSEMBLES ET RELATION ENTRE LES ENSEMBLES 4 A - Théorie 4 1 – Notions sur les ensembles 4 Définition d’un ensemble 4 Notation 4 Représentation graphique 4 Appartenance d’un objet à un ensemble 5 Ensemble vide 5 Singleton 5 Doublon 5 Cardinal 5 Définition en extension 5 Définition en semi-extension pour les ensembles ordonnés : avec « … » : 5 Définition en compréhension 6 Histoire de la théorie des ensembles 6 Utilité de la théorie des ensembles 6 2 – Relations entre ensembles 8 1 : Inclusion : sous-ensemble, partie, ensemble des partie, U 8 2 : Intersection 10 3 : Union 11 4 : Partition 12 5 : Différence 13 6 : Complémentaire 14 B - Applications 15 1 – Théorie des ensembles et arithmétique (science des nombres) 15 Ensemble des entiers : N 15 Ensemble des entiers relatifs : Z 15 Ensemble des nombres décimaux : D 15 Ensemble des nombres rationnels : Q 15 Ensemble des nombres réels : R 15 Bilan 15 2 – Abstrait, concret – concept, genre, espèce - héritage, spécialisation 16

Upload: lediep

Post on 12-Sep-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 1/50

Théorie des ensembles et SGBD-R

Bertrand LIAUDET

SOMMAIRE

SOMMAIRE 1

ENSEMBLES ET RELATION ENTRE LES ENSEMBLES 4A - Théorie 4

1 – Notions sur les ensembles 4Définition d’un ensemble 4Notation 4Représentation graphique 4Appartenance d’un objet à un ensemble 5Ensemble vide 5Singleton 5Doublon 5Cardinal 5Définition en extension 5Définition en semi-extension pour les ensembles ordonnés : avec « … » : 5Définition en compréhension 6Histoire de la théorie des ensembles 6Utilité de la théorie des ensembles 6

2 – Relations entre ensembles 81 : Inclusion : sous-ensemble, partie, ensemble des partie, U 82 : Intersection 103 : Union 114 : Partition 125 : Différence 136 : Complémentaire 14

B - Applications 151 – Théorie des ensembles et arithmétique (science des nombres) 15

Ensemble des entiers : N 15Ensemble des entiers relatifs : Z 15Ensemble des nombres décimaux : D 15Ensemble des nombres rationnels : Q 15Ensemble des nombres réels : R 15Bilan 15

2 – Abstrait, concret – concept, genre, espèce - héritage, spécialisation 16

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 2/50

1 : Ensemble abstrait – Object concret 162 : Notion de concept 163 : Espèce et genre : héritage – est un 174 : Comprendre : un mixte d’abstraction et de concrétisation 18Exercices – définition – extension – compréhension – relations entre ensemble 20Exercices – série 2 21

3 – Logique et diagrammes de Venn et Euler 23Présentation 23Représentation ensemblistes des fonctions logiques 23Exercices – logique et diagramme de Venn 24

4 – Cardinalité et diagrammes de Venn 25Présentation 25Exemple 25Méthode 25Exercices – Cardinalités et diagramme de Venn 27

5 – Syllogisme : diagrammes de Venn et Euler avec ajouts contemporains 28Présentation 28Les différentes propositions 29Les 4 premiers syllogismes classiques 31Exercices – série 1 – Syllogismes et diagrammes de Venn 32Exercices – série 2 32

ENSEMBLES ET RELATIONS ENTRE LES ELEMENTS 33A - Théorie 33

1 – Notion de tuple 33Définition d’un couple 33Différences entre un couple et un ensemble 33Notion de tuple 34Concaténation de 2 tuples 34Applications en informatique 34

2 – Produit cartésien 35Produit cartésien de deux ensembles 35

3 – Relations entre les objets de 2 ensembles 36Relation binaire 36Schéma sagittal 36Sens de la relation 36Notion de cardinalité 36Relation et produit cartésien 37Tableau d’objets à deux colonnes 37Tableaux de listes 37

4 – Propriétés des relations entre 2 ensembles : de l’application à la bijection 38Application 38Injection 40Surjection 41Bijection 42

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 3/50

B - Applications 431 - Modélisation de BD et de diagramme de classes – MEA et UML 43

Présentation 43Exemple 43Exercices – Modélisation ensembliste 46

2 - Langage SQL des bases de données relationnelles 47Présentation 47Jointure 47Relations ensemblistes 49Jointure externe 49Exercices – SQL et théorie des ensemble 50

Dernière édition : septembre 2017

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 4/50

ENSEMBLES ET RELATION ENTRE LES ENSEMBLES

A - Théorie

1 – Notions sur les ensembles

Définition d’un ensemble NousappelonsensembletouteréunionEd’objetsdenotreconception,déterminésetbiendistincts,quenousnommonsélémentsdeE.Unensembleestunecollectiond’objetsqu’onappelleéléments.Unensembleestunemultitudequipeutêtrecomprisecommeuntout.

Ø Exemples L’ensembledeschatsnoirs,desentiersnaturels,desélèves,destripletsd’entiers(a,b,c)telquea2+b2=c2,etc.Lesobjetsdel’ensemblesontceuxqu’ondécidedemettrededans.

Notation Lesensemblessontnotésenmajuscule:ELesobjetssontnotésenminuscule:x,y,z,etc.Un ensemble se représente ainsi : E = {e1 ; e2 ; e3} ou E = {e1 , e2, e3} L’appartenance d’un objet à un ensemble s’écrit : e1 ∈ E, La non appartenance d’un objet à une ensemble s’écrit : e4 ∉ E

Représentation graphique Un ensemble se représente graphiquement avec une ellipse ou sous la forme d’un tableau et on peut mettre ses éléments dedans. C’est pratique.

Ø A l’horizontal

F

Ellipse Tableau

x1 x2 x3 x4

F

x1 x2 x3 x4

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 5/50

Ø A la verticale F F

Appartenance d’un objet à un ensemble x1 ∈ F, x5 ∉ F

Ensemble vide L’ensemble vide se note ∅

Singleton Un singleton est un ensemble constitué d’un seul élément.

Doublon Dans un ensemble, il n’y a pas de doublons : Si E1 = {e1, e2, e3} et E2 = {e1, e1, e2, e3} alors, E1 = E2

Cardinal Le cardinal d’un ensemble, c’est son nombre d’éléments. On le note : card(E) = 3 card( ∅ ) = 0 Le cardinal d’un ensemble infini se note : ∞. Par exemple : card( N ) = ∞

Définition en extension Définir un ensemble en extension, c’est donner la liste de tous ses éléments.

Ø Exemples : E1 = {e1, e2, e3} e1 ∈ E1 E2={4, 8, 16, 32} 2 ∉ E2

Définition en semi-extension pour les ensembles ordonnés : avec « … » : N = {0, 1, 2, 3, …} : c’est la série de entiers allant à l’∞ de 1 en 1. Z = {… , -3, -2, -1, 0, 1, 2, 3, …}. C’est la série des entiers allant de -∞ à +∞ de 1 en 1. L’ensemble des nombres pairs : {0, 2, 4, 6, …} C’est la série des entiers pairs allant à l’infini (de 2 en 2). L’ensemble des nombres pais inférieurs ou égaux à 100 : {0, 2, 4, …, 96, 98, 100}

x1 x2 x3 x4

x1 x2 x3 x4

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 6/50

Définition en compréhension Définir un ensemble en compréhension (on dit aussi en intension, avec un « s »), c’est caractériser ses éléments par une définition en français ou avec une formulation mathématique.

Ø Exemple E = l’ensemble des entiers multiples de 3. C’est une définition en compréhension en français. E = {3k / k ∈ N }. C’est une définition mathématique en compréhension. On la lit ainsi : E égale l’ensemble des 3 fois k tel que k appartient à N (donc 3x0, 3x1, 3x2, etc.) On peut aussi écrire : E = {x / x ∈ N et x%3 = 0 }. On la lit ainsi : E égale l’ensemble des x tel que x appartient à N et x modulo 3 = 0. On ne peut pas le définir en extension car le cardinal est infini. On peut le définir en semi-extension : E = {0, 3, 6, 9 … }

Histoire de la théorie des ensembles

Ø Fin XIXè, Cantor (1845-1918) Cantor est un mathématicien allemand. Il a créé la théorie des ensembles. Cette théorie est considérée comme une théorie fondamentale des mathématiques (au sens de : elle permet de fonder les mathématiques). C’est une théorie dont les bases sont simples et intuitives. Plusieurs axiomatiques ont ensuite été développées : la plus connue étant celle des axiomes de ZF (Zermelo et Frankel). Notons aussi la théorie des classes de Neumann ou la théorie des types de Russell. La théorie des ensembles est à la base de ce qu’on a appelé dans les années 60 et 70 les « maths modernes ». En France, on a pensé pouvoir baser l’enseignement des mathématiques dès le plus jeune âge à partir de cette théorie. Mais le grand public a rejeté cette approche…

Ø Plusieurs infinis… Cantor pose l’existence de 2 infinis… et même d’une infinité d’infinis… Ces infinis sont appelés « Aleph ». Le plus petit des infinis est appelé Aleph-zéro : aleph0 Cantor pose que card(N) = aleph0. Il appellecetinfini«dénombrable».

Ø Relation entre les infinis : la folie est proche ! Cantorposecettehypothèse:C’estl’hypothèseducontinu.L’histoireracontequ’ilseraitdevenufouàforced’essayerdeladémontrer…Desmathématiciens-logiciensdémontrerontplustardquel’hypothèseducontinuestindémontrable…

Utilité de la théorie des ensembles Pour les mathématiciens, la théorie des ensembles permet de « fonder » les mathématiques à partir de ses primitives, c’est-à-dire les notions d’ensembles de d’appartenance.

aleph0 card(R)= 2

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 7/50

Fonder veut dire qu’elle permet de construire tous les objets usuels des mathématiques par déduction logique. C’est le cas par exemple des nombres, des fonctions, des relations, des déductions, etc. Hilbert, un des plus grands mathématiciens de la fin du 19ème et du 20ème siècle, allemand, qualifiera cette théorie de « paradis ». Pour le commun des mortels, à partir de notions intuitives simples (ensemble et appartenance), la théorie des ensembles permet de reconstruire les objets usuels des mathématiques et ainsi de pouvoir les comprendre intuitivement. Pour les informaticiens, c’est un outil intuitif qui permet de comprendre plus intuitivement (parfois ! J ) certaines notions :

• la modélisation des données pour les bases de données et programmation objet : MEA et UML

• le calcul relationnel pour les bases de données : produit cartésien et jointure • les notions d’héritage et d’abstraction en programmation objet, • la déduction en intelligence artificielle.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 8/50

2 – Relations entre ensembles

1 : Inclusion : sous-ensemble, partie, ensemble des partie, U

Ø Définition générale E est inclus dans F si si tout élément de E est aussi un élément de F. On dit aussi que E est un sous-ensemble ou une partie de F. On le note E ⊂ F

Ø Définition avec des éléments

E ⊂ F ó∀x ( x ∈ E => x ∈ F ) Dire E inclus dans F est équivalent à dire que pour tout x, si x appartient à E alors x appartient à F.

E= {x2, x3} F= {x1, x2, x3, x4}

Ø Propriétés : P1 : par définition, ∅ ⊂ E et E ⊂ E P2 : E ⊂ F et F ⊂ E ó E = F P3 : E ⊂ F et F ⊂ G => E ⊂ G (transitivité de l’inclusion)

Ø Ensemble des parties L’ensemble des parties de E, c’est l’ensemble des sous-ensembles de E. Il se note : Ρ(E) Avec E = {a, b}, P(E) = { ∅ , {a} , {b} , {a, b} } Si card(E) = n , card(P(E)) = 2n

E F

E F

G

E F

x1 x2 x3 x4

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 9/50

Ø U : univers On appelle U pour « univers » l’ensemble contenant la totalité des éléments du même type, de la même sorte que ceux des ensembles dont on traite. On représente U par un rectangle. Par définition, tous les ensembles dont on traite sont inclus dans U.

E F

U

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 10/50

2 : Intersection

Ø Définition générale L'intersection de deux ensembles E et F est l'ensemble des éléments qui sont communs à E et F. On le note E ∩ F E E ∩ F F

Ø Définition avec des éléments E ∩ F = { x / x ∈ E et x ∈ F } E inter F est égale à l’ensemble des x tels que x appartient à E et x appartient à F E E ∩ F F

Ø Ensembles disjoints E et F sont disjoints ó E ∩ F = ∅

E ∩ F = ∅ ó∀x ( x ∈ E => x ∉ F ) Dire E inter F égale vide est équivalent à dire que pour tout x, si x appartient à E alors x n’appartient pas à F. E F

Ø Propriétés Idempotence : E ∩ E = E Commutativité : E ∩ F = F ∩ E Associativité : ( E ∩ F ) ∩ G = E ∩ ( F ∩ G )

E ∩ F = ∅

x1 x2 x3 x4 x5 x6 E ∩ F = { x3, x4 }

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 11/50

3 : Union

Ø Définition générale L’union de deux ensembles E et F est l'ensemble constitués des éléments de E et de ceux de F. On le note E ∪ F E F

Ø Définition avec des éléments

E ∪ F = { x / x ∈ E ou x ∈ F ) E union F est égale à l’ensemble des x tel que x appartient à E ou x appartient à F E F E ∪ F = { x1, x2, x3, x4, x5, x6 }

Ø Propriétés Idempotence : E ∪ E = E Commutativité : E ∪ F = F ∪ E Associativité : ( E ∪ F ) ∪ G = E ∪ ( F ∪ G )

Ø Propriétés associant ∩ et ∪ Loi d’absorption : E ∩ ( E ∪ F ) = E Loi d’absorption : E ∪ ( E ∩ F ) = E Distributivité : E ∩ ( F ∪ G ) = ( E ∩ F ) ∪ ( E ∩ G ) Distributivité : E ∪ ( F ∩ G ) = ( E ∪ F ) ∩ ( E ∪ G ) Card ( E ∪ F ) = Card ( E ) + Card ( F ) - Card ( E ∩ F ) E ∩ F = ∅ => Card ( E ∪ F ) = Card ( E ) + Card ( F )

Ø Exercices – relations entre ensemble et graphisme Démontrez graphiquement les propriétés ci-dessus.

<---------------- E ∪ F ----------------->

<---------------- E ∪ F ----------------->

x1 x2 x3 x4 x5 x6

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 12/50

4 : Partition

Ø Définition générale Une partition de E est un ensemble de sous-ensembles E qui sont disjoints 2 à 2 et dont la réunion vaut E.

– Représentation classique :

– Autre représentation : On précise que le reste de l’ensemble E est vide :

Ø Définition mathématique Si E = {A ∪ B ∪ C, A ∩ B = ∅, A ∩ C = ∅, B ∩ C = ∅ } Alors A, B et C forment une partition de E.

Ø Exemple L’ensemble des entier pairs et l’ensemble des entiers impairs forment une partition de N

Ø Propriété Si A1, A2, …, Ap est une partition de E alors card (E) = card (A1) + card(A2) + … + card(Ap)

A B C

E

A B C

E

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 13/50

5 : Différence

Ø Définition générale La différence de deux ensembles E et F est l'ensemble des éléments qui se trouvent uniquement dans E. On le note E - F E E - F F

Ø Définition avec des éléments E - F = { x / x ∈ E et x ∉ F } E moins F est égale à l’ensemble des x tels que x appartient à E et x n’appartient pas à F E F E - F = { x1, x2 }

<- E - F -->

x1 x2 x3 x4 x5 x6

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 14/50

6 : Complémentaire

Ø Définition générale Si E est inclus dans F, le complémentaire de E dans F est l’ensemble des éléments de F qui ne sont pas élément de E. On le note CFE = �EF On peut aussi le noter�E . L’ensemble incluant est alors celui par défaut ou U.

Ø Définition avec des éléments CFE = �E = { x / x ∈ F et x ∉ E } Le complémentaire de E dans F est égale à l’ensemble des x tels que x appartient à F et x n’appartient pas à E

CFE = �EF = {x1, x2, x5, x6}

Ø Propriétés E = E E ∩�E = ∅ E ∪�E = U Loi de Morgan : E ∪ F = E ∩ F Loi de Morgan : E ∩ F = E ∪ F E – E – F = ( E - F ) ∪ ( E - G ) = E – ( F ∩ G )

Ø Exercices – relations entre ensembles et graphisme Démontrez graphiquement les propriétés ci-dessus.

E F

<---- CFE ----> <---- CFE ---->

E F

x1 x2 x3 x4 x5 x6

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 15/50

B - Applications

1 – Théorie des ensembles et arithmétique (science des nombres)

Ensemble des entiers : N N = {0, 1, 2, …} Ensemble des nombres ordonnés partant de 0 telle qu’on ajoute 1 au suivant jusqu’à l’infini (+∞ en l’occurrence). 7 ∈ N -7 ∉ N 7, 5 ∉ N 1/3 ∉ N PI ∉ N

Ensemble des entiers relatifs : Z Z = {…, -2, -1, 0, 1, 2. … } Z = N ∪ Ensemble des nombres ordonnés partant de 0 telle qu’on retire 1 au suivant jusqu’à l’infini ( -∞ en l’occurrence) N ⊂ Z 7 ∈ Z -7 ∈ Z 7, 5 ∉ Z 1/3 ∉ Z PI ∉ Z

Ensemble des nombres décimaux : D D = Z ∪ Ensemble des nombres avec un nombre fini de chiffres derrière la virgule. Z ⊂ D 7 ∈ D -7 ∈ D 7, 5 ∈ D 1/3 ∉ D PI ∉ D

Ensemble des nombres rationnels : Q Q = D ∪ Ensemble des nombres qui s’expriment sous la forme d’un quotient de 2 nombres décimaux. D ⊂ Q 7 ∈ Q -7 ∈ Q 7, 5 ∈ Q 1,1 / 3,3 ∈ Q 1/3 ∈ Q PI ∉ Q √2 ∉ Q

Ensemble des nombres réels : R R = Q ∪ Ensemble des nombres avec un nombre fini ou infini de chiffres derrière la virgule. Q ⊂ R 7 ∈ R -7 ∈ R 7, 5 ∈ R 1/3 ∈ R PI ∈ R √2 ∈ R

Bilan N ⊂ Z ⊂ D ⊂ Q ⊂ R

7 -7 7, 5 1/3 PI

N Z D Q R

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 16/50

2 – Abstrait, concret – concept, genre, espèce - héritage, spécialisation

1 : Ensemble abstrait – Object concret

Ø Présentation UnensembleestdéfiniecommeréunionEd’objetsdenotreconception.Pardéfinition,c’estdoncuneabstraction.Lesobjetssonconcrets.L’ensemblequilescontientestabstrait,estuneabstraction.

Ø Exemple L’ensemble des chats, qu’on peut représenter aussi comme un tableau de chats, est uneabstraction.Lesélémentsdel’ensemble,icifélix,tom,etgrosminet,sontdesobjetsconcrets. Chats Chats

2 : Notion de concept Un ensemble définit un concept, c’est-à-dire la définition d’un objet en général. Les éléments de l’ensemble sont les objets qui « tombent sous le concept », c’est-à-dire correspondent au concept. C : ensemble des chats. Il correspond au concept de chat. On peut aussi dire à la collection de « Les Chats » au pluriel. c1, c2, tom, félix sont des chats. Ce sont des objets de l’ensemble des chats qui tombent sous le concept de Chat. On écrit : C = {c1, c2, tom, félix } et aussi : c1, félix ∈ C On peut aussi écrire : Cc1, Cfélix, pour dire que c1 et félix « tombent sous le concept C », autrement dit que c1 « est un » C.

félix tom gros minet

félix tom gros minet

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 17/50

3 : Espèce et genre : héritage – est un

Ø Présentation La relation d’inclusion peut être interprétée comme une relation d’espèce à genre. E ⊂ G

E est l’espèce, G est le genre

C’est une relation « est un » : ∀x ( x ∈ E => x est un G ) Pour tout x, si x appartient à E alors x est un G.

Ø Exemple 1 Chats ⊂ Animaux

Félix est un chat. Les chats sont des animaux. Les chats forment une espèce d’animal. Animal est un genre de chat. Attention, le mot « genre » a ici son sens « logique » et pas son sens commun (on dirait pluôt qu’un chat est un genre d’animal comme on dirait que c’est une sorte d’animal).

Ø Exemple 2 Chats, Chiens ⊂ Animaux Les chats et les chiens sont des espèces d’animaux. Chats et chiens sont du genre animal.

E G

Chats Animaux

félix tom gros minet

Chats Chiens

Animaux

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 18/50

Ø Héritage La relation d’espèce à genre est une relation d’héritage : l’espèce hérite des caractéristiques du genre. Chats, Chiens ⊂ Animaux : Chats hérite de Animaux, Chiens hérite de Animaux On représente l’héritage avec une flèche à triangle : Chats Animaux Vivants

4 : Comprendre : un mixte d’abstraction et de concrétisation

Ø Définir : un genre et une différence Pour définir quelque chose, il faut trouver un genre d’appartenance et une caractéristique particulière qui permet de distinguer une partie dans le genre (on appelle cela une distinction). Par exemple : un chat c’est un animal qui fait « miaou ». Genre : animal. Distinction : « miaou », son cri.

Ø Abstraire, abstraction, généralisation Généraliser : c’est trouver un genre, c’est-à-dire un ensemble incluant ce dont on parle. Généraliser = abstraire Une généralisation : c’est une « montée en genre ». Généralisation = abstraction Plus c’est général, plus c’est abstrait et plus le cardinal de l’ensemble est élevé. Abstraction => Cardinal : il y a plus d’objets dans l’ensemble des animaux que dans l’ensemble des chats. Abstraction => Caractéristiques : il y a moins de caractéristiques dans l’ensemble des animaux que dans l’ensemble de chats. En effet, les chats ont toutes les caractéristiques des animaux plus celles des chats en particulier.

Chats Chiens

Animaux

Relation d’héritage

Animaux

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 19/50

Ø Spécialisation, concrétisation, concret Spécialiser : c’est trouver une espèce, c’est-à-dire un sous-ensemble de ce dont on parle. Une spécialisation : c’est une « descente dans les espèces ». Spécialisation => Cardinal : Plus c’est spécialisé et moins il y a d’éléments dans l’ensemble. Etre plus concret c’est être plus spécialisé. La situation la plus concrète correspond aux éléments directement, indépendamment des ensembles qui peuvent les contenir. Spécialisation => Caractéristiques : il y a plus de caractéristiques dans l’ensemble des chats que dans l’ensemble des animaux. En effet, les chats ont toutes les caractéristiques des animaux plus celles des chats en particulier.

Ø Comprendre Un ensemble correspond à un concept. Pour comprendre le concept, le faut le définir (trouver un genre et une différence) et être capable de donner un exemple concret c’est-à-dire un élément de l’ensemble. L’exemple ne suffit pas à savoir de quoi on parle : « une intuition sans concept est aveugle » (ici intuition veut dire objet concret qu’on peut voir ou toucher). Le concept ne suffit pas non plus à savoir de quoi on parle : « un concept sans intuition est creux ». Par exemple, quand je définis le chat comme étant un animal qui fait miaou, si je n’en ai jamais vu, ça ne m’éclaire pas vraiment sur ce qu’est un chat ! Je peux même m’en faire une idée tout à fait fausse.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 20/50

Exercices – définition – extension – compréhension – relations entre ensemble

Ø 1 Soit E l’ensemble des entiers multiples de 3 plus petit que 40. Donnez une définition de E en extension. Donnez une définition mathématique de E en compréhension. Quel est le cardinal de E ?

Ø 2 Définir en compréhension E = {10, 15, 20, …, 440, 445, 450 } Donnez une définition mathématique de E en compréhension (proposez 2 versions). Donnez une définition en français de E. Quel est le cardinal de E ?

Ø 3 A est l’ensemble des employés de l’entreprise. Ils ont tous un numéro d’employé, différent pour chacun d’eux, un nom et un salaire et une date d’embauche Définir en compréhension B l’ensemble des employés dont le salaire est supérieur à 2000. Définir en compréhension C l’ensemble des employés dont le salaire est supérieur à 1500 et qui ont été embauché en 2016. Faites un schéma de ces trois ensembles et de leurs relations.

Ø 4 Soit E={1 ; 2 ; … ; 6, 7}, A = {1 ; 3 ; 5 ; 7} B = {2 ; 4 ; 6} et C={1 ;3 ; 6}

– Dessiner les 4 ensembles et leurs relations

– Déterminer graphiquement et en extension : A ∩ B, A ∩ C, B ∩ C A ∪ B, A ∪ C, B ∪ C

– Déterminer �A , �B , �C

Ø 5 Soit un ensemble de personnes P = {p1, p2, …, p9, p10} p1, p3, p5, p6 et p7 sont adhérents à la bibliothèque de la ville. p1, p2, p3, p7, p10 travaillent à la bibliothèque de la ville.

– Quels sont les ensembles dont on parle ?

– Représentez graphiquement les ensembles et leurs éléments

– Quelles relations existe-t-il entre ces ensembles ?

– Y a-t-il une ou plusieurs relations d’héritage, si oui, lesquelles

Ø 6

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 21/50

Construire les relations d’espèces à genre des concepts suivants : hêtre, homme, diamant, substance immatérielle, feuille, daim, minéral, arbre, substance, végétal, animal, athée, marxiste, argile, substance matérielle

Ø 7 Construire les relations d’espèces à genre des concepts suivants : polygone, carré, triangle équilatéral (3 côtés de longueurs identiques), parallélogramme, triangle isocèle (2 côtés de longueurs identiques), quadrilatère, figure plane, losange, triangle, figure, rectangle, triangle scalène (3 côtés de longueurs différentes), trapèze

Exercices – série 2

Ø 1 Soit E l’ensemble des entiers impairs entre 11 à 20. Donnez une définition de E en extension. Donnez une définition mathématique de E en compréhension. Quel est le cardinal de E ?

Ø 2 E = {1 ; 2 ; 4 ; 8 ; 16 ; 32 ; 64 ; 128 ; 256} Définir en compréhension l’ensemble A Donnez une définition mathématique de E en compréhension (proposez 2 versions). Donnez une définition en français de E.

Ø 3 Définir en extension A l’ensemble des multiples de 7 compris entre 100 et 500. Définir en compréhension l’ensemble A Quel est le cardinal de A ?

Ø 4 A = {-3 ;-2 ; -1 ; 0 ; 1 ; 2 ; 3} Définir en compréhension B, ensemble des carrés des éléments de A. Quel est le cardinal de B ?

Ø 5 A = ensemble des valeurs affichées par l’algo 1 Définir A en extension Algo 1 =

Pour i de 1 à 4 Pour j de 0 à 2 Afficher 5i+j

Ø 6 A = ensemble des couples affichés par l’algo 2 Définir A en extension

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 22/50

Algo 2 = Pour i de 1 à 4 Pour j de i à 4 Afficher ‘(‘+ i +’,’+ j +‘)’

Ø 7 Soit E={ 1 ; 4 ; 5 ; 6 ; 8 ; 9 }, B = {2 ; 3 ; 4 ; 5 ; 9} C = {1 ; 2 ; 4 ; 7 ; 10}

– Dessiner les 3 ensembles et leurs relations.

– Déterminer graphiquement et en extension : B ∪ C puis A ∩ (B ∪ C )

– Déterminer graphiquement et en extension : A ∩ B, A ∩ C puis (A ∩ B) ∪ (A ∩ C) Que constatez-vous ?

Ø 8 Soit E = {1 ; 2 ; 3 ; 4 } Déterminer P(E), l’ensemble de toutes les parties de E.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 23/50

3 – Logique et diagrammes de Venn et Euler

Présentation Euler, mathématicien suisse du 18ème siècle (1707-1783) et Venn, mathématicien anglais du 19ème siècle (1834-1923), utilisent des représentations schématiques d’ensembles pour traiter certains problèmes mathématiques et logiques.

Représentation ensemblistes des fonctions logiques Les fonctions logiques peuvent se représenter de façon ensembliste. Une proposition (phrase qui est vraie ou fausse) est notée « p » en logique. On la note comme un ensemble : A. A non A = A A et B = A ∩ B A ou B = A ∪ B A et nonB = A - B A ou-exclusif B = (A ∪ B) – (A ∩ B)

A

A U

U

A U

B

A U

B

A U

B

A U

B

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 24/50

Exercices – logique et diagramme de Venn 1) Sachant que p => q ó non(p) ou q traduire la formule « je pense donc je suis » en diagramme

de Venn. Dire quel est l’espace concerné. Interpréter la signification d’un élément dans chaque partie de l’espace concerné.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 25/50

4 – Cardinalité et diagrammes de Venn

Présentation John Venn, mathématicien anglais du 19ème siècle, utilise les relations ensemblistes pour résoudre des petits problèmes de cardinalités.

Exemple 200 élèves participent à une journée de sport. 3 sports sont au programme : le foot, la natation et la course à pieds. Chaque élève peut participer à 1, 2 ou 3 sports. Avec les indices ci-dessous, dire combien d’élèves participent à un sport et un seul et lequel, à 2 sports et lesquels, à trois sports. Ø 10 élèves sont blessés et ne participent pas Ø 18 participent au 3 sports Ø 103 ne font que 2 sports Ø 79 font du foot et de la natation Ø 19 ne font que le la course Ø 129 font de la natation dont 40 que de ça .

Méthode

Ø 1 : On commence par représenter les choses sous forme ensembliste : U = les élèves Foot : les élèves qui font du foot Nat : les élèves qui font de la natation Course : les élèves qui font de la course

U = les élèves

Foot Nat

Course

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 26/50

Ø 2 : La représentation définit une partition avec 8 sous-ensembles U = Se1 ∪ Se2 ∪ Se3 ∪ Se4 ∪ Se5 ∪ Se6 ∪ Se7 ∪ Se8 Se1 = Foot ∪ Nat ∪ Course Se2 = Foot – Nat – Course Se3 = Nat – Foot – Course Se4 = Course – Foot – Nat Se5 = (Foot ∩ Nat) – Course Se6 = (Foot ∩ Course) – Nat Se7 = (Nat ∩ Course) – Foot Se8 = Foot ∩ Nat ∩ Course

Ø 3 : On place les cardinalités les plus immédiates

Se5

U = les élèves

Foot Nat

Course

Se1

Se2 Se3

Se4

Se5

Se6 Se7

Se8

U = les élèves = 200

Foot Nat

Course

Se1=10

Se2 Se3 = 40

Se4=19

Se6 Se7

Se8=18

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 27/50

Ø 4 : On place les cardinalités suivantes avec les autres indices Finissez l’exercice !

Exercices – Cardinalités et diagramme de Venn

Ø 1 Un contrôleur de fabrication a cherché, dans un lot de 100 pièces, le nombre de pièces présentant un défaut de solidité, un défaut de finition ou un défaut de dimension. Ses résultats sont les suivants : – Défaut de finition : 30 pièces – Défaut de solidité : 23 pièces – Défaut de dimension : 50 pièces – Défaut de finition et de solidité : 10 pièces – Défaut de solidité et de dimension : 20 pièces. – Défaut de dimension et de finition : 8 pièces – Défaut de finition, de solidité et de dimension : 5 pièces. La direction de l'entreprise met en doute les compétences de ce contrôleur : ses doutes sont-ils justifiés ? Pourquoi ? Pour résoudre le problème, on part de l’ensemble des pièces puis on définit graphiquement une partition. On définit ensuite le cardinal de chaque partie en commençant par les plus évidentes.

Ø 2 Dans un avion se trouvent : — 9 enfants de sexe masculin, — 5 enfants français, — 9 hommes adultes, — 7 enfants non français de sexe masculin, — 11 français dont 6 de sexe masculin, — 12 enfants non français, — 2 femmes adultes non françaises. Combien y a-t-il de passagers dans l'avion ? Pour résoudre le problème, on part de l’ensemble des personnes puis on définit graphiquement une partition. On définit ensuite le cardinal de chaque partie en commençant par les plus évidentes.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 28/50

5 – Syllogisme : diagrammes de Venn et Euler avec ajouts contemporains

Présentation

Ø Définition d’un syllogisme Le syllogisme classique permet à partir de deux propositions d’en déduire une troisième.

Ø Exemple Tous les humains sont mortels. Les Grecs sont humains. Donc les Grecs sont mortels.

Ø Représentation ensembliste de l’exemple On a 3 ensembles : M (les mortels), H (les humains) et G (les Grecs). Chaque proposition peut se traduire de façon ensembliste. Tous les humains sont mortels : On le note H ⊂ M Les Grecs sont humains : On le note G ⊂ H C’est pareil que tous les Grecs sont humains Tous les Grecs sont mortels : On le note G ⊂ M

Ø Bilan Le syllogisme correspond à la situation suivante : G ⊂ H ⊂ M donc G ⊂ M

Ø Classification La théorie met en évidence 256 syllogismes possibles et une bonne maîtrise des syllogismes suppose que l’on soit capable d’en isoler 19 qui sont concluants. On va présenter les 4 premiers à titre d’exemple. La théorie des syllogismes se base sur une théorie de la proposition. On va donc commencer par présenter cette théorie en rapport directement avec la théorie des ensembles.

Humains Mortels

Grecs Humains

Grecs Mortels

Humains Mortels

Grecs

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 29/50

Les différentes propositions

Ø Présentation Il existe 3 sortes de propositions : universelles, singulières ou particulières. Chacune d’elle peut être affirmative ou négative, ce qui fait 6 sortes de propositions en tout.

Ø Proposition universelle affirmative Tous les humains sont mortels est une proposition dite « universelle ». On peut la noter H ⊂ M

On sait que H ⊂ M ó∀x ( x ∈ H => x ∈ M ) : cf. § Relations entre ensemble, inclusion Traduction ensembliste :

Ø Proposition universelle négative « Aucun homme n’est immortel » est une proposition universelle (valable pour tous les hommes) et négative : c’est un « n’être pas ». On peut la noter H ∩ I = ∅

On sait que H ∩ I = ∅ ó∀x ( x ∈ H => x ∉ I ) : cf. § Relations entre ensemble, intersection, ensembles disjoints. Traduction ensembliste :

Ø Proposition singulière affirmative Cantor est un humain est une proposition dite « singulière » et affirmative. On peut la noter : Cantor ∈ H Traduction ensembliste :

Ø Proposition singulière négative Cantor n’est pas un enfant est une proposition dite « singulière » et négative. On peut la noter : Cantor ∉ E Traduction ensembliste :

Humains Immortels

Humains Mortels

Humains

cantor

Enfants cantor

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 30/50

Ø Proposition particulière affirmative « Certains francophones sont français » est une proposition particulière (valable pour certains francophones, mais pas tous) et affirmative. On peut la noter FP ∩ F On sait que FP ∩ F = { x / x ∈ FP et x ∈ F } : cf. § Relations entre ensemble, intersection. Traduction ensembliste : Les francophones français sont à l’intersection des deux ensembles. On ne sait pas s’il y a des Francophones non Français. Certains le sont, peut-être tous, ou pas. On peut aussi proposer le schéma suivant : Il existe un objet francophone qui est Français. On met la caractéristique « francophone » en italique pour la distinguer du nom d’un objet.

Ø Proposition particulière négative « Certains francophones ne sont pas français » est une proposition particulière (valable pour certains francophones, mais pas tous) et négative (« ne sont pas »). On peut la noter FP - F On sait que FP - F = { x / x ∈ FP et x ∉ F } : cf. § Relations entre ensemble, différence. Traduction ensembliste : Les francophones non français sont à l’intersection des deux ensembles. On ne sait pas s’il y a des francophones français. Certains ne le sont pas, peut-être tous, ou pas. On peut aussi proposer le schéma suivant : Il existe un objet francophone qui n’est Français. On met la caractéristique « francophone » en italique pour la distinguer du nom d’un objet.

Francophones Français

Francophones Français

Français francophone

Français francophone

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 31/50

Les 4 premiers syllogismes classiques

Ø BARBARA On a 3 propositions universelles affirmatives, codées A, d’où le code latin BARBARA Tous les humains sont mortels (A) Les Grecs sont humains (A) Donc tous les Grecs sont mortels (A)

Ø CELARENT On a 2 propositions universelles négatives, codées E, d’où le code latin CELARENT Aucun Européen n’est Américain (E) Les Français sont Européens (A) Donc aucun Français n’est Américain (E)

Ø DARII On a 2 propositions particulières affirmatives, codées I, d’où le code latin DARII Les Français sont Européens (A) Certains francophones sont Français (I) Donc certains francophones sont Européens (I)

Ø FERIO On a 1 universel négative (E), 1 particulière affirmative (I) et une particulière négative (O), d’où le code latin FERIO. Aucun Français n’est Américain (E) Certains étudiants sont français (I) Donc certains étudiants ne sont pas Américains (O)

Ø Synthèse

Humains Mortels

Grecs

Américains Européens Français

Français Européens

francophone

Américains Français étudiant

BARBARA CELARENT

DARII FERIO

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 32/50

Exercices – série 1 – Syllogismes et diagrammes de Venn Pour chacun des couples de proposition ci-dessous, faites le diagramme de Venn correspondant, dites ce que vous pouvez en déduire et de quel syllogisme il s’agit. Aucun animal à branchies n’est une baleine. Tous les poissons ont des branchies.

Tous les actes explicitement interdits par la loi sont répréhensibles Certains commerces sont explicitement interdits par la loi Tous les aliénés sont déments Tous les fous sont aliénés Aucun poisson n’a de jambes Quelques animaux sont des poissons

Exercices – série 2 Même exercice que le 1 Tous les chats comprennent le français Certains poulets sont des chats. Tous les dieux sont immortels Certains personnages sont des dieux Aucune baleine n’est un poisson Certains animaux avec des nageoires sont des baleines Aucun animal respirant avec des poumons n’est un poisson Toutes les baleines sont des animaux respirant avec des poumons

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 33/50

ENSEMBLES ET RELATIONS ENTRE LES ELEMENTS

A - Théorie

1 – Notion de tuple

Définition d’un couple En mathématiques, un couple de deux objets est un nouvel objet constitué par ces deux objets dans un ordre déterminé. Un couple se représente ainsi : C = (e1, e2). Par définition, un couple est ordonné et donc : (e1, e2) != (e2, e1)

Différences entre un couple et un ensemble

Ø Formalisme Un couple se représente avec des parenthèses : C = (e1, e2) Un ensemble se représente avec des accolades : E = {e1, e2 } On peut mettre des « , » ou des « ; » entre deux objets. Toutefois, on privilégie les virgules pour séparer les objets d’un couple et les points-virgules pour séparer les éléments d’un ensemble.

Ø Sémantique Un couple est un objet constitué par 2 autres objets. Le nouvel objet est caractérisé par les deux valeurs des deux autres objets. Par exemple, un couple constitué par un nom de personnes et une adresse mail : (toto, [email protected] ). On peut avoir des ensembles de couples de même nature, chaque élément étant caractérisé par ses 2 valeurs. Par exemple, un ensemble de 3 couples : { (toto, toto@ gmail.com ), (titi, titi@ gmail.com ), (tutu, tutu@ gmail.com ) }. Un ensemble est une réunion d’objets. En général, les éléments d’un ensemble sont des objets de même nature. Par exemple, un ensemble de personnes contient des éléments qui sont des personnes. Autre exemple : l’ensemble des entiers impairs plus petits que 12 est un ensemble contenant des entiers. Il s’agit de {1, 3, 5, 7, 9, 11}

Ø Ordre Un ensemble n’a pas d’ordre : {e1, e2 } = {e2, e1} Un couple est ordonné : (e1, e2) != (e2, e1)

Ø Doublon Un couple peut être constitué de doublons : (e1, e1) est un couple conforme. Un ensemble ne contient pas de doublon : {e1, e1} est un ensemble non conforme. Il s’agit en réalité du singleton {e1}

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 34/50

Notion de tuple

Ø Présentation Un n-uplet ou « tuple » est une généralisation de la notion de couple. Un n-uplet ou « tuple » de n objets est un nouvel objet constitué par ces n objets dans un ordre déterminé. Chaque partie du tuple est appelée « composant » du tuple. Un n-uplet ou « tuple » se représente ainsi : T = (e1, e2, …, en) Un tuple à 2 composants est un couple, à 3 composants un triplet, à 4 un quadruplet, etc. Un ensemble à 2 éléments est une paire, à 3 éléments un trio, à 4 un quartet, etc.

Ø Exemple Un client avec son numéro, son nom et son adresse mail constitue un tuple à 3 caractéristiques, c’est-à-dire un triplet : (1, toto, toto@ gmail.com )

Concaténation de 2 tuples La concaténation de 2 tuples est un tuple constitué de tous les composants des 2 tuples, dans l’ordre. La concaténation du triplet (1, 2 , 3) et du couple (4, 5) c’est le quintuplet (1, 2, 3, 4, 5). Etant donné que (1,2,3,4,5) != (4,5,1,2,3), la concaténation n’est pas commutative.

Applications en informatique

Ø Base de données Une base de données contient des tables du type de tableau excel. Chaque tableau est un ensemble et chaque ligne du tableau est un élément de l’ensemble. L’ordre des lignes n’a pas d’importances. Chaque ligne est une tuple. Une table contient donc un ensemble de tuples. Chaque colonne correspond à un composant du tuple. Dans un tuple, l’ordre des attributs est significatif. Par exemple, si e1 = (1, « toto », « ingénieur »), chaque composant à une signification particulière. On donne un nom à chaque composant du tuple, qu’on appelle « attribut ». Le 1, c’est l’id. « toto » c’est le nom. « ingénieur » c’est le métier). On accède à un composant en passant par l’élément et en suffixant le composant : tuple1.nom.

Ø Programmation objet Une classe définit un concept. On la note avec une majuscule en premier : Chat Un objet est une instance d’une classe : un objet « tombe sous le concept » de sa classe. Un objet est noté avec une minuscule en premier : chat. On peut se doter d’une collection d’objets : un tableau, une liste, un arbre, etc. Une collection, c’est un ensemble.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 35/50

2 – Produit cartésien

Produit cartésien de deux ensembles

Ø Présentation Soit E et F deux ensembles de tuples. E × F = c’est l’ensemble des tuples constitués par la concaténation de chaque tuple de E avec chaque tuple de F. E × F = { (e, f) / e ∈ E et f ∈ F }

Ø Cardinal d’un produit cartésien card ( E × F ) = card ( E ) × card ( F )

Ø Exemple 1 Soit deux ensembles d’éléments simples E et F. E = {1 ; 2} F = {1 ; 2 ; 3} E X F = { (1,1), (1,2), (1,3), (2,1), (2,3) } E X F est un ensemble de couples. Card (E X F) = 2 × 3 = 6

– Représentation avec des tableaux E F G = E × F

1 X 1 = 1 1 2 2 1 2

3 1 3 2 1 2 2 2 3

Ø Exemple 2 Soit E un ensemble de couples et F un ensemble de triplets. E = { (1,2) ; (3,4) } F = { (1,2,3) ; (4,5,6) ; (7,8,9) } E X F = { (1,2,1,2,3), (1,2, 4,5,6), (1,2,7,8,9), (3,4,1,2,3), (3,4, 4,5,6), (3,4, 7,8,9)} E X F est un ensemble de quintuplets. Card (E X F) = 2 × 3 = 6

– Représentation avec des tableaux E F G = E × F

1 2 X 1 2 3 = 1 2 1 2 3 3 4 4 5 6 1 2 4 5 6 7 8 9 1 2 7 8 9 3 4 1 2 3 3 4 4 5 6 3 4 7 8 9

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 36/50

3 – Relations entre les objets de 2 ensembles

Relation binaire On appelle relation binaire la relation entre les objets de 2 ensembles.

Schéma sagittal Soit L un ensemble de lions. L = {l1, l2, l3, l4} Soit G un ensemble de gazelles. G = {g1, g2, g3} On s’intéresse à la relation : « manger ». Les lions mangent les gazelles. On peut décrire la situation par un « schéma sagittal » (sagitta veut dire flèche en latin) Lions manger Gazelles

0.* 0.*

Sens de la relation La relation a un sens : il y a une flèche. La flèche permet de lire le schéma : Les lions mangent les gazelles (et non pas le contraire). Lions est l’ensemble de départ. Gazelles est l’ensemble d’arrivée.

Notion de cardinalité 0.* représente la « cardinalité » de la relation. La première cardinalité nous dit combien de relations partent chaque lion vers les gazelles. 0 veut dire qu’il peut y avoir 0 relation pour un élément (l5 n’a pas de relation). « * » veut dire qu’il peut y avoir plus de 1 relation pour un élément (l2 et l4 ont deux relations). La deuxième cardinalité nous dit combien de relations partent chaque gazelle vers les lions. 0 veut dire qu’il peut y avoir 0 relation pour un élément (g4 n’a pas de relation). « * » veut dire qu’il peut y avoir plus de 1 relation pour un élément (g2 a 3 relations et g1 en a 2). On dit : minimum 0, maximum plusieurs (ou N).

l1 l2 l3 l4 l5

g1 g2 g3 g4

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 37/50

Relation et produit cartésien On peut décrire la situation comme un ensemble de couples M = { (g1, l1), (g1, l2), (g2, l2), (g2, l3) , (g2, l4) , (g3, l4) } M (manger) est un sous-ensemble de L X G

Tableau d’objets à deux colonnes On peut décrire la situation comme un tableau d’objets à deux colonnes Ce tableau décrit les couples de la représentation précédente.

Lions Gazelles l1 g1 l2 g1 l2 g2 l3 g2 l4 g2 l4 g3

Tableaux de listes On peut aussi décrire la situation par des tableaux de listes

Ø Un tableau de lions

Les lions Les gazelles mangées l1 g1 l2 g1, g2 l3 g2 l4 g2, g3

Ø Un tableau de gazelles

Les gazelles Les lions mangeurs

g1 l1, l2 g2 l2, l3, l4 g3 l4

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 38/50

4 – Propriétés des relations entre 2 ensembles : de l’application à la bijection

Application Une application de E vers F est une relation binaire de E vers F qui à tout élément de E associe un unique élément de F. Par convention, on appelle cette application « f ». On note l’application f : E à F ; x à y ; f(x) = y On dit que y est l’image de x et que x est l’antécédent de y.

Ø Exemple 1 Soit la fonction f(x)=4x+3 définie dans N+. C’est une application de N+ vers N+

On note l’application f : N+ à N+ ; x à y ; f(x) = y = 4x+3 N+ f(x)=4x+3 N+

1.1 0.1 Les cardinalités de l’application s’analysent ainsi : chaque entier a 1 image au minimum et une image au maximum : 1.1. Chaque image a un antécédent ou aucun : 0.1.

0 1 2 3 etc.

etc.

1, 2 3 4, 5, 6 7 8, 9, 10 11 12, 13, 14 15 16, 7, etc.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 39/50

Ø Exemple 2 Soit l’ensemble des employés E = {e1, e2, e3, e4, e5 } Soit l’ensemble des départements D = {d1, d2, d3 } Les employés travaillent dans un département et un seul. La relation « travailler dans » est une application de E vers D On note l’application « travailler dans » : E à F ; e à d ; f(x) = y tel que x « travaille dans » y. E travailler dans D

1.1 0.* Les cardinalités de l’application s’analysent ainsi : chaque employé a 1 image au minimum et une image au maximum par la relation « travailler dans » autrement dit : chaque employé travaille au minimum dans 1 département et au maximum dans 1 département (donc dans 1 et 1 seul). Un département peut être « vide » : aucun employé n’y est affecté (on peut imaginer que c’est une situation temporaire). Il peut contenir plusieurs employés.

Ø Propriété des cardinalités La cardinalité de l’ensemble de départ d’une application est 1.1

e1 e2 e3 e4 e5

d1 d2 d3 d4

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 40/50

Injection

Ø Définition en français Une application de E dans F est une injection (ou une application injective) si et seulement si tout élément de F possède au plus un antécédent, autrement dit, deux éléments distincts de E ont deux images distinctes.

Ø Formulation mathématique ∀(x1,x2)∈ E X E, f(x1) = f(x2) => x1 = x2 Pour tout couple x1, x2 appartenant au produit cartésien de E avec E, si f de x1 égal f de x2, alors x1 égale x2.

Ø Propriété des cardinalités La cardinalité de l’ensemble de départ d’une application est 1.1 La cardinalité de l’ensemble d’arrivée d’une application est 0.1

Ø Représentation schématique E F

1.1 0.1

Il existe dans F des éléments qui n’on pas d’antécédent.

Ø Exemple Soit la fonction f(x)=4x+3 définie dans N+. C’est une application de N+ vers N+

On note l’application f : N+ à N+ ; x à y ; f(x) = y = 4x+3 Les couples de l’application pour x <=5 sont : (0, 3) , (1, 7) , (2, 11) , (3, 15) , (4, 19) , (5, 23) Les entiers 1 et 2, par exemples n’ont pas d’antécédents.

. . .

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 41/50

Surjection

Ø Définition en français Une application de E dans F est une surjection (ou une application surjective) si et seulement si tout élément de F possède au moins un antécédent.

Ø Formulation mathématique ∀y ∈ F, ∃x ∈ E / y = f(x) Pour tout y appartenant à F, il existe un x appartenant à E tel que y égale f de x.

Ø Propriété des cardinalités La cardinalité de l’ensemble de départ d’une application est 1.1 La cardinalité de l’ensemble d’arrivée d’une application est 1.*

Ø Représentation schématique E F

1.1 1.* Tout élément de F à au moins un antécédent.

Ø Exemple 1 Soit la fonction f(x)=x2 définie dans R C’est une application de R vers R

On note l’application f : R à R ; x à y ; f(x) = y = x2 Les couples de l’application pour des entiers compris entre -2 et 2 : (-2, 4) , (-1, 1) , (0, 0) , (1, 1) , (2, 4) Les entiers 1 et 2, par exemples ont 2 antécédents.

Ø Exemple 2 La relation entre un pointeur et une adresse est une surjection : 1 pointeur a 1 image adresse et une seule : c’est une application. Une adresse peut avoir plusieurs antécédents : plusieurs pointeurs peuvent faire référence à la même adresse. Les langages qui gère un « ramasse miette » ou « garbage collector » font en sorte qu’il n’y ait pas d’adresse allouée qui ne soit pas référencée par un pointeur.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 42/50

Bijection

Ø Définition en français Une application de E dans F est une bijection (ou une application bijective) si et seulement si elle est injective et surjective. Autrement dit si tout élément de F possède un antécédent et un seul.

Ø Formulation mathématique ∀y ∈ F, ∃!x ∈ E / y = f(x) Pour tout y appartenant à F, il existe un x est un seul (le !) appartenant à E tel que y égale f de x.

Ø Propriété des cardinalités La cardinalité de l’ensemble de départ d’une application est 1.1 La cardinalité de l’ensemble d’arrivée d’une application est 1.1

Ø Représentation schématique E F

1.1 1.1

Tout élément de F possède un antécédent et un seul.

Ø Exemple Quand un hôtel est plein, la relation entre les clients et les chambres est une bijection : à un client correspond une chambre.

Ø Subtilité : Ensembles équipotents, infini dénombrable et infini indénombrables Deux ensembles sont dit équipotents s’il existe une bijection entre ces ensembles. Ils ont alors le même cardinal. Soit l’ensemble A. S’il existe un entier n tel qu’il existe une bijection entre A et {1, 2, …, n}, alors A est dit dénombrable. Son cardinal est « fini » et vaut « n » : card (A) = n Dans le cas contraire, le card(A) = ∞ Un ensemble infini est dit « dénombrable » s’il existe une bijection avec l’ensemble des entiers N. C’est le cas pour D, Z, Q. Ce n’est pas le cas pour R dont le cardinal est indénombrable.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 43/50

B - Applications

1 - Modélisation de BD et de diagramme de classes – MEA et UML

Présentation En bases de données comme en programmation objet, on est amené à réfléchir aux ensembles qui regroupent les données qu’on manipule et aux relations entre ces ensembles. C’est ce qu’on appelle la « modélisation des données » dans le cas de la BD (sous la forme par exemple de MEA, modèle entité-association) et le « diagramme des classes » dans le cas de la programmation objet. Ces modélisations utilisent leur propre langage graphique pour représenter les ensembles et leurs relations. Le principe consiste à mettre au jour :

• les ensembles • les caractéristiques des tuples qu’ils contiennent • les relations entre les ensembles • les cardinalités de ces relations

Exemple

Ø On reprend l’exemple des lions qui mangent les gazelles. Soit L un ensemble de lions. L = {l1, l2, l3, l4} Soit G un ensemble de gazelles. G = {g1, g2, g3} On s’intéresse à la relation : « manger ». Les lions mangent les gazelles. On peut décrire la situation par un « schéma sagittal » (sagitta veut dire flèche en latin) Lions manger Gazelles

0.* 0.*

l1 l2 l3 l4 l5

g1 g2 g3 g4

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 44/50

Ø Ajout du genre animal Les lions et les gazelles sont des animaux. On a donc L ⊂ A et G ⊂ A. On peut représenter cela avec des flèches à triangle : On peut représenter le tout par une inclusion d’ensembles :

Tous les animaux ont une date de naissance, un poids et un nom. Les gazelles et les lions héritent des attributs du genre : ils ont tous une date de naissance, un poids et un nom. Les gazelles one une longueur de cornes spécifique. Les lions ont une couleur de crinière spécifique.

l1 l2 l3 l4 l5

g1 g2 g3 g4

Lions manger Gazelles

0.* 0.*

Animaux

Lions Gazelles

Animaux

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 45/50

Ø Formalisme MEA Le MEA est une façon graphique de représenter les ensembles et leurs relations qu’on utilise en base de données.

Ø Formalisme UML L’UML est une façon graphique de représenter les ensembles et leurs relations qu’on utilise en base de données et en programmation objet.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 46/50

Exercices – Modélisation ensembliste

Ø 1 Soit les deux ensembles suivants : E1 = {a, b, c, d, e}, E2 = {A, B, C, D, E} Soit l’ensemble de couples suivant : {(a,A), (b,A), (c,C), (d,D), (e,D) } Représenter ces couples sous la forme : Ø d’un schéma sagittal en précisant les cardinalités Ø de 2 tableaux de listes Ø d’un MEA La relation de E1 vers E2 est-elle une application, une injection, une surjection, une bijection ? La relation de E2 vers E2 est-elle une application, une injection, une surjection, une bijection ?

Ø 2 On reprend l’exemple du cours des employés et des départements. On a un ensemble d’employés E = {e1, e2, e3, e4, e5 } et un ensemble des départements D = {d1, d2, d3 } Les employés travaillent dans un département et un seul. L’ensemble des relations est le suivant : {(e1, d1), (e2, d1), (e3, d2), (e4, d3), (e5, d3)} Représenter ces couples sous la forme : Ø d’un schéma sagittal en précisant les cardinalités Ø de 2 tableaux de listes Ø d’un MEA

Ø 3 Soit l’ensemble de couples suivant : {(a,a), (a,b), (a,c), (b,c), (b,d), (d,d) } Représenter ces couples sous la forme : Ø d’un schéma sagittal en précisant les cardinalités Ø de 2 tableaux de listes Ø d’un MEA Les relations dans un sens et dans l’autre sont-elles des applications, des injections, des surjections, des bijections ?

Ø 4 Soit une bibliothèque municipale. Elle gère des adhérents et des livres. Les adhérents empruntent des livres. Quels ensembles peuvent représenter la situation ? Quelles relations entre les ensembles peuvent représenter la situation. Préciser les cardinalités. Pour chaque relation, préciser si c’est une application, une injection, une surjection ou une bijection.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 47/50

2 - Langage SQL des bases de données relationnelles

Présentation

Ø Langage SQL Le langage SQL est le langage des bases de données relationnelles. Les bases de données sont les systèmes qui gèrent les données (on dit SGBD : système de gestion des BD). La quasi totalité des sites internet utilisent des bases de données relationnelles. Le langage SQL est un langage basé sur l’algèbre relationnelle c’est-à-dire la théorie des opérations (algèbre) portant sur les « relations ». Une relation est un tableau de type excel. Il est équivalent à un ensemble. L’algèbre relationnelle est donc un langage qui s’appuie sur la théorie des ensembles.

Ø Exemple mathématique Soit l’ensemble des entiers N On veut le sous ensemble P des entiers pairs. On peut l’écrire : P = {2x / x ∈ N } : ensemble des 2x tel que x appartient à N On peut aussi écrire : P = {x ∈ N / x%2=0 } : ensemble des x appartenant à N tel que x modulo égale 0 (le modulo c’est le reste de la division entière). En SQL, cette définition en compréhension s’écrit : SELECT * FROM N WHERE x%2=0

Ø Exemple avec des tuples Soit E un ensemble d’élèves avec un nom, une adresse mail et une ville d’habitation. Les tuples de E sont donc des triplets. On définit l’ensemble ainsi : E(nom, mail, ville) « nom », « mail » et « ville » sont les nom des composants des tuples de l’ensemble E. Par exemple E={(toto, [email protected], paris) ; (titi, [email protected], meudon) ; … }. Chaque élément de E peut-être appelé « x ». Pour obtenir par exemple la ville d’un x, on écrit x1.ville. On cherche R, l’ensemble de tous les élèves parisiens. R = { x ∈ E / x.ville = « Paris » } En SQL : SELECT * FROM E WHERE ville = « Paris ». Le * veut dire qu’on prend les tuples en entier avec leurs trois caractéristiques en l’occurrence.

Jointure

Ø Présentation La jointure est l’opération fondamentale du SQL. Comprendre la jointure, c’est comprendre le SQL et réciproquement, et inversement ! On va montrer ici le principe et un exemple simple pour faire comprendre le principe. L’étude des jointures sera faite ensuite dans le cours de SQL.

Ø Principe La jointure est une opération basée sur le produit cartésien.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 48/50

Il y a ensuite un WHERE qui permet d’éliminer les résultats sans intérêt.

Ø Exemple Soit E, l’ensemble des employés = {(toto, 10), (tata, 10), (titi, 20) } Ces employés on un nom et le numéro du département dans lequel il travaille qu’on appelle numDepTrav. Soit D, l’ensemble des départements = {(10, Paris), (20, Meudon) } Ces départements ont un numéro qu’on appelle numDep et une ville de localisation du département. On veut construire un ensemble d’employés E2 pour lequel chaque tuple précise la ville du département. E2 = { x ∈ E X D / x.numDepTra = x.numDep } La restriction x.numDepTra = x.numDep permet d’élimier du produit cartésien les tuples non significatifs. Il ne reste alors que les employés avec des informations sur leurs départements. En SQL, on écrit SELECT * FROM E, D WHERE E.numDepTra = D.numDep

– Représentation du produit cartésien avec des tableaux E D E × D

toto 10 X 10 Paris = toto 10 10 Paris tata 10 20 Meudon toto 10 20 Meudon titi 20 tata 10 10 Paris tata 10 20 Meudon titi 20 10 Paris titi 20 20 Meudon

Ici on a des tuples qui ne sont pas significatifs dans le résultats (le 2ème par exemple).

– Représentation de la jointure avec des tableaux E D E2 = { x ∈ E X D / x.numDepTra = x.numDep } toto 10 X 10 Paris = toto 10 10 Paris tata 10 20 Meudon toto 10 20 Meudon titi 20 tata 10 10 Paris tata 10 20 Meudon titi 20 10 Paris titi 20 20 Meudon

Ici on ne garde que les tuples significatifs.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 49/50

Relations ensemblistes Le SQL permet aussi de faire de simples relations entre ensemble comme l’union, l’intersection et la différence. Ces opérations sont simples à mettre en œuvre. En mathématiques, on écrit : A ∪ B En SQL, on écrit SELECT * FROM A UNION SELECT * FROM B Ces opérations sont toutefois secondaires dans le langages et remplaçables et remplacées pour des raisons d’efficacité par des jointures. Ainsi, certains SGBD ne proposent que l’union qui est la seule opération qui ne soit pas remplaçable par des jointures.

Jointure externe La jointure externe est une opération spéciale du SQL : elle consiste à faire une jointure et un complémentaire. C’est une opération un peu complexe avec une syntaxe spéciale en SQL et dont l’utilité sera abordée en cours de SQL. C’est trop spécifique pour être abordée dans un cours général de théorie des ensembles. En SQL, on écrit : SELECT * FROM A LEFT JOIN B etc.

IPI – Module MAT-120 – Théorie des ensembles et SGBDR – Bertrand Liaudet - page 50/50

Exercices – SQL et théorie des ensemble

Ø 1 On se donne un ensemble E de personnes dont chaque tuple est un triplet avec trois composant : un nom, une adresse mail et un âge. Donnez une définition mathématique en extension du sous-ensemble de E dont les personnes ont moins de 30 ans. Ecrivez la requête SQL correspondant à cette définition.

Ø 2 Soit A = {(1, a1, 1), (2, a2, 1), (3, a3, 2) } B= {(1, b1), (2, b2)} Les composants des tuples sont appelés : ta1, ta2, ta3 pour A et tb1, tb2 pour B. 1) Définir en extension A×B 2) Quel est le cardinal de A×B 3) Définir en extension E = { x ∈ E X D / x.ta3 = x.tb1 } 4) Donnez la requête SQL correspondant à E. 5) Quel est le cardinal de E ?

Ø 3 Soit A un ensemble d’élèves. A = {(1, « fifi »), (2, « soso »), (3, « loulou ») } Soit B un ensemble de notes. B= {(« math », 18, 1), (« math », 14, 2), (« math », 8, 3), (« BD», 16, 1), (« BD», 10, 2), (« algo», 14, 1), (« algo», 12, 2), (« algo», 15, 3) } Les composants des tuples sont appelés : ta1, ta2 pour A et tb1, tb2, tb3 pour B. 1) Quel est le cardinal de A, de B, de A×B ? 2) Définir en extension E = { x ∈ A×B / x.ta1 = x.tb3 } 3) Quel est le cardinal de E ? 4) Comment interprétez-vous l’ensemble E ? 5) Donnez la requête SQL correspondant à E. 6) Définir en extension F = { x ∈ A×B / x.ta1 = x.tb3 et x.ta1=2 } 7) Quel est le cardinal de F ? 8) Comment interprétez-vous l’ensemble F ? 9) Donnez la requête SQL correspondant à E.