2,704 research outputs found

    Guard Your Daggers and Traces: On The Equational Properties of Guarded (Co-)recursion

    Full text link
    Motivated by the recent interest in models of guarded (co-)recursion we study its equational properties. We formulate axioms for guarded fixpoint operators generalizing the axioms of iteration theories of Bloom and Esik. Models of these axioms include both standard (e.g., cpo-based) models of iteration theories and models of guarded recursion such as complete metric spaces or the topos of trees studied by Birkedal et al. We show that the standard result on the satisfaction of all Conway axioms by a unique dagger operation generalizes to the guarded setting. We also introduce the notion of guarded trace operator on a category, and we prove that guarded trace and guarded fixpoint operators are in one-to-one correspondence. Our results are intended as first steps leading to the description of classifying theories for guarded recursion and hence completeness results involving our axioms of guarded fixpoint operators in future work.Comment: In Proceedings FICS 2013, arXiv:1308.589

    A characterization of F-complete type assignments

    Get PDF
    AbstractThe aim of this paper is to investigate the soundness and completeness of the intersection type discipline (for terms of the (untyped λ-calculus) with respect to the F-semantics (F-soundness and F-completeness).As pointed out by Scott, if D is the domain of a γ-model, there is a subset F of D whose elements are the ‘canonical’ representatives of functions. The F-semantics of types takes into account that theintuitive meaning of “σ→τ” is ‘the type of functions with domain σ and range τ’ and interprets σ→τ as a subset of F.The type theories which induce F-complete type assignments are characterized. It follows that a type assignment is F-complete iff equal terms get equal types and, whenever M has a type ϕ∧ωn, where ϕ is a type variable and ϕ is the ‘universal’ type, the term λz1…zn…Mz1…zn has type ϕ. Here we assume that z1…z.n do not occur free in M

    A Simple Semantics for ML Polymorphism

    Get PDF
    We give a framework for denotational semantics for the polymorphic core of the programming language ML. This framework requires no more semantic material than what is needed for modeling the simple type discipline. In our view, the terms of ML are pairs consisting of a raw (untyped) lambda term and a type-scheme that ML\u27s type inference system can derive for the raw term. We interpret type-schemes as sets of simple types. Then, given any model M of the simply typed lambda calculus, the meaning of an ML term will be a set of pairs, each consisting of a simple type τ and an element of M of type τ. Hence, there is no need to interpret all raw terms, as was done in Milner\u27s original semantic framework. In comparison to Mitchell and Harper\u27s analysis, we avoid having to provide a very large type universe in which generic type-schemes are interpreted. Also, we show how to give meaning to ML terms rather than to derivations in the ML type inference system (which can be several for the same term). We give an axiomatization for the equational theory that corresponds to our semantic framework and prove the analogs of the compeleteness theorems that Friedman proved for the simply typed lambda calculus. The framework can be extended to languages with constants, type constructors and recursive types (via regular trees). For the extended language, we prove a theorem that allows the transfer of certain full abstraction results from languages based on the typed lambda calculus to ML-like languages
    corecore