LOTOS(ID:1493/lot003)

Specification language based on temporal ordering 


Specification language based on temporal ordering.

According to Bruns 1991, Data portion was based on ACT ONE


Related languages
ACT ONE => LOTOS   Based on
Parlog => LOTOS   Target language for
LOTOS => E-LOTOS   Evolution of

References:
  • Carchiolo, V.; A. Faro, F. Minassale, and G. Scollo. Some Topics in the Design of the Specification language LOTOS. In M. Paul and B. Robinet, editors, Proc. 4th Int. Symp. on Programming, Berlin, 1984. Springer LNCS 167. view details
  • Bolognesi, T. and E. Brinksma. Introduction to the ISO specification language LOTOS. Computer Network ISDN Systems, 14(1), 1987. view details
  • Gilbert, David Executable LOTOS: Using PARLOG to Implement an FDT, in Protocol Specification, Testing, and Verification VII, pp 281-295, H. Rudin and C.H. West (Eds), North-Holland 1987. view details ps
  • Brinksma, E "Information processing systems ? open systems interconnection. LOTOS: a formal description technique based on the temporal ordering of observational behaviour" ISO 8807, International Standard, 1988 view details
  • Brinksma, E. On the Design of Extended LOTOS. PhD Thesis, Twente University (NL), 1988. view details
  • Guillemot, R., Haj-Hussein, M., and Logrippo, L. Executing Large LOTOS Specifications. In: Aggarwal. S., and Sabnani, K. (eds.) Protocol Specification, Testing, and Verification VII, North- Holland, 1988, 399-410. view details
  • Gilbert, David "A LOTOS to PARLOG Translator, FORTE88 - Formal Description Techniques" pp31-44 view details ps
          in Formal Description Techniques, Ken Turner (Ed), North-Holland 1989 view details
  • Gueraichi, L., and Logrippo, L. "Derivation of Test Cases for LAP-B from a LOTOS Specification" view details
          in Proc. of the 2nd FORmal TEchniques Symposium (Vancouver, December 1989). view details
  • Faci, M., Logrippo, L., and Stepien, B. Formal Specification of Telephone Systems in LOTOS. To appear in: Brinksma, E., Scollo, G., and Vissers, C. (eds.) Protocol Specification, Testing, and Verification IX, North-Holland. view details
          in Proc. of the 2nd FORmal TEchniques Symposium (Vancouver, December 1989). view details
  • van Eijk P.H.J. et al eds, "The Formal Description Technique LOTOS", N-H 1989. ISO 8807 (1990). view details
          in Proc. of the 2nd FORmal TEchniques Symposium (Vancouver, December 1989). view details
  • Bruns, Glenn "A Language for value-passing CCS" LFCS report ECS-LFCS-91-175 view details Abstract: Milner has defined an extension to CCS, called value-passing CCS, which allows parameterized agents and actions, and conditional expressions. This notation leaves open the problems of describing data and of associating sets of values with actions. We define a language for value-passing CCS in which sets, sequences, and tuples are built from natural number, boolean, and string constants. Only finite values can be constructed. Our language also contains declarations to associate set-valued expressions with actions. This paper contains a definition of the language and a description of a translator to basic CCS.


    External link: Online copy
          in Proc. of the 2nd FORmal TEchniques Symposium (Vancouver, December 1989). view details
  • Cerioli, Maura; Gogolla, Martin; Kirchner, Helene; Bruckner, Bernd Krieg; Qian, Zhenyu; Wolf, Markus "Algebraic System Specification and Development - Survey and Annotated Bibliography" Second Edition Compass Group Bremen 1997 view details Abstract: Methods for the algebraic specification of abstract data types were proposed in the early seventies in the USA and Canada and became a major research issue in Europe shortly afterwards. Since then the algebraic approach has come to play a central role in research on formal program specification and development, as its range of applications was extended to the specification of complete software systems, to the formal description of the program development process, and to the uniform definition of syntax and semantics of programming languages. Today this approach extends beyond just software to the development of integrated hardware and software systems. These flourishing activities in the area of algebraic specifications have led to an abundance of approaches, theories and concepts, which have universal algebra, category theory and logic as a common mathematical basis.
    The present volume is an annotated bibliography which attempts to provide an up-to-date overview of past and present work on algebraic specification. No attempt is made to provide a coherent introduction to the topic for beginners the intention is rather to provide a guide to the current literature for researchers in algebraic specification and neighbouring fields. Some indications of how the different approaches are related are included. ps Extract: Extended ML
    Extended ML
    The long-term goal of work on Extended ML is to provide a practical framework for formal development of Standard ML programs together with an integrated suite of computer-based specification and development support tools and complete mathematical foundations to substantiate claims of correctness. The complete formal definition of the Extended ML language [533] constitutes an important milestone in this programme, necessary to provide a basis for further research on foundations and tools. One of the key issues that had to be resolved was the design of a logic suitable for describing properties of Standard ML programs, taking into account features like recursive type and function definitions, exceptions, polymorphism, and non-termination. A number of errors in the Standard ML semantics [679] have been discovered in the course of this work [526]. Work has begun on rules for proving theorems about EML specifications, to be used in verifying correctness conditions that arise in the course of formal development. Research has so far concentrated on equality reasoning [530] and quantifier rules.
    The length and requisite formality of the definition of Extended ML renders it rather difficult to penetrate. Accordingly, [532, 534] provides an informal overview of the definition, explaining most of the main issues involved and justifying some of the choices taken.
    Extract: LOTOS and PSF
    LOTOS and PSF are two formalisms following the approach of separate specification of data by choosing a process calculus as the formalism for concurrency. The differences between them are in the formalism for the algebraic specification part (ACT ONE [311] for LOTOS and ASF [64] for PSF) and in the combinators of the chosen process calculus (inspired by those of CCS for LOTOS and by ACP for PSF).
    PSF (see [657]) is the process specification formalism developed by Mauw and Veltink as a basis for a set of tools to support the process algebra of Bergstra, Klop et al' (see e.g. [65, 48]). The basic specification formalism is equational logic with total algebras. The theory and language of ASF is adopted for handling modular and parameterized specifications.
    LOTOS has probably been the first internationally known algebraic specification formalism for concurrency (see [187, 143]); most importantly, it is an official ISO language specification for open distributed systems, a qualification that alone would rank it high in an ideal value scale of possible important applications.
    LOTOS uses ACT ONE ( [311]) for the ADT specifications and a process description formalism based on an extension of CCS with several derived combinators (e.g. input/output of structured values, sequential composition with possible value passing, enabling/disabling operators). The basic specification formalism (equational logic with total algebras) is the same as in PSF and also the bisimulation semantics for processes.
    All these years, LOTOS has been used in several practical applications. Moreover, a toolset for helping to write correct LOTOS specifications has been developed (see e.g. the ESPRIT project LOTOSPHERE [911]). Recently a revised version of LOTOS (E-LOTOS, for Enhanced LOTOS) is under way, see [620], taking into account the needs raised during its application in industry.
    Extract: LOTOS
    LOTOS has probably been the first internationally known algebraic specification formalism for concurrency. LOTOS uses ACT ONE for the algebraic specification of data and a description formalism based on an extension of CCS for processes. A toolset (see e.g. the ESPRIT project LOTOSPHERE) has been developed and a revised version of LOTOS (Enhanced LOTOS) is under way Extract:
    Reusability
    The demand for reusability originates from economic considerations and attempts towards standardization. Rather than always starting from scratch, the use of existing components is cheaper and also less error-prone. A central problem for the identification and the correct use of reusable components is the abstract description of such components. A formal specification is the only form of description that can serve as a basis for a correctness proof; it can be processed automatically and it establishes a degree of confidence in the functionality of the component that is particularly important if a component has to be modified before being reused.
    Goguen [404] proposes the algebraic specification language OBJ as well-suited for the design of reusable software systems. A component's interface is specified as an abstract data type and may be parameterized by other components. Combination of components is possible by instantiation using appropriate fitting morphisms. A similar approach is used in Extended ML [836], [848].
    In ACT TWO [315] components are modules, which consist of two interface specifications, i.e. an export specification and an import specification, and a body specification which implements the export specification in terms of the import specification. Similarly, in LARCH [445], a component consists of a pair, an "abstract" interface specification and an implementation. Here the implementation is written in a conventional programming language. A similar distinction between a requirement and a design specification is made in PAnndA-S, the language of the PROSPECTRA project [138], based on the notion of visible and private interface in Ada. Ada bodies are generated semi-automatically by transformation.
    In the approach of [655] a component consists of four parts at four different levels of abstraction: a requirement specification, a design specification, a source program and object code. Components are written in a so-called wide spectrum language which provides facilities for system design and software development at many levels of abstraction. Matsumoto uses Ada, which has as a consequence that the requirement specification is merely an informal description. CIP-L [54] and COLD [341] are two languages which include algebraic specifications as well as predicative and imperative language styles in one coherent framework and therefore are better suited for such an approach.
    In the object-oriented approach of [675] a reusable component is represented by a graph of object-oriented programs, each node of which stands for one level of abstraction in the description of the software. In the approach of the ESPRIT-project DRAGON [945], a reusable component consists of a tree of algebraic specifications, where similarly to [675], each node of the tree is an instance of a certain level of an abstraction of the program with the root being the most "abstract" formal specification and the leaves representing the "concrete" implementations. A methodology for reusing components is described in [947].

          in Proc. of the 2nd FORmal TEchniques Symposium (Vancouver, December 1989). view details
    Resources
    • FTP at funet

      "