GitHub Sale: sign up for any paid plan this week and pay nothing until January 1, 2009!  [ hide ]

public
Fork of hst/hst
Description: An open-source refinement checker for the CSP process algebra
Homepage: http://dcreager.lighthouseapp.com/projects/9982-hst/overview
Clone URL: git://github.com/dcreager/hst.git
hst /
name age message
file .gitignore Wed Feb 20 16:41:13 -0800 2008 Improvements to build infrastructure [dcreager]
file AUTHORS Sat Jan 19 04:47:38 -0800 2008 C++ implementation of integer sets [dcreager]
file CMakeLists.txt Sat May 31 10:25:02 -0700 2008 Replacing custom proxy_iterator with Boost's tr... [dcreager]
file COPYING Sat Feb 23 14:11:47 -0800 2008 Fixes to basic documentation set [dcreager]
file INSTALL Thu Nov 20 18:27:34 -0800 2008 Updating README and INSTALL to mention CSPM lib... [dcreager]
file NEWS Sat Jan 19 04:47:38 -0800 2008 C++ implementation of integer sets [dcreager]
file README Thu Nov 20 18:27:34 -0800 2008 Updating README and INSTALL to mention CSPM lib... [dcreager]
file TODO Fri Apr 25 21:00:53 -0700 2008 Adding comments to CSP₀ scripts [dcreager]
directory build-scripts/ Thu Nov 20 18:44:21 -0800 2008 “create-source-package” script now works with a... [dcreager]
directory cmake/ Sat May 31 10:25:02 -0700 2008 Replacing custom proxy_iterator with Boost's tr... [dcreager]
directory cspm/ Thu Nov 20 17:51:47 -0800 2008 “let”s now allow pattern definitions and multip... [dcreager]
directory doc/ Mon Nov 10 06:23:09 -0800 2008 CSP₀ identifiers can now contain periods [dcreager]
file graffle Sat Jan 19 04:47:38 -0800 2008 C++ implementation of integer sets [dcreager]
directory include/ Mon Jun 23 18:02:23 -0700 2008 Fixed superset proof for integer sets [dcreager]
directory libs/ Tue Jan 29 14:40:54 -0800 2008 Using cmake for the build system [dcreager]
directory packaging/ Thu Nov 27 20:03:22 -0800 2008 Mac OS X packaging script creates disk image [dcreager]
file scratch.py Sun Apr 27 16:38:47 -0700 2008 Current “interrupt” operator is actually “timeout” [dcreager]
directory src/ Mon Nov 10 06:23:09 -0800 2008 CSP₀ identifiers can now contain periods [dcreager]
directory tests/ Mon Nov 10 06:23:09 -0800 2008 CSP₀ identifiers can now contain periods [dcreager]
README
HST
===

HST is a library and set of command-line programs for processing CSP
scripts.  The goal for the 1.0 release is to support refinement
checking in the traces (T), stable failures (F), and
failures-divergences (N) semantic models, all of which are described
in [1].

[1] A. W. Roscoe.  /The theory and practice of concurrency/.  Prentice
    Hall, 1998.  ISBN 0-13-6774409-5.
    http://web.comlab.ox.ac.uk/oucl/publications/books/concurrency/

HST is divided into two major sections: the CSP₀ library, written in
C++, and the CSPM libary, written in Haskell.  C++ was chosen for
speed, since all LTS generation and refinement checking happens in the
CSP₀ library.  Haskell was chosen since CSPM is a lazy, functional
lanaguage — this us allows to use the same features of Haskell and not
have to implement a lazy functional interpreter ourselves.

For installation instructions, please see the INSTALL file.  There are
currently two command-line programs — “cspm” and “csp0”.  The first
allows you evaluate expressions in a CSPM script, and to compile CSPM
process expressions into the corresponding CSP₀.  The second allows
you to perform refinement checks on these compiled CSP₀ scripts.  Each
program is self-documented; run “csp0 help” or “cspm help” for usage
details.  The CSP₀ language is described in the csp0.html file, which
should be installed as part of the standard installation process.  The
most recent (and complete) description of the CSPM language can be
found in the FDR2 reference manual [2].

[2] Formal Systems (Europe) Ltd.  /Failures-Divergence Refinement:
    FDR2 Manual/.  2005.
    http://www.fsel.com/