main.h9.gif (4000 bytes) David Gries
William L. Lewis Professor of Engineering
Cornell Weiss Presidential Fellow
gries@cs.cornell.edu
http://www.cs.cornell.edu/home/gries/gries.html
Dr. rer. nat. Munich Institute of Technology, 1966

My research is aimed at gaining a better understanding of the programming process, with respect to both sequential and concurrent (or parallel) programs. The work requires investigation of theories of program correctness and their application, as well as investigation of other concepts in the semantics of programming languages. A procedural programming language, Polya, is being defined and implemented. We are attempting to make the language in which algorithms are usually presented the programming language, but without loss of efficiency. This has entailed work in the theory of polymorphic types and type inference as well as the development of new constructs for definng types and for describing the implementation of variables. The hope is that this work will advance the state of the art of reusability of program parts and will raise the level at which programs are written.

Education is a second area of strong interest, in particular the first few courses in computer science. Under the thesis that logic is the glue that binds together reasoning, in all domains, I (with colleague F.B. Schneider) have been researching on and writing about logic as a "tool", instead of just another object of study. We are working on a new version of our 1993 text, A Logical Approach to Discrete Math, which will focus only on logic.

 University Activities

(Sabbatical, Spring 1997)
Cornell University Faculty Senate
General Committee of the Graduate School Project 2000
Faculty Senate Advisory Committee

Professional Activities

Courtesy Professor: Computer Science, Oregon State University, March-June 1997
Managing Editor: Information Processing Letters
Main Editor: Acta Informatica
Editor: Springer Verlag
Texts and Monographs in Computer Science
Editorial Board: Springer Verlag Lecture Notes in Computer Science
Director: NATO Summer School, Marktoberdorf, Germany
Co-organizer: DIMACS Symposium Teaching Logic and Reasoning in an Illogical World, Rutgers, N.J., July 25-26, 1996
Program Committees: IFIP TC2 Working Conference on Algorithmic Languages and Calculi, Feb. 1997; ENCRES 1997; SCCC’97
Referee/Reviewer:
IEEE Transactions Software Engineering; IEEE Computer.

Lectures 

Teaching logic as a tool. Computer Science, Oregon State University, Corvallis, Oregon, May 24, 1997.
____. NSF workshop-tutorial. Oregon Graduate Institute, April 18-19, 1997.
Presentation, NSF Educational Intitiatives PI meeting, Salt Lake City, Utah, November 5, 1996.
Education in the need for simplicity. Keynote speech. ICECC96, Second IEEE International Conference on Engineering of Complex Computer Systems, Montreal, Canada, October 24, 1996.
On teaching logic as a tool. Three-hour tutorial. V Congresso Iberoamericano de Educacion Superior en Computation, UNAM, Mexico City, September 21, 1996.
____. Invited lecture. V Congresso Ibero-americano de Educacion Superior en Computation, UNAM, Mexico City, September 20, 1996.
What's education for? Invited address. The Opening Convocation, Daniel Webster College, September 6, 1996
.
Foundations for calculational logic. NATO Summer School, Marktoberdorf, Germany, July 30 - August 11, 1996.
Eliminating the chaff. Banquet speech, ibid.

Publications

Date refinement and the transform. In Deductive Program Design, M. Broy, ed., AASI F152, Springer Verlag, pp. 205-232, 1996.

 Patent

Patent 5,572,625, Method for generating audio renderings of digitized works having highly technical content. November 5, 1996 (with T.V. Raman).