# Patent

## Title
Augmented knowledge base and reasoning with uncertainties and/or incompleteness

## Abstract

A knowledge-based system under uncertainties and/or incompleteness, referred to as augmented knowledge base (AKB) is provided, including constructing, reasoning, analyzing and applying AKBs by creating objects in the form E→A, where A is a rule in a knowledgebase and E is a set of evidences that supports the rule A. A reasoning scheme under uncertainties and/or incompleteness is provided as augmented reasoning (AR).

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application is based upon and claims priority to prior U.S. Provisional Patent Application No. 61/645,241 filed on May 10, 2012 in the US Patent and Trademark Office, the entire contents of which are incorporated herein by reference.


FIELD
The embodiments of the present invention relate to a computer implemented knowledge-based system and reasoning with uncertainties and/or incompleteness.
BACKGROUND
Reasoning with uncertainties and/or incompleteness refers to the various processes leading from evidences or clues to conclusions or guesses using uncertain, vague, partial, incomplete and/or limited information. Reasoning with uncertainties mostly refers to information which are uncertain, vague and/or inexact; while reasoning with incompleteness refers to information which are incomplete, partial and/or limited. A knowledge-based system under uncertainties and/or incompleteness is a knowledge base where reasoning with uncertainties and/or incompleteness are involved.
Knowledge-based systems involving uncertainties and/or incompleteness have been studied widely in the literature. Many approaches have been introduced to model such knowledge bases, but none are satisfactory in general.
The basic building blocks of knowledge bases are knowledge, which are usually represented as rules, propositions, or other equivalent means.
Moreover, in most traditional knowledge bases with uncertainties and/or incompleteness, each piece of knowledge in the knowledge base is associated with or mapped to a number, variably referred to as belief, certainty factor, likelihood, weight, etc.
To perform reasoning/inferences, either an extension scheme for the mapping mentioned above, or a conditioning/composition rule must be specified.
SUMMARY  
According to embodiments of the invention, a new knowledge-based system under uncertainties and/or incompleteness, referred to as augmented knowledge base (AKB) is provided; and methods for constructing, reasoning, analyzing and applying AKBs are provided. In addition, a new method for reasoning under uncertainties and/or incompleteness is provided. This method will be referred to as augmented reasoning (AR). Advantages and powers of are described herein.
According to an aspect of an embodiment, a method and apparatus are provided for representing a knowledge base by creating objects in the form E→A, where A is a rule in the knowledge base, and E is a set of evidences that supports the rule A; and determining, by deductive reasoning using the knowledge in the knowledge base and/or inducting or extracting new knowledge from the knowledge base; and constructing higher order knowledge bases to insure that the knowledge base is consistent. Such knowledge base will be referred to as augmented knowledge base. For example, a composite set of evidences G is computed, the composite set of evidences G is a combination of sets of evidences E in the knowledge base in support of a target rule L that is implied by a combination of rules in the knowledge base.
These and other embodiments, together with other aspects and advantages which will be subsequently apparent, reside in the details of construction and operation as more fully hereinafter described and claimed, reference being had to the accompanying drawings forming a part hereof, wherein like numerals refer to like parts throughout.



BRIEF DESCRIPTION OF DRAWINGS
FIG. 1 is a functional block diagram of an augmented knowledge base (AKB) computer system, according to an embodiment of the present invention.
FIG. 2 is an example data structure of an AKB with example data entries, according to an embodiment of the present invention.
FIG. 3 provides the basic mechanism for deductive reasoning on an AKB, according to an embodiment of the present invention.
FIG. 4 is a flow diagram of an example unification algorithm, according to an aspect of an embodiment of the invention.
FIG. 5 provides types of measures for representing the strength of a body of evidences, according to an embodiment of the present invention.
FIG. 6 is a flow diagram of deductive inference in AKB, according to an embodiment of the present invention.
FIG. 7 is a table of methods for testing and ensuring properties of AKB, according to an embodiment of the present invention.
FIG. 8 is a flow diagram of inductive inference in AKB, according to an embodiment of the present invention.
FIG. 9 is a flow diagram of constructing consistent higher order AKBs, according to an embodiment of the present invention.
FIG. 10 is a diagram for illustrating the relations for generating a free-form database, augmented relational database, augmented deductive database and augmented inductive database, according to an embodiment of the present invention.
FIG. 11 is a flow diagram for generating graph representations of constraints for bodies of evidences, according to an embodiment of the present invention.
FIG. 12 is a flow diagram of checking for admissibility, according to an embodiment of the present invention.
FIG. 13 is a flow diagram of checking for compatibility between the measure and the collection of constraints, according to an embodiment of the present invention.
FIG. 14 is a flow diagram of guaranteeing compatibility, according to an embodiment of the present invention.
FIG. 15 is a flow diagram of preprocessing, according to an embodiment of the present invention.
FIG. 16 is a functional block diagram of a computer, which is a machine, for implementing embodiments of the present invention.



DETAILED DESCRIPTION OF EMBODIMENT(S)
Section 1. Augmented Knowledge Base
According to an aspect of an embodiment, a knowledge based system refers to a system comprising a knowledge base for representing knowledge, acquisition mechanisms and inference mechanisms, an augmented knowledge base κ includes one or more objects of the form E→A, where A is a logical sentence in a first-order logic, a proposition and/or a rule (referred to collectively herein as ‘a rule’) in the traditional sense; and E is a set of evidences (a plurality of evidences) as a body of evidences that supports A. Moreover, each given body of evidences (not each rule as in a typical knowledge base) is mapped to or associated with a value.
Since bodies of evidences are sets, in an aspect of an embodiment, the relations among the bodies of evidences are considered. The ability of AKBs to deal with relationships among the bodies of evidences, or its capability to take into account constraints imposed on the bodies of evidences, is a unique feature of AKB, which can lead to more powerful, robust, accurate and/or refined characterizations of the knowledge base.
In an embodiment of the present invention, inference or reasoning in an AKB is done in two separate phases: Form the body of evidences that supports the target rule, and then determine the value associated with the resulting body of evidences. The second phase can be done in many different ways, including the reasoning scheme AR based on constraint stochastic independence method, which is part of this invention. AR provides a clear probabilistic semantics, resulting in the elimination of virtually all known anomalies associated with existing formalisms of uncertain reasoning and knowledge bases.
In addition, in an aspect of an embodiment, we provide methods for testing and ensuring certain properties of AKBs, including consistency, completeness, monotonicity, contribution, vulnerability, deception, etc.
Moreover, in an aspect of an embodiment, we show how AKBs can be used for inductive inference. Indeed, we show that inductive inference can be used to extract meaningful new knowledge from AKBs provided certain consistency conditions are met.
Furthermore, in an aspect of an embodiment, we provide methods to guarantee (also referred to herein as a substantial guarantee) a required (or specified) consistency via higher order AKBs.
Lastly, in an aspect of an embodiment, we show how AKBs can be used to build free-form database (FFDB). We then show how FFDB can be used to formulate augmented relational databases, augmented deductive databases and augmented inductive databases. The latter can be used for extracting new information from relational databases (e.g. data mining).
In an embodiment of the present invention, a method for solving the following aged-old problem is provided: Given two arbitrary sets A and B, if the probabilities, p(A) and p(B), of both sets are known, what is the probability of their intersection, i.e., p(A∩B)? This problem could be trivial if the probability is defined over the entire probability space. However, in many important applications, such as reasoning with uncertainty, which is one of the main concerns of this invention, the probabilities of only a few sets are given and there is a need to determine the probabilities of other sets formed from these sets, i.e., extending the probability measure from a given collection of sets to a larger collection of sets formed from the given sets. Knowing how to compute p(A∩B) from p(A) and p(B) provides the cornerstone for the extension schemes.
The extension scheme given in an embodiment of the present invention uses an average method to determine the probability of the new set. It has a clear probabilistic semantics, and therefore not subject to the anomalies that are usually associated with other extension schemes.
Moreover, in an aspect of an embodiment, the present invention is capable of dealing with constraints imposed on the sets that are given.
Furthermore, in an aspect of an embodiment, necessary and sufficient conditions for the extension to be well-defined, as well as, necessary and sufficient conditions for compatibility are provided.
Lastly, in an embodiment of the present invention, a preprocessing algorithm is provided so that the extension can be computed more efficiently.
Let κ be an AKB. The A in (E→A) is a rule in κ, which can be a logical sentence in a first-order logic, a proposition and/or a rule in a traditional knowledge base. In this case, we say that Aε, i.e., A is a member of , where  is the collection of all knowledge of interest. On the other hand, the E in (E→A) is a set, representing a body of evidences, and is not a rule. In this case, we say that EU, i.e., E is a subset of U, where U is a universal set of evidences. Moreover, the (E→A) is not a rule either. It specifies that the body of evidences E supports the rule A. More precisely, if E is established or true, then A is true. This signifies that the full force of E devolves on A. Associating a body of evidences (i.e., a set of evidences) with a rule is a novel feature of this invention and is a central characteristic of augmented knowledge bases. The bodies of evidences supporting a rule can be obtained from many different sources (including expert opinions, scientific literature, news articles, blogs, etc.) and can be determined either subjectively or objectively.
In the rest of this document,  will always denote ‘is a subset of’, while ε will denote ‘is a member of’ or ‘belonging to’.
In most traditional knowledge-based systems that deal with uncertainties and/or incompleteness, rules are associated with numbers. These numbers are variably referred to as beliefs, certainty factors, likelihood, weight, etc. On the other hand, as illustrated in FIG. 1, in an AKB computer system 100, each rule A in an AKB is associated with a ‘set’ E—the body of evidences (plural or two or more evidences) that supports the rule. In addition, in contrast to typical knowledge bases, according to an embodiment of, a set of evidences E as a given body of evidences (not each rule) is mapped to or associated with a value (e.g., weight) (see also FIG. 2). These are several unique features of AKB. In FIG. 1, a computer 120 is configured to provide the described augmented knowledge base functions, including storing an augmented knowledge base 130. Experts and other sources 110 refer to one or more processing devices (e.g., computer, mobile device, mobile phone, etc.) as sources of evidences (E) and/or rules (A) to the AKB computer 120 over one or more data communication technologies, such as Internet, wire, wireless, cellular phone network, etc. The form of information of the experts and other sources 110 can be a database, blog, chat rooms data, social network website databases, other knowledge bases, etc. The FIG. 2 is an example data structure of an augmented knowledge base (AKB) 150 with example data entries for the AKB, according to an embodiment of the present invention. The embodiments utilize entries of the AKB, such as FIG. 2, to further augment a knowledgebase of rules in  154 by determining (outputting or computing) support for a desired (target) rule L, namely an unknown rule that would like to be established. According to an aspect of an embodiment a target rule L can be added to the rules in  154 in the AKB 150.
In FIG. 2, for example, 154 is , which is the collection of all knowledge in form of rules A 155 of interest. The body of evidences 160 (E) support the respective rules 155 (A) (i.e., (E→A)). In FIG. 2, the body of evidences 160 (E) is mapped to a number 160, variably referred to as belief, certainty factor, likelihood, weight, etc. Sources 110 for the evidences are also provided. The constraints 165 are relationships among the bodies of evidences Es 156 (the capability to take into account constraints 165 imposed on the bodies of evidences Es 156), which is a feature of AKB to derive more powerful, robust, accurate and/or refined characterizations of the knowledgebase rules . For example, in FIG. 2, E106 is a subset of E104, since the pH level in E106 contains that of E104.
An object generated includes a set of evidences E 156 and the rule A 156 supported by E 156. According to an aspect of an embodiment, an object in the form of E→A may be implemented as a data object (a data structure, a class) for electronically storing a set of evidences E 156 and a rule A 156 supported by E 156. The data object may be associable or include links to (a) value (e.g., weight) for E 160, (b) sources in support of E 110, and (c) constraints for E 165, as discussed in more detail herein.
An apparatus is provided including a computer readable storage medium configured to support managing (by way of storing) objects in the form E→A, where A is a rule in the knowledge base, and E is a set of evidence that supports the rule A; and a hardware processor (for example, computer processor and/or circuitry) to execute computing a composite set of evidences G, the composite set of evidences G being a combination of sets of evidences E in the knowledge base in support of a target rule L implied by a combination of rules in the knowledge base. E and A are electronically represented in computer readable media as data values (identifiers), including other values associated with E and/or A, such as weight values assigned to E, for processing, for example, generation (formation), computations or determinations of set(s) of data values and relations among the sets to deduce and/or induce target rule L as well as indicate validity or strength of target rule L.
Since bodies of evidences are sets, AKB could explicitly consider the relations among the bodies of evidences. The ability of AKBs to deal explicitly with relationships among the bodies of evidences, or its capability to take into account constraints imposed on the bodies of evidences, is another unique feature of AKB, which can lead to more powerful, robust, accurate and/or refined characterizations of the knowledge base.
In an AKB, evidences (the Es) and rules (the As) can represent completely different objects and each play an essential but separate role in the operations of an AKB. The dichotomy between rules and evidences is a novel approach, and is one of the critical differences between AKB and all the known models of knowledge bases. The power and flexibility offered by such a separation is yet another unique feature of AKB.
In an AKB, for example, no conditions are imposed on either E or A. Therefore, for example, it is further possible to have both E1→A and E2→A in the AKB. This means two or more sets (a set being two or more evidences Es also referred to as ‘body of evidences’) of evidences can support the same rule, thereby allowing, among other things, multiple experts/sources to be involved in designing a single AKB. Since typical knowledge bases do not associate evidences with rules, they would not be readily capable of dealing with multiple experts/sources for consolidating rules from different experts/sources. On the other hand, AKBs allow experts/sources to interact freely and completely, if necessary. AKBs could even monitor the experts/sources to determine their reliabilities and possible deceptions (see Sections 4). This is another unique feature of AKB.
Let κ be an AKB. The extension of κ, denoted by {circumflex over (κ)}, is defined recursively as follows:

    
    
        1. (Ø→κF), (U→κT)ε{circumflex over (κ)}, where T and F represent the logical constants TRUE and FALSE, respectively.
        2. if ω=(E→L)εκ then (E2→κL)ε{circumflex over (κ)}.
        3. if ω1=(E1→κL1), ω2=(E2→κL2)ε{circumflex over (κ)} then ω1ω2=((E1∪E2)→κ(L1L2))ε{circumflex over (κ)} and ω1ω2=((E1∩E2)→κ (L1L2))ε{circumflex over (κ)}.

{circumflex over (κ)} is extends κ so that AKBs can deal with composite objects ω, associated with combinations of sets of evidences E in the knowledge base and combinations of rules in the knowledge base. Therefore, the embodiments utilize both composite evidences and composite rules to establish support for a target rule.

    
    


In the rest of this document, ∪ and ∩ denote ‘set union’ and ‘set intersection’, respectively, while  and  denote ‘logical or’ and ‘logical and’, respectively.
Let κ be an AKB.

    
    
        If ω=(α→κβ)ε{circumflex over (κ)}, then l(ω)=α and r(ω)=β.

ω is a composite object, l(ω) denotes a composite set of evidences associated with ω, and r(ω) denotes the composite rules associated with ω. This enable is to extract the rule portion and the associated set of evidences portion from ω, where ω represents a composite object of a plurality of E→A.

    
    


Let κ be an AKB, G U (G is a body of evidences from universal set of evidences U) and Lε, where  is the collection of knowledge or rules (given or otherwise) which we are interested in. In FIG. 3, the basic operation at 210 for deductive reasoning is




  
    G
    ⁢
    
      
        →
        
          
            
          
          ⁢
          d
          ⁢
          
            
          
        
      
      κ
    
    ⁢
    L
  
  ,




where G is a composite set of evidences and L is a target rule. A target rule L refers to a rule in  or an unknown rule that would like to be established. More detail explanations can be found throughout this section.





  G
  ⁢
  
    
      →
      
        
          
        
        ⁢
        d
        ⁢
        
          
        
      
    
    κ
  
  ⁢
  L




where, d denotes deductive reasoning, if and only if there exists ωε{circumflex over (κ)} is such that

    
    
        l(ω)=G and r(ω)L.

l(ω)=G means that G is the composite set of evidences that supports r(ω), ω being a composite object of a plurality of E→A, and r(ω)L means that the if the composite rule r(ω) is true, then the target rule L is true. In other words,  stands for ‘logical implication.’

    
    






  G
  ⁢
  
    
      →
      
        
          
        
        ⁢
        d
        ⁢
        
          
        
      
    
    κ
  
  ⁢
  L




is one of the key concepts for dealing with deductive reasoning and other aspects of AKBs. Among other things, it provides a natural way to show how a given Lε is deductively related to κ. (See also FIG. 3). To put it in another way,





  G
  ⁢
  
    
      →
      
        
          
        
        ⁢
        d
        ⁢
        
          
        
      
    
    κ
  
  ⁢
  L




means mere exists a composite object ω in the AKB κ (ω is formed from objects of a plurality of E→A, in κ), where G is the composite set of evidences associated with ω, and the composite rule associated with ω implies (inferred by) L.

As an example, consider the partial AKB given in FIG. 2. Assume the target rule L is:

    
    
        Velvet disease is TRUE or the fish color is yellowish.
    
    


To determine G, we will use the following objects in the AKB:

    
    
        1. (E101→A101) where A101 is the rule ‘water pH level less than 6.0’ and the weight of E101 is 0.0014.
        2. (E102→A102) where A102 is the rule ‘water pH level is in [6.0, 7.0), i.e., the water pH level is greater than or equal to 6.0 but less than 7.0’ and the weight of E102 is 0.1930.
        3. (E121→A121) where A121 is the rule ‘water condition is acidic when water pH level is less that 6.0 or (6.0, 7.0)’ and weight of E121 is 1.0000.
        4. (E133→A133) where A133 is the rule ‘fish color is discolored—yellowish when water condition is acidic and velvet disease is false and weight of E133 is 0.3028.
    
    


Since L=(A101A 102)A121A133, therefore




  G
  ⁢
  
    
      →
      
        
          
        
        ⁢
        d
        ⁢
        
          
        
      
    
    κ
  
  ⁢
  L




where G=(E101∪E102) ∩E121 ∩E133. It is possible to have many other G where





  G
  ⁢
  
    
      →
      
        
          
        
        ⁢
        d
        ⁢
        
          
        
      
    
    κ
  
  ⁢
  
    L
    .
  




For example, it is not necessary to use both objects 1 and 2.





  G
  ⁢
  
    ->
    d
  
  ⁢
  
    
       
      κ
    
    ⁢
    L
  




holds by using only one or the other alone. Following the line of reasoning given above, if we observed that ‘the fish color is not yellowish’, then we can show that any G, where





  
    G
    ⁢
    
      ->
      d
    
    ⁢
    
      
         
        κ
      
      ⁢
      L
    
  
  ,




is a set of evidences that supports the target rule ‘velvet disease is TRUE’.

Let κ be an AKB and Lε.

    
    
        At 220, the “support” of a target rule L with respect to the augmented knowledge base, (also denoted by σ78 (L)), is equal to the largest GU where
    
    






  G
  ⁢
  
    ->
    d
  
  ⁢
  
    
      
         
        κ
      
      ⁢
      L
    
    .
  




    
    
        At 230, the “plausibility” of target rule L with respect to the augmented knowledge base, (also denoted by σκ(L)), is equal to [σκ(L′)]′.
    
    


At 220, the concept of “Support” of L provides a natural way to determine the set of evidences included in and derivable from κ that deductively supports L. While at 230 the concept of “plausibility” of L determines the set of evidences included in and derivable from κ that does not deductively support (not L.) (See also FIG. 3). At 210, whether “support” of L and/or “plausibility” of L should be taken into account can depend upon whether strict and/or plausible support is sought.
240 and 250 are alternative determinations of the “support” of a target rule L and a “plausibility” of a target rule L. If G is a set or a subset of some universal set U, then G′ will denote the complement of the set G, i.e., G′ contains all the elements in U that is not in G.
Let κ be an AKB and Lε. One way of determining the support and plausibility are:

σκ(L)=σκ0(F) where κ0=κ∪{U→L′}(240), and

σκ(L)=σκ0(T) where κ0=κ∪{U→L}(250).

In other words, to compute the support of L with respect to the AKB κ, add the object U→L′ (where L′ is a negated target rule L) to the AKB κ, and then compute the support of F with respect to the expanded AKB. The plausibility can be computed in a similar manner. Thus, the above methods (240 and 250) can be used to determine the support and plausibility of any Lε by extending the original AKB κ. It is a universal method since it is only necessary to know how to determine the support of F or the plausibility of T for any AKBs. (See also FIG. 3)
Various algorithms for determining σκ(F), some polynomial and some non-polynomial, are given in Section 15 (Unification Algorithms) below (see FIG. 4 which is a flow diagram of an example unification algorithm, according to an aspect of an embodiment of the invention). In light of the above results, these algorithms can be used to determine the body of evidences that supports any L in an AKB.
In the above definition of AKB, we assume that it is universally accepted that E→A is true. If that is not the case, then E→A is supported by some body of evidences, say G0. In other words, G0→(E→A). If the latter is universally accepted, then we can stop there. Otherwise, it in turn is supported by yet another body of evidences, ad infinitum. The latter are clearly higher order AKB. Since G0→(E→A) is equivalent to (G0∩E)→A, thus, in most cases, it is only necessary to consider first-order AKB, the one defined above (see Section 7 for more detail discussions of higher order AKBs, as well as, the role of higher order AKBs). It is worthwhile to observe that if E=U for all (E→A) εκ, then we have a deterministic knowledge base, or a knowledge base without uncertainty.
According to an aspect of an embodiment, the way uncertainties and/or incompleteness is dealt with by 220, 230, 240 and/or 250 for deductive reasoning is unique and new, because both the composite rules and the composite sets of evidences are involved providing a more general, vigorous and stronger reasoning scheme.
Section 2. Evidences, Measures and Extensions
Any collection of sets is partially ordered by . Therefore the support function σ, or the plausibility function σ, induced a partial ordering on . Using this partial ordering, if L1, L2ε and σ(L1)σ(L2), we can say that L1 has lesser support than L2. However, if a (L1) and σ(L2) are incomparable, then we don't have any measure of the relative strength of support for L1 and L2. In this section, we shall discuss the extension of the partial order into a linear order, or, more importantly, the definition of an absolute measure of strength of support for members of .
Unlike other knowledge-based systems, evidences play a front and center role in AKBs. However, a body of evidences could be an abstract concept. It is difficult, if not impossible, to completely specify all the evidences. Fortunately, in an embodiment of this invention, it is not essential to specify completely what the body of evidences consists of. One needs only to know the relations among the bodies of evidences, and the strength or validity of each body of evidences. These can in turn be used to determine the strength or validity of Lε.
We now present various methods, in the form of functions or mappings with domain 2U, the collection of all subsets of U, for use with AKBs to measure the strength or validity of the body of evidences associated with a rule.
FIG. 5 provides the types of measures, used for representing the strength or validity of the body of evidences, according to an embodiment of the present invention.
Let ε2U, where 2U denotes the collection of all subsets of U. A measure m over  is a function from ε into a linear ordered set, such that for all E1, E2εε, m(E1)≦m(E2) whenever E1 E2. In other words, in an aspect of an embodiment of this invention, measures are monotonic.
Let ε2U. A probability measure m over ε is function from ε∪{Ø, U} into [0,1], the close unit interval, which satisfies the following conditions:
1. m(Ø)=0 and m(U)=1.
2. m(E0)≧m(E1)+m(E2) for all E0, E1, E2∈ε where E1∩E2=Ø and E1, E2E0.
3. m(E1∪E2)≦m(E1)+m(E2) for all E1, E2∈ε where E1∪E2∈ε.
In the above definition, as well as the rest of this document, 0 denotes the ‘empty set’ or the set that contains no elements.
Clearly, every probability measure over ε is a measure over ε. Moreover, if ε=2U, then the definition of probability measure given above is equivalent to the usual definition of probability measure.
Measures are also used in virtually all of the existing knowledge-based systems that deal with uncertainty. However, the measure considered in AKBs map a body of evidences into a member of a linear ordered set or into a real number. On the other hand, measures in existing knowledge-based systems map a rule directly into a real number.
Let κ be an AKB. m is a (probability) κ-measure if and only if m is a (probability) measure over εκ, the collection of all sets (body of evidences) given in an AKB.
Let κ be an AKB. The extension of εκ, denoted by {tilde over (ε)}κ, is the smallest collection of subsets of U that contains all the sets in ε and is closed under complement, union, and intersection. In other words, {tilde over (ε)}κ includes sets which can be formed from ε in a natural manner.
Moreover, let m a (probability) κ-measure. An extension {tilde over (m)} of m is a (probability) measure over {tilde over (ε)}κ such that {tilde over (m)}(E)=m(E) for all E∈ε.
In the case where {tilde over (m)} is probabilistic, the value {tilde over (m)}(σκ(L)), for L∈, can be interpreted as the probability that L is true.
By viewing conditioning/composition rules as extension schemes, it is clear that the ability to extend m to {tilde over (m)} is equivalent to the ability to infer or to reason in existing knowledge-based systems. In an AKB, inference or reasoning can be done in two separate phases:
1. Form the body of evidences that supports the target rules.
2. Determine the value of {tilde over (m)} for the body of evidences obtained in the first phase.
There are many schemes for extending a κ-measure m with domain εκ to {tilde over (m)} with domain {tilde over (ε)}κ. Many try to capture the essence of the following, which holds for probability measure.
Let m be a probability measure over 2U and G, G1, G2U. Then m satisfies the following conditions:
1. {tilde over (m)}(E′)=1−m(E).
2. max(0, m(G1)+m(G2)−1)≦m(G1∩G2)≦min(m(G1), m(G2)).
3. max(m(G1), m(G2))≦m(G1∪G2) min(1, m(G1)+m(G2)).
The above observation, which can also be found in Eugene S. Santos and Eugene Santos, Jr. Reasoning with uncertainty in a knowledge-based system. In Proceedings of the seventeenth international symposium on multi-value logic, Boston, Mass., pages 75-81, 1987 the result are the same but are use differently), was used there to compute the probabilities of the union and intersection, are used in this invention to determine a lower bound and an upper bound for m(E), for every E∈{tilde over (ε)}, provided m is a probability measure. Unfortunately, after applying the results a few times, the lower and upper bound quickly approaches 0 and 1, respectively, yielding very minimal useful information.
Schemes for extending a measure m over ε to a measure {tilde over (m)}over {tilde over (ε)} are provided.
1. {tilde over (m)}(E′)=1−m(E),

    
    
        {tilde over (m)}(E1∩E2)=min(m(E1), m(E2)), and
        {tilde over (m)}(E1∪E2)=max(m(E1), m(E2)).
    
    


2. {tilde over (m)}(E′)=1−m(E),

    
    
        {tilde over (m)}(E1∩E2)=max(0, m(E1)+m(E2)−1), and
        {tilde over (m)}(E1∪E2)=min(1, m(E1)+m(E2)).
    
    


3. {tilde over (m)}(E′)=1−m(E),

    
    
        {tilde over (m)}(E1∩E2)=m(E1) m(E2), and
        m(E1∪E2)=1−(1−m(E1))(1−m(E2))
    
    


Schemes 1, 2 and 3 above all satisfy the DeMorgan's law, and can be applied to compute {tilde over (m)}(E) for any E∈{tilde over (ε)}κ. However, one could run into various problems by using these schemes indiscriminately, as witness by many existing knowledge-based systems that use expressions similar to some of those given above to manipulate their numbers. Worst yet, for all three schemes above, the values of {tilde over (m)}(E), where E∈{tilde over (ε)}κ, may not be unique, since they may depend on how E is expressed. Moreover, Schemes 1 and 2 are not probabilistic (they are not additive). On the other hand, Scheme 3 implicitly assume that all the sets in ε are stochastically independent. Due to this implicit assumption, Scheme 3 has not been strictly applied in real applications.
Of course, many other schemes existed in the literature. Many are ad-hoc, such as the composition rule for certainty factors used in the original MYCIN (Bruce G. Buchanan and Edward H. Shortliffe. Rule-Based Expert Systems. Addison Wesley, 1984). There are also other schemes that are essentially modifications and/or combinations of the above schemes, such as the composition rule (orthogonal sum) used by the Dempster-Shafer approach (G. Shafer. A Mathematical Theory of Evidence. Princeton University Press, 1976). Finally, there is a natural scheme for extending a probabilistic m into a probabilistic {tilde over (m)}, namely, the constraint stochastic independence method introduced in the latter part of this invention, which can be used to form a new reasoning scheme, the augmented reasoning. This scheme is particularly suited for AKBs.
It is not necessary to select just one extension scheme for m for a given AKB. It is possible, and, in fact, beneficial at times to use more than one schemes either simultaneously and/or conditionally. In the latter case, several schemes may be provided and based on L and/or how L is formed, a particular scheme is then selected to evaluate the validity of L. A version of multiple schemes that is being used conditionally is given in (L. A. Zadeh. A simple view of the Dempster-Shafer theory of evidence and its implication for the rule of combination. AI Magazines, 7:85-90, 1986) in connection with fuzzy knowledge bases. However, in this case, as in virtually all existing cases, the extension is applied directly to the rules rather than the bodies of evidences.
Clearly, a complete formulation of an AKB requires the specifications of κ, m, and the scheme for extending m to {tilde over (m)}. The extension scheme is just one of the facets in an AKB, and any scheme could be used for that purpose. By selecting appropriately the E, the A, and the E→A, as well as, m and the extension scheme for m, most of the well-known approaches to knowledge bases and uncertain reasoning, including probabilistic logic (N.J. Nilsson. Probabilistic logic. Artificial Intelligence, 28:71-87, 1986), Dempster-Shafer theory (G. Shafer. A Mathematical Theory of Evidence. Princeton University Press, 1976), Bayesian network (Judea Pearl. Probabilistic Reasoning in Intelligent Systems: Networks of Plausible Inference. Morgan Kaufmann, 1988), Bayesian knowledge base Eugene Santos, Jr. and Eugene S. Santos. A framework for building knowledge-bases under uncertainty. Journal of Experimental and Theoretical Artificial Intelligence, 11:265-286, 1999), fuzzy logic (L. A. Zadeh. The role of fuzzy logic in the management of uncertainty in expert systems. Fuzzy Sets and Systems, 11:199-227, 1983; L. A. Zadeh. Fuzzy sets. Information and Control, 8:338-353, 1965. 41; R. Yager. Using approximate reasoning to represent default knowledge. Artificial Intelligence, 31:99-112, 1987), numerical ATMS (Johan DeKleer. An assumption-based TMS. Artificial Intelligence, 28:163-196, 1986), incidence calculus (Alan Bundy. Incidence calculus: A mechanism for probabilistic reasoning. Journal of Automated Reasoning, 1(3):263-283, 1985; Weiru Liu and Alan Bundy. Constructing probabilistic atmss using extended incidence calculus. International Journal of Approximate Reasoning, 15(2):145-182, 1996), etc. can be formulated as special cases of AKBs (see Section 3).
Section 3. Comparative Studies
The definition of AKB given in Section 1 encompasses virtually all of the widely used formalisms of uncertain reasoning and knowledge bases. As we shall see below, these existing systems can be formulated as AKBs according to the embodiments of the present invention by imposing certain restrictions on the relations among the E, the A, and the (E→A) in κ, as well as, on how the κ-measure m is extended.
For illustration purposes, we shall consider the following well-known formalisms: probabilistic logic (N. J. Nilsson. Probabilistic logic. Artificial Intelligence, 28:71-87, 1986), Bayesian network (Judea Pearl. Probabilistic Reasoning in Intelligent Systems: Networks of Plausible Inference. Morgan Kaufmann, 1988) and Bayesian knowledge base (Eugene Santos, Jr. and Eugene S. Santos. A framework for building knowledge-bases under uncertainty. Journal of Experimental and Theoretical Artificial Intelligence, 11:265-286, 1999), and Dempster-Shafer theory (G. Shafer. A Mathematical Theory of Evidence. Princeton University Press, 1976).
A probabilistic logic can be defined by an ordered pair (, p), where  is a finite collection of elements in , a first order logic, and p is a function from  into [0,1]. For simplicity, instead of a first order logic, assume that  is a propositional calculus. For each Pε, associate the set EP, and let κ be the AKB including all Ep→P and EP′→ P′, where Pε. (There is a one-to-one correspondence between P and EP, where EP is the set version of the logical expression P.) Moreover, define m such that m(EP)=p(P) for all Pε. Extend m into {tilde over (m)} that satisfies the 3 properties of probabilistic measure given in Section 2. It can be shown that the resulting AKB κ is equivalent to (, p).
Both Bayesian networks and Bayesian knowledge bases can be defined by specifying a finite collection  of conditional probabilities subject to certain restrictions. Let  denote the collection of all random variables used in the Bayesian network or Bayesian knowledge base, and for each Xε, let IX represents the set of all possible instantiations of X. A typical element A of  is of the form: p(X=a|X1=a1, X2=a2, . . . , Xk=ak), where Xε, aεIX, and for all 1≦i≦k, Xiε  and aiεIXi.
Associate with each element Aε:the rule

(X1=a1)(X2=a2) . . . (Xk=ak)(X=a),

and the set EA.

Let κ be the AKB containing one or more (e.g., all) objects of the form EA→A where Aε. Moreover, define m such that:

m(EA)=p(X=a|X1=a1,X2=a2, . . . ,Xk=ak).

Let A=((X1=a1)(X2=a2) . . . (Xk=ak)(X=a))κ, and =((Y1=b1)(Y2=b2) . . . (Yl=bl)(Y=b))εκ. A ̃B means for all 1≦i≦k and 1≦j≦l, ai=bj whenever Xi=Yj. In other words, A and B are antecedent-compatible. In order to capture the properties of conditional probabilities, the following conditions are needed: For every A, B ∈κ, if A ̃B, X=Y but a≠b, then EA∩EB=Ø.
However, for Bayesian knowledge bases, an additional property is needed: For every A, Bεκ, if A ̃B, X=Y and a=b, then EA=EB. (This is the exclusivity property given in Eugene Santos, Jr. and Eugene S. Santos. A framework for building knowledge-bases under uncertainty. Journal of Experimental and Theoretical Artificial Intelligence, 11:265-286, 1999.)
On the surface, it might seem that Bayesian networks and Bayesian knowledge bases can deal with relationships or constraints among the sets. Actually, they cannot handle constraints unless they are inherent in probability theory or in their definition. In other words, neither can handle externally imposed constraints.
Bayesian networks and Bayesian knowledge bases essentially employed Scheme 2 given in Section 2 with the proviso that {tilde over (m)}(A∩B)=0 whenever A∩B=Ø. It can be shown that the resulting AKB κ, as defined above, are equivalent to the corresponding Bayesian network or Bayesian knowledge base.
Another well-known reasoning scheme is based on Dempster-Shafer theory (DST)(G. Shafer. A Mathematical Theory of Evidence. Princeton University Press, 1976). Using DST terminology, consider a simple support function S with focal element A and degree of support s. S can be represented by the objects E→A and E′→A′, with m(E)=s and m(E′)=1−s. If relations exist among the focal elements, then additional objects have to be included in the AKB. For example, suppose A and B are disjoint focal elements, then we need to include the object U→A′B′ in the AKB. (Although focal elements in DST are sets, we view them as propositions to fit them into our formulation.) If the frame of discernment Θ is given, another way of representing the support functions, without resorting to using additional objects to specify the relations among focal elements, is to write: A={θ1, θ2, . . . , θk }Θ as θ1θ2 . . . θk.
In this case, we need only add, once and for all, the objects U→a′b′ for distinct a, bεΘ. DST employed Scheme 2 given in Section 2 to extend the κ-measure m and then normalized the result by dividing it by 1−{tilde over (m)}(σκ(F)). It can be shown that the orthogonal sum used in DST can be derived from the above representation. Although DST emphasized evidence in its formulation, like all other existing models, it did not distinguish between the evidence and the proposition it supports.
Section 4. Augmented Knowledge Base Inference Engine
In this section, we shall show how inference or reasoning is done in an AKB. From the above discussions, it is clear that, in an embodiment of this invention, the functions of the augmented knowledge base engine (AKBE) can be divided neatly into two phases. The first phase deals only with the AKB κ (or any desired subset thereof, in the case of distributed knowledge bases), while the second phase deals with the κ-measure and its extension. As noted earlier, it is possible to use more than one extension schemes in a single AKB. Moreover, depending on the extension scheme(s) used, it may not be necessary to complete the first phase before starting the second phase. In particular, the two phases, as well as the extension schemes, if two or more schemes are used simultaneously, maybe carried out in parallel to make the process more efficient.
The main thrust of the first phase of an AKBE is the evaluation of σκ(L). By virtue of results given in Section 1, we need only provide a method for determining σκ(F) for arbitrary AKB κ. Many such algorithms are given in Section 15 (Unification Algorithms).
The main thrust of the second phase of an AKBE is the computation of {tilde over (m)}(σκ(F)). This clearly depends on the scheme used for extending m. As stated earlier, the result in Section 2 can be used to provide a lower bound and an upper bound for {tilde over (m)}(E) for any probabilistic extension of m as long as m itself is probabilistic. Unfortunately, after applying the theorem a few times, the lower and upper bound quickly approaches 0 and 1, respectively, yielding very minimal useful information. Nevertheless, both the lower and upper bounds can be computed easily, and thus it provides a very efficient way for bounding the value of {tilde over (m)}(E).
Several extension schemes are given in Section 2. Clearly, all of those schemes are intended to be used to compute {tilde over (m)}(E) directly, provided E∈{tilde over (ε)}κ, without any regard to the relations among the sets in {tilde over (ε)}κ (e.g. Is E1 a subset of E2, or are they disjoint?). There are many other known extension schemes and/or conditioning/composition rules. However, they are either too restrictive, or have no clear semantics and thus suffer from various anomalies.
A promising approach is the use of the extension scheme based on constraint stochastic independence method mentioned earlier and discussed in detail below. It provides a unique point value for {tilde over (m)}(E), and forms the basis for a new computational model of uncertain reasoning. A unique feature of this new reasoning scheme is its ability to deal with relationships among the bodies of evidences, or its capability to take into account constraints imposed on the bodies of evidences. This is a clear departure from all existing formalisms for uncertain reasoning, which are incapable of dealing with such constraints. This added feature can lead to more powerful, robust, accurate and/or refined characterizations of the knowledge base. In addition, because of its clear probabilistic semantics, virtually all of the known anomalies associated with existing knowledge-based systems disappear.
Although our discussion on AKBE focuses on σκ, the same method can be used for σκ or other appropriate functions. In addition, if κ is consistent (see Section 5), and both σκ, and σκ are considered, then one can determine an interval value ({tilde over (m)}(σκ(L)), {tilde over (m)}(σκ(L))) for any Lε.
In general, AKBs allow rules to be supported by bodies of evidences that are related to other bodies of evidences. For example, two different rules may be supported by the same body of evidences, or a rule is supported by E while another rule is supported by E′. If one needs to know which specific rules, not just which specific bodies of evidences, that are applied to obtain the desired results, such as in PROLOG-like query, Σκ(L)={ω∈{circumflex over (κ)}|r(ω)L} can first be determined. Clearly, all the rules involve in the inference are included in Σκ(L). One can then use the definition, together with the given constraints, to determine σκ(L).
Providing explanations on how results were obtained by any knowledge-based system will go a long way in bolstering the user's confidence on the system. For AKBs, the explanation is built-in. All the rules that are involved in deducing the final results are given in Σκ(L). Moreover, the overall body of evidences supporting L is given in σκ(L). Furthermore, all constraints involved, when constraint stochastic independence method is employed, can be readily extracted during the second inference phase.
It is worth noting that the Σκ(L) and/or σκ(L) obtained in the first phase of the AKBE, contains a mountain of treasures (information) waiting to be exploited. We have seen how it can be used to determine the support of L, as well as, how to explain away L. Many other concepts, such as consistency, reliability, vulnerability, etc., which are central to many different complex systems, as well as, deception, which is central to knowledge-based systems, can also be formulated and determined via Σκ(L), σκ(L) and/or {tilde over (m)} (see Section 5 below).
Section 5. Properties of AKB
FIG. 7 is a table of methods for testing and ensuring properties of AKB, according to an embodiment of the present invention.
In this section, certain basic properties of AKBs are presented together with methods for testing and ensuring that the AKB possesses the properties.
Let κ be an AKB. κ is consistent if and only if G=Ø, subject to κ, whenever




  G
  ⁢
  
    ->
    d
  
  ⁢
  
    
      
         
        κ
      
      ⁢
      F
    
    .
  




κ is the collection of all constraints involving κ. This means that for consistent κ, if a rule is FALSE, then it is not supported by any evidences.

Consistency is an important issue involving an AKB. It specifies the internal consistencies of the contents of the AKB. For example, if both E1→A and E2→A′ are in κ, then E1 and E2 should be disjoint for κ to be consistent. We need a higher order AKB to deal with inconsistencies (see Section 7). If an AKB is not consistent, then the (E→A) in κ may not be universally accepted. Inconsistency is closely related to reliability. It could also be a precursor of something important, such as deception, when dealing with knowledge bases not known for their inconsistencies.
AKBs associated with Probabilistic logic (N. J. Nilsson. Probabilistic logic. Artificial Intelligence, 28:71-87, 1986), Bayesian networks (Judea Pearl. Probabilistic Reasoning in Intelligent Systems Networks of Plausible Inference. Morgan Kaufmann, 1988) and Bayesian knowledge-bases (Eugene Santos, Jr. and Eugene S. Santos. A framework for building knowledge-bases under uncertainty. Journal of Experimental and Theoretical Artificial Intelligence, 11:265-286, 1999) are consistent. On the other hand, consistency is not strictly observed in Dempster-Shafer theory (G. Shafer. A Mathematical Theory of Evidence. Princeton University Press, 1976). This omission, together with its composition rule, can lead to certain anomalies (L. A. Zadeh. On the validity of Dempster's rule of combination of evidence. Technical Report 79/24, University of California, Berkeley, 1979; L. A. Zadeh. A mathematical theory of evidence (book review). AI Magazines, 55:81-83, 1984; L. A. Zadeh. A simple view of the Dempster-Shafer theory of evidence and its implication for the rule of combination. AI Magazines, 7:85-90, 1986).
In general, consistency imposed certain conditions that the E's should satisfy. Some criteria for consistency are given below:
Let κ be an AKB. The following statements are equivalent:
1. κ is consistent.
2. G=Ø, subject to κ, whenever




  G
  ⁢
  
    ->
    d
  
  ⁢
  
    
      
         
        κ
      
      ⁢
      F
    
    .
  




3. For every ωε{circumflex over (κ)}, l(ω)=Ø whenever r(ω)=F.
4. σκ(F)=Ø.
5. σκ(T)=U.
6. For every Lε, σκ(L)∩σκ(L′)=Ø.
7. For every Lε, σκ(L)∪σκ(L′)=U.
8. For every Lε, σκ(L)σκ(L).
Any of the criteria above can be used to test and ensure that the AKB is consistent. As observed earlier, an inconsistent AKB is actually a higher order AKB. Although inconsistencies can be removed from an AKB κ by adding the constraint σκ(F)=Ø, this method may not be advisable since it could alter the nature of the AKB. Besides, all inconsistencies should be handled with care. They may occur due to errors. More importantly, they may occur due to possible deceptions (see below), especially if the AKB is not known to have inconsistencies.
Let κ be an AKB. κ is complete if and only if for every Lε, σκ(L)σκ(L). κ is perfect if and only if for every Lεσκ(L)=σκ(L).
Perfect AKBs are those AKBs whose support and plausibility for any Lε are equal. This turns out to be a very powerful property.
Additional methods for testing and ensuring that an AKB is perfect are given below:
Let κ be an AKB. The following statements are equivalent:
1. κ is perfect.
2. For every Lε, σκ(L)=σκ(L).
3. κ is both consistent and complete.
4. κ satisfies the following conditions:

    
    
        a) σκ(L′)=[σκ(L)]′;
        b) σκ(L1L2)=σκ(L1)∩σκ(L2); and
        c) σκ(L1L2)=σκ(L1)∪σκ(L2)
    
    


In light of 4 of the above result, if κ is perfect, then for every Lε, σκ(L) is completely determined by σκ(A), where Aεa, and a is the collection of all atomic proposition in . An atomic proposition is a proposition that is indivisible, i.e., it cannot be expressed in terms of other propositions. A rule A is a combination of or formed of one or more atomic propositions.
We shall now present some other important properties involving AKBs, and show their possible applications.
Let κ be an AKB, m a κ-measure, {tilde over (m)} an extension of m over {tilde over (ε)}κ, λκ, and Lε.

ψκ(λ,L)={tilde over (m)}(σκ(L))−{tilde over (m)}(σκ-λ(L))

ψκ(λ, L) will be referred to as the contribution of λ over L. If μεκ, then we shall also write: ψκ (μ, L) for ψκ({μ}, L).
The concept of contribution can be used to detect and overcome vulnerabilities, as well as, detect possible deceptions (see below).
Let κ be an AKB, μεκ and Lε. μ is an essential support for L if and only if ψκ(μ, L)>0.
Clearly, all the vulnerabilities of κ with respect to L can be determined from Sκ(L)={μεκ|μ is an essential support for L}, which can in turn be obtained from Σκ(L). As a matter of fact, we can order the elements μ of Sκ(L) in descending order of ψκ(μ, L). In this way, one can pinpoint all the major vulnerabilities of κ with respect to L. Sometimes, vulnerabilities are not due to a single element of κ. In this case, Σκ(L) should be examined to determine group of elements of κ that may be the root cause of major vulnerabilities.
Detecting possible deceptions involving L can become more complicated since it involves human and/or another corrupted machine. Nevertheless, a method to start the detection process can be carried out by first determining the major single and/or multiple vulnerabilities with respect to L, as explained above, and carefully examining which of the major single and/or multiple vulnerabilities are plugged using questionable sources. In general, deceptions might involved altering, adding and/or deleting multiple elements of κ. For security purposes, no existing element of κ should be allowed to be removed without thorough investigation to assure that the element in question is useless, not appropriate and/or superseded. All changes should be introduced as new members of κ (deletion of (E→L)εκ can be accomplished by temporarily adding the new member Ø→L to κ). A log should be provided for any changes, addition or physical deletion of any member of κ.
Section 6. Inductive Inference
FIG. 8 is flow diagram of inductive inference in AKB, according to an embodiment of the present invention.
Inductive inference comes in many different flavors and has been widely studied in the literature (Aidan Feeney and Evan Heit, editors. Inductive Reasoning: Experimental, Developmental, and Computational Approaches. Cambridge University Press, 2007; John H. Holland, Keith J. Holyoak, Richard E. Nisbett, and Paul R. Thaggard. Induction:Process of Inference, Learning, and Discovery. MIT Press, 1989). In this section, we provide a method for performing inductive inference in AKBs. The inductive inference presented in this document is not only more general (capable of handling uncertainties and/or incompleteness), but also more robust, than traditional inductive inference. Together with the results given above, AKB can serve as a unified framework for deductive and inductive reasoning. Furthermore, in view of the results that will be presented in this section, we can view deductive reasoning and inductive reasoning as dual of each other.
Let κ be an AKB, GU and Lε.




  G
  ⁢
  
    ->
    i
  
  ⁢
  
    
       
      κ
    
    ⁢
    L
  




(where i denotes inductive reasoning) if and only if there exists L0ε where L0 refers to a composite rule such that the target rule LL0 and G→κL0.

This is equivalent to there exists ωε{circumflex over (κ)} is such that l(ω)=G and Lr(ω). Observe the difference between




  G
  ⁢
  
    ->
    i
  
  ⁢
  
    
      
        
           
          κ
        
        ⁢
        L
      
      ⁢
      
        
      
      ⁢
      and
      ⁢
      
        
      
      ⁢
      G
    
    ⁢
    
      ->
      d
    
    ⁢
    
      
        
           
          κ
        
        ⁢
        L
      
      .
    
  




In other words,




  G
  ⁢
  
    ->
    i
  
  ⁢
  
     
    κ
  




L means there exists a composite object ω in the AKB κ (ω is formed from objects in κ), where G is the set of evidences associated with ω, and the rule associated with ω is implied by L.





  G
  ⁢
  
    ->
    i
  
  ⁢
  
    
       
      κ
    
    ⁢
    L
  




is one of the key concepts for dealing with inductive reasoning and other aspects of AKBs. Among other things, it provides a natural way to show how a given Lε is inductively related to κ. Let κ be an AKB and Lε.

    
    
        1. The inductive plausibility for L with respect to κ, (also denoted by φκ(L)), is the smallest G U where
    
    






  G
  ⁢
  
    ->
    i
  
  ⁢
  
    
      
         
        κ
      
      ⁢
      L
    
    .
  




    
    
        2. The inductive support for L with respect to κ, (also denoted by φκ(L)), is equal to [φκ(L′)]′.

In other words, inductive plausibility for L with respect to κ is the smallest set of evidences G such that

    
    






  
    G
    ⁢
    
      ->
      i
    
    ⁢
    
      
         
        κ
      
      ⁢
      L
    
  
  ,




while inductive support for L with respect to κ is the largest set of evidences G such that





  G
  ⁢
  
    ->
    i
  
  ⁢
  
    
      L
      
      ′
      
        κ
        
    
    .
  




Let κ be an AKB. Let ωε{circumflex over (κ)}. The complement ω′ of ω is defined recursively as follows:

    
    
        1. If ω=(E→A) where ωεκ, then ω′=(E′→A′).
        2. If ω1, ω2ε{circumflex over (κ)}, then (ω1ω2)′=ω1′ω2′ and (ω1ω2)′=ω1′ω2′.

Clearly, for any composite object of ω, ω′ is obtained from ω by taking the complement of the set of evidences portion of ω, and the negation of the rule portion of ω. The complement ω′ of ω is needed to show the relations between deductive inference and inductive inference.

    
    


Let Ω{circumflex over (κ)}. Ω={ω′|ωεΩ}.
Let τκ. τ={ω′|ωετ}. When κ is viewed as an AKB, then κ=κ.
The following properties show that inductive support and inductive plausibility with respect to κ are closely related to plausibility and support with respect to κ. They also provide a method for computing the inductive support and inductive plausibility with respect to κ using the Unification Algorithms (see Section 15) for computing the support and plausibility with respect to κ.
Let κ be an AKB and Lε. φκ(L)=σκ(L) and φκ(L)=σκ(L).
Clearly, reasoning using σκ corresponds to deductive inference or reasoning. On the other hand, reasoning using φκ may be viewed as inductive inference or reasoning. φκ can be used for extracting new knowledge from κ. In view of the above results, κ may be viewed as the AKB induced by κ using inductive inference. However, it should be observed that, even if κ is consistent, new knowledge extracted from κ, need not be consistent with one another; i.e., κ need not be consistent. In the rest of this section, we shall provide necessary and sufficient conditions for the new knowledge extracted from κ to be consistent.
In view of the previous paragraphs, inductive inference can be accomplished using deductive inference, as follows: construct the complement κ (410) from κ (400), construct the negation L′ (412) from L (405), perform deductive inference on κ and L′ (420) to determine the support of L′ with respect to κ, and other items in (422), and then use the relation φκ(L)=σκ(L) given above to compute inductive plausibility of L with respect to K, as well as other items (424).

    
    
        Let κ be an AKB. The following statements are equivalent:
        1. κ is i-consistent.
        2. G=U, subject to κ, whenever
    
    






  G
  ⁢
  
    ->
    i
  
  ⁢
  
    
      
         
        κ
      
      ⁢
      T
    
    .
  




    
    
        3. For every ωε{circumflex over (κ)}, l(ω)=U whenever r(ω)=T
        4. φκ(T)=U.
        5. φκ(F)=Ø.
        6. For every Lε, φκ(L)∪φκ(L′)=U.
        7. For every Lε, φκ(L)∩φκ(L′)=Ø.
        8. For every Lε, φκ(L)φκ(L).
        9. κ is consistent.
    
    


Any of the criteria above can be used to test and ensure that the AKB is i-consistent. It follows from the above results that if κ is i-consistent, then κ is consistent. In this case, the new knowledge extracted from κ will be consistent with each other.
Since κ is i-consistent if and only if κ is consistent, in the same manner, we shall say that κ is i-xxx if and only if κ is xxx. Moreover, we shall say that κ is dual-xxx if and only if both κ and κ are xxx. Therefore, all results given in Section 5 can be transformed into corresponding results involving i-complete and/or i-perfect using the above results.
Let κ be an AKB. κ is monotonic if and only if for every ω1, ω2ε{circumflex over (κ)}, if r(ω1)r(ω2), then l(ω1)l(ω2).
Let κ be an AKB. The following statements are equivalent:

    
    
        1. κ is monotonic.
        2. κ is monotonic.
        3. For every ω1, ω2ε{circumflex over (κ)}, if r(ω1)≡r(ω2), then l(ω1)=l(ω2).
        4. For every ωε{circumflex over (κ)}, l(ω)=σκ(r(ω)).
        5. For every ωε{circumflex over (κ)}, l(ω)=φκ(r(ω)).
        6. For every ωε{circumflex over (κ)}, σκ(r(ω))=φκ(r(ω)).
        7. For every Lε, σκ(L)φκ(L).
        8. For every Lε, σκ(L)σκ(L).
        9. {umlaut over (κ)} is consistent, where {umlaut over (κ)}=κ∪κ, where {umlaut over (κ)}=κ.
    
    


Any of the criteria above can be used to test and ensure that the AKB is monotonic.
If {umlaut over (κ)} is consistent, then the original knowledge in κ and the newly extracted knowledge associated with κ are all consistent with each other.
Section 7. Higher Order AKB
FIG. 9 is a flow diagram of constructing consistent higher order AKBs, according to an embodiment of the present invention. FIG. 9 is a list of 3 higher order AKBs and how they are constructed. All 3 types are described in this section.
In this section, unless otherwise stated, we shall assume that n is a positive integer. We shall now present higher order AKBs using induction.

    
    
        1. A 1-st order AKB is an AKB (as defined above).
        2. Let 0 be an n-th order AKB. An (n+1)-th order AKB  is a finite collection of objects of the form G→μ, where GU and με0. G will be referred to as the reliability of μ, and  an immediate extension of 0.
        3. A general AKB is a n-th order AKB.
    
    


Let  be a general AKB. Since the objects in  have the same form as objects in an AKB, many of the basic concepts and notations for AKB can be carried over to , e.g., , , r( ) l( ), etc. Moreover,  is the collection of all relations among the sets or bodies of evidences involved in  and/or in .
Let  be an n-th order AKB and n>1. ↓={l(ω)∩l(r(ω))→r(r(ω))|ωε}. Observe the ↓ is an (n−1)-th order AKB. This provides a way to reduce an n-th order AKB into an (n−1)-th order AKB. Moreover,  is consistent if and only if ↓ is consistent.
In the rest of this section, we shall present several methods for constructing consistent second order AKBs. It includes the constructions of κ0, κ1, and different varieties of α2.
Let κ be an AKB. κ0={σκ(r(μ))→μ|μεκ}.
If κ is a deterministic AKB, then contains only the elements of κ which are consistent with all the other elements of κ. Thus, for example, if κ contains both L is TRUE and L′ is TRUE, then neither elements will be included in κ0.
Let κ be an AKB and  is a second order AKB.

    
    
         is an ideal immediate extension of κ if and only if ={Gμ→μ|μεκ} and for every τεMκ, ακ(τ)∪μετGμ′ where ακ(τ)=∩μετl(μ) and βκ(τ)=μετr(μ);
        τ is F-minimal if and only if (i) βκ(τ)=F and (ii) βκ(τ0)≠F whenever τ0 is a proper subset of τ; and
        Mκ is the collection of all F-minimal subset of κ.

The above definitions and notations are needed to properly define κ1 and κ2.

    
    


Let κ be an AKB. κ1={(γ(μ))′→μ|μεκ}, where for μεκ, Γκ(μ)={τεMκ|μετ} and γ(μ)=∪τεΓκ(μ)ακ(τ) if Γκ(μ)≠Ø. Otherwise, γ(μ)=Ø.
Given an AKB κ. Construct κ2 of κ.

    
    
        1. Let =Ø.
        2. For each τεMκ and each μετ, let G(μ,τ) be a new symbol in ε.
        3. For each τεMκ, add to  the constraint that the collection {G(μ, τ)|μετ} forms a partition of ακ(τ).
        4. For each μεκ, add to  the object ∩τεΓκ(μ)(G(μ,τ))′→μ.
        5. Return .
    
    


Let κ be an AKB and  an ideal immediate extension of κ. If m is a κ-measure, then m can be extended to a ↓-measure M. In particular, if =κ2, then we can assign M(G(μ,τ)) to be any nonnegative values, for every τεMκ and μετ; provided ΣμετM(G(μ,τ))=1 for every μεκ. More information and/or human intervention will be needed in order to assign specific values for M(G(μ,τ)). However, if no such information is forthcoming, assign M(G(μ,τ))=1/|τ|
The above discussions show how one could construct second order AKBs to guarantee consistency in κ, κ and/or {umlaut over (κ)}. It follows from the above results that new knowledge can be extracted from κ in meaningful ways. Thus, AKBs provides a computational framework for knowledge extraction and data mining. Moreover, the selection of different ideal immediate extension for an AKB gives rise to different knowledge extractions/data mining schemes (See Section 8).
Section 8. Free-Form Database
FIG. 10 is a diagram for illustrating the relations for generating a free-form database, according to an embodiment of the present invention. In this section, we provide methods for constructing free-form databases (FFDB), which are special type of AKBs, and show how relational databases can be transformed into FFDBs. Among other things, we show that by so doing, one can automatically deals with uncertainties and/or incompleteness in relational databases in a natural manner. Moreover, we shall use FFDBs to construct deductive and inductive databases.
Let κ be an AKB (over  and U). κ is a free-form database (FFDB) (500) if and only if every atomic proposition in  is of the form ν= ν, where ν is a variable and √ νεVν, the collection of all possible values for ν. In addition, every variable ν in an FFDB satisfies the following two conditions:
1. ((ν= ν1)(ν= ν2))≡F whenever ν1, ν2εVν and ν1≠ ν2; and
2. V νεVν(ν= ν)≡T;
Observe that a relational database  is made up of a finite set of relations. Consider a relation  in  with header A1, . . . , Ak. Then any member of  can be represented in the form:

(A1=a1) . . . (Ak=ak)(=T),  (1)

where (=T) can be interpreted as the relation is in the database , and  is material implication in .

Let  be a relational database.  is smallest FFDB which contains the collection of all U→p, over all relations  in , where p is an expression of the form given in (1) above.
Only deterministic relational databases are defined above. However, in the new representation, uncertainties and/or incompleteness could be readily incorporated in by changing the U in  to any appropriate subset E of U.Moreover, by using the above representation, not only is it possible to specify which relation is in the database, but it is also possible to specify which relation is NOT in the database by setting (=F) instead of (=T).
The dependencies/independencies among the data are of paramount importance in traditional databases, since these databases are subject to constant updating. Violations of these dependencies/independencies are the main sources of anomalies in these databases. The dependencies can be characterized by one-to-one and/or many-to-one relationships (dependencies). A many-to-one dependency (or functional dependency) can be expressed as:

i=1k(νiL=νi−L)(j=1n(νjR=νj−R)(=T),  (2)

where νi−LεVνiL and νj−RεVνjR for all i=1, 2, . . . , k and j=1, 2, . . . , n. A one-to-one dependency can be expressed as two many-to-one dependencies.

Expression (2) reduces to expression (1) when n=0. The left hand side of expression (2), for n≧0, represent independencies. In other words, the values of the variables ν1L, ν2L, . . . , νkL in (2) are arbitrary and independent of each other, and the set {ν1L, ν2L, . . . , νkL} of variables forms a key. The concept of multi-valued dependency and join dependency (R. Fagin. A normal form for relational databases that is based on domain and keys. ACM Transaction on Database Systems, 6:387-415, 1981) can be viewed as some sort of independencies/dependencies, and thus can be reformulated as such.
Let  be a relational database.  is smallest FFDB which contains the collection of all U→p, where p is an expression of the form given in (2) above, with n≧0, over all dependencies/independencies in . In addition, =∪. In this case, we shall also say that κ is an augmented relational database (510).
The expression given by (2) above can be decomposed into the n expressions: (i=1k(νiL=νi−L))(νjR=νj−R), j=1, 2, . . . , n, and the expression (i=1k(νiL=νi−L))(=T).
Each of these expressions, after decomposition, is a Home clause. Since expressions given by (1) are also Home clauses, therefore unification for any augmented relational database can be carried out in polynomial time.
The power of FFDBs is manifested not just in its capability and flexibility in representing relational databases (Amihai Motro. Imprecision and incompleteness in relational databases: Survey. Information and Software Technology, 32(9):279-588, 1990; S. K. Lee. An extended relational database model for uncertain and imprecise information. Proceedings of VLDB, pages 211-220, 1992) with uncertainties and/or incompleteness, but also, as is shown below, in its ability to represent any deductive database (Raymond T. Ng. Reasoning with uncertainty in deductive databases and logic programs. International Journal of Uncertainty, Fuzziness and Knowledge-based Systems, 5(3):261-316, 1997) under uncertainty, i.e, augmented deductive database. Moreover, the concept of FFDB lends itself to the construction of augmented inductive databases. These databases can serve as formal framework for extracting new information from relational databases.
Clearly, an augmented deductive database, i.e., a deductive database centered on the relational database , can be represented by a FFDB κ, where κ. Using such a representation, the full force of the results obtained for AKBs can be applied to deductive databases. Therefore, unlike existing deductive databases, the augmented deductive database is capable of handling full-fledge uncertainties and/or incompleteness (520 and 525). According to an aspect of an embodiment, at 520, the deduction of 220 in FIG. 3 is applied to FFDB to obtain augmented deductive databases. According to an aspect of an embodiment, at 530, an inductive version of 230, defined in Paragraph 137, is applied to FFDB to obtain augmented inductive databases.
Consider an FFDB κ where κ and  is a relational database. If inductive reasoning (see Section 6) are employed instead of deductive reasoning, i.e., using φκ instead of σκ, then we have an augmented inductive database (530 and 535). Unlike deductive databases, we are not interested in searching, deducing, and/or generating views for inductive databases. Instead, we are interested in acquiring possible new knowledge from the database, i.e., data mining.
Most FFDBs are consistent. Nevertheless, κ may not be consistent. Thus, the construction of second order AKBs associated with κ given in Section 7 is central to data mining in a relational database.
As discussed in Section 7, there are many different ways to guarantee consistency by selecting different associated second order AKBs. The different selections give rise to various natural schemes that can be used in data mining.
From the above discussions, it is clear that augmented inductive database can serve as general framework and formal model for knowledge acquisition and data mining in relational databases, with or without uncertainties and/or incompleteness.
Section 9. Average and Stochastic Independence
The main objective of the rest of this document is to show how to extend the measure m, with domain ε, to {tilde over (m)}, with domain {tilde over (ε)}. We are particularly interested in those cases where both m and {tilde over (m)} are probability measures. This problem is central to many applications, in particular, reasoning in a knowledge-based system involving uncertainties and/or incompleteness, such as AKBs.
In the rest of this document, we shall denote by  the set of all non-negative integers, and denote by + the set of all positive integers.
Let us interpret the probabilities as frequencies. In other words, let ε2U (ε is a subset of the universal set U), |U|=n (the universal set U has n elements), and let m denotes a function from ε into [0, 1] such that for every E in ε, m(E)=k/n, where k=|E|. (|E| denotes the cardinality of E, i.e., the number of elements in E). Thus, m is a probability measure over ε, and m(E) represents the probability of E.
If the sets in ε are explicitly specified, the problem of extending a measure m to {tilde over (m)} can be based upon determining the cardinality of any set in {tilde over (ε)}. Unfortunately, this might not be the case. If E is in ε and |E|=k, then E can stand for any subset of U with cardinality k, subject to possibly some other constraints which will be discussed in subsequent sections.
A natural probabilistic extension for a measure m with domain ε to {tilde over (m)} with domain {tilde over (ε)} can be obtained by taking the average of the probabilities of all allowable sets in {tilde over (ε)}.
Let ε2U, and A, Bεε. Let |U|=n, |A|=a and |B|=b. Assume that A can represent any subset of U whose cardinality is a, and B can represent any subset of U whose cardinality is b. Then the average probability of A∩B is given by:




  
    
      m
      ~
    
    ⁡
    
      (
      
        A
        ⋂
        B
      
      )
    
  
  =
  
    
      
        
          ∑
          i
        
        ⁢
        
          [
          
            
              (
              
                
                  
                    n
                  
                
                
                  
                    a
                  
                
              
              )
            
            ⁢
            
              (
              
                
                  
                    a
                  
                
                
                  
                    i
                  
                
              
              )
            
            ⁢
            
              (
              
                
                  
                    
                      n
                      -
                      a
                    
                  
                
                
                  
                    
                      b
                      -
                      i
                    
                  
                
              
              )
            
            ⁢
            
              i
              n
            
          
          ]
        
      
      
        
          (
          
            
              
                n
              
            
            
              
                a
              
            
          
          )
        
        ⁢
        
          (
          
            
              
                n
              
            
            
              
                b
              
            
          
          )
        
      
    
    =
    
      
        
          
            (
            
              
                
                  
                    n
                    -
                    1
                  
                
              
              
                
                  
                    a
                    -
                    1
                  
                
              
            
            )
          
          ⁢
          
            (
            
              
                
                  
                    n
                    -
                    1
                  
                
              
              
                
                  
                    b
                    -
                    1
                  
                
              
            
            )
          
        
        
          
            (
            
              
                
                  n
                
              
              
                
                  a
                
              
            
            )
          
          ⁢
          
            (
            
              
                
                  n
                
              
              
                
                  b
                
              
            
            )
          
        
      
      =
      
        
          
            a
            n
          
          ×
          
            b
            n
          
        
        =
        
          
            m
            ⁡
            
              (
              A
              )
            
          
          ⁢
          
            m
            ⁡
            
              (
              B
              )
            
          
        
      
    
  




The probability of any Eεε above can be determined in a similar manner. In particular, it can be shown that {tilde over (m)}(A∩B′)=m(A) [1−m(B)] and {tilde over (m)}(A∪B)=m(A)+m(B)−m(A)m(B).
Under the assumption that no constraints are imposed, the average method used to compute {tilde over (m)}turns out to be the same as Scheme 2 given above. On the other hand Scheme 2 is based on the implicit assumption that the sets in ε are stochastically independent. Because of this, Scheme 2 fails completely if constraints exist among the sets in ε. If constraints exist, the sets may no longer be stochastically independent. For example, under Scheme 2, {tilde over (m)}(A∩B)=m(A) m(B) for all A and B, regardless, even in the cases where A B or A∩B=Ø.
Constraints among the sets in ε could be inherent in most applications. The average method discussed above will still work even when such constraints exist. This will be examined in detail in the subsequent sections. Indeed, as we shall see below, using the average method, a new measure over ε may be created which takes into consideration one or more of (e.g., all) the constraints involved; and under the new measure, the sets in ε may be viewed as stochastically independent. For this reason, we shall refer to this new method as the constraint stochastic independence method.
The constraint stochastic independence method is the basis of a new computational model of uncertain reasoning—augmented reasoning. One of the important advantages of this method is its ability to deal with relationships among the bodies of evidences, or its capability to take into account constraints imposed on the bodies of evidences. For knowledge-based systems, this provides a unique mechanism to resolve relationships among the bodies of evidences. As stated earlier, this is a clear departure from all existing knowledge bases, which are incapable of supporting such constraints. This added feature can lead to more powerful, robust, accurate and/or refined characterizations of knowledge bases.
Section 10. Constraints
Let ε2U, and A, B, Cεε, where the cardinality of U, A, B and C are n, a, b and c, respectively. Suppose the only constraint is (A∪B)∩C=Ø. (This is equivalent to the two constraints A∩C=Ø and B∩C=Ø.) In other words, A, B and C can represent any subsets of U with cardinality a, b and c, respectively, satisfying (A∪B)∩C=Ø. In this case, provided m(A)+m(C)≦1 and m(B)+m(C)≦1, the average probability of A∩B can be computed as follows:




  
    
      m
      ~
    
    ⁡
    
      (
      
        A
        ⋂
        B
      
      )
    
  
  =
  
    
      
        
          ∑
          i
        
        ⁢
        
          [
          
            
              (
              
                
                  
                    n
                  
                
                
                  
                    a
                  
                
              
              )
            
            ⁢
            
              (
              
                
                  
                    a
                  
                
                
                  
                    i
                  
                
              
              )
            
            ⁢
            
              (
              
                
                  
                    
                      n
                      -
                      a
                    
                  
                
                
                  
                    
                      b
                      -
                      i
                    
                  
                
              
              )
            
            ⁢
            
              i
              n
            
          
          ]
        
      
      
        
          (
          
            
              
                n
              
            
            
              
                a
              
            
          
          )
        
        ⁢
        
          (
          
            
              
                n
              
            
            
              
                b
              
            
          
          )
        
      
    
    =
    
      
        
          
            (
            
              
                
                  
                    n
                    -
                    1
                  
                
              
              
                
                  
                    a
                    -
                    1
                  
                
              
            
            )
          
          ⁢
          
            (
            
              
                
                  
                    n
                    -
                    1
                  
                
              
              
                
                  
                    b
                    -
                    1
                  
                
              
            
            )
          
        
        
          
            (
            
              
                
                  n
                
              
              
                
                  a
                
              
            
            )
          
          ⁢
          
            (
            
              
                
                  n
                
              
              
                
                  b
                
              
            
            )
          
        
      
      =
      
        
          
            m
            ⁡
            
              (
              A
              )
            
          
          ⁢
          
            m
            ⁡
            
              (
              B
              )
            
          
        
        
          1
          -
          
            m
            ⁡
            
              (
              C
              )
            
          
        
      
    
  




The above example illustrates the roles constraints play in the extension of m to {tilde over (m)}, as well as, the restrictions constraints imposed on the values of the original m.
It is clear from the above discussions that we do not have to be interested in the specific subsets of U. Each member E in ε represents a potential subset of U where |E| is fixed and E satisfies the constraints specified. The notation ε2U does not accurately reflect this concept. Therefore, in an embodiment of this invention, we shall introduce the new notation ε2U, together with certain related new concepts.
In the new notation ε2U, we can view each member of ε as a set variable which can be assigned certain subsets of U. For each Eεε, all subsets of U that can be assigned to E should have the same cardinality. This common cardinality will be denoted by |E|.
Given ε2U, ε is completely defined only if |E| is specified for every Eεε. Alternatively, we can specify a function m from ε into [0, 1] and let |E|=m(E)×|U| for all E∈ε. Observe that m(E) is the probability of any subset of U that can be assigned to E. We shall refer to m as a measure over ε, and denote by |•|m the cardinality induced by m, i.e., |E|m=m(E)×|U| for all Eεε. Clearly, if m(E)=0, then E can only be assigned the subset Ø; and if m(E)=1, then E can only be assigned the subset U. For simplicity, we shall also denote by Ø (U) the set variable that can be assigned only the set Ø(U).
The members of ε, where ε2U, may be subject to certain constraints as illustrated above. Each constraint imposed further restrictions on the subsets of U that can be assigned to the set variables in ε. It is clear from the above example that given a probability measure m and a collection of constraints  for ε, some additional conditions may have to be imposed to insure that m and  are compatible.
More formally, we start with a collection ε of objects. The collection {tilde over (ε)} is defined recursively as follows:
1. If Eεε, then E is in {tilde over (ε)}.
2. If Z, Z1, Z2ε{tilde over (ε)}, then Z′, Z1∪Z2 and Z1∩Z2 are in {tilde over (ε)}.
A constraint for ε is an expression of the form Z1 rel Z2, where Z1, Z2ε{tilde over (ε)} and rel is one of the following relational operators: , , ⊂, , , , ⊃, , =, ≠.
A complete instantiation ζ of ε is a mapping from ε into 2U. If ζ is a complete instantiation of ε, and W any expression or relation involving members of ε, then ζ(W) is the expression or relation, obtained by replacing each Eεε that occurred in W by ζ(E). In particular, if W is a constraint for ε, then ζ(W) is the set relation, obtained by replacing each Eεε that occurred in W by ζ(E). If ζ is a complete instantiation of ε, and  is a collection of constraints for ε, then ζ() is the collection of all ζ(W) where Wε. Let  be a collection of constraints for ε, and W a constraint for ε. W is derivable from  if and only if for all complete instantiation ζ of εζ(W) follows from ζ(). Let 1 and 2 be collections of constraints for ε. 1 and 2 are equivalent if and only if for every constraint W for ε, W is derivable from 1 whenever W is derivable from 2, and vice versa.
A complete definition of ε2U requires the specification of a collection  of constraints for ε ( may be empty, i.e., no constraint is imposed on ε), and a measure m over ε. A measure m over ε is a function from ε into [0, 1] such that for every Eεε, |E|m=|U|×m(E)ε.
A complete instantiation ζ of ε is legitimate over m and  if and only if for each Eεε, |ζ(E)|=|E|m, and for every Wε, ζ(W) holds.
Let m be a measure over ε and ζ a legitimate complete instantiation of ε over m and . Let ζm be a function from ζ(E)={ζ(E)|Eεε} into [0, 1], where ζm(ζ(E))=m(E). Clearly, ζm is a probability measure over ζ(E).
If there is at least one complete instantiation legitimate over m and , then m and  are compatible (or m is compatible with ).  is consistent if and only if m and  are compatible for some measure m over ε. The issue of compatibility is addressed in Section 13 below.
Let  be a collection of constraints for ε2U, and m a measure over ε. Let W be a relation involving m and members of ε. W is valid if and only if for all complete instantiation ζ of ε legitimate over m and , ζ(W) holds.
In what follows, if  is a collection of constraints for ε2U, then  is assumed to be consistent. Moreover, given ε2U, if the concepts or results hold for arbitrary , then  will not be specified. In other words, no  doesn't mean that  is empty. Similarly, if the concepts or results hold for arbitrary m, then m will not be specified.
Let ε2U,  a collection of constraints for ε, and m a measure over ε which is compatible with . {tilde over (m)} is the function from {tilde over (ε)} into [0, 1], such that for every Eε{tilde over (ε)}, {tilde over (m)}(E) is the average of all |ζ(E)|, where ζ is taken over all complete instantiations of ε which are legitimate over m and .
Clearly, in the above definition, the extension of m to {tilde over (m)} corresponds to using the average for finding the probability of the new set. The compatibility of m and  guarantees that {tilde over (m)} is a ‘probability measure’.
In both the examples given above, {tilde over (m)}(A∩B) is well-defined or unique, since their values depend solely on the probabilities of the sets which are involved. However, this is not true in general.
It can be shown that inclusion of the relational operators of the types ≠, , , or  in a collection of constraints for ε, may cause the extension {tilde over (m)} of m to be ill-defined, i.e., not well-defined.
In addition, for the extension {tilde over (m)} to be well-defined, all constraints of the form B1∩B2∩ . . . ∩Bl=Ø, where l>2, should be derivable from other constraints. In other words, one need only considers disjoint relations or constraints of the form A∩B=Ø. Unfortunately, as we shall see in the next section, this restriction, together with the restrictions given below, are not sufficient to guarantee that the extension will be well-defined (i.e., the extension will depend solely on the individual probabilities).
There are many possible constraints or relations among the elements in ε2U, which do not contain relational operators of the types ≠, , ,  and . These constraints are listed below:
1. (disjoint) In view of remark given above, an example intersection involving only two members of ε is described. Let A, Bεε. Since A′∩B′=Ø is equivalent to A∪B=U, all such relationships will be replaced by equivalent relationships discussed below (Case 6) and dealt with accordingly. In addition, A∩B′=Ø is equivalent to AB. These relations will be converted to subset relations (case 2) and dealt with accordingly. Thus, we shall restrict our attention only to disjoint relations of the form A∩B=Ø where both A and Bεε. In addition, if A  B and B∩C=Ø, then A∩C=Ø. Thus, it is essential to capture these implied disjoint relations.
2. (subset) Let A, Bεε. Clearly,

    
    
        A B′ is equivalent to A∩B=Ø (Case 1 above);
        A′B is equivalent to A∪B=U (Case 6 below); and
        A′B′ is equivalent to BA.

Therefore, it is only necessary to consider A B where A, Bεε. However,  is a transitive relation. Thus, it is essential that we captured most of, or all, or a number of according to application criteria, the subset relations, whether they are explicit, implicit or derived. Moreover, subset relations could give rise to equality relations. These equality relations (case 3) should be captured and dealt with accordingly.

    
    


3. (equality) Let A, Bεε. If A=B, then we can remove B from ε and replace all occurrences of B by A, and all occurrences of B′ by A′. Alternatively, A=B can be replaced by |A|=|B|, and either A B or BA. (If either A B or BA is implied by other constraints, then replace A=B with |A|=|B|.) A=B′ is equivalent to {A, B} is a partition of U, which is Case 4 below. Furthermore, A=Ø can be replaced by |A|=0, and A=U can be replaced by |A|=1.
4. (partition) {A1, A2, . . . , Ak} is a partition of A0 if and only if the following conditions hold:

    
    
        a. Ai∩Aj=Ø for all 1≦i, j≦k and i≠j;
        b. AiA0 for 1≦i≦k; and
        c. |A0|=|A1|+|A2|+ . . . +|Ak|.

Hence, all partition relations can be replaced by disjoint relations and subset relations, plus imposing certain conditions on the measure m.

    
    


5. (A∩B=C) If A∩B=C≠Ø, then extend ε to include the objects G1 and G2, where |G1|=|A|−|C| and |G2|=|B|−|C|. In essence, we are trying to decompose A and B into the sets A=G1∪C and B=G2∪C. Clearly, A∩B=C is completely characterized by the values assigned to |G1| and |G2|, and the facts that {C, G1} is a partition of A, and {C, G2} is a partition of B.
6. (A∪B=C) If A∪B=C, then extend E to include the objects G0, G1 and G2, where |G0|=|A|+|B|−|C|, |G1|=|A|−|G0|, and |C2|=|B|−|G0|. In essence, we are trying to decompose A and B into the sets G0=A∩B, G1=A−G0 and G2=B−G0. Clearly, A∪B=C is completely characterized by the values assigned to |G0|, |G1| and |G2|; the three sets G0, G1 and G2 are pairwise disjoint; and the facts that {G0, G1} is a partition of A, and {G0, G2} is a partition of B. In view of Cases 1 and 2 above, the case C=U is of particular significance.
7. (intersection) A0=A1∩A2∩ . . . ∩Ak is equivalent to A1∩A2∩ . . . ∩Ak∩A0′=Ø. In view of the above result, only the case k=2 will be considered. This is equivalent to Case 5 above.
8. (union) A0=A1∪A2∪ . . . ∪Ak is equivalent to A0′=A0′∩A2′∩ . . . ∩Ak′. Therefore, only the case k=2 will be considered. This is equivalent to Case 6 above.
9. (proper subset) Let A, Bεε. A⊂B if and only if A B and |A|<|B|.
Observe that:

    
    
        constraints of the form AB∪C and of the form A∩BC, if not derivable from other constraints, may cause {tilde over (m)} to be ill-defined;
        constraints of the form B∪CA can be characterized using only subset relations; and
        constraints of the form CA∩B can be characterized using only subset relations.
    
    


The above discussions show how various constraints or relations can be transformed into constraints or relations of the form A∩B=Ø and/or A B, where A, Bεε.
Section 11. Graph Representations
FIG. 11 is a flow diagram for generating graph representations, according to an embodiment of the present invention. Actually FIG. 11 presents 2 graphs representations which are used in subsequent discussions—admissibility and compatibility. Both representations are described in this Section. In the previous section, we showed that constraints or relations that can be transformed into constraints or relations of the form A∩B=Ø and/or AB, where A, Bεε are, for example, necessary for the extension to be well-defined. In this section, we shall show that these conditions might not be sufficient. In order to get a better understanding of the structures of collections of constraints, we shall also represent collections of constraints using graphs.
Let ε2U. An acceptable constraint or relation for ε is a constraint or relation of the form A∩B=Ø or of the form A B, where A, Bεε. Moreover, let  be a collection of constraints for ε2U.  is weakly acceptable if and only if every constraint in  is acceptable.
Clearly,  is transitive. Moreover, if A  B and B∩C=Ø, then A∩C=Ø. Therefore, there might be constraints or relations not in  but implied by the constraints or relations in .
Let  be a collection of constraints for ε2U.  is maximal if and only if all acceptable constraints implied by  are also in . Moreover, X will denote the smallest weakly acceptable collection of constraints that contains  and is maximal.
Algorithm 1. (Construction of X) Let  be a weakly acceptable collection of constraints for ε2U.

    
    
        1. Let X=.
        2. Let 0 be the subset of  which contains all the subset relations of , i.e., (A B) ε0 if and only if (A  B)ε.
        3. Construct the transitive closure of 0 using any standard method, for example, Alfred V. Aho, John E. Hoperoft, and Jeffrey D. Ullman. The Design and Analysis of Computer Algorithms. Addison Wesley, 1974.
        4. Enlarge X to include all members in the transitive closure of 0 
        5. For each (A B)εX, let  be the set of all relations of the form (B∩C=Ø)εX. For each relation (B∩C=Ø)ε, add to X the relation (A∩C=Ø).
    
    


Let  be a weakly acceptable collection of constraints for ε2U.

    
    
        1. The directed graph associated with (ε, ), denoted by ε(), is the directed graph (ε,), where ={(A, B)|A, Bεε, either (A∩B=Ø) or (A B)ε}.
        2. The SR-graph associated with (ε,) is the directed graph =(ε, ) where ={(A, B)|A, Bεε, (A B)ε}.
    
    


Let  be a weakly acceptable collection of constraints for ε2U, and let  be the SR-graph associated with (ε, ). Clearly, every directed cycle in  is equivalent to some B1B2 . . . Bk, where B1=Bk, and vice-versa. This implies that B1=B2= . . . =Bk. Due to the above observation, the following algorithm can be used to remove one or more of (e.g., all) equality relations and one or more of (e.g., all) subset relations in C that give rise to equality:
Algorithm 2. (Removal of Equality Relations) Let  be a weakly acceptable collection of constraints for ε2U, and  be the SR-graph associated with (ε, ).

    
    
        1. Remove both A B and BA if both are in .
        2. Determine all directed cycles in  (this can be done using standard algorithms, for example, depth-first search algorithm discussed in Alfred V. Aho, John E. Hoperoft, and Jeffrey D. Ullman. The Design and Analysis of Computer Algorithms. Addison Wesley, 1974).
        3. Remove all the subset relations from  which appear in the directed cycles.
        4. Process the equality relations obtained in the Steps 1, and/or 2 using the methods given above on how to handle equality.
    
    


Given a weakly acceptable collection of constraints  for ε2U.  is acceptable if and only if  is maximal, Ø∉ε, and no equality relation between any two members of ε can be derived from the constraints in .
Let  be an undirected graph and let C be a cycle in . C is pure if and only if C is simple, has length >3, and contains no subcycles. If  is a directed graph and C an undirected cycle in , then C is a pure cycle of  if and only if C is a pure cycle of ||.
Let  be an acceptable collection of constraints for ε2U. If there exists a pure cycle in |ε()|, then the extension of m is not well-defined (it is not dependent solely on the individual probabilities).
Section 12. Admissibility
FIG. 12 is a flow diagram for checking for admissibility, according to an embodiment of the present invention. We have shown in the previous section that for m to have a well-defined extension, not only is it necessary that the collection  of constraints be acceptable, but also that the undirected graph that represents  cannot have any pure cycle. The main result of this section asserts that this is not only a necessary condition, but it is also a sufficient condition.
Let  be a directed or undirected graph.  is admissible if and only if  has no pure cycles. Moreover, let  be an acceptable collection of constraints for ε2U.  is admissible if and only if ε() is admissible.
Clearly, if  is empty, then  is admissible.  is empty means the elements in ε are not subject to any explicit constraints.
Let =(V, ) be an undirected graph and  a total ordering on V.  is permissible on  if and only if for every A, B, CεV, if {A, B}, {A, C}ε and {B, C}∉, then either AB or AC. Let =(V, ) be a tree with root T.

    
    
        Let AεV. d(A), the depth of A over , is the length of the path from T to A. In particular, d(τ)=0.
        Let AεV. C(A) is the set of all children of A in .
         is the total ordering on V, where for all A, BεV, AB if and only if either d(A)<d(B), or d(A)=d(B) and A lies to the left of B.
        Let AεV. L(A) is the set of all BεV where B=A; d(A)=d(B) and AB; or B is the child of some E in  where d(E)=d(A) and EA.
    
    


Let =(V, ) be a forest, i.e., a collection of disjoint trees, and  a total ordering on V.  is compatible with  if and only if for every A, BεV, AB whenever AB for some tree  contained in .
Let =(V, ) and 0=(V0, 0) be directed or undirected graphs. 0 is a maximal directed or undirected subgraph of  if and only if V0V, and for every A, BεV0, {A, B}ε0 if and only if {A, B}ε.
Let =(V, ) be an undirected graph and  a total ordering on V. The following algorithm provides a constructive definition for the concept of recursive breadth-first search (RBFS) forest for  based on . An RBFS forest can be constructed recursively using recursive breadth-first search. In the following algorithm, the nodes in V are initially unmarked, and marking of nodes is a global operation.
Algorithm 1. (Construction of RBFS Forest) Given an undirected graph =(V, ) where V≠Ø, and  a total ordering on V.

    
    
        1. Let Q be a queue which is initially empty.
        2. Let be a forest which is initially empty.
        3. While there are unmarked nodes in V, do the following:
        
            a) Let T be the unmarked node in V that precedes all other unmarked nodes in V under .
            b) Mark T, and enqueue T into Q.
            c) Add to  the tree  which includes the node T (The root of  is T).
            d) Add to  the tree  which includes the node T (The root of  is T).
            
                i. Dequeue from Q and let E be the node dequeued.
                ii. Let S be the set consisting of all unmarked nodes in V which are neighbor of E in .
                iii. If S is not empty, do the following:
                
                    A. Let 0=(S, 0) be a maximal undirected subgraph of .
                    B. Call Algorithm 1 with input 0 and let 0 be the output from the algorithm.
                    C. Let S be a total ordering on S compatible with 0 and order S according to S.
                
                
                D. Make the nodes in S children of ε and arranged the children in the prescribed order, i.e., according to S.
                
                    E. Append S to Q in the prescribed order, i.e., according to S.
                
                
            
            
        
        
        4. Output .
    
    


Let =(V, ) be an undirected graph and let  be a total ordering on V. Let 0 be a total ordering on V.  is an RBFS-ordering on  based on 0 if and only if  is compatible with the RBFS forest for  based on 0. Moreover,  is an RBFS-ordering on  if and only if there exists a total ordering 0 on V such that  is an RBFS-ordering on  based on 0.
Let  be an acceptable collection of constraints for ε2U. The following statements are equivalent:

    
    
        1.  is admissible.
        2. |ε()| is admissible.
        3. |ε()| contains no pure cycle.
        4. There exists a total ordering on ε which is permissible on |ε()|.
    
    


5. Any RBFS-ordering on |ε()| is permissible on |ε()|.
Any of the criteria above can be used to test and ensure that  is admissible.
We shall now provide a polynomial algorithm to determine whether or not a given acceptable collection of constraints for ε2U is admissible, based on 5 above. It is clear that RBFS forest and RBFS-ordering can play a central role in the following algorithm.
Algorithm 2. (Checking for Admissibility) Let  be an acceptable collection of constraints for ε2U.

    
    
        1. Construct =|ε()|.
        2. Let 0 be any total ordering on ε. Construct the RBFS-ordering  over  based on 0 using Algorithm 1.
        3. For i=1 to i=|E|, do the following:
        
            a) Determine (Ei).
            b) For every A, Bε(Ei), determine whether or not {A, B} is in . If {A, B} is not in , stop.  is not admissible. Otherwise, continue.
        
        
        4. Stop.  is admissible.
    
    


Section 13. Compatibility
FIG. 13 is a flow diagram of checking for compatibility, according to an embodiment of the present invention. Sufficient conditions for m and  to be compatible are given in this section. An optimal method for adjusting the values of a given measure to make it compatible with the constraints is also provided.
Let C be an acceptable collection of constraints for ε2U and Bε. B is well-nested under C if and only if for every A, BεB, rC(A, B) is defined, i.e., any pair of sets in 8 are either disjoint or one of the set is a subset of the other. In addition, if 8 be well-nested under C and T=(V, R) is a tree, then T is a well-nested tree of 8 if and only if V=B∪{U}, and for every A, BεV, A is the parent of B in T if and only if AB.
Let  be an admissible collection of constraints for ε2U, =|ε()|,  a RBFS-ordering over  based on some total ordering on ε, and 1≦|ε|. The following algorithm provides constructive definitions for , and .
Algorithm 1. (Construction of , and ) Let  be an admissible collection of constraints for ε2U and 0 a total ordering on ε.

    
    
        1. Construct =|ε()|.
        2. Construct the RBFS-ordering  over  based on 0 using Algorithm 1.
        3. Order the nodes in  according to . Say E1, E2, . . . Em.
        4. For k=1 to k=m, do the following:
        
            (a) Determine (Ek).
            (b) Construct a well-nested tree k for (Ek).
            (c) Let  be the parent of Ek in k.
            (d) Let  be the collection consisting of all siblings of Ek in k.
            (e) Let  be the collection consisting of all children of Ek in k.
        
        
        5. Return the following sequences:
        
            (a) ,, . . . 
            (b) ,, . . . 
            (c) ,, . . . 
        
        
    
    


Let  be an admissible collection of constraints for ε2U, where ε is ordered by a RBFS-ordering  over  based on some total ordering on ε, m a measure over ε, and 1≦k≦|ε|.

    
    
        =m()
        =m(E)
        =m(E)
    
    


Let  be an admissible collection of constraints for ε2U, and m a measure over ε. m is super additive over  if and only if m(E)≧ΣE0εε0m(E0) for every Eεε and E0ε, where all members of ε0 are pairwise disjoint and E0E for every E0εε0.
As shown in the following theorem, there are more than one method to test for admissibility—super additivity, permissible total ordering, etc.
Let  be an admissible collection of constraints for ε2U and let m be a measure over ε. The following statements are equivalent:

    
    
        1. m and  are compatible.
        2. m is super additive over .
        3. There exists a total ordering  on ε which is permissible on =|ε()|, such that for all 1≦i≦m, ≦m(Ei)≦−, where ε={E1, E2, . . . , Em} is ordered according to .
        4. For all total ordering  on ε which is permissible on =|ε()|, and for all 1≦i≦m, ≦m(Ei)≦−, where τ={E1, E2, . . . , Em} is ordered according to .
    
    


Criteria 2, 3 or 4 above together with Algorithm 1 can be used to test and ensure that m and  are compatible.
Let  be a collection of constraints for ε2U, and let ε0ε, E0εε∪{U}. ε0 is a disjoint group of ε0 under  if and only if EE0 for every Eεε0, and all the members of ε0 are pairwise disjoint under . Moreover, ε0 is a maximal disjoint group of E0 under  if and only if ε0 is a disjoint group of E0 under , and for every ε1ε where ε1⊃ε0, ε1 is a NOT a disjoint group of E under .
FIG. 14 is a flow diagram of guaranteeing compatibility, according to an embodiment of the present invention.
Problem 1. (Minimization Problem for Compatibility)
Let  be a collection of constraints for ε2U, and m a measure over ε.

    
    
        1. For each Eεε∪{U}, let xE be a real variable where 0≦xE≦m(E).
        2. For each E0ε and E0εε where ε0 is a maximal disjoint group of E0 under , introduce the linear constraint ΣEεε0xE≦xE0.
        3. Minimize the objective function ΣEεε(m(E)−xE)2,
    
    


Problem 1 is a quadratic programming problem (Alexander Schrijver. Theory of Linear and Integer Programming. John Wiley, 1998) and therefore can be solved using standard techniques.
Let  be a collection of constraints for ε2U, and m a measure over ε. Let xE be a solution of Problem 1, and let m0(E)=xE for every Eεε. Then m0 is the measure over ε induced by m.
The above definition can be extended to partial measures. A partial measure m over ε is a measure over some subset of ε. In this case, we extend m such that m(E)=1 for all Eεε which are not in the domain of m.
There are many other ways to guarantee that  and m are compatible, besides solving Problem 1. Nevertheless, the measure m0 above is the measure closest to m, in the least square sense, without exceeding it. It should be noted that adjustment of the values of any measure might need to be done only sparingly to ensure the integrity of  and m.
Section 14. Preprocessing and Extension
FIG. 15 is a flow diagram of preprocessing, according to an embodiment of the present invention. In order to make the computation of {tilde over (m)}(E), where Eε{tilde over (ε)}, more efficient, an algorithm for preprocessing ε,  and m is given. The preprocessing algorithm also determines whether or not  is admissible, and whether or not m and  are compatible.
Algorithm 1. (Preprocess ε,  and m) Let  be an acceptable collection of constraints for ε2U, 0 a total ordering on ε, and m a measure over ε.

    
    
        1. Construct =|ε()|.
        2. Construct the RBFS-ordering  over  based on 0 using Algorithm 1.
        3. Order the nodes in  according to . Say E1, E2, . . . Em.
        4. For k=1 to k=m, do the following:
        
            a) Determine (Ek).
            b) For every A, Bε(Ek), determine whether or not {A, B} is in . If {A, B} is not in , stop.  is not admissible. Otherwise, continue.
            c) Construct a well-nested tree k for (Ek).
            d) Determine , , and . (see Algorithm 1)
            e) Test whether or not the conditions for compatibility are satisfied. If any of the conditions are violated, stop.  is not compatible with m. Otherwise, continue.
            f) Let (Ek)=[m(Ek)−]÷[−−].
        
        
        5. Return .
    
    


The preprocessing of ε,  and m, combines all the constraints in  and produces a new function . Clearly,  is a measure over ε.
Let  be an admissible collection of constraints for ε={E1, E2, . . . , Em}2U, where ε is ordered by some total ordering  on ε which is permissible on |lGξ()|. If Eεε, then define (E′)=1−(E).
Let 2U. B=∪{B′|Bε}. Moreover, let ε2U.  is coset of ε if and only if ε and for every Eεε, not both E and E′ are in .
Let  be an admissible collection of constraints for ε={E1, E2, . . . , Em}2U, where ε is ordered by some total ordering  on ε which is permissible on |Gε()|, and  a coset of ε. The -cover () of  under  is the smallest coset of ε satisfying the following conditions:

    
    
        1. ();
        2. If B=Ek and there exists B0ε() where B is the parent of B0 with respect to the well-nested tree k for (Ek), then Bε(); and
        3. If B=Ek and there exists B0ε() where B is a sibling of B0 with respect to the well-nested tree k for (Ek), then B′ε().
    
    


Let  be an admissible collection of constraints for ε={E1, E2, . . . , Em}2U, where ε is ordered by some total ordering  on εwhich is permissible on |lGε()|, m a measure over ε which is compatible with , and  a coset of ε. Let I() be the intersection of all the sets in . If I()≠Ø, then for every permissible total ordering  on ε:




  
    
      m
      ~
    
    ⁡
    
      (
      
        I
        ⁡
        
          (
          B
          )
        
      
      )
    
  
  =
  
    
      
        m
        ~
      
      (
      
        
          ⋂
          
            
              B
              ∈
              
                Λ
                G
              
            
            ,
            
              ≺
              
                (
                B
                )
              
            
          
        
        ⁢
        
          (
          B
          )
        
      
      )
    
    =
    
      
        ∏
        
          B
          ∈
          
            
              Λ
              
                G
                ,
                ≺
              
            
            ⁡
            
              (
              B
              )
            
          
        
      
      ⁢
      
        
          
            m
            
              G
              ,
              ≺
            
          
          ⁡
          
            (
            B
            )
          
        
        .
      
    
  




In particular, if =Ø, then




  
    
      m
      ~
    
    ⁡
    
      (
      
        I
        ⁡
        
          (
          B
          )
        
      
      )
    
  
  =
  
    
      
        m
        ~
      
      (
      
        
          ⋂
          
            B
            ∈
            B
          
        
        ⁢
        
          (
          B
          )
        
      
      )
    
    =
    
      
        ∏
        
          B
          ∈
          B
        
      
      ⁢
      
        
          
            m
            
              G
              ,
              ≺
            
          
          ⁡
          
            (
            B
            )
          
        
        .
      
    
  




The above result provides a method for determining {tilde over (m)}(I()). Clearly, under , the relevant sets in ε are basically stochastically independent. This is the reason why we named our method constraint stochastic independence method. Furthermore, {tilde over (m)}(I()) can be determined in O(||2)-time after preprocessing.
In general, if Gε{tilde over (ε)}, we can express G as union of intersections of sets, such as disjunctive normal form. If all the terms in the expression are pair-wise disjoint, {tilde over (m)}(G) can be determined by applying the above result to each term and then summing them.
Section 15. Unification Algorithms
In this section, we provide several algorithms for determining σκ(F).
Let  be a collection of propositions.

    
    
        ={P′|Pε} and =∪.
         is the collection of all VPεwhere . For completeness, VPεP=F if =Ø.
         is the smallest collection of propositions containing  and close under negation, conjunction and disjunction.
    
    


Let  be a collection of atomic propositions.  is a coset of  if and only if , and for every Pε, not both P and P′ are in . Let Lε.L is d-simple if and only if L=VPεP for some coset  of .
Without loss of generality, we shall assume that L is d-simple whenever Lε.
An AKB κ is disjunctive if and only if there exists a finite collection κ of atomic propositions such that Aεκ for every (E→A)εκ.
We shall assume that κ is the smallest collection of atomic propositions that satisfies the above definition.
The following show how to transform an arbitrary AKB into a disjunctive AKB.
Algorithm 1. (Disjunctive AKB) Given an AKB κ.

    
    
        1. For each ωεκ, do the following:
        
            (a) Express r(ω) as L1L2 . . . Lk, where Liεκ and Li is simple for each i=1, 2, . . . , k.
            (b) For each i=1, 2, . . . , k, add to κ the object l(ω)→Li.
            (c) Remove ω from κ.
        
        
        2. Return κ.
    
    


Let κ be an AKB. κ is irreducible if and only if κ satisfies the following conditions:

    
    
        1. For every ωεκ, l(ω)≠Ø and r(ω)≠T.
        2. κ is disjunctive.
        3. For every ωh, ω2εκ, if r(ω1)=r(ω2), then l(ω1)=l(ω2).
        4. For every ω1, ω2εκ, if r(ω1)r(ω2), then l(ω1)l(ω2).
    
    


The following show how to transform an arbitrary AKB into an irreducible AKB. Algorithm 2. (Irreducible AKB)

    
    
        Given an AKB κ.
        1. Remove all ω from κ where l(ω)=Ø or r(ω)=T.
        2. Transform κ into a equivalent disjunctive AKB using Algorithm 1.
        3. Let κ={ωκr|ωεκ}, where ωκr=μεκ,r(μ)=r(ω)μ.
        4. For every ωεκ, let κω={μεκ|ρ(r(μ))ρ(r(ω))}.
        5. For every ωεκ such that |κω|>1, replace ω with Vμεκωμ.
        6. Return κ.
    
    


Let κ be an irreducible AKB.

    
    
         Ωκ={E→A|EU, Aεκ}, {hacek over (Ω)}κ={E→A|EU, Aεκ} and {tilde over (Ω)}κ={E→A|EU, A∈κ}.
        Let Ø=Ω {tilde over (Ω)}κ. Then wεΩ=(U→T) and VwεΩω=(Ø→F).
    
    


Let ωε{tilde over (Ω)}κ. ρ(ω) is the collection of all Pεκ that occur in r(ω), and |ω|=|ρ(ω)|. Let κ. ω/ is obtained from ω by removing from r(ω) all Pε. If ρ(ω), then ω/=(l(ω)→F). Moreover, if ={P}, then ω/P=ω/.
Let λκ and κ.

    
    
        λ={με|ρ(μ)}, λ=μελ|∩ρ(μ)=Ø, and λ/={μ||μεα}.
        If ={P}, then λP=λ, λP= λand λ/P=λ/.
    
    


Let κ be an irreducible AKB and Pεκ. P is a useless symbol if and only if κP=Ø or κP′=Ø. Moreover, κ is useful if and only if P is not a useless symbol for all Pεκ.
The following show how to transform an irreducible AKB into a useful AKB. Algorithm 3. (Useful AKB) Given a irreducible AKB κ.

    
    
        1. While there exists a useless symbol Pεκ, let κ= κ{P,P′}.
        2. Return κ.
    
    


Let κ be an irreducible AKB, ω1, ω2ε{hacek over (Ω)}κ and Pεκ. P is complemented with respect to ω1 and ω2 if and only if either Pερ(ωh) and P′ερ(χ2), or P′ερ(χ1) and Pερ(χ2).
Let κ be an irreducible AKB and ω1, ω2ε{hacek over (Ω)}κ. c(ω1, ω2) is the collection of all Pεκ where P is complemented with respect to ω1 and ω2.
Let Pεκ.

    
    
        ω1 ̃Pω2 if and only if Pερ(ω1), P′ερ(ω2) and c(ω1/P, ω2/P′)=Ø.
        ω118 ω2 if and only if ω1 ̃Pω2 for some Pεκ. In other words, ω1 ̃ω2 if and only if |c(ω1, ω2)|=1.
        If ω1 ̃Pω2 where Pεκ, then ω1⋄ω2=(l(ω1)∩l(ω2)→r(ω1/P)r(ω2/P′)). Otherwise, ω1⋄ω2 is not defined. In other words, ω1⋄ω2 merges ω1 and ω2 and removes both P and P′. In this case, we say that ω1 and ω2 are mergeable (300)
        Γ(κ, ω)=(κ−{μεκ|r(μ)=r(ω)})∪{μεκ,r(μ)=r(ω)μ}.
    
    


FIG. 4 is a flow diagram of an example unification algorithm, according to an aspect of an embodiment of the invention. FIG. 4 also emphasizes a new unification operator for reasoning under uncertainties and/or incompleteness capable of managing the rules and the sets of evidences together.
Algorithm 4. (Unification Algorithm) Given a irreducible AKB κ.

    
    
        1. Do while there exists an unmarked pair (ω1, ω2), where ω1, ω2εκ and ω1 ̃ω2:
        
            (a) Let κ=(κ, ω1⋄ω2).
            (b) Mark (ω1, ω2).
        
        
        2. Let ={GU|(G→F)εκ}. If ≠Ø, then return UGεG. Otherwise, return Ø.
    
    


Let κ be an irreducible AKB and Pεκ. Since σκ(F)=σκ(P)∩σκ(P′), therefore σκ(F) can be determined recursively on κ. Although this requires the computations of both σκ(r(ω)) and σκ((r(ω)′)), the two can be carried out in an integrated manner. Moreover, it can be used to reduce the size of κ.
The following show how to construct κ|P given an irreducible AKB κ, and Pεκ.
Algorithm 5. (Construction of κIP) Given a irreducible AKB κ, and Pεκ. Return κ|P.

    
    
        1. Do while there exists an unmarked pair (ω1, ω2), where ω1εκP, ω2εκP′, and ω1 ̃Pω2 
        
            (a) Let κ=(κ, ω1⋄ω2).
            (b) Mark (ω1, ω2).
        
        
        2. Return {acute over (κ)}{P,P′}.,
    
    


Algorithm 5 can be used as a basis for a unification algorithm as shown below:
Algorithm 6. (Unification Algorithm based on κ|P) Given a irreducible AKB κ. Return G U.

    
    
        1. While there exists Pεκ, apply Algorithm 5 with input κ and P, and let κ=κ|P.
        2. Let ={GU|(G→F)εκ}. If ≠Ø, then return ∪GεG. Otherwise, return Ø.
    
    


By virtue of the above results, ω1⋄ω2, where ω1 ̃ω2, can be used as the basic operation in any unification algorithm for determining σκ(F). (See FIG. 4) The operator ⋄ is capable of performing deduction under uncertainties and/or incompleteness and is therefore a significant and natural generalization of the classical deduction process. Step 5 of Algorithms 4 and 6 can be intentionally left vague so that any ordering of (ω1, ω2), where ω1, ω2εκ and ω1 ̃ω2, and any ordering of κ, can be used. As a matter of fact, many heuristics can be applied to various unification algorithms, e.g., Algorithms 4 and 6, to make them more efficient.
If necessary, the algorithms below can be used to reduce the size of κ, and therefore can be used to devise approximate algorithms to determine σκ(L).
Algorithm 7. (Processing Rules with length≦q) Given a irreducible AKB κ and a non-negative integer q. Return κ(q).

    
    
        1. Apply Algorithm 3 to transform κ into an equivalent useful AKB.
        2. While there exists an unmarked pair (ω0, ω1) where ω0, ω1εκ such that |ω0|≦q and ω0 ̃ω1, do the following:
        
            (a) Let κ=(κ, ω0⋄ω1).
            (b) Mark the pair (ω0, ω1).
        
        
        3 Return κ.
    
    


Let κ be an irreducible AKB, ω1, ω2εκ, and ω1 ̃ω2. d(ω1, ω2)=|ω1⋄ω2|−max(|ω1|,|ω2)|.
Algorithm 8. (Processing Rules with d(ω1, ω2)≦q) Given a irreducible AKB κ and integer q≧−1. Return κ[q].

    
    
        1. Apply Algorithm 3 to transform κ into an equivalent useful AKB.
        2. While there exists an unmarked pair (ω1, ω2) where ω1, ωtεκ such that d(ω1, ω2)≦q, do the following:
        
            (a) If ω1 ̃ω2, replace κ by (κ, ω1⋄ω2).
            (b) Mark the pair (ω1, ω2).
        
        
        3. Return κ.
    
    


The embodiments of the present invention can provide one or more of the following:
A computer-based method for constructing, reasoning, analyzing and applying knowledge bases with uncertainties and/or incompleteness. The system/model will be referred to as augmented knowledge base (AKB): (See Section 1)

    
    
        (a) The objects in an AKB are of the form E→A, where A is a logical sentence in a first-order logic, a proposition or a rule in the traditional sense, and E is a set corresponding to the body of evidences that supports A.
        (b) No restrictions are imposed on E→A. For example, it is possible to have both E1→A and E2→A in the AKB κ. This means two or more sets of evidences can be used to support the same rule, thereby allowing, among other things, multiple experts/sources to be involved in designing a single AKB.
        (c) Relationships among the bodies of evidences can be specified explicitly. In other words, constraints may be imposed on the bodies of evidences.
        (d) A mapping associates each set (body of evidences), not each rule, with a value.
        (e) In an AKB, evidences (the E's) and rules (the A's) represent completely different objects and each play an essential but separate role in the operations of an AKB.
    
    


FIG. 3 provides the basic mechanism for deductive reasoning on an AKB, according to an embodiment of the present invention. The basic mechanism associated with deductive reasoning on an AKB κ is




  
    Gk
    ⁢
    
      ->
      d
    
    ⁢
    
      
         
        κ
      
      ⁢
      L
    
  
  ,




where G is a body of evidences and L is a target rule. The support σκ(L) of L with respect to κ, and the plausibility σκ(L) of L with respect to κ can all be determined using





  Gk
  ⁢
  
    ->
    d
  
  ⁢
  
    
      
         
        κ
      
      ⁢
      L
    
    .
  




(See Section 1)

Computation of σκ(L) and σκ(L), the support and plausibility of L, where L is a target rule, using σκ(L)=σκ0(F) where κ0=κ∪{U→L′}; and σκ(L)=σκ1(F) where κ1=κ∪{U→L}. (See Section 1). This provides a universal method for computing the support and plausibility of L, for any L.
A new unification operator ω1⋄ω2 which is applicable to knowledge bases with uncertainties and/or incompleteness. (See Unification Algorithms Section). This new unification operator extends and generalizes the classical unification operators. The classical unification operators are not capable of dealing with uncertainties and/or incompleteness. (See also FIG. 4)
Several unification methods/algorithms for determining σκ(F). (See Unification Algorithms Section). FIG. 4 is a flow diagram of an example unification algorithm, according to an aspect of an embodiment of the invention.
Functions or mappings representing the strength or validity of the body of evidences associated with a given rule, as well as, associated with all relevant rules. They are referred to as measure. (See Section 2)
AKBs can use the extension scheme constraint stochastic independence method given above and/or any other extension schemes, like those given in Section 2. Moreover, AKB can select more than one scheme at a time, and applied them either simultaneously and/or conditionally.
FIG. 6 is a flow diagram of deductive inference in AKB, according to an embodiment of the present invention. Method for performing deductive inference in an AKB—done in two separate steps: Given AKB κ (350) and target rule L (355). (See Sections 2 and 4).

    
    
        (1) Form the body of evidences that supports L. This can be accomplished by applying any of the Unification Algorithms given (360).
        (2) Determine the value associated with the body of evidences obtained in the first step. This depends on the extension scheme(s) selected for κ (362 and 364).
    
    


AKB encompasses most of the well-known formalisms of knowledge bases together with their associated reasoning schemes, including probabilistic logic (N. J. Nilsson. Probabilistic logic. Artificial Intelligence, 28:71-87, 1986), Dempster-Shafer theory (G. Shafer. A Mathematical Theory of Evidence. Princeton University Press, 1976), Bayesian network (Judea Pearl. Probabilistic Reasoning in Intelligent Systems: Networks of Plausible Inference. Morgan Kaufmann, 1988), Bayesian knowledge base (Eugene Santos, Jr. and Eugene S. Santos. A framework for building knowledge-bases under uncertainty. Journal of Experimental and Theoretical Artificial Intelligence, 11:265-286, 1999), fuzzy logic (L. A. Zadeh. The role of fuzzy logic in the management of uncertainty in expert systems. Fuzzy Sets and Systems, 11:199-227, 1983; L. A. Zadeh. Fuzzy sets. Information and Control, 8:338-353, 1965. 41; R. Yager. Using approximate reasoning to represent default knowledge. Artificial Intelligence, 31:99-112, 1987), numerical ATMS (Johan DeKleer. An assumption-based TMS. Artificial Intelligence, 28:163-196, 1986), incidence calculus (Alan Bundy. Incidence calculus: A mechanism for probabilistic reasoning. Journal of Automated Reasoning, 1(3):263-283, 1985; Weiru Liu and Alan Bundy. Constructing probabilistic atmss using extended incidence calculus. International Journal of Approximate Reasoning, 15(2):145-182, 1996), etc. We illustrated how to recast the first four as AKBs (see Section 3), so that they can be expanded, and results obtained for AKBs can be applied directly to them.
Present several important properties of AKBs and provide methods for checking, applying and/or managing them. The properties include: consistency, completeness, perfectness, contribution, i-consistency, i-completeness, i-perfectness, monotonicity, contribution, vulnerability, possible deception, etc. (see Section 5 and 6). (Many of these properties, such as contribution, vulnerability, etc. are applicable to any complex systems.)
Methods to enable AKBs to perform inductive inferences and extract meaningful new knowledge from AKBs as long as certain consistency conditions are satisfied (see Section 6). One such method of performing inductive inference in an AKB is as follows: Given AKB κ and Lε.

    
    
        (a) Construct κ and L′.
        (b) Perform deductive inference on κ and L′.
    
    


Methods to construct consistent higher order AKBs, including κ0, κ1 and different varieties of κ2, to serve as extensions of any inconsistent AKB (see Section 7).
Present a new system/model named free-form database (FFDB) and provide methods for transforming relational databases and deductive databases into FFDBs, i.e., augmented relational database and augmented deductive database, which are special cases of AKBs (see Section 8). This provides a new way of dealing with relational databases and deductive databases, as well as expanding their capabilities.
Using FFDB, new system/model named augmented inductive database is presented which can be used to extract new information from relational databases (see Section 8). This provides a general, as well as integrated method for performing data mining.
A method for extending any probabilistic measure via the new notion of ε2U and by taking the average of all allowable sets. This method is referred to as constraint stochastic independence (CSI) method (see Sections 9). This method has a clear probabilistic semantics, and therefore not subject to the anomalies that are usually associated with other extension schemes.
Provide a new computational scheme for reasoning under uncertainties and/or incompleteness based on constraint stochastic independence method (see Section 10).
Present allowable constraints and provide methods to transform standard relations among sets into allowable constraints (see Section 10).
Provide a graph representation of weakly acceptable collection of constraints (see Sections 11).
Methods for checking and ensuring that the collection of constraints is admissible (see 12).
Methods for checking and ensuring that the constraints are compatible with the measure in the extension scheme based on CSI (see Section 13).
Optimal method to adjust the values of the measure to guarantee compatibility (see Section 13).
Provide a preprocessing method/algorithm so that the extension based on CSI can be computed more efficiently (see Section 14).
A method of representing/processing/extracting knowledge into/over/from a knowledge-based system, is provided as follows:
(i) A knowledge base containing objects where each object is a rule or logical sentence (knowledge) associated with a set of evidences that supports the knowledge; Existing knowledge base, that involves uncertainties and/or incompleteness, contains mostly rules/knowledge, and a number representing the strength of the rule. Although evidences may be used in determining the number, these evidences are not explicitly represented in the knowledge base nor are they used in any way in the inference scheme.
(ii) A set of relationships among the bodies of evidences; Since existing knowledge bases used numbers directly, rather than bodies of evidences, they are incapable of dealing with the relationships among the bodies of evidences. This is a very significant factor in making the knowledge base, presented in embodiments of this invention, more powerful, robust, accurate and/or capable of more refined characterizations.
(iii) A mapping which associates each body of evidences with a value. In addition, each piece of knowledge may be associated with multiple bodies of evidences. Moreover, same bodies of evidences and/or some combinations of these bodies of evidences may be associated with any knowledge. This allows the knowledge base to be created by multiple experts and/or from multiple sources.
(iv) Methods for performing deductive and inductive inferences. Existing knowledge bases can only perform deductive inferences. However, since inductive inferences, in a knowledge base according to embodiments of this invention, can be viewed as dual (for example, inductive inference can be represented as the dual of inductive inference, i.e., instead of the original knowledge base, the negation of the knowledge and the complement of the associated bodies of evidences are used. Inductive inference can be used to extract new knowledge from the given knowledge base), inductive inferences can also be performed using our knowledge base. Inductive inference can be used to extract new knowledge from the original knowledge base, in other words, it is capable of doing data mining, etc.
According to an embodiment of the present invention, the described functions are implemented as a computer online service providing a database of knowledge according to embodiments of the present invention for representation of knowledge, knowledge acquisition mechanisms and inference mechanisms to output results or reports. According to an embodiment, a target knowledge is expressly associated with a set evidences that supports the target knowledge. The set of evidences can be dynamically maintained, for example, updated. The relationship of evidences with the target knowledge can be based upon input upon acquisition of the target knowledge. According to an embodiment, relationships among evidences (constraints) in a set of evidences are maintained. Target knowledge can be retrieved from data sources and/or created/generated. In addition, the evidences, including its relationships, in support of the target knowledge can be retrieved from data sources and/or created/generated. A computer implemented user interface can be provided to support input of target knowledge, its associated evidences, relationships among the evidences. Semantic data source based upon a domain ontology including value of evidences in support of the knowledge can be utilized.
For example, an expert (person and/or machine) can create knowledge and/or evidences, including its relationships, in support of the knowledge. According to an embodiment, a blog, social media chat or information may be a source of knowledge and/or evidences, including its relationships.
According to an embodiment, inference mechanism (reasoning) is based upon a value indicative of strength of the evidence. Deductive inference involves determining a set of evidences and its validity. Inductive inference involves determining the set of evidences that can induce new knowledge or extract (data mining) new knowledge, by utilizing the constraints of the evidences in the set of evidences supporting the target knowledge. According to the embodiments described methods are provided for checking and ensuring that the constraints are admissible and/or compatible, as described for example in paragraphs 233, 244 and FIGS. 12-13, an optimal method is provided to adjust the values of the measure to guarantee compatibility in case it is not compatible, and a preprocessing method/algorithm is provided so that the extension can be computed more efficiently.
Evidence strength indications may be derived and/or input, for example, based upon evaluations, rating. According to an embodiment, the evidence values are derived based upon probabilities.
FIG. 16 is a functional block diagram of a processing device, such as a computer (hardware computing/processing machine) for the embodiments of the invention, namely a computer 120 configured to execute functions of the augmented knowledge base computer system 100. In FIG. 16, the computer can be any computing device that can execute instructions to provide the described functions. Typically, the computer includes an input device 1514 (for example, a mouse, keyboard, multi-touch display screen, etc.), output device 1502 (for example, a display to display a user interface or output information, printer, etc). One or more computer controller(s) or processing cores 1504 (e.g., a hardware central processing unit) executes instructions (e.g., a computer program or software) that control the apparatus to perform operations. According to an aspect of an embodiment, one or more networked computer servers, each with a number of processing cores, execute the described operations.
Typically, a memory component 1506 stores the instructions for execution by the controller 1504. According to an aspect of an embodiment, the apparatus reads/writes/processes data of any computer readable recording or storage media 1510 and/or communication transmission media interface 1512. The communication transmission media interface is to data network with one or other machines (e.g., computers, a distributed network) to execute the described functions. The embodiments can be implemented via grid computing. The display 1502, the CPU 1504 (e.g., hardware logic circuitry based computer processor that processes instructions, namely software), the memory 1506, the computer readable media 1510, and the communication transmission media interface 1512 are in communication by one or more the data bus(es) 1508.
According to an aspect of the embodiments of the invention, any combinations of one or more of the described features, functions, operations, and/or benefits can be provided. A combination can be one or a plurality. The embodiments can be implemented as an apparatus (a machine) that includes hardware for performing the described features, functions, operations, and/or benefits, for example, hardware to execute instructions or software, for example, computing hardware (i.e., computing apparatus), such as (in a non-limiting example) any computer or computer processor that can store, receive, retrieve, process and/or output data and/or communicate (network) with other computers. According to an aspect of an embodiment, the described features, functions, operations, and/or benefits can be implemented by and/or use computing hardware and/or software. For example, the computer 120 and expert/and other sources devices 110, . . . , etc. can comprise a computing controller (CPU) (e.g., a hardware logic circuitry based computer processor that processes or executes instructions, namely software/program), computer readable media, transmission communication interface (network interface), input device, and/or an output device, for example, a display device, and which can be in communication among each other through one or more data communication buses. In addition, an apparatus can include one or more apparatuses in computer network communication with each other or other devices. In addition, a computer processor can refer to one or more computer processors in one or more apparatuses or any combinations of one or more computer processors and/or apparatuses. An aspect of an embodiment relates to causing and/or configuring one or more apparatuses and/or computer processors to execute the described operations. The results produced can be output to an output device, for example, displayed on the display. An apparatus or device refers to a physical machine that performs operations, for example, a computer (physical computing hardware or machinery) that implement or execute instructions, for example, by way of software, which is code executed by computing hardware, and/or by way of computing hardware (e.g., in circuitry, etc.), to achieve the functions or operations being described. The functions of embodiments described can be implemented in any type of apparatus that can execute instructions or code. More particularly, programming or configuring or causing an apparatus or device, for example, a computer, to execute the described functions of embodiments of the invention creates a new machine where in case of a computer a general purpose computer in effect becomes a special purpose computer once it is programmed or configured or caused to perform particular functions of the embodiments of the invention pursuant to instructions from program software. According to an aspect of an embodiment, configuring an apparatus, device, computer processor, refers to such apparatus, device or computer processor programmed or controlled by software to execute the described functions.
A program/software implementing the embodiments may be recorded on a computer-readable media, e.g., a non-transitory or persistent computer-readable medium. Examples of the non-transitory computer-readable media include a magnetic recording apparatus, an optical disk, a magneto-optical disk, and/or volatile and/or non-volatile semiconductor memory (for example, RAM, ROM, etc.). Examples of the magnetic recording apparatus include a hard disk device (HDD), a flexible disk (FD), and a magnetic tape (MT). Examples of the optical disk include a DVD (Digital Versatile Disc), DVD-ROM, DVD-RAM (DVD-Random Access Memory), BD (Blue-ray Disk), a CD-ROM (Compact Disc-Read Only Memory), and a CD-R (Recordable)/RW. The program/software implementing the embodiments may be transmitted over a transmission communication path, e.g., a wire and/or a wireless network implemented via hardware. An example of communication media via which the program/software may be sent includes, for example, a carrier-wave signal.
The many features and advantages of the embodiments are apparent from the detailed specification and, thus, it is intended by the appended claims to cover all such features and advantages of the embodiments that fall within the true spirit and scope thereof. Further, since numerous modifications and changes will readily occur to those skilled in the art, it is not desired to limit the inventive embodiments to the exact construction and operation illustrated and described, and accordingly all suitable modifications and equivalents may be resorted to, falling within the scope thereof.

## Claims

1. A method for a computer to represent a knowledge base, comprising:
executing by the computer:
creating objects in form E→A for the knowledge base, where A is a rule among rules in the knowledge base, and E is a set of evidences from the knowledge base that supports the rule A, so that the rule A is supportable by the set of evidences E;
determining relationship constraints κ in form of relations among a plurality of sets of evidences E, including at least one or any combination of a subset relation or a disjoint relation among the plurality of sets of evidences E; and
computing for a target rule L, a first composite object ω1=G1→L0, the first composite object ω1 constructed from a combination of the objects E→A to create a composite sets of evidences G1 subject to the relationship constraints κ which support a composite rule L0, the composite rule L0 being a combination of the rules implying the target rule L,
the first composite object ω1 indicative by deductive reasoning of a first validity and/or a first plausibility value for the target rule L.

2. The method according to claim 1, wherein the computer further executes:
creating a largest composite sets of evidences G according to a union of a plurality of composite sets of evidences G1, subject to the relationship constraints κ, which support the composite rule L0; and
computing a composite object ωv indicative of a second validity value for target rule L.

3. The method according to claim 2, wherein the computer further executes:
obtaining a set complement of the largest composite sets of evidences G that supports negation of the target rule L; and
computing a composite object ωp indicative of a second plausibility value for the target rule L.

4. The method according to claim 2,
wherein E is a subset of set U of evidences in the knowledge base;
the computer further executes adding a new object in form U→L′, where the new object is a negated target rule L′ supported by the U, to the knowledge base, to thereby provide an expanded knowledgebase; and
the largest composite sets of evidences G is created from the expanded knowledgebase that supports a logical falsehood F created on basis of the negated target rule L′, subject to the relationship constraints κ which support the composite rule L0,
to thereby compute the second validity value for the target rule L.

5. The method according to claim 3,
wherein E is a subset of set U of evidences in the knowledge base;
the computer further executes adding a new object in form U→L, where the new object is the target rule L supported by the U, to the knowledge base, to thereby provide an expanded knowledge base; and
the largest composite sets of evidences G is created from the expanded knowledge base that supports a logical truth T created on basis of the target rule L, subject to the relationship constraints κ, which support the composite rule L0;
to thereby compute the second plausibility value for the target rule L.

6. The method according to claim 1, wherein E is subset of set U of evidences in the knowledge base, so that the rule A is uncertain and/or incomplete,
thereby the computed first composite object ω1 being indicative of the first validity and/or the first plausibility value for the target rule L according to the uncertain and/or incomplete rule A supported by the subset E.

7. The method according to claim 1, wherein the computer further executes:
determining a complement of the first composite object ω′1=G1′→L′0, the complement of the first composite object ω1′=G′1→L′0 being a complement of the composite sets of evidences G′ and a negation of the composite rule L0′, subject to the relationship constraints κ; and
computing for the target rule L, a second composite object ω2=G2→L0, the second computed composite object ω2 being indicative by inductive reasoning of a third validity and/or a third plausibility value for the target rule L.

8. The method according to claim 2, wherein the creating the largest composite sets of evidences G comprises:
repeatedly combining two or more of evidences E of a composite sets of evidences G1 by merging rules A and taking intersection of corresponding sets of evidences E, subject to the relationship constraints κ among the sets of evidences E.

9. The method according to claim 1, wherein the computer further executes:
mapping values to the plurality of sets of evidences E,
wherein the computing the first composite object ω1 includes computing the first validity and/or the first plausibility value by determining a value of the G1 using the mapped values of the plurality of sets of evidences E,
the first validity and/or the first plausibility value indicative of a strength of validity and/or plausibility for the target rule.

10. The method according to claim 1, wherein the computer further executes:
constructing a consistent higher order knowledge base according to different methods of removing and/or altering objects E→A in the knowledge base that are inconsistent with other objects E→A
wherein the creating the objects in the form E→A is for the consistent higher order knowledge base.

11. The method according to claim 1, wherein the knowledgebase is a Free-Form Data Base and the computer further executes:
converting relational data bases and/or deductive data bases to Free-Form Databases; and
applying the deductive reasoning to the converted Free-Form Databases.

12. The method according to claim 7, wherein the knowledgebase is a Free-Form Data Base and the computer further executes:
converting relational data bases and/or deductive data bases to Free-Form Databases; an
applying the inductive reasoning to the converted Free-Form Data Bases.

13. The method according to claim 9, wherein the mapping of the value to the set of evidences E further comprises:
extending a measure of the composite sets of evidences G1, where a measure is a function which the values to the set of evidences E, by:
selecting the measure defined on the knowledge base which is probabilistic to filter anomalies associated with the deductive reasoning;
representing the relationship constraints ωκ among the plurality of sets of evidences E using directed and undirected graphs;
insuring that a graph representation of the relationship of constraints κ is admissible and compatible with the selected measure.
preprocessing the selected measure subject to the relationship constraints ωκ to obtain a new measure free of any relationship constraints; and
applying the new measure to the set of evidences E.

14. The method according to claim 1, wherein the relationship constraints κ are input.

15. At least one server, comprising:
a processor; and
a non-transitory computer readable storage medium configured to store objects in the form E→A, where A is a rule among rules in a knowledge base, and E is a set of evidence from the knowledge base that supports the rule A, so that the rule A is supportable by the set of evidences E, and to store instructions, which when executed by the processor, cause the processor to execute:
determining relationship constraints ωκ in form of relations among a plurality of sets of evidences E, including at least one or any combination of a subset relation or a disjoint relation among the plurality of sets of evidences E; and
computing for a target rule L, a first composite object ω=L0, the first composite object ω1 constructed from a combination of the objects E→A to create a composite sets of evidences G1 subject to the relationship constraints ωκ which support a composite rule L0, the composite rule L0, the composite rule L0 being a combination of the rules implying the target rule L,
the first composite object ω1 indicative by deductive reasoning of a first validity and/or a first plausibility value for the target rule L.

16. The at least one server according to claim 15, wherein the processor further executes:
determining a complement of the first composite object ω1′=G′1→′0, the complement of the first composite object ω1′=G′0L′0being a complement of the composite sets of evidences G′ and a negation of the composite rule L0′subject to the relationship constraints κ; and
computing for the target rule L, a second composite object ω2 =G2→L0, the second computed composite object ω2 being indicative by inductive reasoning of a second validity and/or a second plausibility value for the target rule L.

17. The at least one server according to claim 15, wherein the processor further executes:
creating a largest composite sets of evidences G according to a union of a plurality of composite sets of evidences G1, subject to the relationship constraints κ, which support the composite rule L0; and
computing a composite object ωv, indicative of a third validity value for target rule L.

18. The at least one server according to claim 17, wherein the processor further executes:
obtaining a set complement of the largest composite sets of evidences G that supports negation of the target rule L; and
computing a composite object ωp indicative of a third plausibility value for the target rule L.