🤖 AI Summary
This paper addresses the verification of concurrency correctness for shared communication channels in process-oriented languages with cooperative scheduling (e.g., ProcessJ). It proposes explicitly modeling the runtime environment—particularly resource supply capacity—within formal verification frameworks. Methodologically, it employs CSP to abstractly specify and concretely implement shared channels, and conducts refinement verification using the FDR tool. The key contribution is the identification and formal demonstration that channel behavioral correctness depends not only on program logic but critically on the sufficiency of runtime resources; thus, conventional verification models that omit environmental constraints are fundamentally inadequate. Experimental evaluation confirms that this environment-aware modeling strategy effectively bridges the gap between formal specifications and actual execution behavior, establishing a new paradigm for concurrent system verification that reconciles theoretical rigor with engineering realism.
📝 Abstract
Correct concurrent behaviour is important in understanding how components will act within certain conditions. In this work. we analyse the behaviour of shared communicating channels within a coorporatively scheduled runtime. We use the refinement checking and modelling tool FDR to develop both specifications of how such shared channels should behave and models of the implementations of these channels in the cooperatively scheduled language ProcessJ. Our results demonstrate that although we can certainly implement the correct behaviour of such channels, the outcome is dependant on having adequate resources available to execute all processes involved. We conclude that modelling the runtime environment of concurrent components is necessary to ensure components behave as specified in the real world.