454,460 research outputs found

    Context-Aware Separation Logic

    Full text link
    Separation logic is often praised for its ability to closely mimic the locality of state updates when reasoning about them at the level of assertions. The prover only needs to concern themselves with the footprint of the computation at hand, i.e., the part of the state that is actually being accessed and manipulated. Modern concurrent separation logics lift this local reasoning principle from the physical state to abstract ghost state. For instance, these logics allow one to abstract the state of a fine-grained concurrent data structure by a predicate that provides a client the illusion of atomic access to the underlying state. However, these abstractions inadvertently increase the footprint of a computation: when reasoning about a local low-level state update, one needs to account for its effect on the abstraction, which encompasses a possibly unbounded portion of the low-level state. Often this gives the reasoning a global character. We present context-aware separation logic (CASL) to provide new opportunities for local reasoning in the presence of rich ghost state abstractions. CASL introduces the notion of a context of a computation, the part of the concrete state that is only affected on the abstract level. Contexts give rise to a new proof rule that allows one to reduce the footprint by the context, provided the computation preserves the context as an invariant. The context rule complements the frame rule of separation logic by enabling more local reasoning in cases where the predicate to be framed is known in advance. We instantiate our developed theory for the flow framework, which enables local reasoning about global properties of heap graphs. We then use the instantiation to obtain a fully local proof of functional correctness for a sequential binary search tree implementation that is inspired by fine-grained concurrent search structures

    Structural Separation Logic

    Get PDF
    This thesis presents structural separation logic, a novel program reasoning approach for software that manipulates both standard heaps and structured data such as lists and trees. Structural separation logic builds upon existing work in both separation logic and context logic. It considers data abstractly, much as it is exposed by library interfaces, ignoring implementation details. We provide a programming language that works over structural heaps, which are similar to standard heaps but allow data to be stored in an abstract form. We introduce abstract heaps, which extend structural heaps to enable local reasoning about abstract data. Such data can be split up with structural addresses. Structural addresses allow sub-data (e.g. a sub-tree within a tree) to be abstractly allocated, promoting the sub-data to an abstract heap cell. This cell can be analysed in isolation, then re-joined with the original data. We show how the tight footprints this allows can be refined further with promises, which enable abstract heap cells to retain information about the context from which they were allocated. We prove that our approach is sound with respect to a standard Hoare logic. We study two large examples. Firstly, we present an axiomatic semantics for the Docu- ment Object Model in structural separation logic. We demonstrate how structural separa- tion logic allows abstract reasoning about the DOM tree using tighter footprints than were possible in previous work. Secondly, we give a novel presentation of the POSIX file system library. We identify a subset of the large POSIX standard that focuses on the file system, including commands that manipulate both the file heap and the directory structure. Axioms for this system are given using structural separation logic. As file system resources are typically identified by paths, we use promises to give tight footprints to commands, so that that they do not require all the resource needed to explain paths being used. We demonstrate our reasoning using a software installer example.Open Acces

    Segment Logic

    No full text
    O'Hearn, Reynolds and Yang introduced local Hoare reasoning about mutable data structures using separation logic. They reason about the local parts of the memory accessed by programs, and thus construct their smallest complete specifications. Gardner et al. generalised their work, using context logic to reason about structured data at the same level of abstraction as the data itself. In particular, we developed a formal specification of the Document Object Model (DOM), a W3C XML update library. Whilst we kept to the spirit of local reasoning, we were not able to retain small specifications for all of the commands of DOM: for example, our specification of the appendChild command was not small. We show how to obtain such small specifications by developing a more fine-grained context structure, allowing us to work with arbitrary segments of a data structure. We introduce segment logic, a logic for reasoning about such segmented data structures, staring at first with a simple tree structure, but then showing how to generalise our approach to arbitrary structured data. Using our generalised segment logic we construct a reasoning framework for abstract program modules, showing how to reason about such modules at the client level. In particular we look at modules for trees, lists, heaps and the more complex data model of DOM. An important part of any abstraction technique is an understanding of how to link the abstraction back to concrete implementations. Building on our previous abstraction and refinement work for local reasoning, we show how to soundly implement the segment models used in our abstract reasoning. In particular we show how to implement our fine-grained list and tree modules so that their abstract specifications are satisfied by the concrete implementations. We also show how our reasoning from the abstract level can be translated to reasoning at the concrete level. Finally, we turn our attention to concurrency and show how having genuine small axioms for our commands allows for a simple treatment of abstract level concurrency constructs

    Higher-order Representation and Reasoning for Automated Ontology Evolution

    Get PDF
    Abstract: The GALILEO system aims at realising automated ontology evolution. This is necessary to enable intelligent agents to manipulate their own knowledge autonomously and thus reason and communicate effectively in open, dynamic digital environments characterised by the heterogeneity of data and of representation languages. Our approach is based on patterns of diagnosis of faults detected across multiple ontologies. Such patterns allow to identify the type of repair required when conflicting ontologies yield erroneous inferences. We assume that each ontology is locally consistent, i.e. inconsistency arises only across ontologies when they are merged together. Local consistency avoids the derivation of uninteresting theorems, so the formula for diagnosis can essentially be seen as an open theorem over the ontologies. The systemā€™s application domain is physics; we have adopted a modular formalisation of physics, structured by means of locales in Isabelle, to perform modular higher-order reasoning, and visualised by means of development graphs.

    Parametricity and Local Variables

    Get PDF
    We propose that the phenomenon of local state may be understood in terms of Strachey\u27s concept of parametric (i.e., uniform) polymorphism. The intuitive basis for our proposal is the following analogy: a non-local procedure is independent of locally-declared variables in the same way that a parametrically polymorphic function is independent of types to which it is instantiated. A connection between parametricity and representational abstraction was first suggested by J. C. Reynolds. Reynolds used logical relations to formalize this connection in languages with type variables and user-defined types. We use relational parametricity to construct a model for an Algol-like language in which interactions between local and non-local entities satisfy certain relational criteria. Reasoning about local variables essentially involves proving properties of polymorphic functions. The new model supports straightforward validations of all the test equivalences that have been proposed in the literature for local-variable semantics, and encompasses standard methods of reasoning about data representations. It is not known whether our techniques yield fully abstract semantics. A model based on partial equivalence relations on the natural numbers is also briefly examined

    Formalized Verification of Snapshotable Trees: Separation and Sharing

    Get PDF
    Abstract. We use separation logic to specify and verify a Java program that implements snapshotable search trees, fully formalizing the specification and verification in the Coq proof assistant. We achieve local and modular reasoning about a tree and its snapshots and their iterators, although the implementation involves shared mutable heap data structures with no separation or ownership relation between the various data. The paper also introduces a series of four increasingly sophisticated implementations and verifies the first one. The others are included as future work and as a set of challenge problems for full functional specification and verification, whether by separation logic or by other formalisms.

    How Faithful are Self-Explainable GNNs?

    Full text link
    Self-explainable deep neural networks are a recent class of models that can output ante-hoc local explanations that are faithful to the model's reasoning, and as such represent a step forward toward filling the gap between expressiveness and interpretability. Self-explainable graph neural networks (GNNs) aim at achieving the same in the context of graph data. This begs the question: do these models fulfill their implicit guarantees in terms of faithfulness? In this extended abstract, we analyze the faithfulness of several self-explainable GNNs using different measures of faithfulness, identify several limitations -- both in the models themselves and in the evaluation metrics -- and outline possible ways forward

    ADOLESCENCE ATTITUDES ON THE ROLES OF LOCAL CULTURE IN PROMOTING PROSOCIAL MORAL REASONING IN AN INDONESIAN CONTEXT

    Get PDF
    Abstract The study aims to explore studentsā€™ attitudes on the roles of local cultures in promoting prosocial moral reasoning in Indonesian contexts. This study involved 200 students from Makassar who are Buginese ethnic and still upholds their cultural integrity. The recruitment of the samples used multistage cluster sampling. The two-stage cluster sampling was used to determine the sample. The data were gathered using two types of questionnaires. Parametric SPSS assisted analysis is used to analyze the data. The results showed that the adolescent participants had developed a positive attitude towards local cultural values and their prosocial moral reasoning in early adolescence was categorized high (reciprocal and altruistic). Further, the sets of moral value in early adolescents are still strong and become the guidance for participants living in the modern-day. Besides, the adolescentsā€™ attitudes on local cultural values have contributed to their prosocial moral reasoning positively, suggesting that these attitudes were able to mediate prosocial moral reasoning in early adolescence. This research recommends that the findings of this research can be the basis for further investigation of the roles of parents, school staff, teachers, school counselors in promoting prosocial moral attitudes

    Changes in Conflict Resolution Style over Time: The Risk for Persons with Alzheimerā€™s Dementia

    Get PDF
    Abstract Background: Elder mistreatment is a serious issue affecting between 300,000 and 800,000 older adults. Elder mistreatment has serious consequences for older adults and can include immunological dysfunction, increased mortality and emotional difficulties such as depression, feelings of inadequacy and self-contempt. Sub-groups such as persons with Alzheimerā€™s disease have heightened risk for elder mistreatment, but it is not clear whether this heightened risk represents life-long patterns of abuse between persons or whether they represent a change in conflict style over time as a result of changes associated with dementia. Methods: Data analyzed in this study were collected as part of the Aggression and Violence in Community Based Alzheimerā€™s Study [AV-CAD] and represents patient caregiver/dyads who received care at one of five state funded medical clinics or who belonged to one of three local chapters of the Alzheimerā€™s Association. Data were collected via in-person interview and mailed survey, and changes in conflict resolution style (reasoning, verbal aggression and violence) pre and post dementia were measured using the Conflict Tactic Scale (CTS) and analyzed using McNemarā€™s Test. Results: Reasoning was used as a conflict resolution style in 91.4% of caregivers and 89.3% of elders prior to the onset of dementia and in 66.3% of caregivers and 45.3% of elders in the past year (post dementia diagnosis). Reasoning in the post dementia period was significantly related to use of reasoning in the pre dementia period for caregivers (X2=7.47, p=.0032) and approached significance for elders (X2=6.00; p=.057). Use of verbal aggression (VA) and violence (V) as a conflict resolution style post dementia was higher for both caregivers (VA: 59.3%; V: 16.8%) and elders (VA: 68.7%; V: 24%), but was not significantly related to behaviors in the pre-dementia period for caregivers (V: X2=1.55, p=.536; VA: X2=0.67, p=.528) or elders (V: X2=0.54, p=.628; VA: X2=0.43, p=.621). Conclusions: This study lends support to the idea that elder abuse in a large number of persons with Alzheimerā€™s disease may be in part a result of the etiology of the disease and is susceptible over time. Implications for policy, practice and future research are discussed

    The Hidden Role of Pathos in Toulminā€™s Layout of Argument

    Get PDF
    Stephen Toulminā€™s use of a judicial model for argumentation in The Uses of Argument means that he is introducing the complexity of rhetorical appeals to the hitherto logic-based study of argumentation, including the appeal to the emotions, pathos. Toulminā€™s acknowledgment of the role of the emotions in practical reasoning moves from being implicit in The Uses of Argument to becoming more explicit in Toulminā€™s Return to Reason: ā€˜Warm hearts allied with cool heads seek a middle way between the extremes of abstract theory and personal impulseā€™ (2001, p. 214). This paper analyzes the hidden role of pathos in Toulminā€™s distinction between rationality and reasonableness, particularly as it appears in Cosmopolis and his later works. To Toulminā€™s characterization of the oral, particular, local, and timely nature of reasonableness, I add Peter Goldieā€™s notions of intelligibility, appropriateness, and proportionality of emotions to describe what role emotions play in reasonable argumentation. Using as a case study the victim impact testimony in Timothy McVeighā€™s Oklahoma City bombing trial, I argue that in certain situations and fields of argumentation, pathosā€”or data with a high emotional contentā€”is warranted in a reasonable argument, and that it would be unreasonable to exclude such data
    • ā€¦
    corecore