Pr-1st-1.1-m02-Slajd44: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Szopen (dyskusja | edycje)
Nie podano opisu zmian
 
m Zastępowanie tekstu – „ </math>” na „</math>”
 
(Nie pokazano 1 wersji utworzonej przez jednego użytkownika)
Linia 8: Linia 8:
# jeżeli <math>\mathcal{X} \subset \mathcal{D}_i</math> i  
# jeżeli <math>\mathcal{X} \subset \mathcal{D}_i</math> i  
<math>\mathcal{X} \ne \emptyset</math>, to:  
<math>\mathcal{X} \ne \emptyset</math>, to:  
:<math>activate_i(\mathcal{X}) \equiv \exists\mathcal{X}' :: \mathcal{X}' \ne \emptyset \land \mathcal{X}' \subseteq \mathcal{X} \land (\mathcal{P}_i^A = \mathcal{X}' \Rightarrow ( passive_i \leftrightsquigarrow \neg passive_i ))</math>
:<math>activate_i(\mathcal{X}) \equiv \exists\mathcal{X}' :: \mathcal{X}' \ne \emptyset \land \mathcal{X}' \subseteq \mathcal{X} \land (\mathcal{P}_i^A = \mathcal{X}' \Rightarrow ( passive_i  
gdzie <math>passive_i \leftrightsquigarrow \neg passive_i</math>  oznacza, że pasywny proces <math>P_i</math> zmieni swój stan na aktywny w skończonym choć nieprzewidywalnym czasie.
\leftrightsquigarrow \neg passive_i ))</math>
gdzie <math>passive_i \leftrightsquigarrow \neg passive_i</math>   
oznacza, że pasywny proces <math>P_i</math> zmieni swój stan na aktywny w skończonym choć nieprzewidywalnym czasie.


Predykat <math>activate_i(\mathcal{X})</math> zachodzi zatem wtedy i tylko wtedy, gdy w związku z nadejściem (dostępnością) wiadomości od procesów tworzących zbiór <math>\mathcal{X}' \subseteq \mathcal{X} </math> (<math>\mathcal{P}_i^A = \mathcal{X}'</math>) gotowe stanie się którekolwiek z dopuszczalnych zdarzeń odbioru. Innymi słowy predykat <math>activate_i(\mathcal{X})</math> zachodzi, jeżeli dostarczenie wiadomości od wszystkich procesów <math>P_j \in \mathcal{X}</math> umożliwia uaktywnienie procesu <math>P_i</math>Jak łatwo zauważyć, predykat ten posiada właściwość monotoniczności: jeżeli  
Predykat <math>activate_i(\mathcal{X})</math> zachodzi zatem wtedy i tylko wtedy, gdy w związku z nadejściem (dostępnością) wiadomości od procesów tworzących zbiór <math>\mathcal{X}' \subseteq \mathcal{X}</math> (<math>\mathcal{P}_i^A = \mathcal{X}'</math>) gotowe stanie się którekolwiek z dopuszczalnych zdarzeń odbioru. Innymi słowy predykat <math>activate_i(\mathcal{X})</math> zachodzi, jeżeli dostarczenie wiadomości od wszystkich procesów <math>P_j \in \mathcal{X}</math> umożliwia uaktywnienie procesu <math>P_i</math>Jak łatwo zauważyć, predykat ten posiada właściwość monotoniczności: jeżeli  
<math>\mathcal{X}\subseteq\mathcal{Y}</math> i <math>activate_i(\mathcal{X}) = True </math>, to
<math>\mathcal{X}\subseteq\mathcal{Y}</math> i <math>activate_i(\mathcal{X}) = True</math>, to
<math>activate_i(\mathcal{Y}) = True </math>.
<math>activate_i(\mathcal{Y}) = True</math>.


[[pr-1st-1.1-m02-Slajd43 | << Poprzedni slajd]] | [[pr-1st-1.1-m02-toc|Spis treści ]] | [[pr-1st-1.1-m02-Slajd45 | Następny slajd >>]]
[[pr-1st-1.1-m02-Slajd43 | << Poprzedni slajd]] | [[pr-1st-1.1-m02-toc|Spis treści ]] | [[pr-1st-1.1-m02-Slajd45 | Następny slajd >>]]

Aktualna wersja na dzień 10:46, 5 wrz 2023

Predykat activate

Predykat activate

Z kolei predykat activatei(𝒳) zdefiniowany jest w sposób następujący:

  1. jeżeli 𝒳=𝒟i, to activatei(𝒳)=True
  2. jeżeli 𝒳=, to activatei(𝒳)=False
  3. jeżeli 𝒳𝒟i i

𝒳, to:

activatei(𝒳)𝒳::𝒳𝒳𝒳(𝒫iA=𝒳(passivei¬passivei))

gdzie passivei¬passivei oznacza, że pasywny proces Pi zmieni swój stan na aktywny w skończonym choć nieprzewidywalnym czasie.

Predykat activatei(𝒳) zachodzi zatem wtedy i tylko wtedy, gdy w związku z nadejściem (dostępnością) wiadomości od procesów tworzących zbiór 𝒳𝒳 (𝒫iA=𝒳) gotowe stanie się którekolwiek z dopuszczalnych zdarzeń odbioru. Innymi słowy predykat activatei(𝒳) zachodzi, jeżeli dostarczenie wiadomości od wszystkich procesów Pj𝒳 umożliwia uaktywnienie procesu PiJak łatwo zauważyć, predykat ten posiada właściwość monotoniczności: jeżeli 𝒳𝒴 i activatei(𝒳)=True, to activatei(𝒴)=True.

<< Poprzedni slajd | Spis treści | Następny slajd >>