342 research outputs found

    UTP2: Higher-Order Equational Reasoning by Pointing

    Full text link
    We describe a prototype theorem prover, UTP2, developed to match the style of hand-written proof work in the Unifying Theories of Programming semantical framework. This is based on alphabetised predicates in a 2nd-order logic, with a strong emphasis on equational reasoning. We present here an overview of the user-interface of this prover, which was developed from the outset using a point-and-click approach. We contrast this with the command-line paradigm that continues to dominate the mainstream theorem provers, and raises the question: can we have the best of both worlds?Comment: In Proceedings UITP 2014, arXiv:1410.785

    Heterogeneous Semantics and Unifying Theories

    Get PDF
    Model-driven development is being used increasingly in the development of modern computer-based systems. In the case of cyber-physical systems (including robotics and autonomous systems) no single modelling solution is adequate to cover all aspects of a system, such as discrete control, continuous dynamics, and communication networking. Instead, a heterogeneous modelling solution must be adopted. We propose a theory engineering technique involving Isabelle/HOL and Hoare & He’s Unifying Theories of Programming. We illustrate this approach with mechanised theories for building a contractual theory of sequential programming, a theory of pointer-based programs, and the reactive theory underpinning CSP’s process algebra. Galois connections provide the mechanism for linking these theories

    Kuhn and the Philosophy of Science: Theories of Science

    Get PDF
    Discussion of centred on Kuhn's Essential Tension

    PyEvolve: a toolkit for statistical modelling of molecular evolution

    No full text
    BACKGROUND: Examining the distribution of variation has proven an extremely profitable technique in the effort to identify sequences of biological significance. Most approaches in the field, however, evaluate only the conserved portions of sequences – ignoring the biological significance of sequence differences. A suite of sophisticated likelihood based statistical models from the field of molecular evolution provides the basis for extracting the information from the full distribution of sequence variation. The number of different problems to which phylogeny-based maximum likelihood calculations can be applied is extensive. Available software packages that can perform likelihood calculations suffer from a lack of flexibility and scalability, or employ error-prone approaches to model parameterisation. RESULTS: Here we describe the implementation of PyEvolve, a toolkit for the application of existing, and development of new, statistical methods for molecular evolution. We present the object architecture and design schema of PyEvolve, which includes an adaptable multi-level parallelisation schema. The approach for defining new methods is illustrated by implementing a novel dinucleotide model of substitution that includes a parameter for mutation of methylated CpG's, which required 8 lines of standard Python code to define. Benchmarking was performed using either a dinucleotide or codon substitution model applied to an alignment of BRCA1 sequences from 20 mammals, or a 10 species subset. Up to five-fold parallel performance gains over serial were recorded. Compared to leading alternative software, PyEvolve exhibited significantly better real world performance for parameter rich models with a large data set, reducing the time required for optimisation from ~10 days to ~6 hours. CONCLUSION: PyEvolve provides flexible functionality that can be used either for statistical modelling of molecular evolution, or the development of new methods in the field. The toolkit can be used interactively or by writing and executing scripts. The toolkit uses efficient processes for specifying the parameterisation of statistical models, and implements numerous optimisations that make highly parameter rich likelihood functions solvable within hours on multi-cpu hardware. PyEvolve can be readily adapted in response to changing computational demands and hardware configurations to maximise performance. PyEvolve is released under the GPL and can be downloaded from http://cbis.anu.edu.au/software webcite

    The potential to quantify polypharmacy in older adult hospital inpatients using electronic prescribing software: A feasibility study

    Get PDF
    Polypharmacy in older adults is a growing problem, as some drugs may be either unnecessary or even harmful. Admission to hospital under a Medicine for the Elderly specialist physicians represents an opportunity to review patients’ medication. The recent introduction of electronic prescribing to some hospitals in the United Kingdom allows the development of tools to measure polypharmacy in in-patients, and subsequently to assess the efficacy of interventions that aim to optimize medication prescribing. We tested the feasibility of developing an Excel-based software code that measured the number of medications a group of patients were taking at admission and how many of these were still prescribed on discharge. Electronic prescribing data was obtained from the Royal Derby Hospital, over a period of 52 weeks from April 2017 to March 2018 for all patients over the age of 65 years who were admitted onto the medicine for the elderly wards and subsequently discharged. On admission, the median number of eligible medications was 11 (interquartile range IQR 8 to 15). At the time of discharge, the median number of eligible medications retained since admission was 9 (IQR 6 to 12). This represents a median number of medications that have been removed from the current medication regimen of 2 (IQR 1 to 3, p [less than] 0.001). Electronic prescribing software in hospitals allows the development of tools to measure the burden of medications, and to examine the efficacy of future interventions that are developed to optimize drug prescribing in older adults
    • …
    corecore