1

Table de synchronisation
VG |
VD |
P |
C |
S |
E |
- |
G |
entrée |
EG |
Q |
- |
- |
sortie |
QG |
- |
E |
D |
entrée |
ED |
- |
Q |
- |
sortie |
QD |
- |
- |
C |
TV |
C |
Formule LTL
\varphi = G\neg (\text{Sur1} \wedge \text{Sur2})
2
0 process P1() {
1 while (true) {
2 non_critique_1;
3 wantP1 = 1:
4 while (wantP2 == 1) {
5 if (turn == 2) {
6 wantP1 = 0;
7 while (turn != 1);
8 wantP1 = 1; } }
9 critique_1;
10 turn = 2;
11 wantP1 = 0; } }

Table de synchronisation
W1 |
W2 |
turn |
P1 |
P2 |
dem |
- |
- |
dem1 |
|
ren |
- |
- |
ren1 |
|
- |
- |
T1 |
mon tour |
|
- |
- |
T2 |
pas mon tour |
|
- |
T1 |
- |
il veut |
|
- |
T0 |
- |
il veut pas |
|