Larch: Languages and Tools for Formal Specification

This monograph addresses the use of formal specification languages and supporting tools. Concentrating on the Larch specification work taking place at DEC and MIT, it discusses the use of formal specifications in program development and introduces the notation of mathematical logic.

[1]  David Lorge Parnas,et al.  Information Distribution Aspects of Design Methodology , 1971, IFIP Congress.

[2]  James H. Morris,et al.  Types are not sets , 1973, POPL.

[3]  Fred P. Brooks,et al.  The Mythical Man-Month , 1975, Reliable Software.

[4]  John V. Guttag,et al.  The specification and application to programming of abstract data types. , 1975 .

[5]  Hans-Dieter Ehrich Extensions and Implementations of Abstract Data Type Specifications , 1978, MFCS.

[6]  John V. Guttag Notes on Type Abstraction , 1978, Program Construction.

[7]  Joseph A. Goguen,et al.  The Semantics of CLEAR, A Specification Language , 1979, Abstract Software Specifications.

[8]  Robert S. Boyer,et al.  A computational logic handbook , 1979, Perspectives in computing.

[9]  Mitchell Wand,et al.  Final Algebra Semantics and Data Type Extensions , 1979, J. Comput. Syst. Sci..

[10]  James J. Horning,et al.  Formal specification as a design tool , 1980, POPL '80.

[11]  Mark E. Stickel,et al.  Complete Sets of Reductions for Some Equational Theories , 1981, JACM.

[12]  Pierre Lescanne,et al.  Computer experiments with the REVE term rewriting system generator , 1983, POPL '83.

[13]  D. Knuth,et al.  Simple Word Problems in Universal Algebras , 1983 .

[14]  Jeannette M. Wing A TWO-TIERED APPROACH TO SPECIFYING PROGRAMS , 1983 .

[15]  James J. Horning,et al.  An Introduction to the Larch Shared Language , 1983, IFIP Congress.

[16]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Specification 1: Equations and Initial Semantics , 1985 .

[17]  Donald Sannella,et al.  On Observational Equivalence and Algebraic Specification , 1985, TAPSOFT, Vol.1.

[18]  James J. Horning Combining Algebraic and Predicative Specifications in Larch , 1985, TAPSOFT, Vol.2.

[19]  James J. Horning,et al.  The Larch Family of Specification Languages , 1985, IEEE Software.

[20]  Jeannette M. Wing A Larch Specification of the Library Problem , 1986 .

[21]  James J. Horning,et al.  A Larch Shared Language Handbook , 1986, Sci. Comput. Program..

[22]  James J. Horning,et al.  Report on the Larch Shared Language , 1986, Sci. Comput. Program..

[23]  Lawrence C. Paulson,et al.  Logic and computation - interactive proof with Cambridge LCF , 1987, Cambridge tracts in theoretical computer science.

[24]  Jeannette M. Wing Writing Larch interface language specifications , 1987, TOPL.

[25]  Olaf Owe,et al.  Preliminary Report on the Specification and Programming Language Abel , 1987 .

[26]  James J. Horning,et al.  Synchronization Primitives for a Multiprocessor: A Formal Speci cation , 1987 .

[27]  Jeannette M. Wing Specifying recoverable objects , 1988 .

[28]  Stephen J. Garland,et al.  Inductive methods for reasoning about abstract data types , 1988, POPL '88.

[29]  Paliath Narendran,et al.  Formal Verification of the , 1988 .

[30]  Stephen J. Garland,et al.  Verification of VLSI Circuits Using LP , 1988 .

[31]  V. Stavridou,et al.  Abstraction and specification in program development , 1988 .

[32]  Jeannette M. Wing,et al.  Machine assisted proofs of properties of Avalon programs , 1989 .

[33]  Stephen J. Garland,et al.  An Overview of LP, The Larch Power , 1989, RTA.

[34]  Jr. John Wesley Baugh Computational abstractions for finite element programming , 1989 .

[35]  Michel Bidoit Pluss, un langage pour le développement de spécifications algébriques modulaires , 1989 .

[36]  Jeannette M. Wing,et al.  Experience with the Larch Prover , 1990 .

[37]  Stephen J. Garland,et al.  Debugging Larch Shared Language Specifications , 1990, IEEE Trans. Software Eng..

[38]  Jeannette M. Wing Using Larch to Specify Avalon/C++ Objects , 1990, IEEE Trans. Software Eng..

[39]  Wolfgang Polak,et al.  Formal Verification of Ada Programs , 1990, IEEE Trans. Software Eng..

[40]  Tobias Nipkow,et al.  Automating Squiggol , 1990, Programming Concepts and Methods.

[41]  Jeannette M. Wing,et al.  Concurrent atomic garbage collection , 1990 .

[42]  Robert S. Boyer,et al.  Computational Logic , 1990, ESPRIT Basic Research Series.

[43]  Stephen J. Garland,et al.  Using LP to Debug Specifications , 1990, Programming Concepts and Methods.

[44]  Jeannette M. Wing,et al.  A formal specification of a visual language editor , 1991, Proceedings of the Sixth International Workshop on Software Specification and Design.

[45]  Kevin D. Jones LM3: A Larch interface language for Modula - 3: A definition and introduction: Version 1 , 1991 .

[46]  Richard A. Lerner,et al.  Specifying objects of concurrent systems , 1991 .

[47]  Jeannette M. Wing,et al.  Unintrusive Ways to Integrate Formal Specifications in Practice , 1991, VDM Europe.

[48]  Jeannette M. Wing,et al.  Specifications as Search Keys for Software Libraries , 1991, ICLP.

[49]  James J. Horning,et al.  A Tutorial on LARCH and LCL, A LARCH/C Interface Language , 1991, VDM Europe.

[50]  Yoonsik Cheon,et al.  Larch/Smalltalk: A Specification Language for Smalltalk , 1991 .

[51]  Stephen J. Garland,et al.  A Guide to LP, The Larch Prover , 1991 .

[52]  Frédéric Voisin A New Front-End for the Larch Prover , 1992, Larch.

[53]  Karl-Heinz Buth,et al.  Using SOS Definitions in Term Rewriting Proofs , 1992, Larch.

[54]  Gary Feldman,et al.  The DECspec project: tools for Larch/C , 1992, [1992] Proceedings of the Fifth International Workshop on Computer-Aided Software Engineering.

[55]  Pierre Lescanne,et al.  An Exercise in LP: The Proof of a Non Restoring Division Circuit , 1992, Larch.

[56]  John W. Baugh Is Engineering Software Amenable to Formal Specification? , 1992, Larch.

[57]  Gary T. Leavens,et al.  Preliminary Design of Larch/C++ , 1992, Larch.

[58]  Stephen J. Garland,et al.  Mechanized Verification of Circuit Descriptions Using the Larch Prover , 1992, TPCD.

[59]  Jeannette M. Wing,et al.  Thoughts on a Larch/ML and a New Application for LP , 1992, Larch.

[60]  Michel Bidoit,et al.  How to Prove Observational Theorems with LP , 1992, Larch.

[61]  Kevin D. Jones A Semantics for a Larch/Modula-3 Interface Language , 1992, Larch.

[62]  Christine Choppy,et al.  Integrating ASSPEGIQUE and LP , 1992, Larch.

[63]  Mark T. Vandevoorde Optimizing Programs with Partial Specifications , 1992, Larch.

[64]  Stephen J. Garland,et al.  A Parallel Completion Procedure for Term Rewriting Systems , 1992, CADE.

[65]  Stephen J. Garland,et al.  Using transformations and verification in circuit design , 1992, Formal Methods Syst. Des..

[66]  Katherine Yelick,et al.  Using abstraction in explicitly parallel programs , 1992 .

[67]  Jørgen Staunstrup,et al.  Generating Proof Obligations for Circuits , 1992, Larch.

[68]  Leslie Lamport,et al.  Mechanical Verification of Concurrent Systems with TLA , 1992, Larch.

[69]  Betty H. C. Cheng,et al.  An object-oriented toolkit for constructing specification editors , 1992, [1992] Proceedings. The Sixteenth Annual International Computer Software and Applications Conference.

[70]  E. A. Scott,et al.  Using LP to Study the Language PL+0 , 1992, Larch.

[71]  Yang Meng Tan Semantic analysis of Larch Interface Specifications , 1992, Larch.

[72]  Stephen J. Garland,et al.  LCL: A Larch Interface Language for C , 1993 .