From 3437a6751b26119a085423667532bf20e8ffa3f6 Mon Sep 17 00:00:00 2001 From: amaury Date: Sun, 7 May 2023 16:02:45 +0200 Subject: [PATCH] rajout de notes + debut beamer --- docs/.gitignore | 290 ++++++++++++++++++ docs/présentation_consistence_faible/main.tex | 52 ++++ .../présentation_consistence_faible/script.md | 16 +- .../wconsistency_properties/convergence_hc.tex | 41 +++ .../wconsistency_properties/index.tex | 144 +++++++++ .../linearisation_atomicite_hc.tex | 31 ++ .../linearisation_regularite_hc.tex | 23 ++ .../linearisation_surete_hc.tex | 22 ++ .../localiteetat_hc.tex | 34 ++ .../wconsistency_properties/validite_hc.tex | 34 ++ recherches/perrin.md | 17 +- 11 files changed, 702 insertions(+), 2 deletions(-) create mode 100644 docs/.gitignore create mode 100644 docs/présentation_consistence_faible/main.tex create mode 100644 docs/présentation_consistence_faible/wconsistency_properties/convergence_hc.tex create mode 100644 docs/présentation_consistence_faible/wconsistency_properties/index.tex create mode 100644 docs/présentation_consistence_faible/wconsistency_properties/linearisation_atomicite_hc.tex create mode 100644 docs/présentation_consistence_faible/wconsistency_properties/linearisation_regularite_hc.tex create mode 100644 docs/présentation_consistence_faible/wconsistency_properties/linearisation_surete_hc.tex create mode 100644 docs/présentation_consistence_faible/wconsistency_properties/localiteetat_hc.tex create mode 100644 docs/présentation_consistence_faible/wconsistency_properties/validite_hc.tex diff --git a/docs/.gitignore b/docs/.gitignore new file mode 100644 index 0000000..52f0bb7 --- /dev/null +++ b/docs/.gitignore @@ -0,0 +1,290 @@ +## Core latex/pdflatex auxiliary files: +*.aux +*.lof +*.log +*.lot +*.fls +*.out +*.toc +*.fmt +*.fot +*.cb +*.cb2 +.*.lb + +## Intermediate documents: +*.dvi +*.xdv +*-converted-to.* +# these rules might exclude image files for figures etc. +# *.ps +# *.eps +# *.pdf + +## Generated if empty string is given at "Please type another file name for output:" +.pdf + +## Bibliography auxiliary files (bibtex/biblatex/biber): +*.bbl +*.bcf +*.blg +*-blx.aux +*-blx.bib +*.run.xml + +## Build tool auxiliary files: +*.fdb_latexmk +*.synctex +*.synctex(busy) +*.synctex.gz +*.synctex.gz(busy) +*.pdfsync + +## Build tool directories for auxiliary files +# latexrun +latex.out/ + +## Auxiliary and intermediate files from other packages: +# algorithms +*.alg +*.loa + +# achemso +acs-*.bib + +# amsthm +*.thm + +# beamer +*.nav +*.pre +*.snm +*.vrb + +# changes +*.soc + +# comment +*.cut + +# cprotect +*.cpt + +# elsarticle (documentclass of Elsevier journals) +*.spl + +# endnotes +*.ent + +# fixme +*.lox + +# feynmf/feynmp +*.mf +*.mp +*.t[1-9] +*.t[1-9][0-9] +*.tfm + +#(r)(e)ledmac/(r)(e)ledpar +*.end +*.?end +*.[1-9] +*.[1-9][0-9] +*.[1-9][0-9][0-9] +*.[1-9]R +*.[1-9][0-9]R +*.[1-9][0-9][0-9]R +*.eledsec[1-9] +*.eledsec[1-9]R +*.eledsec[1-9][0-9] +*.eledsec[1-9][0-9]R +*.eledsec[1-9][0-9][0-9] +*.eledsec[1-9][0-9][0-9]R + +# glossaries +*.acn +*.acr +*.glg +*.glo +*.gls +*.glsdefs +*.lzo +*.lzs + +# uncomment this for glossaries-extra (will ignore makeindex's style files!) +# *.ist + +# gnuplottex +*-gnuplottex-* + +# gregoriotex +*.gaux +*.glog +*.gtex + +# htlatex +*.4ct +*.4tc +*.idv +*.lg +*.trc +*.xref + +# hyperref +*.brf + +# knitr +*-concordance.tex +# TODO Uncomment the next line if you use knitr and want to ignore its generated tikz files +# *.tikz +*-tikzDictionary + +# listings +*.lol + +# luatexja-ruby +*.ltjruby + +# makeidx +*.idx +*.ilg +*.ind + +# minitoc +*.maf +*.mlf +*.mlt +*.mtc[0-9]* +*.slf[0-9]* +*.slt[0-9]* +*.stc[0-9]* + +# minted +_minted* +*.pyg + +# morewrites +*.mw + +# newpax +*.newpax + +# nomencl +*.nlg +*.nlo +*.nls + +# pax +*.pax + +# pdfpcnotes +*.pdfpc + +# sagetex +*.sagetex.sage +*.sagetex.py +*.sagetex.scmd + +# scrwfile +*.wrt + +# sympy +*.sout +*.sympy +sympy-plots-for-*.tex/ + +# pdfcomment +*.upa +*.upb + +# pythontex +*.pytxcode +pythontex-files-*/ + +# tcolorbox +*.listing + +# thmtools +*.loe + +# TikZ & PGF +*.dpth +*.md5 +*.auxlock + +# todonotes +*.tdo + +# vhistory +*.hst +*.ver + +# easy-todo +*.lod + +# xcolor +*.xcp + +# xmpincl +*.xmpi + +# xindy +*.xdy + +# xypic precompiled matrices and outlines +*.xyc +*.xyd + +# endfloat +*.ttt +*.fff + +# Latexian +TSWLatexianTemp* + +## Editors: +# WinEdt +*.bak +*.sav + +# Texpad +.texpadtmp + +# LyX +*.lyx~ + +# Kile +*.backup + +# gummi +.*.swp + +# KBibTeX +*~[0-9]* + +# TeXnicCenter +*.tps + +# auto folder when using emacs and auctex +./auto/* +*.el + +# expex forward references with \gathertags +*-tags.tex + +# standalone packages +*.sta + +# Makeindex log files +*.lpz + +# xwatermark package +*.xwm + +# REVTeX puts footnotes in the bibliography by default, unless the nofootinbib +# option is specified. Footnotes are the stored in a file with suffix Notes.bib. +# Uncomment the next line to have this generated file ignored. +#*Notes.bib + +# End of https://mrkandreev.name/snippets/gitignore-generator/#LaTeX \ No newline at end of file diff --git a/docs/présentation_consistence_faible/main.tex b/docs/présentation_consistence_faible/main.tex new file mode 100644 index 0000000..7c743d1 --- /dev/null +++ b/docs/présentation_consistence_faible/main.tex @@ -0,0 +1,52 @@ +\documentclass{beamer} +\usetheme{Boadilla} +\usecolortheme{orchid} + +\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc} +\usepackage[french]{babel} +\usepackage{stackengine} + +\addtobeamertemplate{navigation symbols}{}{% + \usebeamerfont{footline}% + \usebeamercolor[fg]{footline}% + \hspace{1em}% + \insertframenumber/\inserttotalframenumber +} +\usepackage{ulem} +\usepackage{tkz-tab} +\setbeamertemplate{blocks}[rounded]% +[shadow=true] +\AtBeginSection{% + \begin{frame} + \tableofcontents[sections=\value{section}] + \end{frame} +} + +\usepackage{tikz} +\usetikzlibrary{positioning} +\usetikzlibrary{calc} +\usetikzlibrary{arrows.meta} + +\title[bwconsistency]{Consistence faible byzantine appliquée au cloud} +\subtitle{Présentation intermédiaire: Consistence faible} +\author[JOLY Amaury]{JOLY Amaury\\ \textbf{Encadrants :} G, LABOUREL Arnaud } +% \\[2ex] \includegraphics[scale=0.1]{./img/amu.png} +\institute[LIS, Scille]{LIS-LAB, Scille} +\date{\today} + +\begin{document} + +\maketitle + +\begin{frame}{Table des matières} + \tableofcontents +\end{frame} + +% \section{Introduction} +% \input{introduction/index.tex} + +\section{Les propriétés de la Consistence faibes} +\input{wconsitence_properties/index.tex} + +\end{document} \ No newline at end of file diff --git a/docs/présentation_consistence_faible/script.md b/docs/présentation_consistence_faible/script.md index 3020d87..94153ad 100644 --- a/docs/présentation_consistence_faible/script.md +++ b/docs/présentation_consistence_faible/script.md @@ -10,4 +10,18 @@ 3. Introduire le concept de cohérence faible - exemple: application distribuée décentralisé 4. Définir les propriétés d'un système réparti -5. (?) Présenter les concepts de modélisations (histoires concurrentes) \ No newline at end of file +5. Definir les differents modèles de cohérence faible (des plus trivial aux moins) + 1. Cohérence Séquentielle (SC) + 2. Linéarisibilité -> Serialisabilité + 3. Convergence/Convergence Forte + 1. Définit le concepts de convergence + 2. Pourquoi ? + les apports de la convergence forte + 3. Types de données basés sur la convergence (poruquoi ?) + 4. Cohérence Pipeline + 1. On présente la notion d'Intention + 2. On l'oppose à la cohérence Pipeline + +6. Cohérence d'écriure + 1. Ce que ne couvre pas les modèles précedents + 2. Cohérence d'écriture et cohérence d'écriure forte. + diff --git a/docs/présentation_consistence_faible/wconsistency_properties/convergence_hc.tex b/docs/présentation_consistence_faible/wconsistency_properties/convergence_hc.tex new file mode 100644 index 0000000..fb60dce --- /dev/null +++ b/docs/présentation_consistence_faible/wconsistency_properties/convergence_hc.tex @@ -0,0 +1,41 @@ +\resizebox{\columnwidth}{!}{ + \begin{tikzpicture}[ + roundnode/.style={circle, draw=black, fill=black, very thick, minimum size=1pt,}, + ignorednode/.style={circle, draw=black!20, fill=black!20, very thick, minimum size=1pt,}, + arrow/.style={|->, thick,}, + message/.style={->, blue!50, dashed, -{Circle[length=4pt,]}}, + ] + + \node[roundnode] (11) {}; + \node[left] at (11.west) {$p_0$}; + \node[above] at (11.north) {$w(1)$}; + \node[roundnode] (12) [right=of 11] {}; + \node[above] at (12.north) {$I(a)$}; + \node[roundnode] (13) [right=of 12] {}; + \node[above] at (13.north) {$r/(0,1)$}; + \node[roundnode] (14) [right=35pt of 13] {}; + \node[above] at (14.north) {$r/(1,2)^w$}; + + \draw[arrow] (11) -- (12); + \draw[arrow] (12) -- (13); + \draw[arrow] (13) -- (14); + + \node[roundnode] (21) [below=of 11] {}; + \node[left] at (21.west) {$p_1$}; + \node[below] at (21.south) {$w(2)$}; + \node[roundnode] (22) [right=of 21] {}; + \node[below] at (22.south) {$R/\emptyset$}; + \node[roundnode] (23) [right=of 22] {}; + \node[below] at (23.south) {$r/(0,2)$}; + \node[roundnode] (24) [right=35pt of 23] {}; + \node[below] at (24.south) {$r/(1,2)^w$}; + + \draw[arrow] (21) -- (22); + \draw[arrow] (22) -- (23); + \draw[arrow] (23) -- (24); + + \draw (24) -- (14); + + \draw[dashed] ($(14)!0.5!(13) + (0,1)$) -- ++(0, -3.5); + \end{tikzpicture} +} \ No newline at end of file diff --git a/docs/présentation_consistence_faible/wconsistency_properties/index.tex b/docs/présentation_consistence_faible/wconsistency_properties/index.tex new file mode 100644 index 0000000..a5ddcbc --- /dev/null +++ b/docs/présentation_consistence_faible/wconsistency_properties/index.tex @@ -0,0 +1,144 @@ +\begin{frame} + \frametitle{Linéarisation} + % \begin{itemize} + % \end{itemize} +\end{frame} + +\begin{frame} + \frametitle{Sureté} + \begin{block}{Définition} + Toute lécture réalisé dans un même environement non-concurrent est identique. + \end{block} + \begin{figure} + \include{wconsitence_properties/linearisation_surete_hc} + \end{figure} +\end{frame} + +\begin{frame} + \frametitle{Régularité} + \begin{block}{Définition} + Une lécture concurrente à une écriture peut lire soit la valeur avant l'écriture, soit la valeur après l'écriture. + \end{block} + \begin{figure} + \include{wconsitence_properties/linearisation_regularite_hc} + \end{figure} +\end{frame} + +\begin{frame} + \frametitle{Atomicité} + \begin{block}{Définition} + Une lécture concurrente à une écriture peut lire soit la valeur avant l'écriture, soit la valeur après l'écriture. + \end{block} + \begin{figure} + \include{wconsitence_properties/linearisation_atomicite_hc} + \end{figure} +\end{frame} + +\begin{frame} + \frametitle{Convergence (EC)} + + \begin{columns} + \column{0.4\textwidth} + \include{wconsitence_properties/convergence_hc}% + \column{0.5\textwidth} + Il existe un ensemble cofini d'évenements dont chacun peut être justifier par la même linéarisation. \\ + \begin{math} + \begin{array}{ll} + e.g.: & E' = \{r/(1,2)^w, r/(1,2)^w\} \\ + & w(1) \bullet w(2) \bullet \textcolor{red}{r/(1,2)^w} \\ + \end{array} + \end{math} + \end{columns} + + + \begin{flushright} + \begin{math} + EC = \left\{ + \begin{array}{l} + \mathcal{T} \rightarrow \mathcal{P}(\mathcal{H}) \\ + T \rightarrow \left\{ + \begin{array}{lll} + H \in \mathcal{H}: & \multicolumn{2}{l}{|U_{T,H}| = \infty} \\ + & \lor & \exists E' \subset E_H, |E_H \setminus E'| < \infty \\ + & & \land \displaystyle\bigcap_{e \in E'} \delta_T^{-1}(\lambda(e)) \neq \emptyset \\ + \end{array} + \right. \\ + \end{array} + \right. + \end{math} + \end{flushright} +\end{frame} + + +\begin{frame} + \frametitle{Validité (V)} + + \begin{columns} + \column{0.4\textwidth} + \include{wconsitence_properties/validite_hc} + \column{0.6\textwidth} + Il existe, un ensemble cofini d'évenement tels que pour chacun d'entre eux une linéarisations de toutes les opérations d'écriture les justifient. \\ + \begin{math} + \begin{array}{ll} + e.g.: & E' = \{r/(2,1)^w, r/(1,2)^w\} \\ + & w(2) \bullet w(1) \bullet \textcolor{red}{r/(2,1)^w} \\ + & w(1) \bullet w(2) \bullet \textcolor{red}{r/(1,2)^w} \\ + \end{array} + \end{math} + \end{columns} + + + \begin{flushright} + \begin{math} + V = \left\{ + \begin{array}{l} + \mathcal{T} \rightarrow \mathcal{P}(\mathcal{H}) \\ + T \rightarrow \left\{ + \begin{array}{lll} + H \in \mathcal{H}: & \multicolumn{2}{l}{|U_{T,H}| = \infty} \\ + & \lor & \exists E' \subset E_H, (|E_H \setminus E'| < \infty \\ + & & \land \forall e \in E', lin(H[E_H / {e}]) \cap L(T) \neq \emptyset) \\ + \end{array} + \right. \\ + \end{array} + \right. + \end{math} + \end{flushright} +\end{frame} + +\begin{frame} + \frametitle{Localité d'état (LS)} + + \begin{columns} + \column{0.4\textwidth} + \include{wconsitence_properties/localiteetat_hc} + \column{0.6\textwidth} + Pour tout processus $p$, il existe une linéarisation contenant toutes les lectures pures de $p$ rendant l'histoire cohérente. \\ + \begin{math} + \begin{array}{ll} + e.g.: & \textcolor{blue}{C_{p_1} = \{r/(0,0), r/(0,2)^w, w(2)\}}, \\ + & \textcolor{red}{C_{p_2} = \{r/(0,0), r/(0,1)^w, w(1)\}}, \\ + & \textcolor{blue}{r/(0,0) \bullet w(2) \bullet r/(0,2)^w} \\ + & \textcolor{red}{r/(0,0) \bullet w(1) \bullet r/(0,1)^w} \\ + \end{array} + \end{math} + \end{columns} + + + \begin{flushright} + \begin{math} + LS = \left\{ + \begin{array}{l} + \mathcal{T} \rightarrow \mathcal{P}(\mathcal{H}) \\ + T \rightarrow \left\{ + \begin{tabular}{lll} + $H \in \mathcal{H}:$ & \multicolumn{2}{l}{$\forall p \in \mathcal{P}_H, \exists C_p \subset E_H,$} \\ + & & $\hat{Q}_{T,H} \subset C_p$ \\ + & $\land$ & $lin(H[p \cap C_p / C_p]) \cap L(T) \neq \emptyset$ \\ + \end{tabular} + \right. \\ + \end{array} + \right. + \end{math} + \end{flushright} +\end{frame} \ No newline at end of file diff --git a/docs/présentation_consistence_faible/wconsistency_properties/linearisation_atomicite_hc.tex b/docs/présentation_consistence_faible/wconsistency_properties/linearisation_atomicite_hc.tex new file mode 100644 index 0000000..c5080c1 --- /dev/null +++ b/docs/présentation_consistence_faible/wconsistency_properties/linearisation_atomicite_hc.tex @@ -0,0 +1,31 @@ +\resizebox{\columnwidth}{!}{% + \begin{tikzpicture}[ + roundedrectangle/.style={draw, rounded corners, rectangle, minimum height=10pt, minimum width=20pt}, + invisible/.style={draw=none, fill=none}, + ] + + \node[invisible] (10) {}; + \node[roundedrectangle] (11) [right=60pt of 10] {\textcolor{blue}{$r_x(0,0)$}}; + \node[roundedrectangle, minimum width=100pt] (12) [right=50pt of 11] {$w_x(1)$}; + \node[invisible] (13) [right=100pt of 12] {}; + + \node[invisible] (20) [below=15pt of 10] {}; + \node[roundedrectangle] (21) [right=20pt of 20] {\textcolor{blue}{$r_x/(0,0)$}}; + \node[roundedrectangle] (22) [right=50pt of 21] {\textcolor{red}{$r_x/(0,1)$}}; + \node[roundedrectangle] (23) [right=15pt of 22] {\textcolor{red}{$r_x/(0,1)$}}; + \node[roundedrectangle] (24) [right=10pt of 23] {\textcolor{red}{$r_x/(0,1)$}}; + \node[roundedrectangle] (25) [right=20pt of 24] {\textcolor{red}{$r_x/(0,1)$}}; + \node[invisible] (26) [below=15pt of 13] {}; + + \node[invisible] (30) [below=15pt of 20] {}; + \node[roundedrectangle] (31) [right=30pt of 30] {\textcolor{blue}{$r_x/(0,0)$}}; + \node[roundedrectangle] (32) [right=55pt of 31] {\textcolor{blue}{$r_x/(0,0)$}}; + \node[roundedrectangle] (33) [right=15pt of 32] {\textcolor{red}{$r_x/(0,1)$}}; + \node[roundedrectangle] (34) [right=25pt of 33] {\textcolor{red}{$r_x/(0,1)$}}; + \node[invisible] (35) [below=15pt of 26] {}; + + \draw (10) -- (11) -- (12) -- (13); + \draw (20) -- (21) -- (22) -- (23) -- (24) -- (25) -- (26); + \draw (30) -- (31) -- (32) -- (33) -- (34) -- (35); + \end{tikzpicture} +} \ No newline at end of file diff --git a/docs/présentation_consistence_faible/wconsistency_properties/linearisation_regularite_hc.tex b/docs/présentation_consistence_faible/wconsistency_properties/linearisation_regularite_hc.tex new file mode 100644 index 0000000..8b5b483 --- /dev/null +++ b/docs/présentation_consistence_faible/wconsistency_properties/linearisation_regularite_hc.tex @@ -0,0 +1,23 @@ +\resizebox{\columnwidth}{!}{% + \begin{tikzpicture}[ + roundedrectangle/.style={draw, rounded corners, rectangle, minimum height=10pt, minimum width=20pt}, + invisible/.style={draw=none, fill=none}, + ] + + \node[invisible] (10) {}; + \node[roundedrectangle] (11) [right=60pt of 10] {\textcolor{blue}{$r_x(0,0)$}}; + \node[roundedrectangle, minimum width=100pt] (12) [right=50pt of 11] {$w_x(1)$}; + \node[invisible] (13) [right=100pt of 12] {}; + + \node[invisible] (20) [below=15pt of 10] {}; + \node[roundedrectangle] (21) [right=20pt of 20] {\textcolor{blue}{$r_x/(0,0)$}}; + \node[roundedrectangle] (22) [right=50pt of 21] {\textcolor{red!70}{$r_x/(0,1)$}}; + \node[roundedrectangle] (23) [right=15pt of 22] {\textcolor{blue!70}{$r_x/(0,0)$}}; + \node[roundedrectangle] (24) [right=10pt of 23] {\textcolor{blue!70}{$r_x/(0,0)$}}; + \node[roundedrectangle] (25) [right=20pt of 24] {\textcolor{red}{$r_x/(0,1)$}}; + \node[invisible] (26) [below=15pt of 13] {}; + + \draw (10) -- (11) -- (12) -- (13); + \draw (20) -- (21) -- (22) -- (23) -- (24) -- (25) -- (26); + \end{tikzpicture} +} \ No newline at end of file diff --git a/docs/présentation_consistence_faible/wconsistency_properties/linearisation_surete_hc.tex b/docs/présentation_consistence_faible/wconsistency_properties/linearisation_surete_hc.tex new file mode 100644 index 0000000..581e7db --- /dev/null +++ b/docs/présentation_consistence_faible/wconsistency_properties/linearisation_surete_hc.tex @@ -0,0 +1,22 @@ +\resizebox{\columnwidth}{!}{% + \begin{tikzpicture}[ + roundedrectangle/.style={draw, rounded corners, rectangle, minimum height=10pt, minimum width=20pt}, + invisible/.style={draw=none, fill=none}, + ] + + \node[invisible] (10) {}; + \node[roundedrectangle] (11) [right=60pt of 10] {\textcolor{blue}{$r_x(0,0)$}}; + \node[roundedrectangle, minimum width=100pt] (12) [right=50pt of 11] {$w_x(1)$}; + \node[invisible] (13) [right=65pt of 12] {}; + + \node[invisible] (20) [below=15pt of 10] {}; + \node[roundedrectangle] (21) [right=20pt of 20] {\textcolor{blue}{$r_x/(0,0)$}}; + \node[roundedrectangle] (22) [right=25pt of 21] {\textcolor{blue}{$r_x/(0,0)$}}; + \node[roundedrectangle] (23) [right=30pt of 22] {\textcolor{black!70}{$r_x/(?)$}}; + \node[roundedrectangle] (24) [right=55pt of 23] {\textcolor{red}{$r_x/(0,1)$}}; + \node[invisible] (25) [below=15pt of 13] {}; + + \draw (10) -- (11) -- (12) -- (13); + \draw (20) -- (21) -- (22) -- (23) -- (24) -- (25); + \end{tikzpicture} +} \ No newline at end of file diff --git a/docs/présentation_consistence_faible/wconsistency_properties/localiteetat_hc.tex b/docs/présentation_consistence_faible/wconsistency_properties/localiteetat_hc.tex new file mode 100644 index 0000000..3d46230 --- /dev/null +++ b/docs/présentation_consistence_faible/wconsistency_properties/localiteetat_hc.tex @@ -0,0 +1,34 @@ +\resizebox{\columnwidth}{!}{% + \begin{tikzpicture}[ + roundnode/.style={circle, draw=black, fill=black, very thick, minimum size=1pt,}, + ignorednode/.style={circle, draw=black!20, fill=black!20, very thick, minimum size=1pt,}, + arrow/.style={|->, thick,}, + message/.style={->, blue!50, dashed, -{Circle[length=4pt,]}}, + ] + + \node[roundnode, draw=red, fill=red] (11) {}; + \node[left] at (11.west) {$p_0$}; + \node[above] at (11.north) {$w(1)$}; + \node[roundnode, draw=blue, fill=blue] (12) [right=of 11] {}; + \node[above] at (12.north) {$r/(0,0)$}; + \node[roundnode, draw=blue, fill=blue] (13) [right=of 12] {}; + \node[above] at (13.north) {$r/(0,2)^w$}; + + \draw[arrow] (11) -- (12); + \draw[arrow] (12) -- (13); + + \node[roundnode, draw=blue, fill=blue] (21) [below=of 11] {}; + \node[left] at (21.west) {$p_1$}; + \node[below] at (21.south) {$w(2)$}; + \node[roundnode, draw=red, fill=red] (22) [right=of 21] {}; + \node[below] at (22.south) {$r/(0,0)$}; + \node[roundnode, draw=red, fill=red] (23) [right=of 22] {}; + \node[below] at (23.south) {$r/(0,1)^w$}; + + \draw[arrow] (21) -- (22); + \draw[arrow] (22) -- (23); + + \draw[message] (11) -- ($(22)!0.5!(23)$); + \draw[message] (21) -- ($(12)!0.5!(13)$); + \end{tikzpicture} +} \ No newline at end of file diff --git a/docs/présentation_consistence_faible/wconsistency_properties/validite_hc.tex b/docs/présentation_consistence_faible/wconsistency_properties/validite_hc.tex new file mode 100644 index 0000000..3d46230 --- /dev/null +++ b/docs/présentation_consistence_faible/wconsistency_properties/validite_hc.tex @@ -0,0 +1,34 @@ +\resizebox{\columnwidth}{!}{% + \begin{tikzpicture}[ + roundnode/.style={circle, draw=black, fill=black, very thick, minimum size=1pt,}, + ignorednode/.style={circle, draw=black!20, fill=black!20, very thick, minimum size=1pt,}, + arrow/.style={|->, thick,}, + message/.style={->, blue!50, dashed, -{Circle[length=4pt,]}}, + ] + + \node[roundnode, draw=red, fill=red] (11) {}; + \node[left] at (11.west) {$p_0$}; + \node[above] at (11.north) {$w(1)$}; + \node[roundnode, draw=blue, fill=blue] (12) [right=of 11] {}; + \node[above] at (12.north) {$r/(0,0)$}; + \node[roundnode, draw=blue, fill=blue] (13) [right=of 12] {}; + \node[above] at (13.north) {$r/(0,2)^w$}; + + \draw[arrow] (11) -- (12); + \draw[arrow] (12) -- (13); + + \node[roundnode, draw=blue, fill=blue] (21) [below=of 11] {}; + \node[left] at (21.west) {$p_1$}; + \node[below] at (21.south) {$w(2)$}; + \node[roundnode, draw=red, fill=red] (22) [right=of 21] {}; + \node[below] at (22.south) {$r/(0,0)$}; + \node[roundnode, draw=red, fill=red] (23) [right=of 22] {}; + \node[below] at (23.south) {$r/(0,1)^w$}; + + \draw[arrow] (21) -- (22); + \draw[arrow] (22) -- (23); + + \draw[message] (11) -- ($(22)!0.5!(23)$); + \draw[message] (21) -- ($(12)!0.5!(13)$); + \end{tikzpicture} +} \ No newline at end of file diff --git a/recherches/perrin.md b/recherches/perrin.md index 54e31f7..37f2678 100644 --- a/recherches/perrin.md +++ b/recherches/perrin.md @@ -107,4 +107,19 @@ Le concept de cohérence d'écriture vise donc à spécifier cette propriété. ### Cohérence d'écriture forte (Faible) -La cohérence d'écriture forte est une extension de la cohérence d'écriture qui rajoute un ordre dans les opérations d'écriture. Ceci permet d'assurer que chaque opération soient faites dans le même état et assure donc une convergence plus "rapide". \ No newline at end of file +La cohérence d'écriture forte est une extension de la cohérence d'écriture qui rajoute un ordre dans les opérations d'écriture. Ceci permet d'assurer que chaque opération soient faites dans le même état et assure donc une convergence plus "rapide". + +## Cohérence causale + +### Cohérence Causale Faible + +Cohérence direct avec son passé local, et respect de cette cohérence avec les autres processus par transitivité. Aucune préservation de l'ordre des opérations. +Résultat potentiellement divergents ? + +### Convergence Causale + +Rajout de la notion d'ordre totale. Qui permet de garantir la convergence du résultat. + +### Cohérence Causale + +Cohérence avec les écritures du passé causal et des lectures du passé local. \ No newline at end of file