- Trending Categories
- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies

- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who

# How can we use rule constraints to prune the search space?

Rule constraints can be classified into the following five elements which are as follows −

**Antimonotonic** − The first elements of constraints is antimonotonic. Consider the rule constraint “sum (I.price) ≤ 100”. Consider that it is using the Apriori framework, which at every iteration k analyze itemsets of size k. If the cost summation of the items in an itemset is no less than 100, this itemset can be shorten from the search space, because inserting more items into the set will only create it more costly and therefore will not satisfy the constraint.

Pruning by antimonotonic constraints can be used at every iteration of Apriori-style algorithms to help improve the effectiveness of the complete mining phase while guaranteeing completeness of the data mining service.

The Apriori property, which defines that all non-empty subsets of a frequent itemset should be frequent, is antimonotonic. If a given itemset does not use minimum support, none of its supersets can. This property can be used at each iteration of the Apriori algorithm to decrease the multiple candidate itemsets examined, thus by decreasing the search space for association rules.

**Monotonic** − The second element of constraints is monotonic. If the rule constraint were “sum (I.price) ≥ 100,” the constraint-based processing approach can be different.

If an itemset I satisfies the constraint, i.e., the sum of the prices in the set is no less than 100, addition of more items to I will increase cost and will continually satisfy the constraint.

Thus, more testing of this constraint on itemset I develop into redundant. In other terms, if an itemset use this rule constraint, so do all of its supersets. If a rule constraint execute this property, it is monotonic.

**Succinct constraint** − The third element is succinct constraints. For this element of constraints, it can enumerate some those sets that are guaranteed to use the constraint. If a rule constraint is succinct, it can directly make precisely the sets that satisfy it, even before support counting starts. This prevents the generous overhead of the generate-and-test paradigm.

**Convertible constraints** − The fourth element is convertible constraints. If the items in the itemset are arranged in a specific order, the constraint can become monotonic or Antimonotonic concerning the frequent itemset mining process.

For instance, the constraint “avg(I.price) ≤ 100” is neither antimonotonic nor monotonic. If items in a transaction are inserted to an itemset in price-ascending series, the constraint becomes antimonotonic, because if an itemset I disrupt the constraint (i.e., with an average cost higher than $100), therefore more addition of more costly items into the itemset will not create it use the constraint.

- Related Articles
- Can we use IN() to search between comma separated values within one field?
- How to use UNIQUE constraints in Android sqlite?
- How to use Primary Key Constraints and Foreign Key Constraints to enforce database integrity in Oracle?
- How to use NOT NULL constraints in Android sqlite?
- How can we add FOREIGN KEY constraints to more than one fields of a MySQL table?
- How can I use SPACE() function with MySQL WHERE clause?
- How can I use SPACE() function along with MySQL’s column data?
- How can we use the StringTokenizer class in Java?
- How can we use MySQL SUM() function?
- How to use the new search engine jelly
- How can we use the SciPy library to solve a Linear equation?
- How can we use hub pages to find authoritative pages?
- How can we use prepared statements in MySQL?
- How can we use nested transactions in MySQL?
- How can we use complex numbers in Python?