lp.trans
Class EvolpTransformer.AtomAppearance

java.lang.Object
  extended by lp.trans.EvolpTransformer.AtomAppearance
Enclosing class:
EvolpTransformer

private class EvolpTransformer.AtomAppearance
extends Object

A container for metadata about an atom's appearance in the input program. First it needs to be filled with information by calling the methods addHeadAppearance(int, boolean, boolean) and addNegativeBodyAppearance(int, boolean). Based on this data, it can formulate all default assumptions, propagation rejections and completeness constraints for the given atom.

Version:
0.9
Author:
Martin Slota

Field Summary
private  int defFromGroup
           
private  IntArrayWrapper defInGroup
           
private  LpAtom forAtom
           
private  IntArrayWrapper negEventRuleHead
           
private  IntArrayWrapper negProgRuleHead
           
private  IntArrayWrapper posEventRuleHead
           
private  IntArrayWrapper posProgRuleHead
           
 
Constructor Summary
EvolpTransformer.AtomAppearance(LpAtom forAtom)
           
 
Method Summary
 void addHeadAppearance(int level, boolean eventRule, boolean isPositive)
           
 void addNegativeBodyAppearance(int level, boolean eventRule)
           
 void addRulesTo(TransformedEvolp prog)
           
private  boolean hasConstraintInGroup(int group)
           
private  boolean hasDefaultInGroup(int group)
           
 int nextOppositeLevel(int group, int level, boolean positive)
           
private  void outputConstraints(TransformedEvolp prog)
           
private  void outputDefaults(TransformedEvolp prog)
           
private  void outputRejections(TransformedEvolp prog)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

forAtom

private final LpAtom forAtom

posProgRuleHead

private final IntArrayWrapper posProgRuleHead

negProgRuleHead

private final IntArrayWrapper negProgRuleHead

posEventRuleHead

private final IntArrayWrapper posEventRuleHead

negEventRuleHead

private final IntArrayWrapper negEventRuleHead

defFromGroup

private int defFromGroup

defInGroup

private final IntArrayWrapper defInGroup
Constructor Detail

EvolpTransformer.AtomAppearance

public EvolpTransformer.AtomAppearance(LpAtom forAtom)
Parameters:
forAtom -
Method Detail

addNegativeBodyAppearance

public void addNegativeBodyAppearance(int level,
                                      boolean eventRule)
Parameters:
level -
eventRule -

addHeadAppearance

public void addHeadAppearance(int level,
                              boolean eventRule,
                              boolean isPositive)
Parameters:
level -
eventRule -
isPositive -

nextOppositeLevel

public int nextOppositeLevel(int group,
                             int level,
                             boolean positive)

addRulesTo

public void addRulesTo(TransformedEvolp prog)

hasConstraintInGroup

private boolean hasConstraintInGroup(int group)

hasDefaultInGroup

private boolean hasDefaultInGroup(int group)

outputDefaults

private void outputDefaults(TransformedEvolp prog)

outputConstraints

private void outputConstraints(TransformedEvolp prog)

outputRejections

private void outputRejections(TransformedEvolp prog)