The environment of a an Initialized 1-Bit Variable must guarantee mutual exlusion of the signals on w0 and w1. In contrast to an Initialized Non-Receptive 1-Bit Variable, the environment need not guarantee mutual exclusion between the write and read inputs. However, when reading the variable and changing its value through a write, the returned value is not prescribed.
Specification in Verdect:
define VAR( w0?, w1?, a!, r?, v0!, v1! ) = |[ x0, x1, y0, y1 :: pref *[ (w0?; x0 | w1?; x1); a! ] || pref *[ r?; (y0; v0! | y1; v1!) ] || pref (( *[y0] | *[y1] ); *[ x0; *[y0] | x1; *[y1] ]) ]| endAlso available through this link
Specification in DI Algebra:
NAME = (Initialized 1 bit variable with arbitration) I = { w0, w1, r } O = { v0, v1, a } V = V0 V0 = [w0? -> a!; V0 , w1? -> a!; V1 , r? -> v0!; V0] V1 = [w0? -> a!; V0 , w1? -> a!; V1 , r? -> v1!; V1] .Also available through this link
No information available
No information available
No information available
No information available
No information available