986 resultados para conformance checking


Relevância:

10.00% 10.00%

Publicador:

Resumo:

Distributed parallel execution systems speed up applications by splitting tasks into processes whose execution is assigned to different receiving nodes in a high-bandwidth network. On the distributing side, a fundamental problem is grouping and scheduling such tasks such that each one involves sufñcient computational cost when compared to the task creation and communication costs and other such practical overheads. On the receiving side, an important issue is to have some assurance of the correctness and characteristics of the code received and also of the kind of load the particular task is going to pose, which can be specified by means of certificates. In this paper we present in a tutorial way a number of general solutions to these problems, and illustrate them through their implementation in the Ciao multi-paradigm language and program development environment. This system includes facilities for parallel and distributed execution, an assertion language for specifying complex programs properties (including safety and resource-related properties), and compile-time and run-time tools for performing automated parallelization and resource control, as well as certification of programs with resource consumption assurances and efñcient checking of such certificates.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Global data-flow analysis of (constraint) logic programs, which is generally based on abstract interpretation [7], is reaching a comparatively high level of maturity. A natural question is whether it is time for its routine incorporation in standard compilers, something which, beyond a few experimental systems, has not happened to date. Such incorporation arguably makes good sense only if: • the range of applications of global analysis is large enough to justify the additional complication in the compiler, and • global analysis technology can deal with all the features of "practical" languages (e.g., the ISO-Prolog built-ins) and "scales up" for large programs. We present a tutorial overview of a number of concepts and techniques directly related to the issues above, with special emphasis on the first one. In particular, we concéntrate on novel uses of global analysis during program development and debugging, rather than on the more traditional application área of program optimization. The idea of using abstract interpretation for validation and diagnosis has been studied in the context of imperative programming [2] and also of logic programming. The latter work includes issues such as using approximations to reduce the burden posed on programmers by declarative debuggers [6, 3] and automatically generating and checking assertions [4, 5] (which includes the more traditional type checking of strongly typed languages, such as Gódel or Mercury [1, 8, 9]) We also review some solutions for scalability including modular analysis, incremental analysis, and widening. Finally, we discuss solutions for dealing with meta-predicates, side-effects, delay declarations, constraints, dynamic predicates, and other such features which may appear in practical languages. In the discussion we will draw both from the literature and from our experience and that of others in the development and use of the CIAO system analyzer. In order to emphasize the practical aspects of the solutions discussed, the presentation of several concepts will be illustrated by examples run on the CIAO system, which makes extensive use of global analysis and assertions.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

We present a generic preprocessor for combined static/dynamic validation and debugging of constraint logic programs. Passing programs through the preprocessor prior to execution allows detecting many bugs automatically. This is achieved by performing a repertoire of tests which range from simple syntactic checks to much more advanced checks based on static analysis of the program. Together with the program, the user may provide a series of assertions which trigger further automatic checking of the program. Such assertions are written using the assertion language presented in Chapter 2, which allows expressing a wide variety of properties. These properties extend beyond the predefined set which may be understandable by the available static analyzers and include properties defined by means of user programs. In addition to user-provided assertions, in each particular CLP system assertions may be available for predefined system predicates. Checking of both user-provided assertions and assertions for system predicates is attempted first at compile-time by comparing them with the results of static analysis. This may allow statically proving that the assertions hold (Le., they are validated) or that they are violated (and thus bugs detected). User-provided assertions (or parts of assertions) which cannot be statically proved ñor disproved are optionally translated into run-time tests. The implementation of the preprocessor is generic in that it can be easily customized to different CLP systems and dialects and in that it is designed to allow the integration of additional analyses in a simple way. We also report on two tools which are instances of the generic preprocessor: CiaoPP (for the Ciao Prolog system) and CHIPRE (for the CHIP CLP(FL>) system). The currently existing analyses include types, modes, non-failure, determinacy, and computational cost, and can treat modules separately, performing incremental analysis.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

We discuss a framework for the application of abstract interpretation as an aid during program development, rather than in the more traditional application of program optimization. Program validation and detection of errors is first performed statically by comparing (partial) specifications written in terms of assertions against information obtained from (global) static analysis of the program. The results of this process are expressed in the user assertion language. Assertions (or parts of assertions) which cannot be checked statically are translated into run-time tests. The framework allows the use of assertions to be optional. It also allows using very general properties in assertions, beyond the predefined set understandable by the static analyzer and including properties defined by user programs. We also report briefly on an implementation of the framework. The resulting tool generates and checks assertions for Prolog, CLP(R), and CHIP/CLP(fd) programs, and integrates compile-time and run-time checking in a uniform way. The tool allows using properties such as types, modes, non-failure, determinacy, and computational cost, and can treat modules separately, performing incremental analysis.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Abstraction-Carrying Code (ACC) has recently been proposed as a framework for mobile code safety in which the code supplier provides a program together with an abstraction whose validity entails compliance with a predefined safety policy. The abstraction plays thus the role of safety certifícate and its generation is carried out automatically by a fixed-point analyzer. The advantage of providing a (fixedpoint) abstraction to the code consumer is that its validity is checked in a single pass of an abstract interpretation-based checker. A main challenge is to reduce the size of certificates as much as possible while at the same time not increasing checking time. In this paper, we first introduce the notion of reduced certifícate which characterizes the subset of the abstraction which a checker needs in order to validate (and re-construct) the full certifícate in a single pass. Based on this notion, we then instrument a generic analysis algorithm with the necessary extensions in order to identify the information relevant to the checker.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Proof carrying code is a general methodology for certifying that the execution of an untrusted mobile code is safe, according to a predefined safety policy. The basic idea is that the code supplier attaches a certifícate (or proof) to the mobile code which, then, the consumer checks in order to ensure that the code is indeed safe. The potential benefit is that the consumer's task is reduced from the level of proving to the level of checking, a much simpler task. Recently, the abstract interpretation techniques developed in logic programming have been proposed as a basis for proof carrying code [1]. To this end, the certifícate is generated from an abstract interpretation-based proof of safety. Intuitively, the verification condition is extracted from a set of assertions guaranteeing safety and the answer table generated during the analysis. Given this information, it is relatively simple and fast to verify that the code does meet this proof and so its execution is safe. This extended abstract reports on experiments which illustrate several issues involved in abstract interpretation-based code certification. First, we describe the implementation of our system in the context of CiaoPP: the preprocessor of the Ciao multi-paradigm (constraint) logic programming system. Then, by means of some experiments, we show how code certification is aided in the implementation of the framework. Finally, we discuss the application of our method within the área of pervasive systems which may lack the necessary computing resources to verify safety on their own. We herein illustrate the relevance of the information inferred by existing cost analysis to control resource usage in this context. Moreover, since the (rather complex) analysis phase is replaced by a simpler, efficient checking process at the code consumer side, we believe that our abstract interpretation-based approach to proof-carrying code becomes practically applicable to this kind of systems.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Recent approaches to mobile code safety, like proof- arrying code, involve associating safety information to programs. The code supplier provides a program and also includes with it a certifícate (or proof) whose validity entails compliance with a predefined safety policy. The intended benefit is that the program consumer can locally validate the certifícate w.r.t. the "untrusted" program by means of a certifícate checker—a process which should be much simpler, eflicient, and automatic than generating the original proof. We herein introduce a novel approach to mobile code safety which follows a similar scheme, but which is based throughout on the use of abstract interpretation techniques. In our framework the safety policy is specified by using an expressive assertion language defined over abstract domains. We identify a particular slice of the abstract interpretation-based static analysis results which is especially useful as a certifícate. We propose an algorithm for checking the validity of the certifícate on the consumer side which is itself in fact a very simplified and eflicient specialized abstract-interpreter. Our ideas are illustrated through an example implemented in the CiaoPP system. Though further experimentation is still required, we believe the proposed approach is of interest for bringing the automation and expressiveness which is inherent in the abstract interpretation techniques to the área of mobile code safety.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

La durabilidad de las estructuras de hormigón armado no es ilimitada, en especial en determinados ambientes. El ingreso de agentes agresivos en el hormigón, fundamentalmente dióxido de carbono e iones cloruros, rebasando el espesor del recubrimiento y alcanzando las armaduras, reducen el alto pH del hormigón hasta alcanzar un umbral crítico, por debajo del cual, el acero queda despasivado. Posteriormente, si existe el suficiente aporte de humedad y oxígeno, el acero se corroe, lo que supone drásticas reducciones de la vida de servicio de estas estructuras y su inevitable reparación. La utilización de armaduras de acero inoxidable es una alternativa que está recibiendo cada vez más consideración. Su resistencia a la corrosión en los ambientes más agresivos, incluso con ataque de cloruros, lo convierte en el material idóneo para prolongar de forma muy considerable la vida útil de la estructura. En este trabajo se ha evaluado el comportamiento mecánico y estructural, y de resistencia a la corrosión, de un nuevo acero inoxidable dúplex de bajo contenido en níquel, el EN 1.4482 (AISI 2001), y se ha comparado con el inoxidable austenítico más utilizado, el EN 1.4301 (AISI 304), con el dúplex EN 1.4362 (AISI 2304) y con el tradicional acero al carbono B-500-SD. El estudio mecánico y estructural se ha realizado en tres niveles diferentes: a nivel de barra, estudiando las propiedades mecánicas y de ductilidad de los cuatro aceros citados; a nivel de sección, estudiando su comportamiento a flexión con diferentes cuantías de armado por medio de los diagramas momento-curvatura; y a nivel de pieza, ensayando una serie de vigas armadas con diferentes aceros y cuantías, y comprobando su comportamiento a desplazamiento y resistencia por medio de los diagramas carga-desplazamiento. El estudio de resistencia a la corrosión se ha realizado embebiendo barras corrugadas, de los tres aceros inoxidables mencionados, en probetas de mortero contaminadas con diferentes cantidades de cloruros, y realizando mediciones electroquímicas durante un periodo de al menos un año. Se han preparado probetas de mortero para dos comparativas diferentes. La primera, manteniendo las probetas en un desecador con el 95 % de humedad relativa durante todo el periodo de mediciones. La segunda, sumergiendo parcialmente las probetas en una solución tampón para carbonatar el mortero. Los resultados de los ensayos mecánicos han demostrado dos aspectos diferentes. Uno, que las armaduras de acero inoxidable tienen un comportamiento muy similar a las de acero al carbono en lo referente a las resistencias alcanzadas, en el límite elástico y en rotura, pero distinto en cuanto al módulo de deformación longitudinal, cuyo valor es claramente inferior al del acero al carbono, por lo que su utilización en las estructuras de hormigón necesita tener en cuenta ese dato en los análisis lineales de cálculo. El segundo aspecto es que las armaduras de acero inoxidable laminadas en caliente presentan una ductilidad muy superior a las de acero al carbono, por lo que ofrecen una mayor seguridad frente a su rotura o al colapso de la estructura, lo que se debe tener en cuenta en el análisis de cálculo plástico. En cambio, las armaduras de acero inoxidable laminadas en frío sólo cumplen con los límites mínimos de ductilidad establecidos en la instrucción EHE-08 para los aceros soldables, y no para los aceros con características especiales de ductilidad. El estudio a nivel de sección refleja la paradoja de obtener secciones menos dúctiles con las armaduras de acero inoxidable laminadas en caliente que con las armaduras de acero al carbono. Para subsanarlo, se definen los conceptos de curvatura última de rotura y ductilidad de la sección en rotura, que tienen en cuenta las altas deformaciones alcanzadas por las armaduras de acero inoxidable. Los resultados a nivel de pieza permiten identificar el comportamiento estructural del hormigón armado con barras corrugadas de acero inoxidable y compararlo con el de las estructuras de hormigón armado convencionales, verificando los resultados experimentales con los teóricos obtenidos con la formulación recogida en la instrucción EHE- 08. Los ensayos de resistencia a la corrosión por cloruros demuestran, durante el primer año y medio de vida de las probetas, un comportamiento muy similar entre el nuevo acero inoxidable dúplex bajo en níquel y el austenítico y el dúplex utilizados para la comparación, incluso para las probetas carbonatadas. Por último, se añade una comparativa económica, realizada sobre dos edificaciones tipo, para cuantificar el sobrecoste que supone la utilización de armaduras de acero inoxidable respecto a las de acero al carbono. El alto coste inicial de las armaduras de acero inoxidable se ve compensado en el coste final de la estructura de muy diferentes formas, principalmente dependiendo del grado de acero elegido y de si se emplean en el total de la estructura o solamente en los elementos más expuestos. The durability of the concrete structures is limited, especially in certain environments. The attack of aggressive agents in the concrete, mainly carbon dioxide and chloride ions, penetrating the thickness of concrete cover and reaching the reinforcements, reduce the high pH of concrete to the point of reaching a critical threshold, under which, the steel despasivates. Therefore, if there is enough humidity and oxygen, the steel corroes, causing drastic reductions in the service life of these structures and its inevitable repair. Despite the high initial cost compared to carbon steel, the usage of stainless steel reinforcements is an alternative with a major consideration nowadays. Its resistance to corrosion in the most aggressive atmospheres, including chlorides attack, makes the stainless steel a suitable material to extend considerably its lifetime. In this study, it’s been evaluated the mechanical and structural behaviour, and the corrosion resistance, of a new low-nickel duplex stainless steel EN 1.4482 (AISI 2001), and it has been compared with the most widely used austenitic type EN 1.4301 (AISI 304), with duplex steel EN 1.4362 (AISI 2304) and with the traditional carbon steel B-500-SD. The mechanical and structural study has been carried out in three different levels: bar level, studying mechanical properties and ductility of the four steels; section level, studying its behaviour when blending with different amounts of reinforcement through the moment-curvature diagrams; and structural element level, testing a series of reinforced beams with different steels and amounts, and checking its sag and resistance through the load-deflection diagrams. The corrosion resistance study was performed by embedding ribbed bars, using the three stainless steel listed, on mortar specimens contaminated with different amounts of chlorides, and taking electrochemical measurements over a period of at least one year. Mortar specimens have been prepared for two different comparisons. The first, keeping the specimens at 95% of relative humidity during the measurement period. The second, immersing the specimens partially in a carbonate buffer solution. The results of those tests have proved two different aspects. Firstly, that stainless steel reinforcements show a very similar behaviour to carbon steel, according to the reached levels of mechanical resistance, yield stress and steel strength, but a different behaviour in Young’s modulus, which value is clearly lower than the carbon steel. Therefore, when using in concrete structures it is need to consider on that point the existing calculus of linear analysis. The second aspect is that stainless steel reinforcement manufactured by hot-rolling process show a very higher ductility than carbon steel, offering a better security on cracks or structure collapse, which it has to be taken into account on plastic calculus analysis. However, the stainless steel reinfor9 cement cold-rolled bars only meet the minimum thresholds of ductility established by EHE-08 for welded steel, and not for steels with special ductility. The results at the section level reflect the paradox of getting less ductile sections with hot rolled stainless steel reinforcement than with carbon steel reinforcements. To overcome that, the concepts of last break curvature and break ductility section have been defined, which take into account the high deformation value achieved by stainless steel reinforcements. The results at the structural element level allow to identify the structural behaviour of reinforced concrete with stainless steel reinforcements and compared with that of conventional steel reinforcement, contrasting the experimental with the theoretical results obtained from the formulation contained in the instruction EHE-08. Tests on resistance of chloride corrosion show during the first year and a half of specimens life, a similar behaviour between the new low nickel duplex stainless steel and austenitic and duplex used for comparison, even for carbonated specimens. Finally, it has been included an economic comparison on two differents building types, to quantify the additional cost involved on the use of stainless steel reinforcement compared to that of carbon steel. The high initial cost of stainless steel reinforcements is offset in the final cost of the structure in many different ways, mainly depending on the chosen steel grade and whether the reinforcement is used in the total structure or only in risky structural elements.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Abstraction-Carrying Code (ACC) has recently been proposed as a framework for mobile code safety in which the code supplier provides a program together with an abstraction (or abstract model of the program) whose validity entails compliance with a predefined safety policy. The abstraction plays thus the role of safety certifícate and its generation is carried out automatically by a fixed-point analyzer. The advantage of providing a (fixed-point) abstraction to the code consumer is that its validity is checked in a single pass (i.e., one iteration) of an abstract interpretation-based checker. A main challenge to make ACC useful in practice is to reduce the size of certificates as much as possible while at the same time not increasing checking time. The intuitive idea is to only include in the certifícate information that the checker is unable to reproduce without iterating. We introduce the notion of reduced certifícate which characterizes the subset of the abstraction which a checker needs in order to validate (and re-construct) the full certifícate in a single pass. Based on this notion, we instrument a generic analysis algorithm with the necessary extensions in order to identify information which can be reconstructed by the single-pass checker. Finally, we study what the effects of reduced certificates are on the correctness and completeness of the checking process. We provide a correct checking algorithm together with sufficient conditions for ensuring its completeness. Our ideas are illustrated through a running example, implemented in the context of constraint logic programs, which shows that our approach improves state-of-the-art techniques for reducing the size of certificates.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

El propósito principal de éste trabajo tiene que ver con los procesos de modelado del espacio social, utilizando como campo de estudio los efectos sobre la morfología urbana generados por la implantación del sistema de transporte Masivo Transbarca en la ciudad venezolana de Barquisimeto. La investigación se apoya en buena medida en las teorías de la morfología social elaboradas por el sociólogo E. Durkheim y desarrolladas sobre todo en el campo del urbanismo por M. Halbwachs. En ellas se vincula la morfología social con su sustrato material, la forma urbana, desde una perspectiva sociológica. De igual manera se consideran categorías conceptuales como fragmentación y segregación, según otros enfoques (M. Castells y Reales). El trabajo se desarrolla según una metodología empírica, realizando análisis cuantitativos de los fenómenos que se consideran indicativos (el mercado de vivienda, por ejemplo) y comprobando su relación con la cualificación del espacio urbano donde destacan los procesos de remodelación de la centralidad que resultan de la implantación del Transporte Masivo. Desde esta perspectiva, la solución al transporte colectivo adquiere una dimensión que trasciende su papel como pieza fundamental para el buen funcionamiento de la ciudad moderna en crecimiento, con independencia de que sea capaz de ofrecer una solución a ese desafío, para convertirse en un instrumento de ordenación de la ciudad que afecta a la morfología social y urbana, que supone profundas alteraciones del centro urbano propiamente dicho, que implica una redistribución de los grupos sociales en el espacio reformado de la ciudad: un proceso de remodelación y transformación del espacio funcional y social, presentado como una solución a los problemas de movilidad. También en Venezuela, como en otras partes, la evolución de la morfología social está relacionada con profundos cambios ocurridos en los sustratos físico-estructurales de las ciudades, que a su vez se vinculan con la dinámica de los procesos de globalización que nutren la dinámica interna de construcción y reconstrucción de esos espacios. SUMMARY The main purpose of this work deals with modeling processes of social space, using as a field of study the effects on urban morphology generated by the implementation of the transport system Transbarca Mass in the Venezuelan city of Barquisimeto. The research was based largely on theories of social morphology developed by sociologist E. Durkheim and developed primarily in the field of urban M. Halbwachs. They linked the social morphology with its substrate material, urban form, from a sociological perspective. Similarly conceptual categories are considered as fragmentation and segregation, as other approaches (M. Castells and Royals). The work is developed as an empirical methodology, performing quantitative analysis of the phenomena that are considered indicative (the housing market, for example) and checking its relation to the qualification of urban space which include remodeling processes resulting from the centrality the implementation of mass transportation. From this perspective, collective transport solution acquires a dimension that transcends its role as a cornerstone for the functioning of the modern city growing, regardless of who is able to offer a solution to this challenge, to become an instrument of City management affecting the social and urban morphology, reflecting profound alterations in the city center itself, which implies a redistribution of social groups in the city renovated space: a process of renovation and transformation of social and functional space presented as a solution to mobility problems. Also in Venezuela, as elsewhere, the development of social morphology is associated with profound changes in the physical and structural substrates of cities, which in turn are linked to the dynamics of globalization processes that nourish the internal dynamics construction and reconstruction of these areas.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Ciao is a public domain, next generation multi-paradigm programming environment with a unique set of features: Ciao offers a complete Prolog system, supporting ISO-Prolog, but its novel modular design allows both restricting and extending the language. As a result, it allows working with fully declarative subsets of Prolog and also to extend these subsets (or ISO-Prolog) both syntactically and semantically. Most importantly, these restrictions and extensions can be activated separately on each program module so that several extensions can coexist in the same application for different modules. Ciao also supports (through such extensions) programming with functions, higher-order (with predicate abstractions), constraints, and objects, as well as feature terms (records), persistence, several control rules (breadth-first search, iterative deepening, ...), concurrency (threads/engines), a good base for distributed execution (agents), and parallel execution. Libraries also support WWW programming, sockets, external interfaces (C, Java, TclTk, relational databases, etc.), etc. Ciao offers support for programming in the large with a robust module/object system, module-based separate/incremental compilation (automatically -no need for makefiles), an assertion language for declaring (optional) program properties (including types and modes, but also determinacy, non-failure, cost, etc.), automatic static inference and static/dynamic checking of such assertions, etc. Ciao also offers support for programming in the small producing small executables (including only those builtins used by the program) and support for writing scripts in Prolog. The Ciao programming environment includes a classical top-level and a rich emacs interface with an embeddable source-level debugger and a number of execution visualization tools. The Ciao compiler (which can be run outside the top level shell) generates several forms of architecture-independent and stand-alone executables, which run with speed, efficiency and executable size which are very competive with other commercial and academic Prolog/CLP systems. Library modules can be compiled into compact bytecode or C source files, and linked statically, dynamically, or autoloaded. The novel modular design of Ciao enables, in addition to modular program development, effective global program analysis and static debugging and optimization via source to source program transformation. These tasks are performed by the Ciao preprocessor ( ciaopp, distributed separately). The Ciao programming environment also includes lpdoc, an automatic documentation generator for LP/CLP programs. It processes Prolog files adorned with (Ciao) assertions and machine-readable comments and generates manuals in many formats including postscript, pdf, texinfo, info, HTML, man, etc. , as well as on-line help, ascii README files, entries for indices of manuals (info, WWW, ...), and maintains WWW distribution sites.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

We present a framework for the application of abstract interpretation as an aid during program development, rather than in the more traditional application of program optimization. Program validation and detection of errors is first performed statically by comparing (partial) specifications written in terms of assertions against information obtained from static analysis of the program. The results of this process are expressed in the user assertion language. Assertions (or parts of assertions) which cannot be verified statically are translated into run-time tests. The framework allows the use of assertions to be optional. It also allows using very general properties in assertions, beyond the predefined set understandable by the static analyzer and including properties defined by means of user programs. We also report briefly on an implementation of the framework. The resulting tool generates and checks assertions for Prolog, CLP(R), and CHIP/CLP(fd) programs, and integrates compile-time and run-time checking in a uniform way. The tool allows using properties such as types, modes, non-failure, determinacy, and computational cost, and can treat modules separately, performing incremental analysis. In practice, this modularity allows detecting statically bugs in user programs even if they do not contain any assertions.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Abstraction-Carrying Code (ACC) has recently been proposed as a framework for mobile code safety in which the code supplier provides a program together with an abstraction (or abstract model of the program) whose validity entails compliance with a predefined safety policy. The abstraction plays thus the role of safety certificate and its generation is carried out automatically by a fixpoint analyzer. The advantage of providing a (fixpoint) abstraction to the code consumer is that its validity is checked in a single pass (i.e., one iteration) of an abstract interpretation-based checker. A main challenge to make ACC useful in practice is to reduce the size of certificates as much as possible while at the same time not increasing checking time. The intuitive idea is to only include in the certificate information that the checker is unable to reproduce without iterating. We introduce the notion of reduced certificate which characterizes the subset of the abstraction which a checker needs in order to validate (and re-construct) the fall certificate in a single pass. Based on this notion, we instrument a generic analysis algorithm with the necessary extensions in order to identify the information relevant to the checker. Interestingly, the fact that the reduced certificate omits (parts of) the abstraction has implications in the design of the checker. We provide the sufficient conditions which allow us to ensure that 1) if the checker succeeds in validating the certificate, then the certificate is valid for the program (correctness) and 2) the checker will succeed for any reduced certificate which is valid (completeness). Our approach has been implemented and benchmarked within the CiaoPP system. The experimental results show t h a t our proposal is able to greatly reduce the size of certificates in practice. To appear in Theory and Practice of Logic Programming (TPLP).

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Service compositions put together loosely-coupled component services to perform more complex, higher level, or cross-organizational tasks in a platform-independent manner. Quality-of-Service (QoS) properties, such as execution time, availability, or cost, are critical for their usability, and permissible boundaries for their values are defined in Service Level Agreements (SLAs). We propose a method whereby constraints that model SLA conformance and violation are derived at any given point of the execution of a service composition. These constraints are generated using the structure of the composition and properties of the component services, which can be either known or empirically measured. Violation of these constraints means that the corresponding scenario is unfeasible, while satisfaction gives values for the constrained variables (start / end times for activities, or number of loop iterations) which make the scenario possible. These results can be used to perform optimized service matching or trigger preventive adaptation or healing.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

An automatic Mesh Generation Preprocessor for BE Programs with a considerable of capabilities has been developed. This program allows almost any kind of geometry and tipology to be defined with a small amount of external data, and with an important approximation of the boundary geometry. Also the error checking possibility is very important for a fast comprobation of the results.