Counter
Z
$Counter \defs [ n : \nat | n \geq 0 ] $
$Counter::Incr \defs [ \%D Counter, v? : \nat | n' = n + v? ]$
$Counter::Decr \defs [ \%D Counter | n > 0; n' = n - 1 ]$
$Counter::Value \defs [ \%X Counter; v! : \nat | v! = n ]$
Bounded counter
$Bounded::Counter \defs [ Counter | n \leq Max ]$
$Bounded::Incr \defs [ Counter::Incr | n < Max ]$
slide: An alternative specification of the Counter