21 research outputs found

    A uniform treatment of order of evaluation and aggregate update

    Get PDF
    The article presents an algorithm for the destructive update optimization in first-order lazy functional languages. The main component of the method is a new static analysis of the order of evaluation of expressions which, compared to other published work, has a much lower complexity and is not restricted to pure lazy evaluation. The other component, which we call reduction to variables, is a method of detecting the variables which denote locations where the result of an expression might be stored.Starting with the operational semantics of the language, we introduce some markers for the values in the basic domain. By choosing appropriately the set of markers M and the method of propagating them during evaluation, we can extract some property of the evaluation in which an expression can participate by looking at the marker of its value. We then define an equivalent denotational semantics and derive the above analyses, in a uniform way, by abstract interpretation over a subdomain of P(M[perpendicular]).Peer Reviewedhttp://deepblue.lib.umich.edu/bitstream/2027.42/30571/1/0000206.pd

    The Higher-Order Aggregate Update Problem

    No full text

    Expressibility Results for Linear-time and Branching-time Logics

    No full text
    We investigate the expressive power of linear-time and branching-time temporal logics as fragments of the logic CTL*. We give a simple characterization of those CTL* formulas that can be expressed in linear-time logic. We also give a simple method for showing that certain CTL* formulas cannot be expressed in the branching-time logic CTL. Both results are illustrated with examples

    A unified approach for showing language containment and equivalence between various types of [omega]-automata

    No full text
    Abstract: "We consider the language containment and equivalence problems for six different types of [omega]-automata: Bu╠ĂȘchi, Muller, Rabin, Streett, the L-automata of Kurshan, and the [universal quanitifier] automata of Manna and Pnueli. We give a six by six matrix in which each row and column is associated with one of these types of automata. The entry in the i[superscript th] column is the complexity of showing containment between the i[superscript th] type of automation and j[superscript th]. Thus, for example, we give the complexity of showing language containment and equivalence between a Bu╠ĂȘchi automation and a Muller or Streett automation. Our results are obtained by a uniform method that associates a formula of the computation tree logic CTL* with each type of automation.Our algorithms use a model checking procedure for the logic with the formulas obtained from the automata. The results of our paper are important for verification of finite state concurrent systems with fairness constraints. A natural way of reasoning about such systems is to model the finite state program by one [omega]-automation and its specification by another.

    A Unified Approach for Showing Language Containment And Equivalence between Various Types of Omega-Automata

    No full text
    We consider the language inclusion and equivalence problems for six different types of ω-automata; BĂŒchi, Muller, Rabin, Streett, the L-automata of Kurshan, and the ∀-automata of Manna and Pnueli. We give a six by six matrix in which each row and column is associated with one of these types of automata. The entry in the ith row and jth column is the complexity of showing inclusion between the ith type of automaton and the jth. Thus, for example, we give the complexity of showing language inclusion and equivalence between a BĂŒchi automaton and a Muller or Streett automaton. Our results are obtained by a uniform method that associates a formula of the computation tree logic CTL* with each type of automaton. Our algorithms use a model checking procedure for the logic with the formulas obtained from the automata. The results of our paper are important for verification of finite state concurrent systems with fairness constraints. A natural way of reasoning about such systems is to model the finite state program by one ω-automaton and its specification by another

    Static Analysis for Safe Destructive Updates in a Functional Language

    No full text
    Functional programs are more amenable to rigorous mathematical analysis than imperative programs, but are typically less ef- cient in terms of execution space and time. The update of aggregate data structures, such as arrays, are a signi cant source of space/time ine ciencies in functional programming. Imperative programs can execute such updates in place, whereas the semantics of functional languages require aggregate data structures to be copied and updated. In many functional programs, the execution of aggregate updates by copying is redundant and could be safely implemented by means of destructive, inplace updates. We describe a method for analyzing higher-order, eager functional programs for safe destructive updates. This method has been implemented for the PVS speci cation language for the purpose of animating or testing speci cations to check if they accurately reect their intended function. We also give a careful proof of correctness for the safety of the destructive update optimization

    Personal factors in systemic sclerosis and their coverage by patient-reported outcome measures: A multicentre European qualitative study and literature review

    Full text link
    BACKGROUND Systemic Sclerosis (SSc) is an autoimmune disease where thickening of the skin can lead to reduced body function and limitations in activities. Severe forms can also affect and seriously damage inner organs. Patient--centred rehabilitation emphasises considerations of patients' background, experience and behaviour which highlights the need to know if patient--reported outcome measures (PROMs) include such personal factors. AIMS To identify and describe personal factors in the experiences of functioning and health of persons with SSc and to examine if and to what extent PROMs in SSc--research cover these factors. DESIGN AND POPULATION Data from a qualitative study with focus group interviews in patients with SSc were analysed and PROMs in SSc--research were identified in a literature review between 2008--2013. SETTING Outpatient clinics at rheumatology department in four European countries. METHODS Data from interviews with 63 participants were analysed using a structure of personal factors developed by Geyh et al. Identified PROMs were analysed and linked to main concepts, related to the personal factors, found in the interview data. RESULTS Nineteen main concepts related to the area "patterns of experience and behaviour" in the personal factor structure, 16 to "thoughts and beliefs", nine to "feelings", one to "motives" and one to "personal history and biography" respectively. Among the 35 PROMs identified, 15 did not cover any of the identified concepts. Concepts within the area of "feelings" were mostly covered by the PROMs. Five of the PROMs covered "patterns of experience and behaviour" while "motives" and "personal history and biography" were not covered at all. Four of the identified PROMs covered concepts within the areas "feelings", "thoughts and beliefs" and "patterns of experience and behaviour" in the same instrument. The Illness Cognition Questionnaire and Illness Behaviour Questionnaire were such PROMs. CONCLUSION Patterns of experience and behaviour had the highest number of concepts related to personal factors, but few of the PROMs in SSc--research covered these factors. Only some PROMs covered several personal factors areas in the same instrument. CLINICAL REHABILITATION IMPACT The results would be of value when developing a core set for outcome measurements in SSc
    corecore