Class ZReasoner

java.lang.Object
org.tweetyproject.logics.cl.reasoner.AbstractConditionalLogicReasoner
org.tweetyproject.logics.cl.reasoner.ZReasoner
All Implemented Interfaces:
ModelProvider<Conditional,ClBeliefSet,RankingFunction>, QualitativeReasoner<ClBeliefSet,PlFormula>, Reasoner<Boolean,ClBeliefSet,PlFormula>

public class ZReasoner extends AbstractConditionalLogicReasoner
This class models a z-reasoner for conditional logic. Reasoning is performed by computing a ranking function based on a tolerating partitioning of a consistent knowledge base
The conditionals of the knowledge base KB are splitted in different partitions. The first partition KB_0 contains all conditionals (B_i|A_i) that are tolerated by all other rules of the knowledge base, i.e., there exists a world w that satisfies A_iB_i and for all other conditionals (B_j|A_j) it satisfies the material implication A_j => B_j. These conditionals are removed from the knowledge base. The second partition KB_1 contains all conditionals of the remaining conditional set that are tolerated by it. This is done until the original knowledge base is the empty set. This is simultaniously a test on whether or not the knowledge base is consistent. There exists such a partitioning iff the knowledge base is consistent. A world falsifying a conditional r_i gets penalty points according to the maxium partition that contains a falsified world. The penalty points represent the ranking function and are computed as follows Z(r_i) = j iff r_i in KB_j ( 0, if w |= A_i => B_i for all 1<=i<=n Z(w) = < ( max {z(r_i)} + 1 for all conditionals r_i=(B_i|A_i) with w |= A_i !B_i

See Judea Pearl. System Z: a natural ordering of defaults with tractable applications to default reasoning. In Proceedings of the 3rd conference on Theoretical aspects of reasoning about knowledge, TARK '90, San Francicso, Morgan Kaufmann Publishers Inc. (1990) 121-135
Author:
Katharina Diekmann, Matthias Thimm