In algebraic terms, concatenation left-distributes over union but does not right-distribute over union in general.
our solution is to provide a pair of concatenation operators: , which gives priority to the left, and ≺, which gives priority to the right: Rule (1) marks the second Y in YYY, but rule (2) marks the first Y.