SPECIFICATION SafetySpec CHECK_DEADLOCK TRUE \* Global contention: local capacity does not constrain the global limit. CONSTANTS Jobs = {j1, j2} Workers = {w1, w2} InitialWorkers = {w1, w2} NoJob = NoJob NoWorker = NoWorker MaxAttempts = 1 MaxProgress = 1 LeaseLimit = 1 ReservationLimit = 1 LocalLimit = 2 GlobalLimit = 1 FaultsEnabled = FALSE FaultServices = {} MaxCoordLosses = 0 MaxPartitions = 0 MaxCredentialIntents = 0 INVARIANTS TypeOK StateConsistency AllocatedTokensUsed LiveProgressWellFormed LiveProgressCompatibleWithLiveLease AtMostOneLiveLeasePerJob AuthorityWellFormed CommittedResultConsistent CancellationSafety PermitSafety ResumeValidity CheckpointStagingOwnership StagingOwnership CredentialLifecycleWellFormed NoOrphanSecrets PROPERTIES TerminalStateIsImmutable FencingTokensMonotonic CommitIsFencedCAS FailureDispositionHonored