131 research outputs found

    A ρ-Calculus of Explicit Constraint Application

    Get PDF
    AbstractTheoretical presentations of the ρ-calculus often treat the matching constraint computations as an atomic operation although matching constraints are explicitly expressed. Actual implementations have to take a much more realistic view: computations needed in order to find the solutions of a matching equation can be really important in some matching theories and the substitution application usually involves a term traversal.Following the works on explicit substitutions in the λ-calculus, we propose, study and exemplify a ρ-calculus with explicit constraint handling, up to the level of substitution applications. The approach is general, allowing the extension to various matching theories. We show that the calculus is powerful enough to deal with errors. We establish the confluence of the calculus and the termination of the explicit constraint handling and application sub-calculus

    Term collection in lambda/rho-calculi

    Get PDF
    International audienceThe ρ-calculus generalises term rewriting and the λ-calculus by defining abstractions on arbitrary patterns and by using a pattern-matching algorithm which is a parameter of the calculus. In particular, equational theories that do not have unique principal solutions may be used. In the latter case, all the principal solutions of a matching problem are stored in a “structure” that can also be seen as a collection of terms. Motivated by the fact that there are various approaches to the definition of structures in the ρ-calculus, we study in this paper a version of the λ-calculus with term collections. The contributions of this work include a new syntax and operational semantics for a λ-calculus with term collections, which is related to the λ-calculi with strict parallel functions studied by Boudol and Dezani et al. and a proof of the confluence of the ÎČ-reduction relation defined for the calculus (which is a suitable extension of the standard rule of ÎČ-reduction in the λ-calculus)

    Encoding rewriting strategies in lambda-calculi with patterns

    Get PDF
    We propose a patch to the pure pattern calculus: we claim that this is strictly more powerful to define the application of the match fail as the pure \lambda-term defining the boolean false instead of the identity function as it is done in the original version of the pure pattern calculus~\cite{JayK09}. We show that using non algebraic patterns we are able to encode in a natural way any rewriting strategies as well as the branching construct | used in functional programming languages. We close the open question (raised in~\cite{Cirstea00,CirsteaK01}) whether rewriting strategies can be directly encoded in lambda-calculi with patterns

    Etude des propriétés du calcul de réécriture: du rho calcul au rhoEpsilon calcul

    Get PDF
    Stage du Magistere Informatique et Modelisation. Rapport de stage.Le \roCal\ intégre dans un cadre uniforme et simple la réécriture du premier ordre et le lambda-calcul tout en permettant d'exprimer le non-déterminisme. Nous introduisons ici un nouveau calcul dans lequel l'échec est distingué de l'ensemble vide et dans lequel le test de l'échec est possible. Si nous munissons ce calcul de l'appel par valeur, nous obtenons un calcul confluent et dans lequel le first est exprimable (et par conséquent les stratégies d'évaluation le sont aussi). Nous concluons sur un bref aperçu des perspectives et des questions restant ouvertes. || The rho-calculus integrates in a uniform and simple setting first-order rewriting, lambda-calculus and non-deterministic computations. In the calculus here introduced, the empty set is not an overloading term i.e. failure is distinguished from the empty

    SAT Modulo the Theory of Linear Arithmetic: Exact, Inexact and Commercial Solvers

    No full text
    International audienceMany highly sophisticated tools exist for solving linear arith- metic optimization and feasibility problems. Here we analyze why it is difficult to use these tools inside systems for SAT Modulo Theories (SMT) for linear arithmetic: one needs support for disequalities, strict inequalities and, more importantly, for dealing with incorrect results due to the internal use of imprecise floating-point arithmetic. We explain how these problems can be overcome by means of result checking and error recovery policies. Second, by means of carefully designed experiments with, among other tools, the newest version of ILOG CPLEX and our own new Barcelogic T -solver for arithmetic, we show that, interestingly, the cost of result checking is only a small fraction of the total T -solver time. Third, we report on extensive experiments running exactly the same SMT search using CPLEX and Barcelogic as T -solvers, where CPLEX tends to be slower than Barcelogic. We analyze these at first sight surpris- ing results, explaining why tools such as CPLEX are not very adequate (nor designed) for this kind of relatively small incremental problems. Finally, we show how our result checking techniques can still be very use- ful in combination with inexact floating-point-based T -solvers designed for incremental SMT problems

    A Modular Integration of SAT/SMT Solvers to Coq through Proof Witnesses

    Get PDF
    International audienceWe present a way to enjoy the power of SAT and SMT provers in Coq without compromising soundness. This requires these provers to return not only a yes/no answer, but also a proof witness that can be independently rechecked. We present such a checker, written and fully certified in Coq. It is conceived in a modular way, in order to tame the proofs' complexity and to be extendable. It can currently check witnesses from the SAT solver ZChaff and from the SMT solver veriT. Experiments highlight the efficiency of this checker. On top of it, new reflexive Coq tactics have been built that can decide a subset of Coq's logic by calling external provers and carefully checking their answers

    A rho-calculus of explicit constraint application.

    Get PDF
    International audienceTheoretical presentations of the rho-calculus often treat the matching constraint computations as an atomic operation although matching constraints are explicitly expressed. Actual implementations have to take a much more realistic view: computations needed in order to find the solutions of a matching equation can be really important in some matching theories and the substitution application usually involves a term traversal. Following the works on explicit substitutions in the λ-calculus, we propose, study and exemplify a rho-calculus with explicit constraint handling, up to the level of substitution applications. The approach is general, allowing the extension to various matching theories. We show that the calculus is powerful enough to deal with errors. We establish the confluence of the calculus and the termination of the explicit constraint handling and application sub-calculus

    Solving Linux Upgradeability Problems Using Boolean Optimization

    Full text link
    Managing the software complexity of package-based systems can be regarded as one of the main challenges in software architectures. Upgrades are required on a short time basis and systems are expected to be reliable and consistent after that. For each package in the system, a set of dependencies and a set of conflicts have to be taken into account. Although this problem is computationally hard to solve, efficient tools are required. In the best scenario, the solutions provided should also be optimal in order to better fulfill users requirements and expectations. This paper describes two different tools, both based on Boolean satisfiability (SAT), for solving Linux upgradeability problems. The problem instances used in the evaluation of these tools were mainly obtained from real environments, and are subject to two different lexicographic optimization criteria. The developed tools can provide optimal solutions for many of the instances, but a few challenges remain. Moreover, it is our understanding that this problem has many similarities with other configuration problems, and therefore the same techniques can be used in other domains.Comment: In Proceedings LoCoCo 2010, arXiv:1007.083

    Super-heavy fermion material as metallic refrigerant for adiabatic demagnetization cooling

    Get PDF
    Low-temperature refrigeration is of crucial importance in fundamental research of condensed matter physics, as the investigations of fascinating quantum phenomena, such as superconductivity, superfluidity and quantum criticality, often require refrigeration down to very low temperatures. Currently, cryogenic refrigerators with 3^3He gas are widely used for cooling below 1 Kelvin. However, usage of the gas is being increasingly difficult due to the current world-wide shortage. Therefore, it is important to consider alternative methods of refrigeration. Here, we show that a new type of refrigerant, super-heavy electron metal, YbCo2_2Zn20_{20}, can be used for adiabatic demagnetization refrigeration, which does not require 3He gas. A number of advantages includes much better metallic thermal conductivity compared to the conventional insulating refrigerants. We also demonstrate that the cooling performance is optimized in Yb1−x_{1-x}Scx_xCo2_2Zn20_{20} by partial Sc substitution with x∌x\sim0.19. The substitution induces chemical pressure which drives the materials close to a zero-field quantum critical point. This leads to an additional enhancement of the magnetocaloric effect in low fields and low temperatures enabling final temperatures well below 100 mK. Such performance has up to now been restricted to insulators. Since nearly a century the same principle of using local magnetic moments has been applied for adiabatic demagnetization cooling. This study opens new possibilities of using itinerant magnetic moments for the cryogen-free refrigeration
    • 

    corecore