327,004 research outputs found

    Generating analyzers with PAG

    Get PDF
    To produce high qualitiy code, modern compilers use global optimization algorithms based on it abstract interpretation. These algorithms are rather complex; their implementation is therfore a non-trivial task and error-prone. However, since thez are based on a common theory, they have large similar parts. We conclude that analyzer writing better should be replaced with analyzer generation. We present the tool sf PAG that has a high level functional input language to specify data flow analyses. It offers th specifications of even recursive data structures and is therfore not limited to bit vector problems. sf PAG generates efficient analyzers wich can be easily integrated in existing compilers. The analyzers are interprocedural, they can handle recursive procedures with local variables and higher order functions. sf PAG has successfully been tested by generating several analyzers (e.g. alias analysis, constant propagation, inerval analysis) for an industrial quality ANSI-C and Fortran90 compiler. This technical report consits of two parts; the first introduces the generation system and the second evaluates generated analyzers with respect to their space and time consumption. bf Keywords: data flow analysis, specification and generation of analyzers, lattice specification, abstract syntax specification, interprocedural analysis, compiler construction

    On Verifying Resource Contracts using Code Contracts

    Full text link
    In this paper we present an approach to check resource consumption contracts using an off-the-shelf static analyzer. We propose a set of annotations to support resource usage specifications, in particular, dynamic memory consumption constraints. Since dynamic memory may be recycled by a memory manager, the consumption of this resource is not monotone. The specification language can express both memory consumption and lifetime properties in a modular fashion. We develop a proof-of-concept implementation by extending Code Contracts' specification language. To verify the correctness of these annotations we rely on the Code Contracts static verifier and a points-to analysis. We also briefly discuss possible extensions of our approach to deal with non-linear expressions.Comment: In Proceedings LAFM 2013, arXiv:1401.056

    A Statistical Social Network Model for Consumption Data in Food Webs

    Full text link
    We adapt existing statistical modeling techniques for social networks to study consumption data observed in trophic food webs. These data describe the feeding volume (non-negative) among organisms grouped into nodes, called trophic species, that form the food web. Model complexity arises due to the extensive amount of zeros in the data, as each node in the web is predator/prey to only a small number of other trophic species. Many of the zeros are regarded as structural (non-random) in the context of feeding behavior. The presence of basal prey and top predator nodes (those who never consume and those who are never consumed, with probability 1) creates additional complexity to the statistical modeling. We develop a special statistical social network model to account for such network features. The model is applied to two empirical food webs; focus is on the web for which the population size of seals is of concern to various commercial fisheries.Comment: On 2013-09-05, a revised version entitled "A Statistical Social Network Model for Consumption Data in Trophic Food Webs" was accepted for publication in the upcoming Special Issue "Statistical Methods for Ecology" in the journal Statistical Methodolog

    Nonparametric Hierarchical Clustering of Functional Data

    Full text link
    In this paper, we deal with the problem of curves clustering. We propose a nonparametric method which partitions the curves into clusters and discretizes the dimensions of the curve points into intervals. The cross-product of these partitions forms a data-grid which is obtained using a Bayesian model selection approach while making no assumptions regarding the curves. Finally, a post-processing technique, aiming at reducing the number of clusters in order to improve the interpretability of the clustering, is proposed. It consists in optimally merging the clusters step by step, which corresponds to an agglomerative hierarchical classification whose dissimilarity measure is the variation of the criterion. Interestingly this measure is none other than the sum of the Kullback-Leibler divergences between clusters distributions before and after the merges. The practical interest of the approach for functional data exploratory analysis is presented and compared with an alternative approach on an artificial and a real world data set

    Inferring Energy Bounds via Static Program Analysis and Evolutionary Modeling of Basic Blocks

    Full text link
    The ever increasing number and complexity of energy-bound devices (such as the ones used in Internet of Things applications, smart phones, and mission critical systems) pose an important challenge on techniques to optimize their energy consumption and to verify that they will perform their function within the available energy budget. In this work we address this challenge from the software point of view and propose a novel parametric approach to estimating tight bounds on the energy consumed by program executions that are practical for their application to energy verification and optimization. Our approach divides a program into basic (branchless) blocks and estimates the maximal and minimal energy consumption for each block using an evolutionary algorithm. Then it combines the obtained values according to the program control flow, using static analysis, to infer functions that give both upper and lower bounds on the energy consumption of the whole program and its procedures as functions on input data sizes. We have tested our approach on (C-like) embedded programs running on the XMOS hardware platform. However, our method is general enough to be applied to other microprocessor architectures and programming languages. The bounds obtained by our prototype implementation can be tight while remaining on the safe side of budgets in practice, as shown by our experimental evaluation.Comment: Pre-proceedings paper presented at the 27th International Symposium on Logic-Based Program Synthesis and Transformation (LOPSTR 2017), Namur, Belgium, 10-12 October 2017 (arXiv:1708.07854). Improved version of the one presented at the HIP3ES 2016 workshop (v1): more experimental results (added benchmark to Table 1, added figure for new benchmark, added Table 3), improved Fig. 1, added Fig.

    The Doubly Labeled Water Method for Measuring Human Energy Expenditure: Adaptations for Spaceflight

    Get PDF
    It is essential to determine human energy requirements in space, and the doubly labeled water method has been identified as the most appropriate means of indirect calorimetry to meet this need. The method employs naturally occurring, stable isotopes of hydrogen (H-2, deuterium) and oxygen (O-18) which, after dosing, mix with body water. The deuterium is lost from the body as water while the O-18 is eliminated as both water and CO2. The difference between the two isotope elimination rates is therefore a measure of CO2 production and hence energy expenditure. Spaceflight will present a unique challenge to the application of the doubly labeled water method. Specifically, interpretation of doubly labeled water results assumes that the natural abundance or 'background' levels of the isotopes remain constant during the measurement interval. To address this issue, an equilibration model will be developed in an ongoing ground-based study. As energy requirements of women matched to counterparts in the Astronauts Corps are being determined by doubly labeled water, the baseline isotope concentration will be changed by consumption of 'simulated Shuttle water' which is artificially enriched. One group of subjects will be equilibrated on simulated Shuttle water prior to energy determinations by doubly labeled water while the others will consume simulated Shuttle water after dosing. This process will allow us to derive a prediction equation to mathematically model the effect of changing background isotope concentrations

    An Environment for Analyzing Space Optimizations in Call-by-Need Functional Languages

    Full text link
    We present an implementation of an interpreter LRPi for the call-by-need calculus LRP, based on a variant of Sestoft's abstract machine Mark 1, extended with an eager garbage collector. It is used as a tool for exact space usage analyses as a support for our investigations into space improvements of call-by-need calculi.Comment: In Proceedings WPTE 2016, arXiv:1701.0023

    The ‘Suburban Imaginary’: Restructuring the rural village in Ireland and France

    Get PDF
    The phenomenon of the proliferation of holiday homes, particularly in remote and isolated areas, has provoked widespread concern regarding the fate of the indigenous rural community. The central concern of this thesis is to investigate how the rural community is adapting to the presence of the outsider as both a temporary and permanent resident, by examining the interaction between local and outsider resident in order to get a sense of the dynamics involved in the restructuring of the rural community. The study approached this central problematic, by looking at how rural space is being socially constructed as a result of this interaction, and how rural space is determining the dynamic involved in this interaction. The two rural villages which were chosen for this study, are located in regions of unique cultural and historical interest: Dunfarraig in the Burren region in the west of Ireland, and Gireux in the Cathar region in the south of France. Despite their empirical similarities, these villages have demonstrated quite different responses to the presence of the outsider, which has become apparent through a comparative analysis of the way in which concepts such as ‘community membership’ are played out in either context. The central findings of this research, has been to show how the landscapes of Dunfarraig and Gireux are being symbolically constructed as ‘suburban’ through the social practices of its residents, taking an abstract or social form in the French context, and a material form in the Irish context. Further, how these practices are appealing to a vocabulary of ‘suburbia’, located in the suburban imaginary of residents. These findings of ‘suburbia’ are premised on the theory that residents are constructing a view of the physical landscape for private consumption in the Irish context, and a view of the social landscape, for private consumption in the French context. However, the thesis ultimately defends the rural character of these two villages, maintaining that this interpretation of the ‘suburban imaginary’ is one way of understanding the complexity of these social practices

    The ‘Suburban Imaginary’: Restructuring the rural village in Ireland and France

    Get PDF
    The phenomenon of the proliferation of holiday homes, particularly in remote and isolated areas, has provoked widespread concern regarding the fate of the indigenous rural community. The central concern of this thesis is to investigate how the rural community is adapting to the presence of the outsider as both a temporary and permanent resident, by examining the interaction between local and outsider resident in order to get a sense of the dynamics involved in the restructuring of the rural community. The study approached this central problematic, by looking at how rural space is being socially constructed as a result of this interaction, and how rural space is determining the dynamic involved in this interaction. The two rural villages which were chosen for this study, are located in regions of unique cultural and historical interest: Dunfarraig in the Burren region in the west of Ireland, and Gireux in the Cathar region in the south of France. Despite their empirical similarities, these villages have demonstrated quite different responses to the presence of the outsider, which has become apparent through a comparative analysis of the way in which concepts such as ‘community membership’ are played out in either context. The central findings of this research, has been to show how the landscapes of Dunfarraig and Gireux are being symbolically constructed as ‘suburban’ through the social practices of its residents, taking an abstract or social form in the French context, and a material form in the Irish context. Further, how these practices are appealing to a vocabulary of ‘suburbia’, located in the suburban imaginary of residents. These findings of ‘suburbia’ are premised on the theory that residents are constructing a view of the physical landscape for private consumption in the Irish context, and a view of the social landscape, for private consumption in the French context. However, the thesis ultimately defends the rural character of these two villages, maintaining that this interpretation of the ‘suburban imaginary’ is one way of understanding the complexity of these social practices

    Towards Energy Consumption Verification via Static Analysis

    Full text link
    In this paper we leverage an existing general framework for resource usage verification and specialize it for verifying energy consumption specifications of embedded programs. Such specifications can include both lower and upper bounds on energy usage, and they can express intervals within which energy usage is to be certified to be within such bounds. The bounds of the intervals can be given in general as functions on input data sizes. Our verification system can prove whether such energy usage specifications are met or not. It can also infer the particular conditions under which the specifications hold. To this end, these conditions are also expressed as intervals of functions of input data sizes, such that a given specification can be proved for some intervals but disproved for others. The specifications themselves can also include preconditions expressing intervals for input data sizes. We report on a prototype implementation of our approach within the CiaoPP system for the XC language and XS1-L architecture, and illustrate with an example how embedded software developers can use this tool, and in particular for determining values for program parameters that ensure meeting a given energy budget while minimizing the loss in quality of service.Comment: Presented at HIP3ES, 2015 (arXiv: 1501.03064
    • …
    corecore