record state =
token :: "nat"
proc :: "nat => pstate"
definition HasTok :: "nat => state set"where "HasTok i == {s. token s = i}"
definition H :: "nat => state set"where "H i == {s. proc s i = Hungry}"
definition E :: "nat => state set"where "E i == {s. proc s i = Eating}"
definition T :: "nat => state set"where "T i == {s. proc s i = Thinking}"
locale Token = fixes N and F and nodeOrder and"next" defines nodeOrder_def: "nodeOrder j == measure(%i. ((j+N)-i) mod N) \ {.. {.. and next_def: "next i == (Suc i) mod N" assumes N_positive [iff]: "0 and TR2: "F \ (T i) co (T i \ H i)" and TR3: "F \ (H i) co (H i \ E i)" and TR4: "F \ (H i - HasTok i) co (H i)" and TR5: "F \ (HasTok i) co (HasTok i \ -(E i))" and TR6: "F \ (H i \ HasTok i) leadsTo (E i)" and TR7: "F \ (HasTok i) leadsTo (HasTok (next i))"
lemma HasToK_partition: "[| s \ HasTok i; s \ HasTok j |] ==> i=j" by (unfold HasTok_def, auto)
lemma not_E_eq: "(s \ E i) = (s \ H i | s \ T i)" apply (simp add: H_def E_def T_def) apply (cases "proc s i", auto) done
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.