Reasoning About Data-Parallel Pointer Programs in a Modal Extension of Separation Logic
This paper proposes a modal extension of Separation Logic [1,2] for reasoning about data-parallel programs that manipulate heap allocated linked data structures. Separation Logic provides a formal means for expressing allocation of disjoint substructures, which are to be processed in parallel. A modal operator is also introduced to relate the global property of a parallel operation with the local property of each sequential execution running in parallel. The effectiveness of the logic is demonstrated through a formal reasoning on the parallel list scan algorithm featuring the pointer jumping technique.
KeywordsInference Rule Parallel Execution Modal Extension Local Copy Separation Logic
Unable to display preview. Download preview PDF.
- 4.Blelloch, G.E.: Prefix sums and their applications. Technical Report CMU-CS-90-190, Carnegie Mellon University (1990)Google Scholar