Constraint Encyclopedia Article

Constraint

The following sections of this BookRags Literature Study Guide is offprint from Gale's For Students Series: Presenting Analysis, Context, and Criticism on Commonly Studied Works: Introduction, Author Biography, Plot Summary, Characters, Themes, Style, Historical Context, Critical Overview, Criticism and Critical Essays, Media Adaptations, Topics for Further Study, Compare & Contrast, What Do I Read Next?, For Further Study, and Sources.

(c)1998-2002; (c)2002 by Gale. Gale is an imprint of The Gale Group, Inc., a division of Thomson Learning, Inc. Gale and Design and Thomson Learning are trademarks used herein under license.

The following sections, if they exist, are offprint from Beacham's Encyclopedia of Popular Fiction: "Social Concerns", "Thematic Overview", "Techniques", "Literary Precedents", "Key Questions", "Related Titles", "Adaptations", "Related Web Sites". (c)1994-2005, by Walton Beacham.

The following sections, if they exist, are offprint from Beacham's Guide to Literature for Young Adults: "About the Author", "Overview", "Setting", "Literary Qualities", "Social Sensitivity", "Topics for Discussion", "Ideas for Reports and Papers". (c)1994-2005, by Walton Beacham.

All other sections in this Literature Study Guide are owned and copyrighted by BookRags, Inc.

Constraint

A constraint is a restriction (or limitation) on a computer solution that is acceptable in order to resolve a problem. Specifically, a constraint can be applied (sometimes individually or as a group) to: (1) a restriction on a state of a model, (2) a restriction on a set of possible values that a variable may take, or (3) a logical (or Boolean) expression that must be satisfied. In computer programming a constraint generally involves a Boolean expression (a symbolic expression that results in a condition that is either TRUE or FALSE, but not both) that may also involve variables within a particular model. For example, the expression p < q is a Boolean expression, which states that the variable p is less than the variable q; that is, the "constraint" is stated that the variable p must always be less than the variable q. More specifically, 2 < 5 (2 is less than 5) is a Boolean expression because the result is TRUE. On the other hand, 6 < 5 (6 is less than 5) is also a Boolean expression because the result, in this case, is FALSE. The process of assigning values within a model to all variables so that all applicable constraints are true is called "constraint satisfaction." For example, in order to gain constraint satisfaction (the result is always TRUE) the process involving the expression p < 5 would assign all values less than 5; that is p = {...,-3, -2, -1, 0, 1, 2, 4}.