Yeah, we could simply insist on no change to any column that's used by any of the expressions. That would be cheap to test.
I am trying to figure out the best way to extract this information. Is there any existing code to get all attributes used in the expressions ? Or do I need to walk the tree and extract that information ?