Puneet Varma (Editor)

Common Algebraic Specification Language

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit

The Common Algebraic Specification Language (CASL) is a general-purpose specification language based on first-order logic with induction. Partial functions and subsorting are also supported.

Contents

CASL has been designed by CoFI, the Common Framework Initiative, with the aim to subsume many existing specification languages.

CASL comprises four levels:

  • basic specifications, for the specification of single software modules,
  • structured specifications, for the modular specification of modules,
  • architectural specifications, for the prescription of the structure of implementations,
  • specification libraries, for storing specifications distributed over the Internet.
  • The four levels are orthogonal to each other. In particular, it is possible to use CASL structured and architectural specifications and libraries with logics other than CASL. For this purpose, the logic has to be formalized as an institution. This feature is also used by the CASL extensions.

    Extensions

    Several extensions of CASL have been designed:

  • HasCASL, a higher-order extension
  • CoCASL, a coalgebraic extension
  • CspCASL, a concurrent extension based on CSP
  • ModalCASL, a modal logic extension
  • CASL-LTL, a temporal logic extension
  • HetCASL, an extension for heterogeneous specification
  • Calculators supporting CASL

  • Sharp PC-1416G
  • Sharp PC-1417G
  • Sharp PC-1440
  • Sharp PC-1445
  • Casio PB-1000C
  • Casio PB-2000C
  • Casio fx-890P
  • References

    Common Algebraic Specification Language Wikipedia