Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
Uday S. Reddy
[go: Go Back, main page]

Prof. Uday S. Reddy

School of Computer Science, University of Birmingham.

Appointments See my Diary as well as School diary.
Email me with suggested times at u.s.reddy at cs.bham.ac.uk, +44 121 414 2740.

Current activities I have completed a 4-year term as the Head of Department in August 2008. I am looking forward to renewing my research and teaching. Please do tell me about all your latest exciting work!

Other affiliations: Formerly at the Department of Computer Science, University of Illinois. I had been a visiting professor at Queen Mary, University of London, and spent a sabbatical leave at Imperial College and University of Glasgow.

Research Areas: Functional programming, logic programming, object-oriented programming, especially, programming with state. Type systems, semantics and reasoning methods. Constructive logic and type theory, especially, linear logic. Automated deduction, program transformation and synthesis.

Research

Teaching

Computing Resources

Wikipedia Affiliate Button

Recent papers/manuscripts

Fine-grained concurrency with Separation Logic (Kalpesh Kapoor, Kamal Lodaya and Uday Reddy)

Separation Logic is a recent development in programming logic which has been applied by Peter O'Hearn to concurrency based on critical sections as well as semaphores. In this paper, we go one step further and apply it to fine-grained concurrency. We note that O'Hearn's formulation of Concurrent Separation Logic is by and large applicable to fine-grained concurrent programs with only minor adaptations. However, proving substantial properties of such programs involves the employment of sophisticated ``permissions'' frameworks so that different processes can have different levels of access and exchange such access. We illustrate these techniques by showing the correctness proof of a concurrent garbage collector originally studied by Dijkstra et al. [ps file | pdf file]

Parametric limits (Brian P. Dunphy and Uday S. Reddy, to appear in LICS 2004)

We develop a categorical model of polymorphic lambda calculi using a notion called parametric limits, which extend the notion of limits in categories to reflexive graphs of categories. We show that a number of parametric models of polymorphism can be captured in this way. We also axiomatize the structure of reflexive graphs needed for modelling parametric polymorphism based on ideas of fibrations, and show that it leads to proofs of representation results such as the initial algebra and final coalgebra properties one expects in polymorphic lambda calculi. [ps file]

Programming with the Mathematical and the Physical (Inaugural lecture, May 6, 2003)

Slides from my Inaugural Lecture. Reviews my work on the semantics of programming languages, and discusses the dichotomy between mathematical and physical entities that is faced in this work.

Correctness of data representations involving heap data structures (with H. Yang, to appear in Science of Computer Programming)

While the semantics of local variables in programming languages is by now well-understood, the semantics of pointer-addressed heap variables is still an outstanding issue. In particular, the commonly assumed relational reasoning principles for data representations have not been validated in a semantic model of heap variables. In this paper, we define a parametricity semantics for a Pascal-like language with pointers and heap variables which gives such reasoning principles. It is found that the correspondences between data representations are not simply relations between states, but more intricate correspondences that also need to keep track of visible locations whose pointers can be stored and leaked. [ps file | earlier version in ESOP 2003]

Brian Dunphy's PhD Thesis

Parametricity as a notion of uniformity in reflexive graphs, Department of Mathematics, University of Illinois, 2002. [ ps file]

Hongseok Yang's PhD Thesis

Local reasoning for stateful programs, Department of Computer Science, University of Illinois, 2001. [ ps file]

On the Semantics of Refinement Calculi (with H. Yang, FOSSACS 2000)

Refinement calculi for imperative programs provide an integrated framework for programs and specifications and allow one to develop programs from specifications in a systematic fashion. The semantics of these calculi has traditionally been defined in terms of predicate transformers and poses several challenges in defining a state transformer semantics in the denotational style. We define a novel semantics in terms of sets of state transformers and prove it to be isomorphic to multiplicative predicate transformers. This semantics disagrees with the traditional semantics in some places and the consequences of the disagreement are analyzed. [ps file | pdf file]

Parametric Sheaves for modelling store locality (with H.Yang)

In this paper, we bring together two important ideas in the semantics of Algol-like imperative programming languages. One is that program phrases act on fixed sets of storage locations. The second is that the information of local variables is hidden from client programs. This involves combining sheaf theory and parametricity to produce new classes of sheaves. We define the semantics of an Algol-like language using such sheaves and discuss the reasoning principles validated by the semantics. [ps file | pdf file]

Objects and classes in Algol-like languages (Information and Computation, 2002)

Many object-oriented languages used in practice descend from Algol. With this motivation, we study the theoretical issues underlying such languages via the theory of Algol-like languages. It is shown that the basic framework of this theory extends cleanly and elegantly to the concepts of objects and classes. An important idea that comes to light is that classes are abstract data types, whose theory corresponds to that of existential types. Equational and Hoare-like reasoning methods, and relational parametricity provide powerful formal tools for reasoning about Algol-like object-oriented programs. [ps file | pdf file] ]

This paper is an expanded version of a FOOL 98 paper: [ps file | dvi file and a ps figure]

Type Reconstruction for SCI, Part 2 (H. Huang and H. Yang, ICCL 98)

Syntactic Control of Interference (SCI) [Rey78] has long been studied as a basis for interference-free programming, with cleaner reasoning properties and semantics than traditional imperative languages. This paper makes SCI-based languages more practical by introducing a revised version of Huang and Reddy's type reconstruction system [HR96] with two significant improvements. First, we eliminate the need for explicit coercion operators in terms. Although this can lead to more complex principal typings, we introduce some minor restrictions on the inference system to keep the typings manageable. Second, we consider adding let-bound polymorphism. Such a modification appears to be nontrivial. We propose a new approach which addresses issues of both polymorphism and interference control. SCI can be adapted to a wide variety of languages, and our techniques should be applicable to any such language with SCI-based interference control. [ ps file]

Imperative Lambda Calculus revisited (Aug 97, with H. Yang)

Imperative Lambda Calculus is a type system designed to combine functional and imperative programming features in an orthogonal fashion without compromising the algebraic properties of functions. It has been noted that the original system is too restrictive and lacks the subject reduction property. We define a revised type system that solves these problems using ideas from Reynolds's Syntactic Control of Interference. We also extend it to handle Hindley-Milner style polymorphism and devise type reconstruction algorithms. A sophisticated constraint language is designed to formulate principal types for terms. [dvi file | ps file]

When parametricity implies naturality (Notes, July 97)

The issue of whether parametricity and naturality should be assumed separately or whether parametricity automatically implies naturality crops up in the parametricity semantics for Algol (O'Hearn and Tennent, 1995; O'Hearn and Reynolds, 1997). Intuitively, parametricity and naturality are trying to capture the same idea of ``uniformity.'' So, it is not immediately clear why one needs two theories of uniformity or whether one should find some other theory that subsumes both parametricity and naturality. The results here are meant to shed some light on the issue. We use the framework of reflexive graphs from (O'Hearn and Tennent, 1995) and add suitable conditions which entail that parametricity implies naturality. Further, we show that the semantics of Algol can be given in such a framework. [dvi file | ps file]

Summary of Research


Ph. D. Students



Bibliography

[RY03]
Correctness of Data Representations involving Heap Data Structures, U. S. Reddy and H. Yang, in P. Degano (ed) Programming Languages and Systems, 12th European Symposium on Programming, Springer LNCS, Vol. 2618, pp 223-237, 2003.
[BORT02]
Linear Continuation Passing, J. Berdine, P. W. O'Hearn, U. S. Reddy, H. Thielecke, Higher Order and Symbolic Computation, 15(2/3):181--208, September 2002.
[Red02]
Objects and classes in Algol-like Languages, Information and Computation, 172:63-97, 2002.

[RY00]
On the Semantics of Refinement Calculi, U. S. Reddy and H. Yang, Foundations of Software Science and Computer Structures 2000.
[Red99]
Programming Theory, U. S. Reddy, Wiley Encyclopedia of Electrical and Electronics Engineering, Vol. 17, John Wiley, 1999, pp. 358-374.
[Red98]
Objects and classes in Algol-like languages, U.S.Reddy, FOOL 5, San Diego, Jan. 1998.

[SRI97]
Assignments for Applicative Languages, V.Swarup, U.S.Reddy, E.Ireland, Chapter 9 of Algol-like Languages, Volume 1, O'Hearn, P.W. and Tennent, R.D. (eds) Birhauser, Boston, 1997.
[BR96]
Clausal completion, F.Bronsard and U.S.Reddy, Manuscript, Jan. 1996.

[CRPD96]
ICC++: A C++ dialect for high performance parallel computing, in ISOTAS 96.

[Red96]
Global state considered unnecessary: An introduction to object-based semantics, J. Lisp and Symbolic Computation, 9(1996):7-76.

[HR96]
Type reconstruction for SCI, Glasgow Functional Programming Workshop, 1995.

[OR95]
Objects, interference and the Yoneda embedding, (joint with Peter O'Hearn), MFPS XI, Vol 1. of ENTCS, 1995.

[BRH94]
Induction using term orderings, F.Bronsard, U.S.Reddy and R.W.Hasker, in A.Bundy (ed), CADE 94, LNAI Vol. 814, Springer-Verlag, 1994, pp. 102-117.

[KR94]
Two semantic models of object-oriented languages, S.N.Kamin and U.S.Reddy, in C.A.Gunter and J.C.Mitchell (eds) Theoretical Aspects of Object-Oriented Programming, MIT Press, 1994, pp. 463-496.

[Red94]
Higher-order aspects of logic programming, in R.Dyckhoff (ed), Extensions of Logic Programming, LNAI Vol. 798, Springer-Verlag, 1994. (Also) Extended Abstract in P.Van Hentenryck (ed), Logic Programming: Eleventh International Conf., MIT Press, 1994. pp. 402-418.

[Red94a]
Passivity and Independence, LICS 94, pp. 342-352.

[Red94b]
The design of core C++, Manuscript, May 1994.

[DR93]
Deductive and inductive synthesis of equational programs, N.Dershowitz and U.S.Reddy, J. Symbolic Computation, 15(1993):467-494.

[Red93]
A typed foundation for directional logic programming, in E.Lamma and P.Mello (eds) Extensions of Logic Programming, LNAI Vol. 660, Springer-Verlag, 1993, pp. 282-318.

[Red93a]
A linear logic model of state, Manuscript, Oct. 1993.

[KR93]
On the power of abstract interpretation, S.N.Kamin and U.S.Reddy, Computer Languages, 19(1993):2:79-89.

[BLR92]
A framework of directionality for proving terminatin of logic programs, F.Bronsard, T.K.Lakshman and U.S.Reddy, in K.Apt (ed), Logic Programming: 1992 Joint International Conference and Symposium, MIT Press, 1992, pp. 321-335.

[BR92]
Reduction techniques for first-order reasoning, F.Bronsard and U.S.Reddy, in M.Rusinowitch and J.L.Remy (eds), Conditional Term rewriting systems, LNCS Vol. 656, Springer-Verlag, 1992, pp. 242-256.

[SR92]
A logical view of assignments, V.Swarup and U.S.Reddy, in J.P.Myers and M.J.O'Donnell (eds), Constructivity in Computer Science, LNCS Vol. 613, Springer-Verlag, 1992.
[LR91]
Typed Prolog: A Semantic Reconstruction of the Mycroft-O'Keefe Type System, T.K.Lakshman and U.S. Reddy, in V.Saraswat and K.Ueda (eds) Logic Programming: 1991 International Symposium, MIT Press, 1991, pp. 202-217.

[Red91]
Acceptors as values: Functional Programming in classical linear logic, Manuscript, Dec. 1991.
[Red91a]
Design principles for an interactive program derivation system, in M.Lowry and R.D.McCartney (eds), Automating Software Design, AAAI Press, 1991, Chapter 18.

[SRI91]
Assignments for applicative languages, V.Swarup, U.S.Reddy and E.Ireland, in R.J.M.Hughes (ed), FPCA 91, LNCS Vol. 523, Springer-Verlag, 1991, pp. 192-214.

[Red90]
Term Rewriting Induction, in M.Stickel (ed) CADE 90, LNAI Vol. 449, 1990, pp. 162-177.

[Red88]
Objects as closures: Abstract semantics of object-oriented languages, U.S.Reddy, Lisp & Functional Porg, 1988, pp. 289-297

Uday S. Reddy / School of Computer Science / Univ of Birmingham / U.S.Reddy AT cs.bham.ac.uk