Higher Order Logic and Hardware Verification, Cambridge Tracts in Theoretical Computer Science