Constraint Programming Paradigm: Difference between revisions

From GM-RKB
Jump to navigation Jump to search
m (Text replacement - "\<P\>([\s]{1,7})([^\s])" to "<P> $2")
m (Text replacement - ". "" to ". “")
 
Line 17: Line 17:
=== 2014 ===
=== 2014 ===
* (Wikipedia, 2014) ⇒ http://en.wikipedia.org/wiki/constraint_programming Retrieved:2014-8-9.
* (Wikipedia, 2014) ⇒ http://en.wikipedia.org/wiki/constraint_programming Retrieved:2014-8-9.
** In [[computer science]], <B>constraint programming</B> is a [[programming paradigm]] wherein [[Finitary relation|relation]]s between [[variable (mathematics)|variable]]s are stated in the form of [[constraint (mathematics)|constraint]]s. Constraints differ from the common [[Language primitive|primitives]] of [[imperative programming]] languages in that they do not specify a step or sequence of steps to execute, but rather the properties of a solution to be found. This makes constraint programming a form of [[declarative programming]]. The constraints used in constraint programming are of various kinds: those used in [[constraint satisfaction problem]]s (e.g. "A or B is true"), those solved by the [[simplex algorithm]] (e.g. "&le; 5"), and others. Constraints are usually embedded within a programming language or provided via separate [[software library|software libraries]].        <P>        Constraint programming can be expressed in the form of [[constraint logic programming]], which embeds constraints into a [[logic program]]. This variant of logic programming is due to Jaffar and Lassez, who extended in 1987 a specific class of constraints that were introduced in [[Prolog II]]. The first implementations of constraint logic programming were [[Prolog III]], [[CLP(R)]], and [[CHIP (programming language)|CHIP]].        <P>        Instead of logic programming, constraints can be mixed with [[functional programming]], [[term rewriting]], and [[imperative language]]s.        <P>        Programming languages with built-in support for constraints include [[Oz programming language|Oz]] (functional programming) and [[Kaleidoscope programming language|Kaleidoscope]] (imperative programming). Mostly, constraints are implemented in imperative languages via ''constraint solving toolkits'', which are separate libraries for an existing imperative language.
** In [[computer science]], <B>constraint programming</B> is a [[programming paradigm]] wherein [[Finitary relation|relation]]s between [[variable (mathematics)|variable]]s are stated in the form of [[constraint (mathematics)|constraint]]s. Constraints differ from the common [[Language primitive|primitives]] of [[imperative programming]] languages in that they do not specify a step or sequence of steps to execute, but rather the properties of a solution to be found. This makes constraint programming a form of [[declarative programming]]. The constraints used in constraint programming are of various kinds: those used in [[constraint satisfaction problem]]s (e.g. “A or B is true"), those solved by the [[simplex algorithm]] (e.g. &le; 5"), and others. Constraints are usually embedded within a programming language or provided via separate [[software library|software libraries]].        <P>        Constraint programming can be expressed in the form of [[constraint logic programming]], which embeds constraints into a [[logic program]]. This variant of logic programming is due to Jaffar and Lassez, who extended in 1987 a specific class of constraints that were introduced in [[Prolog II]]. The first implementations of constraint logic programming were [[Prolog III]], [[CLP(R)]], and [[CHIP (programming language)|CHIP]].        <P>        Instead of logic programming, constraints can be mixed with [[functional programming]], [[term rewriting]], and [[imperative language]]s.        <P>        Programming languages with built-in support for constraints include [[Oz programming language|Oz]] (functional programming) and [[Kaleidoscope programming language|Kaleidoscope]] (imperative programming). Mostly, constraints are implemented in imperative languages via ''constraint solving toolkits'', which are separate libraries for an existing imperative language.


----
----

Latest revision as of 04:36, 8 May 2024

A Constraint Programming Paradigm is a declarative programming paradigm where finitary relations between program variables are stated in the form of relation constraints.



References

2014