// ------------------------------------------------------------
// The exit protocol is simple: all we have to do is to
// increase served_ticket so that the next customer will
// be served.
// ------------------------------------------------------------
package Communication.MutexProtocols.TicketMu;

// number of processes
macro NumProc = 4;

module ExitProtocol(int{NumProc()} served_ticket,bool !done) {
   next(served_ticket) = (served_ticket+1);
   done = true;
   next(done) = false;
}