Theorems about decoding applied to encoding.
We show that decoding is left inverse of encoding over valid instructions: encoding a valid instruction and then decoding it yields the original instruction. As a consequence, encoding is injective over valid instructions: if two different instructions were encoded in the same way, the decoder would have to restore both from the same encoding, which is impossible since decoding is a function.