I guess not, since I think the expressions are only used in the planning phase which is happening when toTypedPipe is called and a Matrix2 is rendered at a TypedPipe. Negate is never called as part of planning, so this should be okay.

In any case, we need very careful comments around this.