We have developed a theory of sharing which captures the behaviour of programs with respect to shared data into the framework of process algebra. The core theory can describe programs performing read and write access to unitary pieces of shared data. Extensions allow shared data to be decomposed and atomic copies to be made, reflecting the common operations of parallel programs. We describe the theory and give an example of its use in analysing and transforming a sample mathematical application. Keywords Sharing, process algebra, program analysis, program transformation
Simon A. Dobson, Christopher P. Wadsworth