## CLP(R) and Some Electrical Engineering Problems (1991)

Venue: | Journal of Automated Reasoning |

Citations: | 35 - 5 self |

### BibTeX

@ARTICLE{Heintze91clp(r)and,

author = {Nevin Heintze and Spiro Michaylov and Peter Stuckey},

title = {CLP(R) and Some Electrical Engineering Problems},

journal = {Journal of Automated Reasoning},

year = {1991},

volume = {9},

pages = {675--703}

}

### OpenURL

### Abstract

The Constraint Logic Programming Scheme defines a class of languages designed for programming with constraints using a logic programming approach. These languages are soundly based on a unified framework of formal semantics. In particular, as an instance of this scheme with real arithmetic constraints, the CLP(R) language facilitates and encourages a concise and declarative style of programming for problems involving a mix of numeric and non-numeric computation. In this paper we illustrate the practical applicability of CLP(R) with examples of programs to solve electrical engineering problems. This field is particularly rich in problems that are complex and largely numeric, enabling us to demonstrate a number of the unique features of CLP(R). A detailed look at some of the more important programming techniques highlights the ability of CLP(R) to support well-known, powerful techniques from constraint programming. Our thesis is that CLP(R) is an embodiment of these techniques in a langu...

### Citations

814 | The semantics of constraint logic programs
- Jaffar, Maher, et al.
- 1998
(Show Context)
Citation Context ...is an embodiment of these techniques in a language that is more general, elegant and versatile than the earlier languages, and yet is practical. 1 Introduction The Constraint Logic Programming Scheme =-=[8]-=- defines a family of declarative and formallybased languages for reasoning about constraints. An instance of this scheme, the CLP(R) language [6, 9], deals particularly with arithmetic constraints. In... |

211 |
The Programming Languages Aspects of ThingLab, a Constraint-Oriented Simulation Laboratory
- Borning
- 1981
(Show Context)
Citation Context ...mponent instance, to construct a copy (or instance) of the "template", possibly with extra values filled in. This leads to a notion of collection of (instances of) constraints at runtime. In=-= THINGLAB [1]-=- constraints are static. Steele's language [16] is slightly more general, as it allows programs to contain macro constraint definitions. However, it disallows recursion, so that the number of instance... |

80 |
Methodology and Implementation of a CLP System
- Jaffar, Michaylov
- 1987
(Show Context)
Citation Context ...1 Introduction The Constraint Logic Programming Scheme [8] defines a family of declarative and formallybased languages for reasoning about constraints. An instance of this scheme, the CLP(R) language =-=[6, 9]-=-, deals particularly with arithmetic constraints. In this paper we demonstrate the features of CLP(R) with some problems from electrical engineering. This important problem domain, requiring a variety... |

41 |
Forward reasoning and dependency directed backtracking in a system for computer-aided circuit analysis
- Stallman, Sussman
- 1977
(Show Context)
Citation Context ...oblems from electrical engineering. This important problem domain, requiring a variety of different solving techniques, provided the driving examples for the pioneering work on constraint programming =-=[3, 15, 18]-=-. The complexity of the systems arising in electrical engineering problems, together with the large number of arithmetic constraints typically involved, made this problem domain an obvious candidate f... |

28 |
Opening the Prolog III Universe
- Colmerauer
- 1987
(Show Context)
Citation Context ...raint logic programming scheme, in contrast, defines a clean interaction between the underlying logic programming framework and constraint facilities. Other languages in this group include Prolog III =-=[2]-=- and CHIP [4]. Both languages include equations and inequalities over rational numbers (in addition to other domains). However in these languages the programmer is responsible for ensuring that nonlin... |

23 |
Propagation of Constraints Applied to Circuit Synthesis
- Kleer, Sussman
- 1978
(Show Context)
Citation Context ...oblems from electrical engineering. This important problem domain, requiring a variety of different solving techniques, provided the driving examples for the pioneering work on constraint programming =-=[3, 15, 18]-=-. The complexity of the systems arising in electrical engineering problems, together with the large number of arithmetic constraints typically involved, made this problem domain an obvious candidate f... |

23 |
Heuristic Techniques in Computer-Aided Circuit Analysis
- Sussman, Stallman
- 1975
(Show Context)
Citation Context ...oblems from electrical engineering. This important problem domain, requiring a variety of different solving techniques, provided the driving examples for the pioneering work on constraint programming =-=[3, 15, 18]-=-. The complexity of the systems arising in electrical engineering problems, together with the large number of arithmetic constraints typically involved, made this problem domain an obvious candidate f... |

18 |
The MACSYMA Reference Manual
- Group
- 1974
(Show Context)
Citation Context ... assistance [20]. To solve general arithmetic constraints, which may be nonlinear, still more powerful techniques are required, such as those of symbolic algebra packages like REDUCE [14] and MACSYMA =-=[11]-=-. Though the power and generality of such constraint solvers is enviable, they are usually too slow to be incorporated in a general purpose programming 5 language. For example a critical issue in the ... |

12 |
Reduce Software for Algebraic Computation
- Rayna
- 1987
(Show Context)
Citation Context ...solving with user assistance [20]. To solve general arithmetic constraints, which may be nonlinear, still more powerful techniques are required, such as those of symbolic algebra packages like REDUCE =-=[14]-=- and MACSYMA [11]. Though the power and generality of such constraint solvers is enviable, they are usually too slow to be incorporated in a general purpose programming 5 language. For example a criti... |

6 |
The Implementation and Definition of a Computer Programming Language Based on Constraints
- Steele
- 1980
(Show Context)
Citation Context ...(numerical) constraints. One 4 I I I T 1 2 V 1 2 R R Figure 1: Simple Resistive Circuit approach is local propagation. This is the sole method for solving arithmetic constraints in the work of Steele =-=[16, 17]-=-, in PROLOG systems including MU-Prolog [12] and NU-Prolog [19], and elsewhere. A system of constraints is solved by local propagation if all the variables in the system become determined after a fini... |

4 |
Constraint and declarative languages for engineering applications: the tk!solver contribution
- Konopasek, Jarayaman
- 1985
(Show Context)
Citation Context ...onstraint facilities. In some constraint languages this interaction is clumsy, requiring the user to give a great deal of information about how constraints are to be collected and solved (for example =-=[5, 10, 20]-=-). The constraint logic programming scheme, in contrast, defines a clean interaction between the underlying logic programming framework and constraint facilities. Other languages in this group include... |

2 |
The Mu-Prolog 3.2db reference manual
- Naish
- 1985
(Show Context)
Citation Context ... R R Figure 1: Simple Resistive Circuit approach is local propagation. This is the sole method for solving arithmetic constraints in the work of Steele [16, 17], in PROLOG systems including MU-Prolog =-=[12]-=- and NU-Prolog [19], and elsewhere. A system of constraints is solved by local propagation if all the variables in the system become determined after a finite number of local propagation steps. A loca... |

1 |
Simple Symbolic and Numeric
- Hansen, Hansen
- 1985
(Show Context)
Citation Context ...onstraint facilities. In some constraint languages this interaction is clumsy, requiring the user to give a great deal of information about how constraints are to be collected and solved (for example =-=[5, 10, 20]-=-). The constraint logic programming scheme, in contrast, defines a clean interaction between the underlying logic programming framework and constraint facilities. Other languages in this group include... |

1 |
The CLP(R) Programmer's Manual: Version 2.0
- Heintze, Jaffar, et al.
- 1987
(Show Context)
Citation Context ...1 Introduction The Constraint Logic Programming Scheme [8] defines a family of declarative and formallybased languages for reasoning about constraints. An instance of this scheme, the CLP(R) language =-=[6, 9]-=-, deals particularly with arithmetic constraints. In this paper we demonstrate the features of CLP(R) with some problems from electrical engineering. This important problem domain, requiring a variety... |

1 |
The CLP(R) Language and System", in preparation
- Jaffar, Michaylov, et al.
- 1989
(Show Context)
Citation Context ...ing 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... |

1 |
Constraints", AI Memo 502
- Sussman
- 1978
(Show Context)
Citation Context ...ance) of the "template", possibly with extra values filled in. This leads to a notion of collection of (instances of) constraints at runtime. In THINGLAB [1] constraints are static. Steele's=-= language [16]-=- is slightly more general, as it allows programs to contain macro constraint definitions. However, it disallows recursion, so that the number of instances of each constraint, and the relationship betw... |

1 |
NU-Prolog Reference Manual", Version 1.3
- Thom, Zobel
(Show Context)
Citation Context ...le Resistive Circuit approach is local propagation. This is the sole method for solving arithmetic constraints in the work of Steele [16, 17], in PROLOG systems including MU-Prolog [12] and NU-Prolog =-=[19]-=-, and elsewhere. A system of constraints is solved by local propagation if all the variables in the system become determined after a finite number of local propagation steps. A local propagation step ... |

1 |
A Constraint Language and its Interpreter
- Zima
- 1985
(Show Context)
Citation Context ...ndencies requires the use of more powerful techniques than local propagation. Among the approaches taken in the literature are relaxation methods [1], and linear equation solving with user assistance =-=[20]-=-. To solve general arithmetic constraints, which may be nonlinear, still more powerful techniques are required, such as those of symbolic algebra packages like REDUCE [14] and MACSYMA [11]. Though the... |