Emergent Mind

The Full Abstraction Problem for Higher Order Functional-Logic Programs

(1002.1833)
Published Feb 9, 2010 in cs.LO and cs.PL

Abstract

Developing suitable formal semantics can be of great help in the understanding, design and implementation of a programming language, and act as a guide for software development tools like analyzers or partial evaluators. In this sense, full abstraction is a highly desirable property, indicating a perfect correspondence between the semantics and the observable behavior of program pieces. In this work we address the question of full abstraction for the family of modern functional logic languages, in which functions can be higher order and non-deterministic, and where the semantics adopted for non-determinism is \emph{call-time choice}. We show that, with respect to natural notions of \emph{observation}, any semantics based on \emph{extensional} functions is necessarily unsound; in contrast, we show that the higher order version of \emph{CRWL}, a well-known existing semantic framework for functional logic programming, based on an \emph{intensional} view of functions, turns out to be fully abstract and compositional.

We're not able to analyze this paper right now due to high demand.

Please check back later (sorry!).

Generate a summary of this paper on our Pro plan:

We ran into a problem analyzing this paper.

Newsletter

Get summaries of trending comp sci papers delivered straight to your inbox:

Unsubscribe anytime.