Declarative definitions of RLP decoding.
We specify RLP decoding via functions from byte arrays to byte arrays, trees, and scalars. These functions are declaratively defined as inverses of the RLP encoding functions. They are not executable.
Note that [YP:B] only defines RLP encoding explicitly, not RLP decoding. Clearly, the intention is that decoding is the inverse of encoding: this is the implicit specification of decoding in [YP:B].