16 research outputs found

    Benchmarking purely functional data structures.

    Get PDF
    When someone designs a new data structure, they want to know how well it performs. Previously, the only way to do this involves finding, coding and testing some applications to act as benchmarks. This can be tedious and time-consuming. Worse, how a benchmark uses a data structure may considerably affect the efficiency of the data structure. Thus, the choice of benchmarks may bias the results. For these reasons, new data structures developed for functional languages often pay little attention to empirical performance. We solve these problems by developing a benchmarking tool, Auburn, that can generate benchmarks across a fair distribution of uses. We precisely define "the use of a data structure", upon which we build the core algorithms of Auburn: how to generate a benchmark from a description of use, and how to extract a description of use from an application. We consider how best to use these algorithms to benchmark competing data structures. Finally, we test Auburn by benchmarking ..

    Waddle - Always-canonical Intermediate Representation

    Get PDF
    Program transformations that are able to rely on the presence of canonical properties of the program undergoing optimization can be written to be more robust and efficient than an equivalent but generalized transformation that also handles non-canonical programs. If a canonical property is required but broken earlier in an earlier transformation, it must be rebuilt (often from scratch). This additional work can be a dominating factor in compilation time when many transformations are applied over large programs. This dissertation introduces a methodology for constructing program transformations so that the program remains in an always-canonical form as the program is mutated, making only local changes to restore broken properties

    Isabelle/UTP: Mechanised Theory Engineering for the UTP

    Get PDF
    Isabelle/UTP is a mechanised theory engineering toolkit based on Hoare and He’s Unifying Theories of Programming (UTP). UTP enables the creation of denotational, algebraic, and operational semantics for different programming languages using an alphabetised relational calculus. We provide a semantic embedding of the alphabetised relational calculus in Isabelle/HOL, including new type definitions, relational constructors, automated proof tactics, and accompanying algebraic laws. Isabelle/UTP can be used to both capture laws of programming for different languages, and put these fundamental theorems to work in the creation of associated verification tools, using calculi like Hoare logics. This document describes the relational core of the UTP in Isabelle/HOL

    Correct Optimized GPU Programs

    Get PDF

    Conceptual Factors and Fuzzy Data

    Get PDF
    With the growing number of large data sets, the necessity of complexity reduction applies today more than ever before. Moreover, some data may also be vague or uncertain. Thus, whenever we have an instrument for data analysis, the questions of how to apply complexity reduction methods and how to treat fuzzy data arise rather naturally. In this thesis, we discuss these issues for the very successful data analysis tool Formal Concept Analysis. In fact, we propose different methods for complexity reduction based on qualitative analyses, and we elaborate on various methods for handling fuzzy data. These two topics split the thesis into two parts. Data reduction is mainly dealt with in the first part of the thesis, whereas we focus on fuzzy data in the second part. Although each chapter may be read almost on its own, each one builds on and uses results from its predecessors. The main crosslink between the chapters is given by the reduction methods and fuzzy data. In particular, we will also discuss complexity reduction methods for fuzzy data, combining the two issues that motivate this thesis.KomplexitĂ€tsreduktion ist eines der wichtigsten Verfahren in der Datenanalyse. Mit stĂ€ndig wachsenden DatensĂ€tzen gilt dies heute mehr denn je. In vielen Gebieten stĂ¶ĂŸt man zudem auf vage und ungewisse Daten. Wann immer man ein Instrument zur Datenanalyse hat, stellen sich daher die folgenden zwei Fragen auf eine natĂŒrliche Weise: Wie kann man im Rahmen der Analyse die Variablenanzahl verkleinern, und wie kann man Fuzzy-Daten bearbeiten? In dieser Arbeit versuchen wir die eben genannten Fragen fĂŒr die Formale Begriffsanalyse zu beantworten. Genauer gesagt, erarbeiten wir verschiedene Methoden zur KomplexitĂ€tsreduktion qualitativer Daten und entwickeln diverse Verfahren fĂŒr die Bearbeitung von Fuzzy-DatensĂ€tzen. Basierend auf diesen beiden Themen gliedert sich die Arbeit in zwei Teile. Im ersten Teil liegt der Schwerpunkt auf der KomplexitĂ€tsreduktion, wĂ€hrend sich der zweite Teil der Verarbeitung von Fuzzy-Daten widmet. Die verschiedenen Kapitel sind dabei durch die beiden Themen verbunden. So werden insbesondere auch Methoden fĂŒr die KomplexitĂ€tsreduktion von Fuzzy-DatensĂ€tzen entwickelt

    A grammar of Komnzo

    Get PDF
    Komnzo is a Papuan language of Southern New Guinea spoken by around 250 people in the village of Rouku. Komnzo belongs to the Tonda subgroup of the Yam language family, which is also known as the Morehead Upper-Maro group. This grammar provides the first comprehensive description of a Yam language. It is based on 16 months of fieldwork. The primary source of data is a text corpus of around 12 hours recorded and transcribed between 2010 and 2015. Komnzo provides many fields of future research, but the most interesting aspect of its structure lies in the verb morphology, to which the two largest chapters of the grammar are dedicated. Komnzo verbs may index up to two arguments showing agreement in person, number and gender. Verbs encode 18 TAM categories, valency, directionality and deictic status. Morphological complexity lies not only in the amount of categories that verbs may express, but also in the way these are encoded. Komnzo verbs exhibit what may be called ‘distributed exponence’, i.e. single morphemes are underspecified for a particular grammatical category. Therefore, morphological material from different sites has to be integrated first, and only after this integration can one arrive at a particular grammatical category. The descriptive approach in this grammar is theory-informed rather than theory-driven. Comparison to other Yam languages and diachronic developments are taken into account whenever it seems helpful

    A grammar of Komnzo

    Get PDF
    Komnzo is a Papuan language of Southern New Guinea spoken by around 250 people in the village of Rouku. Komnzo belongs to the Tonda subgroup of the Yam language family, which is also known as the Morehead Upper-Maro group. This grammar provides the first comprehensive description of a Yam language. It is based on 16 months of fieldwork. The primary source of data is a text corpus of around 12 hours recorded and transcribed between 2010 and 2015. Komnzo provides many fields of future research, but the most interesting aspect of its structure lies in the verb morphology, to which the two largest chapters of the grammar are dedicated. Komnzo verbs may index up to two arguments showing agreement in person, number and gender. Verbs encode 18 TAM categories, valency, directionality and deictic status. Morphological complexity lies not only in the amount of categories that verbs may express, but also in the way these are encoded. Komnzo verbs exhibit what may be called ‘distributed exponence’, i.e. single morphemes are underspecified for a particular grammatical category. Therefore, morphological material from different sites has to be integrated first, and only after this integration can one arrive at a particular grammatical category. The descriptive approach in this grammar is theory-informed rather than theory-driven. Comparison to other Yam languages and diachronic developments are taken into account whenever it seems helpful

    A grammar of Komnzo

    Get PDF
    Komnzo is a Papuan language of Southern New Guinea spoken by around 250 people in the village of Rouku. Komnzo belongs to the Tonda subgroup of the Yam language family, which is also known as the Morehead Upper-Maro group. This grammar provides the first comprehensive description of a Yam language. It is based on 16 months of fieldwork. The primary source of data is a text corpus of around 12 hours recorded and transcribed between 2010 and 2015. Komnzo provides many fields of future research, but the most interesting aspect of its structure lies in the verb morphology, to which the two largest chapters of the grammar are dedicated. Komnzo verbs may index up to two arguments showing agreement in person, number and gender. Verbs encode 18 TAM categories, valency, directionality and deictic status. Morphological complexity lies not only in the amount of categories that verbs may express, but also in the way these are encoded. Komnzo verbs exhibit what may be called ‘distributed exponence’, i.e. single morphemes are underspecified for a particular grammatical category. Therefore, morphological material from different sites has to be integrated first, and only after this integration can one arrive at a particular grammatical category. The descriptive approach in this grammar is theory-informed rather than theory-driven. Comparison to other Yam languages and diachronic developments are taken into account whenever it seems helpful
    corecore