The spiraling nature of evolutionary), software development processes produces executable parts of the system at the end of each loop. We argue that these parts should consist not only of programming language code, bu...
详细信息
ISBN:
(纸本)0769512062;0769512070
The spiraling nature of evolutionary), software development processes produces executable parts of the system at the end of each loop. We argue that these parts should consist not only of programming language code, but of executable graphical system models. As a main benefit of the use of more abstract, yet formal, modeling languages, we present a method for model based test sequence generation for reactive systems on the grounds of constraint logic programming and its implementation in the CASE tool AutoFocus.
Generalised Assignment Problems (GAP), traditionally solved by Integer programming techniques, are addressed in the light of current constraintprogramming methods. A scheduling application from manufacturing, based o...
详细信息
This introduction to the constraint logic programming language CLP(R) uses applications to provide insight to the language's strengths. An overview of CLP(R) is followed by a discussion of three applications that ...
详细信息
This introduction to the constraint logic programming language CLP(R) uses applications to provide insight to the language's strengths. An overview of CLP(R) is followed by a discussion of three applications that illustrate the language's unifying treatment both of numeric and symbolic computing and of engineering analysis and synthesis problems. Another discussion dissects the interpreter's constraint solver and clarifies how a problem's search space can be restricted declaratively. The final example is an extended description of the construction of a network of interpreters, which can be used to distributively solve a set of linear equations. This extension requires no modification of the CLP(R) interpreter and points out the benefits of revisiting established algorithms vis-a-vis CLP(R).
We develop a denotational, fully abstract semantics for constraint logic programming (clp) with respect to successful and failed observables. The denotational approach turns out very useful for the definition of new o...
详细信息
We develop a denotational, fully abstract semantics for constraint logic programming (clp) with respect to successful and failed observables. The denotational approach turns out very useful for the definition of new operators on the language as the counterpart of some abstract operations on the denotational domain. In particular, by defining our domain as a cylindric Heyting algebra, we can exploit, to this aim, operations of both cylindric algebras (such as cylindrification), and Heyting algebras (such as implication and negation). The former allows us to generalize the clp language by introducing an explicit hiding operator;the latter allows us to define a notion of negation which extends the classical negation used in logicprogramming. In particular, we show that our notion subsumes both negation as failure and negation as instantiation.
In order to develop a computer bridge system that can play on an equal basis with the expert, various problems which are inherent to the incomplete information game must be solved. The authors intend to develop a new ...
详细信息
Impressive work has been done in the last;years concerning the meaning of negation and disjunction in logic programs, but most of this research concentrated on propositional programs only. While it suffices to conside...
详细信息
ISBN:
(纸本)3540628436
Impressive work has been done in the last;years concerning the meaning of negation and disjunction in logic programs, but most of this research concentrated on propositional programs only. While it suffices to consider the propositional case for investigating general properties and the overall behaviour of a semantics, we feel that for real applications and for computational purposes an implementation should be able to handle first-order programs without grounding them. In this paper we present a theoretical framework by defining a calculus of program transformations that apply directly to rules with variables and function symbols. Our main results are that (1) this calculus is confluent for arbitrary programs, (2) for finite ground programs it is equivalent to a terminating calculus introduced by Brass and Dir (1995), and (3) it approximates a generalisation of D-WFS for arbitrary programs. We achieve this by transforming program rules into rules with equational constraints thereby using heavily methods and techniques from constraint logic programming. In particular, disconnection-methods play a crucial role. In principle, any constraint theory known from the field of constraint logic programming can be exploited in the context of nonmonotonic reasoning, not only equational constraints over the Herbrand domain. However, the respective constraint solver must be able to treat negative constraints of the considered constraint domain. In summary, this work yields the basis for a general combination of two paradigms: constraint logic programming and non-monotonic reasoning.
Many software compilers for embedded processors produce machine code of insufficient quality. Since for most applications software must meet tight code speed and size constraints, embedded software is still largely de...
详细信息
Many software compilers for embedded processors produce machine code of insufficient quality. Since for most applications software must meet tight code speed and size constraints, embedded software is still largely developed in assembly language. In order to eliminate this bottleneck and to enable the use of high-level language compilers also for embedded software, new code generation and optimization techniques are required. This paper describes a novel code generation technique for embedded processors with irregular data path architectures, such as typically found in fixed-point DSPs. The proposed code generation technique maps data flow graph representation of a program into highly efficient machine code for a target processor modeled by instruction set behavior. High code quality is ensured by tight coupling of different code generation phases. In contrast to earlier works, mainly based on heuristics, our approach is constraint-based. An initial set of constraints on code generation are prescribed by the given processor model. Further constraints arise during code generation based on decisions concerning code selection, register allocation, and scheduling. Whenever possible, decisions are postponed until sufficient information about a good decision has been collected. The constraints are active in the "background" and guarantee local satisfiability at any point of time during code generation. This mechanism permits to simultaneously cope with special-purpose registers and instruction level parallelism. We describe the detailed integration of code generation phases. The implementation is based on the constraint logic programming (CLP) language ECLiPSe. For a standard DSP, we show that the quality of generated code comes close to hand-written assembly code. Since the input processor model can be edited by the user, also retargetability of the code generation technique is achieved within a certain processor class.
In formulating a combinatorial optimisation problem (COP) using Discrete or Integer programming (IP) modelling techniques, the modeller is restricted to use only certain predefined discrete variables and sets which ar...
详细信息
In formulating a combinatorial optimisation problem (COP) using Discrete or Integer programming (IP) modelling techniques, the modeller is restricted to use only certain predefined discrete variables and sets which are linked by sets of linear equality and inequality constraints. Definition of many COPs includes restrictions in which the use of disequality (DI) constraints in their mathematical representation is inevitable. To represent this type of constraint a number of binary variables and extra constraints are usually introduced, which lead to an increase in the size of the model in terms of variables and constraints. In this paper, we introduce a new class of discrete variables which enables the modeller to represent DI constraints more efficiently in the mathematical formulation of a combinatorial optimisation problem. We have also introduced a new branching scheme to the conventional simplex based Branch and Bound (B & B) algorithm in order to deal with this type of variables. To study the effect of these variables, we modelled and solved a set of five classic problems, first using conventional MP variables and second, exploiting the new proposed variables, and compared the results. The empirical results show a promising improvement on the performance of the B & B algorithm. The contribution of this paper is (1) the introduction of a new class of discrete variables which can help to build smaller models, and (2) new branching schemes on these variables that can improve the B & B performance.
AI and OR approaches have complementary strengths: AI in domain-specific knowledge representation and OR in efficient mathematical computation. constraint logic programming (CLP), which combines these complementary st...
详细信息
AI and OR approaches have complementary strengths: AI in domain-specific knowledge representation and OR in efficient mathematical computation. constraint logic programming (CLP), which combines these complementary strengths of the AI and OR approach, is introduced as a new tool to formalize a special class of constraint satisfaction problems that include both qualitative and quantitative constraints. The CLP approach is contrasted with the Mixed Integer programming (MIP) method from a model-theoretic view. Three relative advantages of CLP over MIP are analyzed: (1) representational economies for domain-specific heuristics, (2) partial solutions, and (3) ease of model revision. A case example of constraint satisfaction problems is implemented by MIP and CLP for comparison of the two approaches. The results exhibit those relative advantages of CLP with computational efficiency comparable to MIP.
The paper describes a constraint logic programming approach for reasoning about dynamic physical systems based on structure. The approach takes a bond graph model of a system and computes a causal graph representation...
详细信息
The paper describes a constraint logic programming approach for reasoning about dynamic physical systems based on structure. The approach takes a bond graph model of a system and computes a causal graph representation of its causal structure. Causal graphs can be used for causal explanations and for explaining the effect of modeling abstractions on causal structure. The paper shows how causal graphs can be used to compute a simulation model of a system in the form of a set of differential algebraic equations. The topological properties of the causal graph determine whether a simulation model is regular, i.e. conforming to the criterion of 'real-time representation' or causality. In case the simulation model is not regular, a method is given for identifying all causal problems of a bond graph model.
暂无评论