The tool herd pre-defines the relation loc that relates Effects operating on the same location and implements the usual operators on relations. In particular, cat implements the intersection operator over relations, written with an infix “&”. As a consequence, the relation po⁠-⁠loc, program order restricted to Effects operating on the same location, can be defined as follows:

let po-loc = po & loc