This page links to experiments with an algorithm for instantiating a generic security API to implement protocols from the Clark-Jacob corpus. The experiments are described in a paper entitled A Generic Security API for Symmetric Key Management on Cryptographic Devices, by Véronique Cortier and Graham Steel (to appear at ESORICS 2009)
The algorithm has been implemented in Prolog. It has been tested in SICStus Prolog but contains little in the way of non-standard features and should work with any ANSI compliant Prolog (you may have to change the declarations for dynamic predicates).
The links below are to input files for various protocols. After 'consult'ing the code above, try these with the query go(filename).