6 research outputs found

    Rn and Gn Logics

    Get PDF
    This paper proposes a simple, set-theoretic framework providingexpressive typing, higher-order functions and initial models atthe same time. Building upon Russell's ramified theory of types, we developthe theory of Rn-logics, which are axiomatisable by an order-sortedequational Horn logic with a membership predicate, and of Gn-logics,that provide in addition partial functions. The latter are therefore moreadapted to the use in the program specification domain, while sharing interesting properties, like existence of an initial model, with Rn-logics. Operational semantics of Rn-/Gn-logics presentations is obtained throughorder-sorted conditional rewriting

    Combining Algebraic and Set-Theoretic Specifications (Extended Version)

    Get PDF
    Specification frameworks such as B and Z provide power sets and cartesianproducts as built-in type constructors, and employ a rich notation fordefining (among other things) abstract data types using formulae of predicatelogic and lambda-notation. In contrast, the so-called algebraic specification frameworks often limit the type structure to sort constants andfirst-order functionalities, and restrict formulae to (conditional) equations.Here, we propose an intermediate framework where algebraic specificationsare enriched with a set-theoretic type structure, but formulae remain in thelogic of equational Horn clauses. This combines an expressive yet modestspecification notation with simple semantics and tractable proof theory

    Modeling, Sharing, and Recursion for Weak Reduction Strategies using Explicit Substitution

    Get PDF
    We present the lambda sigma^a_w calculus, a formal synthesis of the concepts ofsharing and explicit substitution for weak reduction. We show howlambda sigma^a_w can be used as a foundation of implementations of functionalprogramming languages by modelling the essential ingredients of suchimplementations, namely weak reduction strategies, recursion, spaceleaks, recursive data structures, and parallel evaluation, in a uniform way.First, we give a precise account of the major reduction strategiesused in functional programming and the consequences of choosing lambda-graph-reduction vs. environment-based evaluation. Second, we showhow to add constructors and explicit recursion to give a precise accountof recursive functions and data structures even with respect tospace complexity. Third, we formalize the notion of space leaks in lambda sigma^a_wand use this to define a space leak free calculus; this suggests optimisationsfor call-by-need reduction that prevent space leaking and enablesus to prove that the "trimming" performed by the STG machine doesnot leak space.In summary we give a formal account of several implementationtechniques used by state of the art implementations of functional programminglanguages.Keywords. Implementation of functional programming, lambdacalculus, weak reduction, explicit substitution, sharing, recursion, spaceleaks

    Pushdown Processes: Games and Model Checking

    Get PDF
    Games given by transition graphs of pushdown processes are considered.It is shown that if there is a winning strategy in such agame then there is a winning strategy that is realized by a pushdownprocess. This fact turns out to be connected with the model checkingproblem for the pushdown automata and the propositional mu-calculus.It is shown that this model checking problem is DEXPTIME-complete

    Theory and Practice of Action Semantics

    Get PDF
    Action Semantics is a framework for the formal descriptionof programming languages. Its main advantage over other frameworksis pragmatic: action-semantic descriptions (ASDs) scale up smoothly torealistic programming languages. This is due to the inherent extensibilityand modifiability of ASDs, ensuring that extensions and changes tothe described language require only proportionate changes in its description.(In denotational or operational semantics, adding an unforeseenconstruct to a language may require a reformulation of the entire description.)After sketching the background for the development of action semantics,we summarize the main ideas of the framework, and provide a simpleillustrative example of an ASD. We identify which features of ASDsare crucial for good pragmatics. Then we explain the foundations ofaction semantics, and survey recent advances in its theory and practicalapplications. Finally, we assess the prospects for further developmentand use of action semantics.The action semantics framework was initially developed at the Universityof Aarhus by the present author, in collaboration with David Watt(University of Glasgow). Groups and individuals scattered around fivecontinents have since contributed to its theory and practice

    Rn and Gn Logics

    No full text
    corecore