See also
Securing and Hardening the Horus System
The following steps will be taken to validate Horus:
ML is a programming language with:
We have built in ML a compact implementation of Horus suitable for verification of fault-tolerance and security properties.
Also, the subset of ML we use can be compiled to efficient, human-readable C code.
We describe protocol properties using the Temporal Logic of Actions. For example, to say that whenever a message is sent via interface u, its size is at most max :
A protocol layer guarantees properties at its interfaces provided the environment obeys some assumptions :
To find the properties of a stack, we prove a theorem about the conjunction of all the layers' assume-guarantee formulas.
We verify the protocol layers using the Nuprl Proof Development System as shown in the following diagram:
See also
Securing and Hardening the Horus System