ADoverAB v2

This commit is contained in:
Amaury JOLY 2025-05-02 07:22:19 +00:00
parent 01f1e546d4
commit 39707197ef
5 changed files with 78 additions and 23 deletions

View File

@ -1,14 +1,43 @@
We define $k$ as the id of the round \\ We define $k$ as the id of the round \\
the $getMax(..)$ function able to return the highest round played in the system. the $getMax(proves)$ return $MAX({(\_, r) : \exists (\_, PROVE(r)) \in proves})$ \\
$buffer$ a FIFO list with $buffer[front]$ returning the first element
% \begin{algorithm}[H]
% \DontPrintSemicolon
% \SetAlgoLined
% \KwIn{le message $m$}
% \BlankLine
% \While{true}{
% proves = READ() \\
% k = getMax(dump) + 1 \\
% APPEND(k || m) \\
% \If{PROVE(k)}{
% APPEND(k) \\
% return
% }
% }
% \caption{AB\_Broadcast}
% \end{algorithm}
\begin{algorithm}[H] \begin{algorithm}[H]
\DontPrintSemicolon \DontPrintSemicolon
\SetAlgoLined \SetAlgoLined
\KwIn{le message $m$} \KwIn{le message $m$}
\BlankLine \BlankLine
k\_max = getMax(READ()) \\
\While{buffer $\neq [\emptyset] $}{
(i, m) = buffer[front] \\
\textbf{wait} PROVE(k\_max || m) = false \\
proves = READ() \\
\If{$((i, PROVE(k\_max || m)) \in proves) \wedge ((i, PROVE(k\_max)) \in proves)$}{
$buffer = buffer - \{(i, m)\}$
}
}
\BlankLine
\While{true}{ \While{true}{
proves = READ() \\ proves = READ() \\
k = getMax(dump) + 1 \\ k = getMax(proves) + 1 \\
PROVE(k || m) \\
APPEND(k || m) \\ APPEND(k || m) \\
\If{PROVE(k)}{ \If{PROVE(k)}{
APPEND(k) \\ APPEND(k) \\
@ -18,29 +47,55 @@ the $getMax(..)$ function able to return the highest round played in the system.
\caption{AB\_Broadcast} \caption{AB\_Broadcast}
\end{algorithm} \end{algorithm}
We define $k\_max$ as an intager \\ $proves_r = {(i, r) : \forall i, \exists (i, PROVE(r)) \in proves}$ \\
$getMax(..)$ function able to return the highest round played in the system. \\ $proves_r^i = ((i, r) : \exists (i, PROVE(r)) \in proves)$ ?? NULL \\
% $proves_r$ as the sub set of proves with only the valid proves associated to the round r \\
$proves_r \subseteq proves$ s.a. $\forall PROVE(x) \in proves_r$, x is in the form $r || m$ with $m$ who cannot be empty \\ % $proves_r \subseteq proves$ s.a. $\forall PROVE(x) \in proves_r$, x is in the form $r || m$ with $m$ who cannot be empty \\
$proves_r^i$ is the $PROVE(r || m )$ operation submited by the process i if exist \\ % $proves_r^i$ is the $PROVE(r || m )$ operation submited by the process i if exist \\
\begin{algorithm}[H] \begin{algorithm}[H]
\DontPrintSemicolon \DontPrintSemicolon
\SetAlgoLined \SetAlgoLined
buffer = $[\emptyset]$ \\
k = 0 \\
\BlankLine \BlankLine
\While{true}{ \While{true}{
proves = READ() \\ proves = READ() \\
k\_max = getMax(proves) \\ k\_max = getMax(proves) \\
\For{r=k+1 \emph{\KwTo} k\_max}{ \For{r=k+1 \emph{\KwTo} k\_max}{
APPEND(r)\\ APPEND(r)\\
$proves_r$ = \{$\forall i, PROVE(r)_i \in READ()$\} \\
\For{i = 1 \emph{\KwTo} $|P|$}{ \For{i = 1 \emph{\KwTo} $|P|$}{
\If{$\exists PROVE(r)_i \in proves_r$}{ \If{$(\exists m : \exists(i, PROVE(r || m)) \in proves)$}{
AB\_Recv($m$ s.t. $PROVE(r || m) \in proves$) \uIf{$(\exists(i, PROVE(r)) \in proves)$} {
AB\_Recv(m)
}
\Else{
$buffer = buffer \cup \{(i, m)\}$
}
} }
} }
} }
} }
\caption{AB\_Listen}
\end{algorithm}
\caption{AB\_Listen} % \begin{algorithm}[H]
\end{algorithm} % \DontPrintSemicolon
% \SetAlgoLined
% \BlankLine
% \While{true}{
% proves = READ() \\
% k\_max = getMax(proves) \\
% \For{r=k+1 \emph{\KwTo} k\_max}{
% APPEND(r)\\
% $proves_r$ = \{$\forall i, PROVE(r)_i \in READ()$\} \\
% \For{i = 1 \emph{\KwTo} $|P|$}{
% \If{$\exists PROVE(r)_i \in proves_r$}{
% AB\_Recv($m$ s.t. $PROVE(r || m) \in proves$)
% }
% }
% }
% }
% \caption{AB\_Listen}
% \end{algorithm}

View File

@ -1,12 +1,12 @@
# Fdb version 4 # Fdb version 4
["biber main"] 0 "main.bcf" "main.bbl" "main" 1745574630.97508 -1 ["biber main"] 0 "main.bcf" "main.bbl" "main" 1746004825.89207 -1
"main.bcf" 1745574630.93019 108486 d8549f9e7d9f09af6a94b466d27b9f55 "pdflatex" "main.bcf" 1746004825.84735 108486 d8549f9e7d9f09af6a94b466d27b9f55 "pdflatex"
"sources.bib" 1745505510 0 d41d8cd98f00b204e9800998ecf8427e "" "sources.bib" 1745505510 0 d41d8cd98f00b204e9800998ecf8427e ""
(generated) (generated)
"main.bbl" "main.bbl"
"main.blg" "main.blg"
(rewritten before read) (rewritten before read)
["pdflatex"] 1745574630.5147 "/workspaces/containers/recherches/ALDLoverAB/main.tex" "main.pdf" "main" 1745574630.97528 0 ["pdflatex"] 1746004825.45178 "/workspaces/containers/recherches/ALDLoverAB/main.tex" "main.pdf" "main" 1746004825.89228 0
"/usr/local/texlive/2025/texmf-dist/fonts/enc/dvips/cm-super/cm-super-t1.enc" 1136849721 2971 def0b6c1f0b107b3b936def894055589 "" "/usr/local/texlive/2025/texmf-dist/fonts/enc/dvips/cm-super/cm-super-t1.enc" 1136849721 2971 def0b6c1f0b107b3b936def894055589 ""
"/usr/local/texlive/2025/texmf-dist/fonts/map/fontname/texfonts.map" 1577235249 3524 cb3e574dea2d1052e39280babc910dc8 "" "/usr/local/texlive/2025/texmf-dist/fonts/map/fontname/texfonts.map" 1577235249 3524 cb3e574dea2d1052e39280babc910dc8 ""
"/usr/local/texlive/2025/texmf-dist/fonts/tfm/jknappen/ec/ecbx0700.tfm" 1136768653 3584 ca0c423beaacd28d53ddce5a826cd558 "" "/usr/local/texlive/2025/texmf-dist/fonts/tfm/jknappen/ec/ecbx0700.tfm" 1136768653 3584 ca0c423beaacd28d53ddce5a826cd558 ""
@ -82,11 +82,11 @@
"/usr/local/texlive/2025/texmf-var/web2c/pdftex/pdflatex.fmt" 1743313810 3345755 ba2ca5aadbc395a8eb3e969a7d392ec2 "" "/usr/local/texlive/2025/texmf-var/web2c/pdftex/pdflatex.fmt" 1743313810 3345755 ba2ca5aadbc395a8eb3e969a7d392ec2 ""
"/usr/local/texlive/2025/texmf.cnf" 1743313649 455 5b996dcaa0eb4ef14a83b026bc0a008c "" "/usr/local/texlive/2025/texmf.cnf" 1743313649 455 5b996dcaa0eb4ef14a83b026bc0a008c ""
"/workspaces/containers/recherches/ALDLoverAB/main.tex" 1745569300.58113 728 260366a29ef55ffa4b47d22972e9e4f8 "" "/workspaces/containers/recherches/ALDLoverAB/main.tex" 1745569300.58113 728 260366a29ef55ffa4b47d22972e9e4f8 ""
"algo/index.tex" 1745574630.33418 1273 3b61b9dc0dc01e4c5129081738b6a6eb "" "algo/index.tex" 1746004825.26138 2503 f07bfa513519f147d955354146846757 ""
"intro/index.tex" 1745569389.83114 2291 8451d9b4ced1f44c45b59e7619773077 "" "intro/index.tex" 1745569389.83114 2291 8451d9b4ced1f44c45b59e7619773077 ""
"main.aux" 1745574630.92919 1267 145af77271d4d82823c8622c1004e8b1 "pdflatex" "main.aux" 1746004825.84535 1267 145af77271d4d82823c8622c1004e8b1 "pdflatex"
"main.bbl" 1745511552 466 76d65a242ec496c9b4361af646ff12cb "biber main" "main.bbl" 1745511552 466 76d65a242ec496c9b4361af646ff12cb "biber main"
"main.run.xml" 1745574630.93119 2301 7adc9b5a22e7927ebfdd8580ad5d647d "pdflatex" "main.run.xml" 1746004825.84735 2301 7adc9b5a22e7927ebfdd8580ad5d647d "pdflatex"
"main.tex" 1745569300.58113 728 260366a29ef55ffa4b47d22972e9e4f8 "" "main.tex" 1745569300.58113 728 260366a29ef55ffa4b47d22972e9e4f8 ""
(generated) (generated)
"main.aux" "main.aux"

View File

@ -1,4 +1,4 @@
This is pdfTeX, Version 3.141592653-2.6-1.40.27 (TeX Live 2025) (preloaded format=pdflatex 2025.3.30) 25 APR 2025 09:50 This is pdfTeX, Version 3.141592653-2.6-1.40.27 (TeX Live 2025) (preloaded format=pdflatex 2025.3.30) 30 APR 2025 09:20
entering extended mode entering extended mode
restricted \write18 enabled. restricted \write18 enabled.
file:line:error style messages enabled. file:line:error style messages enabled.
@ -459,7 +459,7 @@ Underfull \hbox (badness 10000) in paragraph at lines 34--39
) (./algo/index.tex ) (./algo/index.tex
[1] [1]
Underfull \hbox (badness 10000) in paragraph at lines 21--26 Underfull \hbox (badness 10000) in paragraph at lines 50--52
[] []
@ -481,13 +481,13 @@ Package logreq Info: Writing requests to 'main.run.xml'.
Here is how much of TeX's memory you used: Here is how much of TeX's memory you used:
12400 strings out of 473190 12400 strings out of 473190
234983 string characters out of 5715806 234983 string characters out of 5715806
1086239 words of memory out of 5000000 1088239 words of memory out of 5000000
35571 multiletter control sequences out of 15000+600000 35571 multiletter control sequences out of 15000+600000
566378 words of font info for 46 fonts, out of 8000000 for 9000 566378 words of font info for 46 fonts, out of 8000000 for 9000
1141 hyphenation exceptions out of 8191 1141 hyphenation exceptions out of 8191
66i,21n,81p,738b,1731s stack positions out of 10000i,1000n,20000p,200000b,200000s 66i,24n,81p,738b,1731s stack positions out of 10000i,1000n,20000p,200000b,200000s
</usr/local/texlive/2025/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi10.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi7.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/amsfonts/cm/cmr7.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfbx0700.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfbx1000.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfbx1200.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfbx1440.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfrm1000.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfrm1200.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfrm1728.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfti1000.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfti1200.pfb> </usr/local/texlive/2025/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi10.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi7.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/amsfonts/cm/cmr7.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfbx0700.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfbx1000.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfbx1200.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfbx1440.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfrm1000.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfrm1200.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfrm1728.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfti1000.pfb></usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfti1200.pfb>
Output written on main.pdf (3 pages, 204949 bytes). Output written on main.pdf (3 pages, 212161 bytes).
PDF statistics: PDF statistics:
85 PDF objects out of 1000 (max. 8388607) 85 PDF objects out of 1000 (max. 8388607)
51 compressed objects within 1 object stream 51 compressed objects within 1 object stream

Binary file not shown.