2,547 research outputs found

    Functional Extensionality for Refinement Types

    Full text link
    Refinement type checkers are a powerful way to reason about functional programs. For example, one can prove properties of a slow, specification implementation, porting the proofs to an optimized implementation that behaves the same. Without functional extensionality, proofs must relate functions that are fully applied. When data itself has a higher-order representation, fully applied proofs face serious impediments! When working with first-order data, fully applied proofs lead to noisome duplication when using higher-order functions. While dependent type theories are typically consistent with functional extensionality axioms, refinement type systems with semantic subtyping treat naive phrasings of functional extensionality inconsistently, leading to unsoundness. We demonstrate this unsoundness and develop a new approach to equality in Liquid Haskell: we define a propositional equality in a library we call PEq. Using PEq avoids the unsoundness while still proving useful equalities at higher types; we demonstrate its use in several case studies. We validate PEq by building a small model and developing its metatheory. Additionally, we prove metaproperties of PEq inside Liquid Haskell itself using an unnamed folklore technique, which we dub `classy induction'

    Active Carboxylic Acid-Terminated Alkanethiol Self-Assembled Monolayers on Gold Bead Electrodes for Immobilization of Cytochromes c

    Get PDF
    It is extremely difficult to immobilize cytochrome c (cyt c) on carboxylic acid-terminated alkanethiol self-assembled monolayers (HOOC-SAM) on gold bead electrodes prepared in a hydrogen flame. We found that simple pretreatment of a HOOC-SAM/gold bead electrode by potential cycling in buffer solution in the range ±300 mV prior to immobilization of the protein facilitated stable cyt c binding to HOOC-SAMs. The stability of cyt c on the HOOC-SAMs is independent of the topology of the gold surface

    Management education by the French Grandes Ecoles de Commerce

    Get PDF
    This essay presents a comprehensive briefing on the past and present of a business educational culture that is significantly different in ethos and structure to the widely known systems in the US and UK. That is the history and culture of the French Grandes Ecoles de Commerce. A brief reminder of extant literature on the utility of business education and its seeming misalignment with the competencies and skills as specified by practitioners is then given. Key pressures and trends on and within this system – such as internationalisation, accreditation and a greater emphasis on publications are identified and discussed. These threads are then combined in a partial replication of the work of Dierdorff and Rubin (2006; 2009). Specifically, collated information on 1582 classes from 542 programmes at the top Grandes Ecoles de Commerce is presented alongside further secondary data and then analysed in respect of alignment with Rubin and Dierdorff’s identified behavioural competencies. We argue that the outcome of these pressures may well be that inherent and historical strengths of great value are being discarded, and that the degree of irrelevance and misalignment between educational provision and required managerial competence will stay the same or even get worse

    Mechanizing Refinement Types (extended)

    Full text link
    Practical checkers based on refinement types use the combination of implicit semantic sub-typing and parametric polymorphism to simplify the specification and automate the verification of sophisticated properties of programs. However, a formal meta-theoretic accounting of the soundness of refinement type systems using this combination has proved elusive. We present \lambda_RF a core refinement calculus that combines semantic sub-typing and parametric polymorphism. We develop a meta-theory for this calculus and prove soundness of the type system. Finally, we give a full mechanization of our meta-theory using the refinement-type based LiquidHaskell as a proof checker, showing how refinements can be used for mechanization.Comment: 32 pages, under revie

    Virtual Learning in New Zealand: Achieving Maturity

    Get PDF
    This proposal describes a study into the development of virtual learning in New Zealand, specifically the obstacles that e-learning clusters face or have faced in their journey to sustainability and maturity through the lens of the Learning Communities Online Handbook. Using a variety of data collection methods, the researchers identified three common barriers, including a lack of a coherent vision, difficulty in securing the necessary funding and resources, and a lack of collaboration and cooperation within and between clusters. Based on these findings, it is recommended that individual e-learning clusters develop specific strategies to encourage greater collaboration between clusters and work towards greater consistency between their activities, including professional and organizational development and also of the approaches to virtual learning

    Primary and Secondary Virtual Learning in New Zealand: Examining Barriers to Achieving Maturity

    Get PDF
    This paper describes the organisational development of virtual learning in networked rural schools in New Zealand, specifically the obstacles that e-learning clusters of rural schools face in their journey to sustainability and maturity through the lens of the Ministry’s Learning Communities Online Handbook. Analysis of a nationwide purposeful sample identified three common barriers: a lack of a coherent vision; difficulty in sustaining necessary funding and resources; and of the need for more collaboration within and between clusters. Based on these findings, it is recommended that VLN e-learning clusters develop specific strategies to encourage greater collaboration between schools and work towards greater consistency between their activities, including professional and organisational development and also of the approaches to virtual learning
    • …
    corecore