Results 1  10
of
10
A callbyneed lambdacalculus with locally bottomavoiding choice: Context lemma and correctness of transformations
 MATHEMATICAL STRUCTURES IN COMPUTER SCIENCE
, 2008
"... We present a higherorder callbyneed lambda calculus enriched with constructors, caseexpressions, recursive letrecexpressions, a seqoperator for sequential evaluation and a nondeterministic operator amb that is locally bottomavoiding. We use a smallstep operational semantics in form of a sin ..."
Abstract

Cited by 18 (11 self)
 Add to MetaCart
We present a higherorder callbyneed lambda calculus enriched with constructors, caseexpressions, recursive letrecexpressions, a seqoperator for sequential evaluation and a nondeterministic operator amb that is locally bottomavoiding. We use a smallstep operational semantics in form of a singlestep rewriting system that defines a (nondeterministic) normal order reduction. This strategy can be made fair by adding resources for bookkeeping. As equational theory we use contextual equivalence, i.e. terms are equal if plugged into any program context their termination behaviour is the same, where we use a combination of may as well as mustconvergence, which is appropriate for nondeterministic computations. We show that we can drop the fairness condition for equational reasoning, since the valid equations w.r.t. normal order reduction are the same as for fair normal order reduction. We evolve different proof tools for proving correctness of program transformations, in particular, a context lemma for may as well as mustconvergence is proved, which restricts the number of contexts that need to be examined for proving contextual equivalence. In combination with socalled complete sets of commuting and forking diagrams we show that
all the deterministic reduction rules and also some additional transformations preserve contextual equivalence.We also prove a standardisation theorem for fair normal order reduction. The structure of the ordering <= c is also analysed: Ω is not a least element, and <=c already implies contextual equivalence w.r.t. mayconvergence.
On the representation of mccarthy’s amb in the picalculus
 Theor. Comput. Sci
, 2005
"... We study the encoding of λ[], the call by name λcalculus enriched with McCarthy’s amb operator, into the picalculus. Semantically, amb is a challenging operator, for the fairness constraints that it expresses. We prove that, under a certain interpretation of divergence in the λcalculus (weak div ..."
Abstract

Cited by 11 (0 self)
 Add to MetaCart
(Show Context)
We study the encoding of λ[], the call by name λcalculus enriched with McCarthy’s amb operator, into the picalculus. Semantically, amb is a challenging operator, for the fairness constraints that it expresses. We prove that, under a certain interpretation of divergence in the λcalculus (weak divergence), a faithful encoding is impossible. However, with a different interpretation of divergence (strong divergence), the encoding is possible, and for this case we derive results and coinductive proof methods to reason about λ[] that are similar to those for the encoding of pure λcalculi. We then use these methods to derive the most important laws concerning amb. We take bisimilarity as behavioural equivalence on the picalculus, which sheds some light on the relationship between fairness and bisimilarity. As a spinoff result, we show that there is no smallstep operational semantics for λ[] that preserves the branching structure of terms and yields the correct predicates of convergence and (weak) divergence. 1
StepIndexed Relational Reasoning for Countable Nondeterminism
"... Programming languages with countable nondeterministic choice are computationally interesting since countable nondeterminism arises when modeling fairness for concurrent systems. Because countable choice introduces noncontinuous behaviour, it is wellknown that developing semantic models for program ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
Programming languages with countable nondeterministic choice are computationally interesting since countable nondeterminism arises when modeling fairness for concurrent systems. Because countable choice introduces noncontinuous behaviour, it is wellknown that developing semantic models for programming languages with countable nondeterminism is challenging. We present a stepindexed logical relations model of a higherorder functional programming language with countable nondeterminism and demonstrate how it can be used to reason about contextually defined may and mustequivalence. In earlier stepindexed models, the indices have been drawn from ω. Here the stepindexed relations for mustequivalence are indexed over an ordinal greater than ω.
Divergenceleast semantics of amb is Hoare
 Short presentation at the APPSEM II workshop, Frauenchiemsee
, 2005
"... Abstract This note strengthens the hoary observation that McCarthy’s amb is not monotone with respect to the Smyth and Plotkin powerdomains. It shows that there is no least fixpoint semantics for amb that is sensitive to divergence. This paper is concerned with an erratic choice operator MM ′ , and ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
Abstract This note strengthens the hoary observation that McCarthy’s amb is not monotone with respect to the Smyth and Plotkin powerdomains. It shows that there is no least fixpoint semantics for amb that is sensitive to divergence. This paper is concerned with an erratic choice operator MM ′ , and an ambiguous choice operator M amb M ′. Recall that MM ′ means: either evaluate M or evaluate M ′. And M amb M ′ means: evaluate both M and M ′ on an arbitrary fair scheduler, and return whatever answer you get first. We defer the study of ambiguous choice until Sect. 2. 1 Erratic Choice Suppose we have a language L containing the following: – a boolean type bool, equipped with constants t and f, and a conditional operator if M then N else N ′ at every type – a natural number type nat, equipped with a constant n for each n ∈ N, and an equality operator N = N ′ – a term d (short for diverge) at every type – an erratic choice operator  at every type The types bool and nat are called ground types. To describe operational semantics, suppose that we have a function behs[−] – from the set of closed terms of type bool to P{true, false, ⊥} – from the set of closed terms of type nat to P(N ∪ {⊥}) satisfying the following equations: behs[t] = {true} behs[f] = {false} behs[n] = {n} behs[d] = {⊥} behs[MN] = behs[M] ∪ behs[N] behs[if M then N else N ′ ] = {x ∈ behs[N]  true ∈ behs[M]} ∪{x ∈ behs[N ′ ]  false ∈ behs[M ′]} ∪{ ⊥  ⊥ ∈ behs[M]} behs[M = N] = {true  ∃n ∈ N.(n ∈ behs[M] ∧ n ∈ behs[N])} ∪{false  ∃m, n ∈ N.(m = n ∧ m ∈ behs[M] ∧ n ∈ behs[N])} ∪{ ⊥  ⊥ ∈ behs[M] ∨ ⊥ ∈ behs[N]} We write vals[N] for behs[N] \ {⊥}, and write M ⇑ when ⊥ ∈ behs[M]. We write = beh for the kernel of behs[−]. Some reasonable laws for L are shown in Fig. 1, and when we speak of a “denotational semantics”, we mean one that validates all these laws. (It is not known whether these laws are complete in any sense.)
McCarthy’s amb has no least fixpoint semantics
, 2005
"... This note presents a formal argument why it is impossible to give a least fixpoint semantics for McCarthy’s amb [3] that discriminates programs with different divergence behaviour and satisifies some equational axioms. 1 ..."
Abstract
 Add to MetaCart
(Show Context)
This note presents a formal argument why it is impossible to give a least fixpoint semantics for McCarthy’s amb [3] that discriminates programs with different divergence behaviour and satisifies some equational axioms. 1
A Model of Countable Nondeterminism in Guarded Type Theory
"... Abstract. We show how to construct a logical relation for countable nondeterminism in a guarded type theory, corresponding to the internal logic of the topos Sh (ω1) of sheaves over ω1. In contrast to earlier work on abstract stepindexed models, we not only construct the logical relations in the g ..."
Abstract
 Add to MetaCart
Abstract. We show how to construct a logical relation for countable nondeterminism in a guarded type theory, corresponding to the internal logic of the topos Sh (ω1) of sheaves over ω1. In contrast to earlier work on abstract stepindexed models, we not only construct the logical relations in the guarded type theory, but also give an internal proof of the adequacy of the model with respect to standard contextual equivalence. To state and prove adequacy of the logical relation, we introduce a new propositional modality. In connection with this modality we show why it is necessary to work in the logic of Sh (ω1). 1
Infinitary Howe's Matrix
"... Howe’s method is a wellknown technique for proving that various kinds of applicative bisimilarity (or similarity) on a functional language are congruences (or precongruences). It proceeds by constructing an extension of the given relation that has certain special properties. The method can be used ..."
Abstract
 Add to MetaCart
Howe’s method is a wellknown technique for proving that various kinds of applicative bisimilarity (or similarity) on a functional language are congruences (or precongruences). It proceeds by constructing an extension of the given relation that has certain special properties. The method can be used for deterministic and for erratically nondeterministic languages, but in the latter case it has a strange limitation: it requires the language’s syntax to be finitary. That excludes, for example, languages with countable sum types, and has repeatedly caused problems in the literature. In this paper, we give a variation on Howe’s method, called “infinitary Howe’s method”, that avoids this problem. The method involves defining two extensions of the original relation by mutual coinduction. Both extensions possess the key properties of Howe’s extension, but it is their intersection that is compatible. In the first part of the paper, we see how this works for a callbyvalue language with countable sum types. In the second part, we see that the method continues to work when we make the syntax nonwellfounded. More precisely, we show, using a mixed inductive/coinductive argument, that the various forms of applicative similarity and bisimilarity are preserved by any substituting context.
On the representation of McCarthy’s ambin the πcalculus
, 2004
"... We study the encoding of λ [] , the call by name λcalculus enriched with McCarthy’s amb operator, into the πcalculus. Semantically, amb is a challenging operator, for the fairness constraints that it expresses. We prove that, under a certain interpretation of divergence in the λcalculus (weak div ..."
Abstract
 Add to MetaCart
We study the encoding of λ [] , the call by name λcalculus enriched with McCarthy’s amb operator, into the πcalculus. Semantically, amb is a challenging operator, for the fairness constraints that it expresses. We prove that, under a certain interpretation of divergence in the λcalculus (weak divergence), a faithful encoding is impossible. However, with a different interpretation of divergence (strong divergence), the encoding is possible, and for this case we derive results and coinductive proof methods to reason about λ [] that are similar to those for the encoding of pure λcalculi. We then use these methods to derive the most important laws concerning amb. We take bisimilarity as behavioural equivalence on the πcalculus, which sheds some light on the relationship between fairness and bisimilarity.
STEPINDEXED RELATIONAL REASONING FOR COUNTABLE NONDETERMINISM ∗
, 2012
"... Vol. 9(4:4)2013, pp. 1–23 www.lmcsonline.org ..."