10,386 research outputs found

    Heap Abstractions for Static Analysis

    Full text link
    Heap data is potentially unbounded and seemingly arbitrary. As a consequence, unlike stack and static memory, heap memory cannot be abstracted directly in terms of a fixed set of source variable names appearing in the program being analysed. This makes it an interesting topic of study and there is an abundance of literature employing heap abstractions. Although most studies have addressed similar concerns, their formulations and formalisms often seem dissimilar and some times even unrelated. Thus, the insights gained in one description of heap abstraction may not directly carry over to some other description. This survey is a result of our quest for a unifying theme in the existing descriptions of heap abstractions. In particular, our interest lies in the abstractions and not in the algorithms that construct them. In our search of a unified theme, we view a heap abstraction as consisting of two features: a heap model to represent the heap memory and a summarization technique for bounding the heap representation. We classify the models as storeless, store based, and hybrid. We describe various summarization techniques based on k-limiting, allocation sites, patterns, variables, other generic instrumentation predicates, and higher-order logics. This approach allows us to compare the insights of a large number of seemingly dissimilar heap abstractions and also paves way for creating new abstractions by mix-and-match of models and summarization techniques.Comment: 49 pages, 20 figure

    Creativity and Culture in Copyright Theory

    Get PDF
    Creativity is universally agreed to be a good that copyright law should seek to promote, yet copyright scholarship and policymaking have proceeded largely on the basis of assumptions about what it actually is. When asked to discuss the source of their inspiration, individual artists describe a process that is intrinsically ineffable. Rights theorists of all varieties have generally subscribed to this understanding, describing creativity in terms of an individual liberty whose form remains largely unspecified. Economic theorists of copyright work from the opposite end of the creative process, seeking to divine the optimal rules for promoting creativity by measuring its marketable byproducts. But these theorists offer no particular reason to think that marketable byproducts are either an appropriate proxy or an effective stimulus for creativity (as opposed to production), and more typically refuse to engage the question. The upshot is that the more we talk about creativity, the more it disappears from view. At the same time, the mainstream of intellectual property scholarship has persistently overlooked a broad array of social science methodologies that provide both descriptive tools for constructing ethnographies of creative processes and theoretical tools for modeling them

    Architectural notes: a framework for distributed systems development

    Get PDF
    This thesis develops a framework of methods and techniques for distributed systems development. This framework consists of two related domains in which design concepts for distributed systems are defined: the entity domain and the behaviour domain. In the entity domain we consider structures of functional entities and their interconnection, while in the behaviour domain we consider behaviour definition and structuring. An interaction in which we abstract from the particular responsibilities of the participating functional entities is considered as an action. Behaviours consist of actions, interactions and their relationships. Relationships between actions and interactions are defined in terms of causality relations. In each causality relation the conditions and constraints for an action or interaction to occur are defined. Two important behaviour structuring techniques have been identified from the possible ways causality relations can be distributed: causality-oriented behaviour composition and constraint-oriented behaviour composition. Causality-oriented behaviour composition consists of placing some conditions of an action and the action itself in different sub-behaviours. Constraint-oriented behaviour composition consists of placing parts of the conditions and constraints of an action in different sub-behaviours, such that this action is shared by these sub-behaviours. This thesis identifies milestones in the design process of distributed systems, as well as the design steps to move from one milestone to another. These design steps are characterized using the concepts of the entity and the behaviour domain. We identified two crucial design operations of the behaviour domain that support these design steps: behaviour refinement and action refinement. Behaviour refinement consists of introducing (internal) structure in the causality relations of reference actions of an abstract behaviour, but preserving their causality and exclusion relationships and their attribute values. Action refinement consists of replacing abstract actions by activities, such that the completion of these activities correspond to the occurrence of the abstract actions. One important characteristic of action refinement is the possibility of distributing attribute values of the abstract actions over actions of the activities that replace them in the concrete behaviours. The area of research, scope and objectives of this thesis are discussed in Chapter 1. The concept of design culture and its elements is introduced in this chapter in order to provide an overview of the important aspects of the design process. Entity domain, behaviour domain, and design milestones are introduced and discussed in Chapter 2. This chapter also discusses the global objectives of design steps, and the abstraction obtained by considering interactions between cooperating functional entities as actions of the interaction system between these entities. Action, action attributes, causality and exclusion are discussed in Chapter 3. This chapter shows how a behaviour can be defined in terms of the causality relations of its actions in a monolithic form. Causality-oriented behaviour composition is discussed in Chapter 4. Entries and exits of a behaviour are the mechanisms that make it possible to assign parts of a condition of an action and the action itself to different sub-behaviours. Constraint-oriented behaviour composition is discussed in Chapter 5. Decomposition possibilities of monolithic behaviours are systematically studied in this chapter. Behaviour refinement is discussed in Chapter 6. This chapter defines a method to obtain an abstraction of a concrete behaviour. This method can be used to check whether the concrete behaviour corresponds to a certain abstract behaviour. Action refinement is discussed in Chapter 7. This chapter identifies some activity forms, and define the rules for considering these activities as implementations of an abstract action. These rules are used in a method to derive an abstraction of a concrete behaviour in which the abstract actions are implemented as activities. This method can be used to check whether the concrete behaviour corresponds to a certain abstract behaviour. Chapter 8 discusses a design example that is meant to illustrate the use of our design concepts. The example is an interaction server, which is a component that supports the interaction between multiple functional entities. Chapter 9 draws some conclusions and revisits the design milestones of Chapter 2, showing alternatives for the design trajectory which have been created with the use of actions and interactions in a single framework

    Design Research and Domain Representation

    Get PDF
    While diverse theories about the nature of design research have been proposed, they are rarely considered in relation to one another across the broader disciplinary field. Discussions of design research paradigms have tended to use overarching binary models for understanding differing knowledge frameworks. This paper focuses on an analysis of theories of design research and the use of Web 3 and open content systems to explore the potential of building more relational modes of conceptual representation. The nature of this project is synthetic, building upon the work of other design theorists and researchers. A number of theoretical frameworks will be discussed and examples of the analysis and modelling of key concepts and information relationships, using concept mapping software, collaborative ontology building systems and semantic wiki technologies will be presented. The potential of building information structures from content relationships that are identified by domain specialists rather than the imposition of formal, top-down, information hierarchies developed by information scientists, will be considered. In particular the opportunity for users to engage with resources through their own knowledge frameworks, rather than through logically rigorous but largely incomprehensible ontological systems, will be explored in relation to building resources for emerging design researchers. The motivation behind this endeavour is not to create a totalising meta-theory or impose order on the ‘ill structured’ and ‘undisciplined’, domain of design. Nor is it to use machine intelligence to ‘solve design problems’. It seeks to create dynamic systems that might help researchers explore design research theories and their various relationships with one another. It is hoped such tools could help novice researchers to better locate their own projects, find reference material, identify knowledge gaps and make new linkages between bodies of knowledge by enabling forms of data-poesis - the freeing of data for different trajectories. Keywords: Design research; Design theory; Methodology; Knowledge systems; Semantic web technologies.</p
    • …
    corecore