## Full Abstraction by Translation (1996)

Venue: | Proc., 3rd Workshop in Theory and Formal Methods |

Citations: | 5 - 0 self |

### BibTeX

@INPROCEEDINGS{Mccusker96fullabstraction,

author = {Guy Mccusker},

title = {Full Abstraction by Translation},

booktitle = {Proc., 3rd Workshop in Theory and Formal Methods},

year = {1996},

publisher = {Press}

}

### OpenURL

### Abstract

This paper shows how a fully abstract model for a rich metalanguage like FPC can be used to prove theorems about other languages. In particular, we use results obtained from a game semantics of FPC to show that the natural translation of the lazy -calculus into the metalanguage is fully abstract, thus obtaining a new full abstraction result from an old one. The proofs involved are very easy---all the hard work was done in giving the original games model. So far we have been unable to prove the completeness of our translation without recourse to the denotational model; we therefore have an indication of the worth of such fully abstract models. 1 Introduction Plotkin, in his CSLI notes [18], showed how denotational semantics can be viewed as a two-stage process. First one defines a metalanguage which describes elements of the intended semantic model, usually some category of domains. Then to give semantics to a language L it suffices to translate it into the metalanguage. While this is ...

### Citations

655 |
Concurrency and automata on infinite sequences
- Park
- 1981
(Show Context)
Citation Context ... Andrew Gordon has given a coinductive characterization of ' using the technique of applicative bisimulation. Applicative bisimulation is the analogue in functional programming of Park's bisimulation =-=[17]-=- from concurrency, and was first used by Abramsky in his work on the lazy -calculus. We now review and refine Gordon's work. To make clear the connection with bisimulation as used in concurrency theor... |

267 |
Semantics of Programming Languages: Structures and Techniques. Foundations of Computing
- Gunter
- 1992
(Show Context)
Citation Context ...ilar to that of lazy functional languages such as Miranda 1 . It should be noted that this is not the same as the semantics used by Plotkin, which is call-by-value. This language has also appeared in =-=[7, 8, 12, 20]-=-. We define the notion of program equivalence for FPC , and give a coinductive characterization of it, due to Gordon [11]. This is then strengthened using results obtained from the fully abstract mode... |

192 | Full abstraction for pcf
- Abramsky, Jagadeesan, et al.
- 2000
(Show Context)
Citation Context ...ully abstract model of l C too. In particular, we now know that the games model in [15] contains a fully abstract model of l C , subsuming the earlier result of [3]. (In fact, the games considered in =-=[1, 3, 4]-=- provide a fully abstract model of an impoverished version of FPC which only has lifting, not more general sum types.) The proof of this result was extremely simple, thanks to the power of the theorem... |

133 | Full abstraction in the lazy lambda calculus
- Abramsky, Ong
- 1993
(Show Context)
Citation Context ...ce that, even if a model of L via FPC were not fully abstract, the loss of completeness did not occur at the syntactic translation stage. This paper considers the simple example of the lazy -calculus =-=[2, 5, 16]-=-. We give a translation into FPC and perform the easy proof of its soundness. However, the completeness half is not so simple without the aid of some results about FPC obtained by the use of game sema... |

120 |
Bisimilarity as a theory of functional programming
- Gordon
- 1995
(Show Context)
Citation Context ...btain here a genuinely new, if not altogether surprising, full abstraction theorem.) A useful characterization of FPC equivalence has been obtained by Gordon without the use of denotational semantics =-=[10, 11]-=-, but it is weaker that the one we present here, and in particular not good enough to establish our completeness theorem. In [19], Ritter and Pitts show that a certain translation between SML and a -c... |

118 |
Report on the functional programming language Haskell (v1.1
- Hudak, Wadler
- 1991
(Show Context)
Citation Context ...e at function types; the second would fail if we allowed observation at product types. The decision to observe only convergence at sum types is by no means the only possible one. For example, Haskell =-=[13]-=- allows observation of convergence at product types too. Our notion of equivalence is more like that of Miranda. It is easy to show that it is equivalent to observe convergence at sum types of any ari... |

105 |
Functional Programming and Input/Output
- Gordon
- 1993
(Show Context)
Citation Context ...s. What's more, the proof of (2) is essentially routine, so the burden of proof is greatly reduced by the generic soundness result of part (1). This philosophy has also been taken by Crole and Gordon =-=[6, 9]-=-. Recent work on game semantics [14,15] has provided a model of Plotkin's metalanguage, now known as FPC , which is not only sound but also fully abstract, i.e. it satisfies the following completeness... |

69 |
The Formal Semantics of Programming Languages. Foundation of Computing Series
- Winskel
- 1993
(Show Context)
Citation Context ...ilar to that of lazy functional languages such as Miranda 1 . It should be noted that this is not the same as the semantics used by Plotkin, which is call-by-value. This language has also appeared in =-=[7, 8, 12, 20]-=-. We define the notion of program equivalence for FPC , and give a coinductive characterization of it, due to Gordon [11]. This is then strengthened using results obtained from the fully abstract mode... |

62 |
Axiomatic Domain Theory in Categories of Partial Maps
- Fiore
- 1994
(Show Context)
Citation Context ...ilar to that of lazy functional languages such as Miranda 1 . It should be noted that this is not the same as the semantics used by Plotkin, which is call-by-value. This language has also appeared in =-=[7, 8, 12, 20]-=-. We define the notion of program equivalence for FPC , and give a coinductive characterization of it, due to Gordon [11]. This is then strengthened using results obtained from the fully abstract mode... |

42 | The Lazy Lambda Calculus: An Investigation into the Foundations of Functional Programming - Ong - 1988 |

34 | An Axiomatisation of Computationally Adequate Domain-Theoretic Models of FPC
- Fiore, Plotkin
- 1994
(Show Context)
Citation Context |

28 |
Full abstraction in the lazy -calculus
- Abramsky, Ong
- 1989
(Show Context)
Citation Context ... of the translation from lazy -calculus to FPC , thus arriving at a new full abstraction result bred from an old one. (A fully abstract games model of the lazy -calculus has already been described in =-=[3]-=-; but this used a different category of games from the one in which FPC is modelled, so we obtain here a genuinely new, if not altogether surprising, full abstraction theorem.) A useful characterizati... |

28 |
Lectures on Predomains and Partial Functions. Notes for a course at CSLI
- Plotkin
- 1985
(Show Context)
Citation Context ...e the completeness of our translation without recourse to the denotational model; we therefore have an indication of the worth of such fully abstract models. 1 Introduction Plotkin, in his CSLI notes =-=[18]-=-, showed how denotational semantics can be viewed as a two-stage process. First one defines a metalanguage which describes elements of the intended semantic model, usually some category of domains. Th... |

23 |
The lazy -calculus
- Abramsky
- 1990
(Show Context)
Citation Context ...ce that, even if a model of L via FPC were not fully abstract, the loss of completeness did not occur at the syntactic translation stage. This paper considers the simple example of the lazy -calculus =-=[2, 5, 16]-=-. We give a translation into FPC and perform the easy proof of its soundness. However, the completeness half is not so simple without the aid of some results about FPC obtained by the use of game sema... |

16 | Games for Recursive Types
- Abramsky, McCusker
- 1994
(Show Context)
Citation Context ...ully abstract model of l C too. In particular, we now know that the games model in [15] contains a fully abstract model of l C , subsuming the earlier result of [3]. (In fact, the games considered in =-=[1, 3, 4]-=- provide a fully abstract model of an impoverished version of FPC which only has lifting, not more general sum types.) The proof of this result was extremely simple, thanks to the power of the theorem... |

15 |
A fully abstract translation between a -calculus with reference types and Standard ML
- Ritter, Pitts
- 1995
(Show Context)
Citation Context ... been obtained by Gordon without the use of denotational semantics [10, 11], but it is weaker that the one we present here, and in particular not good enough to establish our completeness theorem. In =-=[19]-=-, Ritter and Pitts show that a certain translation between SML and a -calculus with reference types is fully abstract, again without recourse to a denotational model. This therefore raises two questio... |

13 |
and Full Abstraction for FPC
- Games
- 1996
(Show Context)
Citation Context ...sentially routine, so the burden of proof is greatly reduced by the generic soundness result of part (1). This philosophy has also been taken by Crole and Gordon [6, 9]. Recent work on game semantics =-=[14,15]-=- has provided a model of Plotkin's metalanguage, now known as FPC , which is not only sound but also fully abstract, i.e. it satisfies the following completeness condition. e ' f ) [[e]] = [[f ]]: It ... |

3 |
Factoring an Adequacy Proof
- Crole, Gordon
- 1994
(Show Context)
Citation Context ...s. What's more, the proof of (2) is essentially routine, so the burden of proof is greatly reduced by the generic soundness result of part (1). This philosophy has also been taken by Crole and Gordon =-=[6, 9]-=-. Recent work on game semantics [14,15] has provided a model of Plotkin's metalanguage, now known as FPC , which is not only sound but also fully abstract, i.e. it satisfies the following completeness... |

1 |
On functions and games
- McCusker
- 1996
(Show Context)
Citation Context ...sentially routine, so the burden of proof is greatly reduced by the generic soundness result of part (1). This philosophy has also been taken by Crole and Gordon [6, 9]. Recent work on game semantics =-=[14,15]-=- has provided a model of Plotkin's metalanguage, now known as FPC , which is not only sound but also fully abstract, i.e. it satisfies the following completeness condition. e ' f ) [[e]] = [[f ]]: It ... |