Prev Up Next
Go backward to A.2 Basic Specifications with Subsorts
Go up to A Abstract Syntax
Go forward to A.4 Architectural Specifications

A.3 Structured Specifications

SPEC             ::= BASIC-SPEC | TRANSLATION | REDUCTION
                   | UNION | EXTENSION | FREE-SPEC | LOCAL-SPEC
                   | CLOSED-SPEC | SPEC-INST 

TRANSLATION      ::= translation SPEC RENAMING
RENAMING         ::= renaming  SYMB-MAP-ITEMS+

REDUCTION        ::= reduction SPEC RESTRICTION 
RESTRICTION      ::= HIDDEN | REVEALED 
HIDDEN           ::= hidden   SYMB-ITEMS+
REVEALED         ::= revealed SYMB-MAP-ITEMS+

UNION            ::= union SPEC+
EXTENSION        ::= extension SPEC+
FREE-SPEC        ::= free-spec SPEC
LOCAL-SPEC       ::= local-spec SPEC SPEC
CLOSED-SPEC      ::= closed-spec SPEC

SPEC-DEFN        ::= spec-defn SPEC-NAME GENERICITY SPEC
GENERICITY       ::= genericity PARAMS IMPORTED
PARAMS           ::= params SPEC*
IMPORTED         ::= imported SPEC*

SPEC-INST        ::= spec-inst SPEC-NAME FIT-ARG*

FIT-ARG          ::= FIT-SPEC | FIT-VIEW
FIT-SPEC         ::= fit-spec SPEC SYMB-MAP-ITEMS* 
FIT-VIEW         ::= fit-view VIEW-NAME FIT-ARG*

VIEW-DEFN        ::= view-defn VIEW-NAME GENERICITY VIEW-TYPE 
                               SYMB-MAP-ITEMS*
VIEW-TYPE        ::= view-type SPEC SPEC

SYMB-ITEMS       ::= symb-items     SYMB-KIND SYMB+
SYMB-MAP-ITEMS   ::= symb-map-items SYMB-KIND SYMB-OR-MAP+
SYMB-KIND        ::= implicit | sorts-kind | ops-kind | preds-kind

SYMB             ::= ID | QUAL-ID
QUAL-ID          ::= qual-id ID TYPE
TYPE             ::= OP-TYPE | PRED-TYPE
SYMB-MAP         ::= symb-map SYMB SYMB
SYMB-OR-MAP      ::= SYMB | SYMB-MAP

SPEC-NAME        ::= SIMPLE-ID
VIEW-NAME        ::= SIMPLE-ID

TOKEN-ID         ::= ... | COMP-TOKEN-ID
MIXFIX-ID        ::= ... | COMP-MIXFIX-ID
COMP-TOKEN-ID    ::= comp-token-id TOKEN ID+
COMP-MIXFIX-ID   ::= comp-mixfix-id TOKEN-PLACES ID+ 

CoFI Document: CASL/Summary -- Version: 1.0 -- 22 July 1999.
Comments to cofi-language@brics.dk

Prev Up Next