Skip to main content

commute

Function commute 

Source
pub fn commute(p1: &Patch, p2: &Patch) -> CommuteResult
Expand description

Check if two patches commute.

§Correctness

Per THM-COMM-001 (YP-ALGEBRA-PATCH-001): If T(P₁) ∩ T(P₂) = ∅, then P₁ ∘ P₂ = P₂ ∘ P₁.

This function implements the sufficient condition: disjoint touch sets. Note that some patches with overlapping touch sets MAY still commute (e.g., writing the same value), but we conservatively report them as non-commuting to guarantee correctness.