110 research outputs found

    Gradual Certified Programming in Coq

    Full text link
    Expressive static typing disciplines are a powerful way to achieve high-quality software. However, the adoption cost of such techniques should not be under-estimated. Just like gradual typing allows for a smooth transition from dynamically-typed to statically-typed programs, it seems desirable to support a gradual path to certified programming. We explore gradual certified programming in Coq, providing the possibility to postpone the proofs of selected properties, and to check "at runtime" whether the properties actually hold. Casts can be integrated with the implicit coercion mechanism of Coq to support implicit cast insertion a la gradual typing. Additionally, when extracting Coq functions to mainstream languages, our encoding of casts supports lifting assumed properties into runtime checks. Much to our surprise, it is not necessary to extend Coq in any way to support gradual certified programming. A simple mix of type classes and axioms makes it possible to bring gradual certified programming to Coq in a straightforward manner.Comment: DLS'15 final version, Proceedings of the ACM Dynamic Languages Symposium (DLS 2015

    Trend in ice moistening the stratosphere – constraints from isotope data of water and methane

    Get PDF
    Water plays a major role in the chemistry and radiative budget of the stratosphere. Air enters the stratosphere predominantly in the tropics, where the very low temperatures around the tropopause constrain water vapour mixing ratios to a few parts per million. Observations of stratospheric water vapour show a large positive long-term trend, which can not be explained by change in tropopause temperatures. Trends in the partitioning between vapour and ice of water entering the stratosphere have been suggested to resolve this conundrum. We present measurements of stratospheric H_(2)O, HDO, CH_4 and CH_(3)D in the period 1991–2007 to evaluate this hypothesis. Because of fractionation processes during phase changes, the hydrogen isotopic composition of H_(2)O is a sensitive indicator of changes in the partitioning of vapour and ice. We find that the seasonal variations of H_(2)O are mirrored in the variation of the ratio of HDO to H_(2)O with a slope of the correlation consistent with water entering the stratosphere mainly as vapour. The variability in the fractionation over the entire observation period is well explained by variations in H_(2)O. The isotopic data allow concluding that the trend in ice arising from particulate water is no more than (0.01±0.13) ppmv/decade in the observation period. Our observations suggest that between 1991 and 2007 the contribution from changes in particulate water transported through the tropopause plays only a minor role in altering in the amount of water entering the stratosphere

    Direct evidence for the magnetic ordering of Nd ions in NdMn2_2Si2_2 and NdMn2_2Ge2_2 by high resolution inelastic neutron scattering

    Full text link
    We have investigated the low energy nuclear spin excitations in NdMn2_2Si2_2 and NdMn2_2Ge2_2 by high resolution inelastic neutron scattering. Previous neutron diffraction investigations gave ambiguous results about Nd magnetic ordering at low temperatures. The present element-specific technique gave direct evidence for the magnetic ordering of Nd ions. We found considerable difference in the process of the Nd magnetic ordering at low temperature in NdMn2_2Si2_2 and NdMn2_2Ge2_2. Our results are consistent with those of magnetization and recent neutron diffraction measurements

    LEESA: Embedding Strategic and XPath-Like Object Structure Traversals in C++

    Full text link
    Abstract. Traversals of heterogeneous object structures are the most common operations in schema-first applications where the three key is-sues are (1) separation of traversal specifications from type-specific ac-tions, (2) expressiveness and reusability of traversal specifications, and (3) supporting structure-shy traversal specifications that require min-imal adaptation in the face of schema evolution. This paper presents Language for Embedded quEry and traverSAl (LEESA), which pro-vides a generative programming approach to address the above issues. LEESA is an object structure traversal language embedded in C++. Using C++ templates, LEESA combines the expressiveness of XPath’s axes-oriented traversal notation with the genericity and programmabil-ity of Strategic Programming. LEESA uses the object structure meta-information to statically optimize the traversals and check their compat-ibility against the schema. Moreover, a key usability issue of domain-specific error reporting in embedded DSL languages has been addressed in LEESA through a novel application of Concepts, which is an upcoming C++ standard (C++0x) feature. We present a quantitative evaluation of LEESA illustrating how it can significantly reduce the development efforts of schema-first applications.

    The ALPS project release 2.0: Open source software for strongly correlated systems

    Full text link
    We present release 2.0 of the ALPS (Algorithms and Libraries for Physics Simulations) project, an open source software project to develop libraries and application programs for the simulation of strongly correlated quantum lattice models such as quantum magnets, lattice bosons, and strongly correlated fermion systems. The code development is centered on common XML and HDF5 data formats, libraries to simplify and speed up code development, common evaluation and plotting tools, and simulation programs. The programs enable non-experts to start carrying out serial or parallel numerical simulations by providing basic implementations of the important algorithms for quantum lattice models: classical and quantum Monte Carlo (QMC) using non-local updates, extended ensemble simulations, exact and full diagonalization (ED), the density matrix renormalization group (DMRG) both in a static version and a dynamic time-evolving block decimation (TEBD) code, and quantum Monte Carlo solvers for dynamical mean field theory (DMFT). The ALPS libraries provide a powerful framework for programers to develop their own applications, which, for instance, greatly simplify the steps of porting a serial code onto a parallel, distributed memory machine. Major changes in release 2.0 include the use of HDF5 for binary data, evaluation tools in Python, support for the Windows operating system, the use of CMake as build system and binary installation packages for Mac OS X and Windows, and integration with the VisTrails workflow provenance tool. The software is available from our web server at http://alps.comp-phys.org/.Comment: 18 pages + 4 appendices, 7 figures, 12 code examples, 2 table

    Multianalyte Sensing Of Addictive Over-the-counter (otc) Drugs

    Get PDF
    A supramolecular sensor array composed of two fluorescent cucurbit[n]uril-type receptors (probe 1 and probe 2) displaying complementary selectivities was tested for its ability to detect and quantify drug-related amines. The fluorimetric titration of the individual probes showed highly variable and cross-reactive analyte-dependent changes in fluorescence. An excellent ability to recognize a variety of analytes was demonstrated in qualitative as well as quantitative assays. Importantly, a successful quantitative analysis of several analytes of interest was achieved in mixtures and in human urine. The throughput and sensitivity surpass those of the current state-of-the-art methods that usually require analyte solid-phase extraction (SPE). These results open up the opportunity for new applications of cucurbit[n]uril-type receptors in sensing and pave the way for the development of simple high-throughput assays for various drugs in the near future

    Motion Planning via Manifold Samples

    Full text link
    We present a general and modular algorithmic framework for path planning of robots. Our framework combines geometric methods for exact and complete analysis of low-dimensional configuration spaces, together with practical, considerably simpler sampling-based approaches that are appropriate for higher dimensions. In order to facilitate the transfer of advanced geometric algorithms into practical use, we suggest taking samples that are entire low-dimensional manifolds of the configuration space that capture the connectivity of the configuration space much better than isolated point samples. Geometric algorithms for analysis of low-dimensional manifolds then provide powerful primitive operations. The modular design of the framework enables independent optimization of each modular component. Indeed, we have developed, implemented and optimized a primitive operation for complete and exact combinatorial analysis of a certain set of manifolds, using arrangements of curves of rational functions and concepts of generic programming. This in turn enabled us to implement our framework for the concrete case of a polygonal robot translating and rotating amidst polygonal obstacles. We demonstrate that the integration of several carefully engineered components leads to significant speedup over the popular PRM sampling-based algorithm, which represents the more simplistic approach that is prevalent in practice. We foresee possible extensions of our framework to solving high-dimensional problems beyond motion planning.Comment: 18 page
    • 

    corecore