The task of finding all the minimal inconsistent subsets plays a vital role in many theoretical works especially in large knowledge bases and it has been proved to be a NP-complete problem. In this work, at first we propose a max-term counting based knowledge inconsistency checking strategy. And, then, we put forward an algorithm for finding all minimal inconsistent subsets, in which we establish a Boolean lattice to organize the subsets of the given knowledge base and use leaf pruning to optimize the algorithm efficiency. Comparative experiments and analysis also show the algorithm’s improvement over past approaches. Finally, we give an application for inconsistency measure calculation of fuzzy knowledge based systems.

A large knowledge system operating for a long time almost inevitably becomes polluted by wrong data that make the system inconsistent. Despite this fact, a sizeable part of the system remains unpolluted and retains useful information. It is widely adopted that a maximal consistent subset of a system contains a significant portion of unpolluted data [

In practice, there are two types of methods: one method is based on minimal inconsistent subsets, where every strict subset is consistent and the other is directly based on maximal consistent subsets. Actually, the relationship between minimal inconsistent subsets and maximal consistent subsets was discovered separately in [

As finding minimal inconsistent subsets or maximal consistent subsets is NP-complete, the most efficient algorithm is not known yet, and there are a number of heuristic optimizations that can be used to substantially reduce the size of the search space. In practice, heuristic information [

In this paper, we first propose an efficient strategy to check the consistency of a given knowledge base. And, then, we put forward an algorithm to find all of the minimal inconsistent subsets of the given knowledge base. Thereafter, to illustrate the algorithm’s improvement, we conduct thorough comparative experiments and analysis with respect to one of the latest proposed algorithm MARCO [

Let

As every formula can be converted into an equivalent conjunction normal form (CNF) formula, knowledge base can be normalized in such a way that every formula contained in it is a clause. For a given normalized knowledge base, if there are no redundant clauses, we say it is an optimized knowledge base.

By the syntactic approach in proof theory, if both

In the following discussion, let the Greek lower case letters

For a Boolean function of

Let

For example, let

Let

For example, let

It is easy to see that carrying extension of

Let

If there exists a variable

Otherwise,

(i) As there exists a variable

(ii) If there does not exist a variable

Therefore, combining the above two situations, the theorem is proved.

Let

If there exist a variable

Otherwise,

Let

According to inclusion-exclusion principle and in light of Proposition

Let

In this section, at first we propose an algorithm for finding all nominal inconsistent subsets via Boolean lattice. And, then, we give an illustrative example and a thorough comparative study with algorithm MARCO by using the number of visited subsets as the benchmark. Besides this, we also give a discussion on relative algorithms DAA and PDDS.

An algorithm to find the minimal inconsistent subsets of a given knowledge system must check each of its subsets for inconsistency. One way to proceed is to construct a Boolean lattice of subsets of the given knowledge system, which is initially used by Bird and Hinze in the process of finding the maximal consistent subsets [

A lattice

each

Figure

Three-variable Boolean lattice.

In Algorithm

Input: a knowledge base

Output: all the minimal inconsistent subsets

Begin

(1) normalize the knowledge base

and denoted it as

initialize

(2) build a

(if a node denotes a

(3) set up an empty list

fetch the head

if

Begin

put

mark all the ancestors of

End

else

Begin

insert all of the un-marked upper neighbors of

mark all the descendants of

End

(4) return

End.

According to Theorem

In the minimal inconsistent subsets finding algorithm proposed in [

If the maximal cost for checking inconsistency of is

In the experiment, we use generator GENBAL [

Number of subsets visited as a function of

Number of subsets visited as a function of

From Figures

Apart from our proposed method, there are many other solvers for computing minimal inconsistent subsets. One of the latest published algorithm is MARCO [

Considering a set of formulas,

At first we also establish a Boolean lattice, which is shown in Figure

Then we establish a list

Four-variable Boolean lattice.

Fetch the head

Fetch the head

Fetch the head

Fetch the head

Fetch the head

Fetch the head

At this point,

It is apparent that in order to get all the minimal inconsistent subsets we have to judge the consistency of 6 sets, which are

Fundamentally, the MARCO algorithm operates repeatedly:

Selecting an unexplored point in the power set lattice, a subset of

Checking the satisfiability of the seed.

Growing or shrinking it to an MSS or an MUS as appropriate.

Marking a corresponding region of the lattice as explored.

When we use algorithm MARCO, the consistency of 10 sets needs to be considered one by one, which are

The difference between our algorithm and MARCO is that our algorithm traverses the Boolean lattice incremental according to the cardinalities of the sets while MARCO traverses the Boolean lattice randomly, as the function

In the comparative study, we also use generator GENBAL [

The graphs in Figures

Number of subsets visited as a function of

Number of subsets visited as a function of

Number of subsets visited as a function of

DAA is another algorithm that exploits the hitting set duality between minimal correction sets (MCSes) and minimal unsatisfiable subsets [

The DAA and PDDS algorithms have the benefit that they are decoupled from the choice of hitting set algorithm. It is pointed out that the choice of the incremental algorithm presented by Fredman and Khachiyan [

In this section, we show an application of Algorithm

Fuzzy knowledge based systems are a typical rule-based inference system for providing expertise over a domain, which is capable of drawing conclusions from given uncertain evidence [

Let

Let

Let

Let

Let

Let

As

Let

After carrying extensions and possibility based deduction of

According to Theorem

The purpose of this paper is to find all the minimal inconsistent subsets of a given knowledge system. Initially we propose a max-term counting based knowledge inconsistency checking strategy. And, then, we put forward an algorithm for finding all minimal inconsistent subsets, in which we establish a Boolean lattice to organize the subsets of the given knowledge base and use leaf pruning to optimize the algorithm efficiency. Finally, we give a method for inconsistency measure calculation of fuzzy knowledge based system.

As in a fuzzy knowledge based system, there may be several statements in contradiction to each other; how to measure the significance of the inconsistency is a valuable problem for further study.

The author declares that there is no conflict of interests regarding the publication of this paper.

The work presented in this paper is supported by Doctorial Foundation of Henan Polytechnic University (B2011-102). The author also gratefully acknowledges the helpful comments and suggestions of the reviewers, which have greatly improved the presentation.