diff --git a/config.toml b/config.toml
index 42a7be4..98a043d 100644
--- a/config.toml
+++ b/config.toml
@@ -24,7 +24,6 @@ enableRobotsTXT = false
post_navigation = true
mainSections = ["bdd_avancees", "systemes_exploitation"]
post_meta = ["author", "date", "categories", "translations"]
- mathjax = true
mathjaxPath = "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.6/MathJax.js" # Specify MathJax path
mathjaxConfig = "TeX-AMS-MML_HTMLorMML" # Specify MathJax config
[Params.sidebar]
diff --git a/content/bdd_avancees/2-introduction_modele_relationnel/images/schema_bdd.svg b/content/bdd_avancees/2-introduction_modele_relationnel/images/schema_bdd.svg
index d575853..5021fdd 100644
--- a/content/bdd_avancees/2-introduction_modele_relationnel/images/schema_bdd.svg
+++ b/content/bdd_avancees/2-introduction_modele_relationnel/images/schema_bdd.svg
@@ -7,37 +7,8 @@
viewBox="0 0 186.12944 119.7814"
version="1.1"
id="svg5"
- inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)"
- sodipodi:docname="schema_bdd.svg"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
-
+ orient="auto">
+ orient="auto">
+ orient="auto">
+ orient="auto">
+ id="g80165">
+
-
diff --git a/content/bdd_avancees/2-introduction_modele_relationnel/index.md b/content/bdd_avancees/2-introduction_modele_relationnel/index.md
index b10c55d..575202f 100644
--- a/content/bdd_avancees/2-introduction_modele_relationnel/index.md
+++ b/content/bdd_avancees/2-introduction_modele_relationnel/index.md
@@ -1,7 +1,7 @@
---
title: "Base de données avancées : Introduction au modèle relationnel"
-date: 2022-01-12
-tags: ["schema", "modèle relationnel", "relation"]
+date: 2022-01-11
+tags: ["définitions", "modèle relationnel", "relation"]
categories: ["Base de données avancées", "Cours"]
mathjax: true
---
@@ -69,9 +69,9 @@ de données et vérifiant toutes ses relations.
Dans le schéma ci-dessus :
- * \\( \text{planning.num_vol} \subseteq \text{vols.num_vols} \\)
+ * \\( planning.num_vol \subseteq vols.num_vols \\)
* \\( planning.matricule \subseteq pilotes.matricule \\)
- * \\( \text{planning.num_avion} \subseteq \text{avions.num_serie} \\)
+ * \\( planning.num_avion \subseteq avions.num_serie \\)
## contraintes d'intégrité
diff --git a/content/bdd_avancees/3-algebre_relationnelle/images/difference.svg b/content/bdd_avancees/3-algebre_relationnelle/images/difference.svg
deleted file mode 100644
index 37db63f..0000000
--- a/content/bdd_avancees/3-algebre_relationnelle/images/difference.svg
+++ /dev/null
@@ -1,162 +0,0 @@
-
-
-
-
diff --git a/content/bdd_avancees/3-algebre_relationnelle/images/intersection.svg b/content/bdd_avancees/3-algebre_relationnelle/images/intersection.svg
deleted file mode 100644
index c71611c..0000000
--- a/content/bdd_avancees/3-algebre_relationnelle/images/intersection.svg
+++ /dev/null
@@ -1,157 +0,0 @@
-
-
-
-
diff --git a/content/bdd_avancees/3-algebre_relationnelle/images/union.svg b/content/bdd_avancees/3-algebre_relationnelle/images/union.svg
deleted file mode 100644
index 192ef72..0000000
--- a/content/bdd_avancees/3-algebre_relationnelle/images/union.svg
+++ /dev/null
@@ -1,180 +0,0 @@
-
-
-
-
diff --git a/content/bdd_avancees/3-algebre_relationnelle/index.md b/content/bdd_avancees/3-algebre_relationnelle/index.md
deleted file mode 100644
index b7e5973..0000000
--- a/content/bdd_avancees/3-algebre_relationnelle/index.md
+++ /dev/null
@@ -1,207 +0,0 @@
----
-title: "Base de données avancées : Algèbre relationnelle"
-date: 2022-01-12
-tags: ["schema", "algèbre relationnelle", "relation"]
-categories: ["Base de données avancées", "Cours"]
-mathjax: true
----
-
-L'agèbre relationnelle est un langage de requêtes dans une base de donnée
-relationelle. Inventé par Edgar F. Codd en 1970, il représente le fondement
-théorique du langage SQL.
-
-
-C'est un langage procédural : les requêtes sont des suites d'opérations qui
-construise la réponse.Il permet la manipulation des relations par interrogation
-en combiant les relations avec différents opérateurs afin d'obtenir de nouvelles
-relations.
-
-## La projection
-
-La projection permet de ne garder que les *n_uplets* des attibuts indiqué par
-l'opérateur en supprimant les éventuels doublons. Il est noté \\(\pi\\), son
-équivalent SQL est `SELECT`. On parle alors de *partition verticale*
-
- * Soit \\(R(\underline{A,B},C,D)\\)
- * La projection des attibuts C et D donne \\(\pi_D(R) = R'(C,D)\\)
-
-## La selection
-
-L'opérateur de selection (ou restriction) ne permet de retenir que *n_uplets*
-vérifiant une condition particulière donnée sous forme de prédicat[^n_predicat].
-Il est noté \\(\sigma\\)) et équivaut à la clause `WHERE` en SQL.
-
- * Soit \\(R(\underline{A,B},C,D)\\)
- * la selection \\(\sigma_{C>2}(R) = R'(A,B,C,D)\\) sélection les ligne de la
- relation \\(R\\) dont \\(C\\) est supérieur à 2
-
-Les opérateurs possibles sont \\(>, <, \geqslant, \leqslant, =, \ne, \subset,
-\subseteq, \nsubseteq \\)
-
-Utilisons les relations de notre exemple de la compagne aérienne, pour trouver
-les numéros de séries des avions avec une capacité supérieure à 150 passagers.
-
-\\( \pi_{\text{num_serie}}(\sigma_{capacité > 150}(avions)) \\)
-
-
-[^n_predicat]:propriété des objets du langage exprimée dans le langage en
-question (source [Wikipédia](https://fr.wikipedia.org/wiki/Pr%C3%A9dicat))
-
-## jointure
-
-La jointure (ou jointure naturelle) rapproche deux relations liées par des
-attributs communs. Les *n_uplets* du résultat sont obtenus par concaténation des
-attributs des deux relations lorsque les attributs communs ont des valeurs
-identiques. La jointure est notée \bowtie, son équivalent au `JOIN` en SQL.
-
- * soit deux relations \\( conso(plat, client) \\) et \\( client(id, nom,
- prénom) \\)
- * \\( \pi_{nom, prénom}(\sigma_{plat = donuts}(conso \bowtie_{conso.client =
- client.id} client)) \\) donne les clients ayant commandé des donuts.
-
-## auto-jointure
-
-L'auto-jointure est la jointure d'une table sur elle-même. elle permet, par
-exemple, de calculer une hiérarchie. Lors de l'utilisation de cet operateur, il
-faut renommer chaque relation qui compose la jointure de façon unique. Cet
-
-l'opérateur \\( \rho \\) permet de renommer une relation le temps d'une requête.
-
- * soit une relation \\( employés(matricule, nom, prénom, supérieur) \\)
- * \\( \pi_{D}(\sigma_{nom = Simpson}((employés \bowtie_{employés.matricule = s.D}
- (\rho{s(A,B,C,D}(employés))) \\) permet de trouver le superieur
- hiérarchique de Simpson.
-
-## Opérations binaires
-
-Les opérations binaires sont des opérations mathématiques standard de la
-théories des ensembles. Elles ne peuvent s'appliquer **que sur des relations
-compatibles**. On y trouve
-
- * Union
- * Intersection
- * Différence
- * Division
-
-Pour deux relations \\(A(A_1, A_2, A_3, ..., A_n)\\) et \\(B(B_1, B_2, B_3, ...,
-B_n\\) sont **compatibles** si et seulement si elles ont le même degrès
-[^n_degres] et si \\(dom(A_i) = dom(B_i)\\) pour \\(1 \leqslant i \leqslant n
-\\)
-
-[^n_degres]:le degrés représente le nombre d'attributs d'une relation
-
-### Union
-
-\\(A \cup B\\) est une relation qui inclue tous les *n_uplets* qui
-appartiennent à A, B ou au deux. Les doublons sont éliminés.
-
-
-
-### Intersection
-
-\\( A \cap B \\) est une relation qui inclue les *n_uplets* appartenant à A et à
-B et seulement ceux-ci.
-
-
-
-### Différence
-
-\\( A - B \\) est une relation qui inclue tous les *n_uplets* appartenant à A
-mais pas à B.
-
-
-
-Elle répond à la question quel sont les A qui n'ont aucun B.
-
-### Division
-
-La division permet de conserver une sous ensemble de *n_uplets* partie de
-\\(R\\) qui sont tous présent dans \\(S\\). Elle permet de répondre à des
-questions du type *quel est le truc qui a tous les machins?*.
-
-Pour l'exemple, reprenons notre base de donnée de la compagnie aérienne du
-chapitre précédent.
-
-
-
-Utilisons la division pour répondre à la question "Quels commandants ont volé
-sur tous les type d'avion:
-
-\\[
-\Pi_{matricule, type}(
-pilotes \underset{pilotes.matricule = planning.matricule}{\bowtie}
-planning \underset{\text{planning.num_avion} = \text{avions.num_serie}}{\bowtie}
-avions)
-\div \Pi_{type}(avion)
-\\]
-
-## Calcul relationnel
-
-Le calcul relationnel est un langage formel permettant, tout comme l'algèbre
-relationnel, d'exprimer des requêtes afin d'interroger des base de données
-relationnelles.
-
-Les requêtes se présentent sous la forme \\({t|P(t)}\\), elle représente
-l'ensemble des *n_uplets* tel que le prédicat \\(P(t)\\) est vrai pour \\(t\\).
-
-\\(t\\) est une variable de *n_uplet* et \\(t[A]\\) représente la valeur de
-l'attribut \\(A\\) dans \\(t\\). \\(t \in r\\) signifie que \\(t\\) est un
-*n_uplet* de \\(r\\).
-
-Il existe aussi les connecteur logiques :
- * \\(\lor\\) : **ou** logique
- * \\((\land\\) : **et** logique
- * \\(\neg\\) : la négation
-
-Mais aussi des quantificateurs :
- * \\(\exists\\) : **il existe**, par exemple \\(\exists t \in r(Q(t))\\) il
- existe un tuple t de r tel que Q est vrai.
- * \\(\forall\\) : **pour tout**, par exemple \\(\forall t \in r(Q(t))\\) - Q
- est vrai pour tout tuple t de r.
- * \\(\nexists\\) : **il n'existe pas**, par exemple \\(\nexists t \in
- r(Q(t))\\) - il n'existe pas de tuple t dans r tel que Q est vrai.
-
-### Un exemple concret : base de donnée cinéma
-
-Essayons d'éclaicir tout celà à l'aide d'un exemple concret, considérons les
-relations suivantes:
-
- * Films(titre, realisateur, Acteur) instance f
- * Programme(nom_cinemas, titre, horaire) instance p
-
-#### les films réalisés par Terry Gilliam
-
-\\( \\{ t | t \in f \land t[realisateur] = "\text{Terry Gilliam"} \\} \\)
-
-#### les films ou jouent Jay et Silent Bob
-
-\\( \\{ t | t \in f \land \exists s \in f( t[titre] = s[titre] \land
-t[acteur] = "Jay" \land s[acteur] = "Silent Bob" ) \\} \\)
-
-#### tous les films programmés dans toutes les salles
-
-\\( \\{ t | \exists s \in p(t[titre] = s[titre]) \\} \\)
-
-#### Les films programmés à l'UGC mais pas au Megarama
-
-\\( \\{
-t | \exists s \in p(s[titre] = t[titre]
-\land s[\text{nom_cinemas}] = "UCG"
-\land {\not} {\exists} u \in p( u[\text{nom_cinemas}] = "Megarama"
-\land u[titre] = t[titre]
-\\} \\)
-
-#### Les titres des films qui sont passés à l'UGC et leurs réalisateurs
-
-\\( \\{
-t | \exists \in p(\exists u \in f((s[\text{nom_cinemas}] = "UGC"
-\land s[titre] = u[titre] = t[titre]
-\land t[realisateur] = u[realisateur]
-\\} \\)
-
-## Retour sur la notion de clé
-
-comme nous lavons abordé précédement, une clé est nécessaire pour identifier des
-*n_uplets* de façon unique sans pour autant en donner toutes leurs valeurs et
-respecter leurs unicité.