The yellowpaper specifies the EVM, albeit in a fashion that favors formalism over readability:
But there's no indication if this is up to date with the current state of the Ethereum ecosystem or not, and I haven't been able to find a formal VM specification anywhere else. Is there one?

