3,031 research outputs found

    Max-CSP Approach for Software Diagnosis

    Get PDF
    In software development is essential to have tools for the software diagnosis to help the programmers and development engineers to locate the bugs. In this paper, we propose a new approach that identifies the possible bugs and detect why the program does not satisfy the specified result. A typical diagnosis problem is built starting from the structure and semantics of the original source code and the precondition and postcondition formal specifications. When we apply a determined test case to a program and this program fails, then we can use our methodology in order to obtain automatically the sentence or the set of sentences that contains the bug. The originality of our methodology is due to the use of a constraint-based model for software and Max-CSP techniques to obtain the minimal diagnosis and to avoid explicitly to build the functional dependency graph

    Diagnosing Errors in DbC Programs Using Constraint Programming

    Get PDF
    Model-Based Diagnosis allows to determine why a correctly designed system does not work as it was expected. In this paper, we propose a methodology for software diagnosis which is based on the combination of Design by Contract, Model-Based Diagnosis and Constraint Programming. The contracts are specified by assertions embedded in the source code. These assertions and an abstraction of the source code are transformed into constraints, in order to obtain the model of the system. Afterwards, a goal function is created for detecting which assertions or source code statements are incorrect. The application of this methodology is automatic and is based on Constraint Programming techniques. The originality of this work stems from the transformation of contracts and source code into constraints, in order to determine which assertions and source code statements are not consistent with the specification.Ministerio de Ciencia y Tecnología DPI2003-07146-C02-0

    Mapping constrained optimization problems to quantum annealing with application to fault diagnosis

    Get PDF
    Current quantum annealing (QA) hardware suffers from practical limitations such as finite temperature, sparse connectivity, small qubit numbers, and control error. We propose new algorithms for mapping boolean constraint satisfaction problems (CSPs) onto QA hardware mitigating these limitations. In particular we develop a new embedding algorithm for mapping a CSP onto a hardware Ising model with a fixed sparse set of interactions, and propose two new decomposition algorithms for solving problems too large to map directly into hardware. The mapping technique is locally-structured, as hardware compatible Ising models are generated for each problem constraint, and variables appearing in different constraints are chained together using ferromagnetic couplings. In contrast, global embedding techniques generate a hardware independent Ising model for all the constraints, and then use a minor-embedding algorithm to generate a hardware compatible Ising model. We give an example of a class of CSPs for which the scaling performance of D-Wave's QA hardware using the local mapping technique is significantly better than global embedding. We validate the approach by applying D-Wave's hardware to circuit-based fault-diagnosis. For circuits that embed directly, we find that the hardware is typically able to find all solutions from a min-fault diagnosis set of size N using 1000N samples, using an annealing rate that is 25 times faster than a leading SAT-based sampling method. Further, we apply decomposition algorithms to find min-cardinality faults for circuits that are up to 5 times larger than can be solved directly on current hardware.Comment: 22 pages, 4 figure

    Diagnosis applied CSP based on models

    Get PDF
    En las ´ultimas d´ecadas, parte de la comunidad cient´ıfica ha dedicado sus esfuerzos al desarrollo de una metodolog´ıa para la diagnosis de sistemas desde el campo de la Inteligencia Artificial. Dicha metodolog´ıa se denomina diagnosis basada en modelos, y cubre un amplio abanico de posibilidades. Se parte de un modelo expl´ıcito del sistema a diagnosticar y a partir de ´el se razona sobre la identificaci´on de los subsistemas que generan fallos, utilizando para ello los valores de las entradas proporcionadas y las salidas captadas del sistema. En cualquier proceso de producci´on o desarrollo es importante tener un control sobre los fallos en componentes o procesos. La diagnosis permite controlar estas irregularidades, lo que conlleva a los sistemas que la incorporan una mayor seguridad y reducci´on de costos. Algunos modelos utilizados en ingenier´ıa se han basado en la programaci´on l´ogica con restricciones (CLP) para obtener la diagnosis de un sistema. En este art´ıculo proponemos la metodolog´ıa necesaria para poder plantear la diagnosis de un sistema como un problema de satisfacci´on de restricciones (CSP). De esta forma, ser´a posible incorporar al proceso de generaci´on de la diagnosis de un sistema, los avances y optimizaciones que se han alcanzado en el campo de la b´usqueda de soluciones para problemas CSP. Plantear un problema de diagnosis de esta forma abre tambi´en la posibilidad de aplicar la diagnosis a otros campos, como por ejemplo la diagnosis del software. La diagnosis del software permite identificar y localizar el origen de los errores de un desarrollo software. Un programa tendr´a un error si no existe concordancia entre los resultados especificados como correctos y los resultados observados tras la ejecuci´on.In the last decades, model-based diagnosis has been an active research topic for the Artificial Intelligence community. It uses the explicit model of a system, the system inputs and the measured system outputs, in order to identify the subsystems that can generate faults. The system or the process that incorporates diagnosis may reduce costs and provide more security. Some models used in engineering are based on constraint logic programming (CLP) in order to obtain the system diagnosis. In this paper we propose a methodology for the system diagnosis as a constraint satisfaction problem (CSP). Using this methodology it is possible to incorporate, the advances and optimizations achieved for the search of solutions in CSP. This methodology also offers the possibility of applying diagnosis to other areas, such as software diagnosis. Software diagnosis allows the identification of the program bugs. A bug occurs when there is not matching between the specified results and the observed results after a program execution.Ministerio de Ciencia y Tecnología DPI2000-0666-C02-0

    Developing a labelled object-relational constraint database architecture for the projection operator

    Get PDF
    Current relational databases have been developed in order to improve the handling of stored data, however, there are some types of information that have to be analysed for which no suitable tools are available. These new types of data can be represented and treated as constraints, allowing a set of data to be represented through equations, inequations and Boolean combinations of both. To this end, constraint databases were defined and some prototypes were developed. Since there are aspects that can be improved, we propose a new architecture called labelled object-relational constraint database (LORCDB). This provides more expressiveness, since the database is adapted in order to support more types of data, instead of the data having to be adapted to the database. In this paper, the projection operator of SQL is extended so that it works with linear and polynomial constraints and variables of constraints. In order to optimize query evaluation efficiency, some strategies and algorithms have been used to obtain an efficient query plan. Most work on constraint databases uses spatiotemporal data as case studies. However, this paper proposes model-based diagnosis since it is a highly potential research area, and model-based diagnosis permits more complicated queries than spatiotemporal examples. Our architecture permits the queries over constraints to be defined over different sets of variables by using symbolic substitution and elimination of variables.Ministerio de Ciencia y Tecnología DPI2006-15476-C02-0

    Model-Based Software Debugging

    Get PDF
    The complexity and size of software systems have rapidly increased in recent years, with software engineers facing ever-growing challenges in building and maintaining such systems. In particular, testing and debugging, that is, finding, isolating, and eliminating defects in software systems still constitute a major challenge in practiceMinisterio de Ciencia y Tecnología TIN2015-63502-C3-2-RFundacao para a Ciencia e a Tecnologia (FCT) UID/EEA/50014/2013European Regional Development Fund (ERDF) POCI-01-0145-FEDER-006961 (COMPETE 2020

    Constraint satisfaction techniques for diagnosing errors in Design by Contract software

    Get PDF
    Design by Contract enables the development of more reliable and robust software applications. In this paper, a methodology that diagnoses errors in software is proposed. This is based on the combination of Design by Contract, Modelbased Diagnosis and Constraint Programming. Contracts are specified by using assertions. These assertions together with an abstraction of the source code are transformed into constraints. The methodology detects if the contracts are consistent, and if there are incompatibilities between contracts and source code. The process is automatic and is based on constraint programming.Ministerio de Ciencia y Tecnología DPI2003-07146-C02-0
    corecore