https://hgpu.org/?p=8946
Formalizing Address Spaces with application to Cuda, OpenCL, and beyond