Because assignments are treated as a system of simultaneous equations (or inclusions), the order in which assignments appear in the program is irrelevant to the program's semantics. There may also be multiple type declarations for a given signal, provided they all agree on the type. Type declarations and assignments may appear in any order.