Techniques are presented for identifying blockable subsets. Blockable
subsets can increase the efficiency by which solutions to a constraint
set representation (CSR) can be found. Nodes of a blockable subset can be
marked as "blocked" and learning or implication procedures, used as part
of a CSR solving process, can be designed to skip nodes marked as
blocked. The identification of a particular blockable subset is typically
associated with certain conditions being true. If and when the conditions
no longer hold, the nodes of the blockable subset need to be unblocked.
One type of blockable subset can be identified during the operation of an
implication engine (IE) by a technique called justified node blocking
(JNB). Another type of blockable subset can be identified by a technique
called pivot node learning (PNL). PNL can be applied in-between
application of an IE and application of case-based learning.