| J. Jaffar, S. Michaylov, P.J. Stuckey, and R.H.C. Yap. "The CLP(R) Language and System". ACM TOPLAS 14, 3 (July 1992), 339-395. |
....the HSAT problem which progressively selects variables and explores value assignments while maintaining consistency between the boolean and the arithmetic constraints. Other researchers have solved the problem by using publicly available logic program solving engines such as the CLP(R) engine [57] used in [10] and the GNUProlog engine [58] used in [11] 3.2 Randomized Techniques Several techniques have been developed which develop test sequences using randomized algorithms to improve overall coverage without a strongly directed search mechanism. An example of such a technique is ....
J. Jaffar, S. Michaylov, P. J. Stuckey, and R. H. C. Yap, "The clp(r) language and system", ACM Transactions on Programming Languages and Systems, vol. 14, pp. 339--395, July 1992.
....operations on a constraint store are simple transactions such as asserting or retracting a rule or fact, and queries. Practically, such constraint stores are implemented as constraint programs with base facts and rules as in Prolog. Incidentally, we implement the system with programs using CLP(R) [2] syntax. Solving goals submitted by the agents relies on the constraint solver, which also serves as a logical database. 2 For details of the reactor language, refer to [4] 3 Most of part of this section is borrowed from [8] 4 WEB SERVER WEB SERVER WEB SERVER IV I III II OCP ....
Jaffar, J., S. Michaylov, P. Stuckey and R. Yap. "The CLP(R) Language and System," ACM Transactions on Programming Languages and Systems, 14(3), 1992.
....and circulation constraints) ii) to express the flow of material (i.e. constraints on the flow and on the products that can be produced by a unit) and (iii) to express the production quota. In order to solve the resulting constraint net, the prototype uses two constraint solvers, CLP(R) [12] and Oz [13] which are both integrated into the reasoning process of the coordinator. Details on the constraint processing and the optimization of the solution are treated in detail in [8] published at The 2nd Conf. on Practical Applications of Intelligent Agents and Multi Agent Technology ....
S. Michaylov, P. Stuckey, J. Jaffar, R.H.C. Yap: "The CLP(R) Language and System". In: ACM Transactions on Programming Languages and Systems, Vol. 14, No. 3, 1992, pp. 339 -- 395.
.... scheme satisfiability of constraints guides the computation and output is identified with a set of constraints (that still have to be solved or normalized) The CLP(X) approach to computing has been realized in a number of constraint logic programming languages, notably in the CLP(R) system of Jaffar, Michayov, Stuckey Yap (1992) that is an instance of the CLP(X) scheme with a two sorted structure that consists of reals and terms. In this system formula (1.1) of Subsection 1.3 can be directly run as a query. Once negation is added to the CLP(X) scheme (it is in fact present in CLP(R) the extension of the CLP(X) syntax ....
Jaffar, J., Michayov, S., Stuckey, P. & Yap, R. (1992), `The CLP(R) language and system', ACM Transactions on Programming Languages and Systems 14(3), 339--395.
....of the LTCs in a given design before the synthesis is started. To verify the feasibility of the LTCs the design has to be synthesized first. The next section will focus on the influence of the LTCs on the synthesis process. The consistency, of a given set of LTCs, is checked by using CLP(R) [6], which is an instance of the Constraint Logic Programming scheme [5] A CLP(R) program is a collection of rules. A rule may contain any number of arithmetic constraints (equations and inequalities) These constraints are added one at a time to an initially empty set of constraints. For each ....
J. Jaffar, S. Michaylov, P. Stuckey, R. Yap, "The CLP(R) Language and System," ACM Transactions on Programming Languages and Systems, vol. 14, no. 3, July 1992.
....Path enumeration is accomplished with a recursive path traversal routine. As each path is enumerated using the the path enumeration routine it is passed on to the constraint generation routine which translates the statements associated with each path into constraints in the CLP(R) language [3]. Information about the constraint variables such as names of the variables, their types write time flags etc are tabulated. As a control path is traversed, the statements and expressions in the corresponding data control flow graph are translated into CLP(R) representing constraints in that path, ....
J. Jaffer, S. Michaylov, P.J. Stuckey and R.H.S. Yap. "The CLP(R) Language and System". IBM Research Report, RC 16292(#72336), November 1990.
....programs comprise (i) programmer defined predicates which are evaluated using SLDresolution, and (ii) constraints (atoms where the principal functor has a fixed interpretation) which are decided by some builtin decision procedures. Consider the following program for performing complex arithmetic [15]. zmul(c(R1,I1) c(R2,I2) c(R3,I3) R3 = R1 R2 I1 I2, I3 = R1 I2 R2 I1. The goal zmul(c(1,1) c(2,2) c(X,Y) produces the answer X = 0, Y = 4. With a certain combination of variables instantiated, e.g. R1 and I1, the two arithmetic equalities are linear whereas with certain ....
.... equation between two non arithmetic variables, ffl an equation between a non arithmetic variable and an arithmetic variable, ffl an equation involving an uninterpreted functor, ffl an equation or inequality between two numbers, and ffl an equation between a non arithmetic variable and a number [15]. 13 4.2 The Cooperating Decision Procedures of CLP(R) We now analyze the decision procedures of CLP(R) to see how they achieve consensus. In terms of our framework we view the Herbrand decision procedure has having two different local stores, whose constraints involve disjoint sets of ....
J. Jaffar, S. Michaylov, P. Stuckey and R. Yap, "The CLP(R) Language and System", IBM Research Report RC 16292, November, 1990.
....any simplify is appropriate. On the other hand, if we are using the analysis for the purposes of optimizing the execution of a program on a particular CLP system, then it is important to choose simplify to be compatible with the CLP system at hand. For example, in the context of the CLP(R) system [8], it would be appropriate for simplify to solve tree equations, linear equations and linear inequalities, but not arbitrary non linear constraints. In general, we want simplify to be weaker than the solver of the CLP system. We next discuss the select operation. It is a parameter to our engine, ....
J. Jaffar, S. Michaylov, P. Stuckey and R. Yap, "The CLP(R) Language and System", ACM TOPLAS, 14(3), pp 339--395, 1992.
....synthesis of a design that contains LTC. This section, however, will focus on the consistency of the LTCs in a design specification. The consistency checking can be formulated as finding a solution to a set of equations and inequalities. This can be done using an existing tool such as CLP(R) Jaf 92] which is an instance of the Constraint Logic Programming scheme [Jaf 87] A CLP(R) program is a collection of rules. A rule may contain any number of arithmetic constraints (equations and inequalities) These constraints are added one at a time to an initially empty set of constraints. For each ....
J. Jaffar, S. Michaylov, P. Stuckey, R. Yap, "The CLP(R) Language and System," ACM Transactions on Programming Languages and Systems, vol. 14, no. 3, July 1992.
.... Mohamed 90] ThingLab II [Freeman Benson, Maloney, and Borning 90] Kaleidoscope [Freeman Benson 90, Lopez, Freeman Benson Borning 93] which extends the ThingLab II mechanisms by adding linguistic constructs for abstracting low level constraints into compound constraint objects) and CLP(R) Jaffar et al. 92] Using these systems, one organizes a program as a set of variables and a set of constraints over those values that are to be solved, or maintained as the variable values are changed. A key technology behind these systems is a global representation of the constraints and variables in a system. ....
....in some constraint systems also spare designers from having to translate specifications into error prone imperative code. In exchange for these advantages, constraint programming systems often restrict the set of problems that can be handled. Some system only solve systems of linear inequations [Jaffar et al. 92] Others loosen the semantic restrictions while retaining automation, but at the cost of having to give up declarative notations. ThingLab II [FreemanBenson, Maloney, and Borning 90] strikes an interesting compromise in this dimension. It promotes design in terms of logical constraints and ....
Jaffar, J., Michaylov, S., Stuckey, P., Yap, R. "The CLP(R) Language and System," ACM Transactions on Programming Languages and Systems 14,3, July, 1992, pp. 339--395.
....constraints to expand problem domains by replacing the traditional unification mechanism with more general constraint satisfaction techniques. Such an extension is called constraint logic programming [17] Representative of constraint logic programming languages are Prolog III [18] and CLP(R) [48]. Graphical user interfaces (GUIs) utilize constraints to manage internal data and visual objects [68] This approach can be back to the Sketchpad system [79] but the current stream seems to have its source at an object oriented system called ThingLab [3, 6] Another research area is, for ....
Jaffar, J., S. Michaylov, P. J. Stuckey, and R. H. C. Yap, "The CLP(R) Language and System," ACM Transactions on Programming Languages and Systems, vol. 14, no. 3, 1992, pp. 339--395. BIBLIOGRAPHY 110
.... the notion of a variable in the mathematical sense (usually called in this context a logical variable) This partly explains why the integration of constraints into logic programming such as in the case of CHIP (Van Hentenryck, Simonis Dincbas 1992) Prolog III (Colmerauer 1990) and CLP(R) see (Jaffar, Michaylov, Stuckey Yap 1992)) to name just three examples, is very smooth and elegant. Other difficulties have to do with the presence of local and global declarations and various parameter passing mechanisms, issues that are absent in the logic programming framework. One of the basic tenets of programming with constraints ....
Jaffar, J., Michaylov, S., Stuckey, P. J. & Yap, R. H. C. (1992), `The CLP(R) language and system', ACM Transactions on Programming Languages and Systems (TOPLAS) 14(3), 339-- 395.
....[49, 25, 2] 8. 2 Domain Specific Constraint Solvers Multi way, local propagation solvers may be used either individually or in concert with domainspecific solvers, such as linear constraint solvers [17] non linear constraint solvers [10, 50, 51, 16, 8] and linear equality and inequality solvers [29, 32, 31, 30, 19, 28]. Domain specific algorithms are capable of satisfying more expressive constraints within their domain of knowledge, but they have the drawbacks cited in Section 2 including less coverage, less efficiency, and less usability relative to local propagation techniques. Some systems, such as ThingLab ....
....Since local propagation techniques are not designed to handle uncertainty about the value of a variable, they are not widely used in refinement based systems. The refinement approach is frequently used in languages that integrate constraints with logic programming, such as the CLP languages [29, 11, 6], the concurrent constraint languages [43] and Prolog III [9] 9 Conclusions This paper has described the QuickPlan algorithm, an efficient, polynomial time algorithm for finding an an acyclic solution to a cyclic, multi output constraint hierarchy. The worst case running time 2 of QuickPlan ....
J. Jaffar, S. Michaylov, P.J. Stuckey, and R.H.C. Yap. "The CLP(R) Language and System". ACM TOPLAS 14, 3 (July 1992), 339-395.
....as well as goal driven simulation. Constraints provide an elegant means of stating relationship among objects that should be maintained by the underlying system. The Constraint Logic Programming scheme is an extension to logic programming. Our transient analysis program is implemented in CLP(R) [JAFF92] using the notion of parent and leaf constraints [HEIN92] This gives us the advantage of being able to use the same program not only being to make an analysis of a given circuit, but also to generate a circuit from a general schema and a description of its required behaviour. The program ....
Jaffar J., Michaylov S., Stuckey P., and Yap R., `The CLP(R) Language and System' in ACM Transactions on Programming Languages and Systems, Vol 14 No 3, July 1992, pp. 339-395.
....constraint solving. Constraint solvers can check consistency and propagate value restrictions of variables very efficiently because they provide efficient data structures and algorithms for specific domains, e.g. for finite domains [11] for sets [20] and for linear arithmetic in R [13]. At the planning level, a domain specific constraint solver that is integrated into a proof planning framework serves two main purposes: Firstly, it is used during the process of proof planning to determine whether certain methods, such as Solve b, can be legally applied. Secondly, after the ....
J. Jaffar, S. Michaylow, P. Stuckey, and R. Yap, `The CLP(R) language and system', ACM Transactions on Programming Languages, 14(3), 339--395, (1992).
....for solving alignment problems where there is a need to deal with parametric alignment. Parametric queries may be useful in investigating the sensitivity of alignments or where it is not clear what are the precise values for the weight matrices. We will choose to use the CLP language, CLP(R) [7], which provides reasoning with arithmetic constraints. The rationale here is that the natural kinds of constraints which involve alignment are mostly arithmetic. The constraint solving and modelling capabilities of CLP(R) proved to be useful in both formulating and solving some restriction ....
J. Jaffar, S. Michaylov, P.J. Stuckey and R.H.C. Yap, "The CLP(R) Language and System", ACM Transactions on Programming Languages and Systems, 14(3), 339--395, 1992.
....support) or for user agents that define the interaction of a user (similar to an avatar) In general, the external agents can be implemented in any programming language. The current prototype uses W a f e [10] for the implementation of the user agents and time triggering tasks and CLP(R) [9] for reasoning and decision support. Dm and the external agents are implemented as separate processes which communicate via sockets and TCP IP. In general these processes can execute on different hardware and OS platforms. It is important to note that while the implementation of the external ....
....a supersede, for example, that is issued by a doctor is immediately visible on nurses worklists. The directives manager also manages information on the assignment of nurses and doctors to patients, and the default assignment policy of nurse units. The directives manager is implemented in CLP(R) [9]. CLP(R) is a rule based, declarative language with inbuilt facilities for reasoning about arithmetic constraints. One of its strengths is the ability to rapidly model and to efficiently reason about complex systems. 4.3 User Interface Agents All user interfaces are built in W a f e [10] W a ....
J. Jaffar, S. Michaylov, P.J. Stuckey, R.H.C. Yap: "The CLP(R) Language and System", ACM Transactions on Programming Languages and Systems 14(3), 1992, pages 339-- 395.
....has a four layered architecture, shown in Figure 1. I. Constraint store. The core of the structure is the constraint store, a shared memory of program agents, in the form of CLP programs. The relationship between the agents is represented by the constraints in the program. Here we use CLP(R) [4] as our solver and CLP system and thus reuse also the CLP(R) syntax. II. Registry. As the CLP(R) system is sequential (as with most CLP systems) the second registry layer, remedies this limitation by providing concurrency control. The registry is responsible for the following tasks: 1) unpacks ....
Jaffar, J., S. Michaylov, P.J. Stuckey, and R.H.C. Yap, "The CLP(R) Language and System", ACM Transactions on Programming Languages and Systems, 14(3), 1992, pp. 339--395.
....of uninterpreted functors over real arithmetic terms. A working knowledge of PROLOG programming is assumed in this document; the book by Sterling and Shapiro [13] can serve as a suitable introductory text. Further technical information on CLP(R) is available on language design and implementation [6, 7], meta programming [3] and delay mechanisms [8] Additionally, much has been written about applications in electrical engineering [2] differential equations [1] options trading [10] music theory [15] molecular biology [16] etc. This document is both an introductory tutorial and reference ....
.... 9, S = 1, M = 1, C1 = 0, C2 = 0, C3 = 0, C4 = 0, C1 = 1, C2 = 1, C3 = 1, C4 = 1, M = C1, C2 S M = O C1 10, C3 E O = N 10 C2, C4 N R = E 10 C3, D E = Y 10 C4, bit(C1) bit(C2) bit(C3) bit(C4) bit(0) bit(1) gendiffdigits(L) gendiffdigits(L, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) gendiffdigits( gendiffdigits( H T] L) select(H, L, L2) gendiffdigits(T, L2) select(H, H T] T) select(H, H2 T] H2 T2] select(H, T, T2) solve(S, E, N, D, M, O, R, Y) Critical Path Analysis This program uses local propagation to compute start, ....
J. Jaffar, S. Michaylov, P.J. Stuckey and R.H.C. Yap", "The CLP(R) Language and System", ACM Transactions on Programming Languages and Systems, to appear [currently available as, IBM Research Report, RC 16292 (#72336), November 1990].
....only communication between a worker agent and the outside world would be the (far less frequent) access of marks. Database Programming Consider a constraint store representing a constraint database. We assume that the specific kinds of terms here are as in the real arithmetic based CLP(R)system [9]. In this example, borrowed from [1] the database P contains current information about stocks and their prices, and further, there is a 12 single predicate time(n) where n, a positive integer, denotes the current hour. We leave unspecified how the stock prices and the time predicate are updated. ....
J. Jaffar, S. Michaylov, P. Stuckey and R. Yap, "The CLP(R) Language and System", ACM Transactions on Programming Languages and Systems, 14(3), July 1992.
....any simplify is appropriate. On the other hand, if we are using the analysis for the purposes of optimizing the execution of a program on a particular CLP system, then it is important to choose simplify to be compatible with the CLP system at hand. For example, in the context of the CLP(R) system [8], it would be appropriate for simplify to solve tree equations, linear equations and linear inequalities, but not arbitrary non linear constraints. In general, we want simplify to be weaker than the solver of the CLP system. We next discuss the select operation. It is a parameter to our engine, ....
J. Jaffar, S. Michaylov, P. Stuckey and R. Yap, "The CLP(R) Language and System", ACM TOPLAS, 14(3), pp 339--395, 1992.
....transistor amplifier circuits. Section 5 describes software for the simulation of digital filtering circuits. Finally, in section 6 we discuss the analysis of electro magnetic fields. 2 The CLP(R) Language and System We give a very brief description of the CLP(R) language. For more details, see [6, 7, 9]. Arithmetic terms are constructed from real constants, variables, Gamma, sin, cos, tan, pow where all of these symbols have the usual meanings and parentheses may be used in the usual way to resolve ambiguity. Constraints are built up from arithmetic terms using the binary relation ....
....then determined. If (a c) is solvable, a new (derived) goal is constructed, consisting of this new collection of (solvable) constraints and the atoms of the previous goal, with the exception that the selected goal atom is replaced by the atoms in the body of the input rule. We refer the reader to [6, 7] for more details. Consider the complex multiplication program given previously. Any of the following goals will return a unique answer. The first goal asks for the product of two complex numbers, while the other two ask for the result when one complex number is divided by another. cmult(c(1, ....
[Article contains additional citation context not shown here]
Jaffar, J., Michaylov, S., Stuckey, P. J. and Yap, R. "The CLP(R) Language and System", in preparation, 1989.
....be handled, though not necessarily in a complete way. Our algorithm naturally extends to (non unit) TVPI constraints, and it can be augmented with a bounds propagation technique for constraints more general than TVPI. An implementation of the solver is underway as part of the development of CLP(R) [8]. 3 An inequality that is not present in C i is represented by taking the appropriate constant (d i ; d x i ; d y i ) to be 1. Acknowledgement We thank Warwick Harvey for correcting an error in our formulation of Shostak s algorithm. ....
J. Jaffar, S. Michaylov, P. Stuckey and R. Yap, "The CLP(R) Language and System", ACM Transactions on Programming Languages, 14(3), 1992, 339--395.
No context found.
J. Jaffar, S. Michaylov, P.J. Stuckey, and R.H.C. Yap. "The CLP(R) Language and System". ACM TOPLAS 14, 3 (July 1992), 339-395.
No context found.
Jaffar J., Michaylov S., Stuckey P., and Yap R., `The CLP(R) Language and System' in ACM Transactions on Programming Languages and Systems, Vol 14 No 3, July 1992, pp. 339-395.
First 50 documents
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC