We outline in general terms the process of performing the dataflow analysis for the commuting/inverse structures. For the sake of brevity, we have one read and one write in the function - R reads from v.r and W writes to v.w, where v is the current path name parameter of the function. We could extend the analysis to any number of reads and writes by repeating this process for each pair. We would combine the results by taking the maximum of this set of sources. The approach is close to that found in [7].
The second step of finding the potential source is in general the most difficult. However, restricting the read and write words to simple directions simplifies this stage significantly, as will be shown in the worked example in section 5. During the analysis legality constraints are imposed on the tail of the control word. The lemmas in the appendix allow us to ignore the head of the word and find the sources of the relative control word, then extend this result to a general one, by prepending any control word.