28,047 research outputs found

    Transformational derivation of programs using the Focus system

    Get PDF
    A program derivation support system called Focus is being constructed. It will formally derive programs using the paradigm of program transformation. The following issues are discussed: (1) the integration of validation and program derivation activities in the Focus system; (2) its tree-based user interface; (3) the control of search spaces in program derivation; and (4) the structure and organization of program derivation records. The inference procedures of the system are based on the integration of functional and logic programming principles. This brings about a synthesis of paradigms that were heretofore considered far apart, such as logical and executable specifications and constructive and transformational approaches to program derivation. A great emphasis has been placed, in the design of Focus, on achieving small search spaces during program derivation. The program manipulation operations such as expansion, simplification and rewriting were designed with this objective. The role of operations that are expensive in search spaces, such as folding, has been reduced. Program derivations are documented in Focus in a way that the high level descriptions of derivations are expressed only using program level information. All the meta-level information, together with dependencies between derivations of program components, is automatically recorded by the system at a lower level of description for its own use in replay

    Derivation of sorting programs

    Get PDF
    Program synthesis for critical applications has become a viable alternative to program verification. Nested resolution and its extension are used to synthesize a set of sorting programs from their first order logic specifications. A set of sorting programs, such as, naive sort, merge sort, and insertion sort, were successfully synthesized starting from the same set of specifications

    Acceptability with general orderings

    Full text link
    We present a new approach to termination analysis of logic programs. The essence of the approach is that we make use of general orderings (instead of level mappings), like it is done in transformational approaches to logic program termination analysis, but we apply these orderings directly to the logic program and not to the term-rewrite system obtained through some transformation. We define some variants of acceptability, based on general orderings, and show how they are equivalent to LD-termination. We develop a demand driven, constraint-based approach to verify these acceptability-variants. The advantage of the approach over standard acceptability is that in some cases, where complex level mappings are needed, fairly simple orderings may be easily generated. The advantage over transformational approaches is that it avoids the transformation step all together. {\bf Keywords:} termination analysis, acceptability, orderings.Comment: To appear in "Computational Logic: From Logic Programming into the Future

    Building an IDE for the Calculational Derivation of Imperative Programs

    Full text link
    In this paper, we describe an IDE called CAPS (Calculational Assistant for Programming from Specifications) for the interactive, calculational derivation of imperative programs. In building CAPS, our aim has been to make the IDE accessible to non-experts while retaining the overall flavor of the pen-and-paper calculational style. We discuss the overall architecture of the CAPS system, the main features of the IDE, the GUI design, and the trade-offs involved.Comment: In Proceedings F-IDE 2015, arXiv:1508.0338

    Program transformation for development, verification, and synthesis of programs

    Get PDF
    This paper briefly describes the use of the program transformation methodology for the development of correct and efficient programs. In particular, we will refer to the case of constraint logic programs and, through some examples, we will show how by program transformation, one can improve, synthesize, and verify programs

    Mapping Applications to an FPFA Tile

    Get PDF
    This paper introduces a transformational design method which can be used to map code written in a high level source language, like C, to a coarse grain reconfigurable architecture. The source code is first translated into a control data flow graph (CDFG), which is minimized using a set of behaviour preserving transformations, such as dependency analysis, common subexpression elimination, etc. After applying graph clustering, scheduling and allocation transformations on this minimized graph, it can be mapped onto the target architecture

    Program Transformation for Development, Verification, and Synthesis of Software

    Get PDF
    In this paper we briefly describe the use of the program transformation methodology for the development of correct and efficient programs. We will consider, in particular, the case of the transformation and the development of constraint logic programs

    Transformational Relationships: Re-framing Impact in Faith-Based Social Service Organizations

    Get PDF
    Theories of change and logic models are the industry standard foundation for impact evaluation. However, half of all nonprofits do not use these models due to resource constraints or the perception that their work does not fit into a model. This is especially true in relationship-based programs, such as those in faith-based social services. This Capstone examines the influence of relationship theory on a faith-based organizationā€™s impact. The research methodology included deductive, action-based research with a foundational literature review focused on nonprofit planning and evaluation theory and social science theory. Then a total of 6 expert interviews were conducted, 3 with faith-based program directors and 3 with evaluation professionals. Finally, a hermeneutic approach was used to cycle between synthesis and analysis, comparing data from literature and expert interviews, and conceptualizing new models. While the context of the research is faith-based, the models are general enough to be applied to a diverse number of organizations. The findings demonstrate that relationship theory does have implications for how their theory of change and logic models are formed and how impact is subsequently evaluated. Relational Cultural Theory is identified in the literature and supported in the expert interviews as the theoretical foundation for the Transformation Relationship theory of change. Traditional linear logic models are challenged with the presentation of a cyclical model that is more reflective of the iterative process of Transformational Relationships. The resulting levels of impact are described as a spiral of impact with implications for individual, group and societal impact. Evaluation is re-framed with suggestions that include blending qualitative and quantitative methodology, integrating the evaluation process into the relationship, and re-framing donor expectations around what relationship-based impact evaluation looks like. This Capstone lays the foundation for additional research in surveying a larger sample of faith-based social service organizations to inform the Transformational Relationship model, develop relationship-based evaluation tools (proxies, tests, surveys) for use in programs, and an examination of how Transformational Relationships contribute to collective impact
    • ā€¦
    corecore