- All Implemented Interfaces:
ModelProvider<Conditional,ClBeliefSet,RankingFunction>
, QualitativeReasoner<ClBeliefSet,PlFormula>
, Reasoner<java.lang.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