This page summarizes the research directed by Gary T. Leavens at the University of Central Florida in the Department of Computer Science. (Research prior to July 2007 took place at Iowa State University, in the Department of Computer Science.) An up-to-date copy is available on the world wide web in the following URL.

 http://www.cs.ucf.edu/~leavens/main.html

Also on-line is a a list of my students and former students with their research. You can also download a BibTeX file with entries for all my papers. See also the section below on how to get the papers mentioned. Note: if you are not able to download the ACM papers for free (you see "unauthorized link specified" under the ACM authorized papers), then please reload this page using the link http://www.cs.ucf.edu/~leavens/main.html.

You might also want to look in my home page, where there is:

Specification and Formal Methods

General

CS-TR-15-01 defines a fine-grained region logic with conditional effects.

CS-TR-13-02 explores the relationship between separation logic, region logic, and dynamic frames theory. However it is obsolete and will be replaced.

CS-TR-09-01 is a survey of behavioral interface specification languages.

Information hiding and visibility of specification constructs is the focus of TR06-28.

A roadmap for research related to verified software is found in TR06-21.

The ACL approach to preventing aliasing from repeated parameters is described in TR98-08a and the C/ACL compiler is described in TR01-11.

Ownership applied to specifications is the topic of several papers. TR02-02a (an expansion of TR01-03) describes an application of Peter Müller's dissertation work on modular specification of frame properties to JML. This is also the basis for the work on modular invariants.

Specification of superclasses to allow work on subclasses is the topic of TR #00-05 with Clyde Ruby; it describes a technique for reasoning about the correctness of subclasses.

The execution of specifications in the context of the language SPECS-C++ is the subject of TR #00-02, TR #97-12a, and TR #94-02b with Tim Wahls.

A translation of Z specifications into Larch is the subject of Hua Zhong's master's project.

Various specification enhancements found in Larch/C++ are described in TR #97-19.

Inheritance of specifications in an object-oriented context is discussed in a WIDL paper. This topic was further developed in an ICSE 1996 paper with Krishna Kishore Dhara (see below).

(See also the Larch FAQ and the work on JML.)

The JML Project

JML is a behavioral interface specification language tailored to the specification of Java modules. It combines the approaches of Eiffel and Larch, with some elements of the refinement calculus. Its home page is

 http://www.jmlspecs.org/

The Larch/C++ Project

Larch/C++ is a behavioral interface specification language tailored to the specification of C++ modules. Its home page is

 http://www.cs.ucf.edu/~leavens/larchc++.html

Larch/Smalltalk

Larch/Smalltalk is a behavioral interface specification language tailored to the specification of Smalltalk modules. Its home page is

 http://www.cs.ucf.edu/~leavens/larchSmalltalk.html

Yoonsik Cheon is the main designer of Larch/Smalltalk.

Larch/CORBA

The following paper gives the idea of designing Larch/CORBA, a behavioral interface specification language tailored to OMG's IDL.

  • Gary T. Leavens and Yoonsik Cheon. Extending CORBA IDL to Specify Behavior with Larch. In OOPSLA '93 Workshop Proceedings: Specification of Behavioral Semantics in OO Information Modeling, pages 77-80. (Also Department of Computer Science, Iowa State University, TR #93-20, August 1993. [abstract] [text file])

More useful is the master's thesis of Gowri Sankar Sivaprasad, which gives a design of Larch/CORBA.

  • Gowri Sankar Sivaprasad. Larch/CORBA: Specifying the Behavior of CORBA-IDL Interfaces. Department of Computer Science, Iowa State University, TR #95-27a, December 1995, revised December 1995. [abstract] [PDF]

Semantics

An introductory survey of class-based and algebraic models of objects that may be read as background to the rest of these is the following.

Model Theory for ADTs

The following is recent work by Don Pigozzi, Krishna Kishore Dhara and myself on model theory of behavior for ADTs. It is used to study subtyping in TR96-15.

  • Gary T. Leavens and Don Pigozzi. The Behavior-Realization Adjunction and Generalized Homomorphic Relations. Theoretical Computer Science, 177:183-216, 1997.
    A slightly extended version is Department of Computer Science, Iowa State University, TR #94-18b, September 1994, revised September 1994, July 1996. [abstract] [PDF]
  • Gary T. Leavens and Krishna Kishore Dhara. Blended Algebraic and Denotational Semantics for ADT Languages with Mutable Objects. Department of Computer Science, Iowa State University, TR #93-21b, September 1993, revised March, September 1994. [abstract] [PDF]

Behavioral Subtyping

Types with Mutable Objects

An overview that ties together the ideas of supertype abstraction, behavioral subtyping, and specification inheritance is found in the August 2015 artice in ACM TOPLAS. A presentation of these ideas in the context of JML is found in TR#06-22.

For historical perspective, see the survey of behavioral subtyping in the Foundations of Component-Based Systems book.

Work with Krishna Kishore Dhara on subtyping concerns types with mutable objects is listed in this subsection. The most recent work with Dhara is TR #01-02, which has a good explanation of the ideas. More detailed is his dissertation.

A shorter introduction to the idea of behavioral subtyping that may be more accessible is the ICSE 1996 paper (which appears with a correction as TR #95-20c). This paper describes the idea of specification inheritance and how it relates to behavioral subtyping. Its ideas were embodied in Larch/C++ and JML.

Also, note that TR #94-21b makes the following older TRs obsolete: TR #92-36 and TR #92-35. The work described in this part does not (yet) describe a specification language or a verification logic. Kishore's master's thesis can be had by requesting it by e-mail, but it is summarized in TR #92-36.

Types with Immutable Objects

The IEEE Software and OOPSLA/ECOOP '90 papers are short summaries of this work. The MFPS paper with Don Pigozzi is also fairly short, and extends the results to higher types; it isolates the key mathematical idea. A development of this mathematical idea, which gives both a necessary and sufficient model-theoretic criterion for correct behavioral subtyping is found in TR96-15. The proof theory is studied in TR02-07.

  • Gary T. Leavens and Don Pigozzi. Equational Reasoning with Subtypes. Department of Computer Science, Iowa State University, TR #02-07, July 2002. [abstract] [postscript] [PDF]
  • Gary T. Leavens and Don Pigozzi. A Complete Algebraic Characterization of Behavioral Subtyping. Acta Informatica 36:617-663, 2000.
  • Gary T. Leavens and William E. Weihl. Specification and Verification of Object-Oriented Programs Using Supertype Abstraction. Acta Informatica 32(8):705-778, November 1995. The original publication is available at springerlink.com from http://dx.doi.org/10.1007/BF01178658.

    A longer version of this paper is Gary T. Leavens and William E. Weihl. Subtyping, Modular Specification, and Modular Verification for Applicative Object-Oriented Programs. Department of Computer Science, Iowa State University, TR #92-28d, September 1992, revised September and October 1993, and January and September 1994. [abstract] [PDF]
  • Gary T. Leavens and Don Pigozzi. Typed Homomorphic Relations Extended with Subtypes. In Stephen Brookes, editor, Mathematical Foundations of Programming Semantics '91, pages 144-167. Volume 598 of Lecture Notes in Computer Science . Springer-Verlag, 1992. [SpringerLink]
  • Gary T. Leavens. Modular Specification and Verification of Object-Oriented Programs. IEEE Software, 8(4):72-80, July, 1991. http://doi.ieeecomputersociety.org/10.1109/52.300040
  • ACM DL Author-ize serviceReasoning about object-oriented programs that use subtypes
    Gary T. Leavens, William E. Weihl
    OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications, 1990, pp 212-223.
  • Gary T. Leavens. Modular Verification of Object-Oriented Programs with Subtypes. Department of Computer Science, Iowa State University, TR #90-09, July 1990. [abstract] [PDF]
  • Gary T. Leavens, Verifying Object-Oriented Programs that use Subtypes. Massachusetts Institute of Technology, Laboratory for Computer Science, Technical Report TR-439, February 1989.

The last report mentioned above, MIT/LCS/TR-439, is my Ph.D. dissertation. To get it, check your library, or write to Publications, Laboratory for Computer Science, Massachusetts Institute of Technology, 545 Technology Sq., Cambridge, MA 02139. Their phone number is (617)253-5894. The cost was 16ドル.00 US. But you probably don't need to do that, as the thesis was reworked in a different framework in ISU TR #90-09. The Acta Informatica paper is a summary of the thesis work; TR #92-28d contains that paper and additional omitted details.

Semantics of DFDs and their Execution

The first of the papers below, makes the second obsolete.

  • ACM DL Author-ize serviceFormal semantics for SA style data flow diagram specification languages
    Gary T. Leavens, Tim Wahls, Albert L. Baker
    SAC '99 Proceedings of the 1999 ACM symposium on Applied computing, San Antonio, February/March, 1999, pages 526-532.
  • Gary T. Leavens, Tim Wahls, Albert L. Baker, and Kari Lyle. An Operational Semantics of Firing Rules for Structured Analysis Style Data Flow Diagrams. Department of Computer Science, Iowa State University, TR #93-28d, December 1993, revised December 1993, September 1994, June 1996, July 1996. [abstract] [PDF] [postscript]
  • Tim Wahls, Albert L. Baker, and Gary T. Leavens, An Executable Semantics for a Formalized Data Flow Diagram Specification Language. Department of Computer Science, Iowa State University, TR #93-27, November 1993. [abstract] [PDF]

Other Papers on Semantics

A summary of the talks given at the workshop Foundations of Object-Oriented Languages (Paris, July 1994) is available in the following.

  • Giuseppe Castagna and Gary T. Leavens. Foundations of Object-Oriented Languages: 2nd Workshop report. Department of Computer Science, Iowa State University, TR #94-22, November 1994. [abstract] [PDF]

Programming Language Design

Context-Oriented Programming

Aspect-Oriented Programming

See the page on More Modular Reasoning for Aspect-Oriented Programs for papers by Curtis Clifton, myself, and others related to aspect-oriented programming.

The MultiJava Project

MultiJava is an extension to Java that supports modular open classes and multiple dispatch. See the MultiJava publications page for other papers on MultiJava.

Papers on Type Systems

The two versions of ``A Type Notation for Scheme'' reflect an evolution of the type system, the report TR#05-18 is the latest of these.

Other Papers on Programming Language Design

Other Papers

Teaching Computer Science

The 3x+1 Problem

  • Gary T. Leavens and Mike Vermeulen, 3x+1 Search Programs. Computers and Mathematics with Applications, 24(11):79-99, December 1992.
  • Gary T. Leavens. A Distributed Search Program for the 3x+1 problem. Department of Computer Science, Iowa State University, TR #89-22, November 1989. [abstract] [PDF]

Miscellaneous

How to get Papers Mentioned

Although it might violate the copyright laws, if you don't have a published paper in your library, you can probably get some version of it as a University of Central Florida or Iowa State University (ISU) Computer Science TR. (This is not to encourage you to violate the copyright law, however.) All ISU Com S TRs, including many old versions, should be available by the following means.

Through the web
You can get Computer Science TRs from the library's page at https://lib.dr.iastate.edu/cs_techreports/.

Contact Information

Gary T. Leavens
University of Central Florida
College of Engineering and Computer Science
Dept. of Computer Science, Building 116
4000 Central Florida Blvd.,
Orlando, Florida 32816-2362 USA

e-mail: Leavens@ucf.edu
Phone: +1-407-823-4758 / fax: +1-407-823-5419

Last update $Date: 2023年10月02日 18:20:00 $






































AltStyle によって変換されたページ (->オリジナル) /