Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## ix.iplan
Class DomainAnalyser

    java.lang.Object
      ix.iplan.DomainAnalyser

    public class DomainAnalyser

extends java.lang.Object

Analyses a Domain.

This class is based on parts of O-Plan.

Nested Class Summary
`(package private) class` | `DomainAnalyser.MinFullExpandFinder`

Field Summary
`protected Domain` | `domain`
`protected boolean` | `domainHasChanged`
`protected DomainAnalyser.MinFullExpandFinder` | `minFullExpandFinder`
`protected java.util.Map` | `minFullExpandSizeCache`
`protected DirectedGraph` | `possibleConditionsTable`
`protected DirectedGraph` | `possibleConstraintsTable`
`protected DirectedGraph` | `possibleEffectsTable`
`protected java.util.Map` | `possibleUseForEffectsCache`
`protected DirectedGraph` | `possibleUseForEffectsTable`
`protected DirectedGraph` | `refinementToDirectSuccessors`
`protected DirectedGraph` | `refinementToReachableRefinements`
`protected boolean` | `useConditionTypes`

Constructor Summary
`DomainAnalyser(Domain domain)` Make an analyser for a domain.

Method Summary
`void` | `analyse()` Construct tables of derived information.
`void` | `analyseIfNeeded()`
`(package private) void` | `askForConditionsLoop()`
`(package private) void` | `askForEffectsLoop()`
`(package private) void` | `askLoop(java.lang.String resultDescr, Function1 f)`
`protected DirectedGraph` | `buildRefinementSuccessorTable()`
`protected java.util.Set` | `computePossibleConditions(LList pattern)`
`protected java.util.Set` | `computePossibleConditions(PatternAssignment pv)`
`protected java.util.Set` | `computePossibleConstraints(LList pattern)`
`protected java.util.Set` | `computePossibleEffects(LList pattern)`
`protected java.util.Set` | `computePossibleEffects(PatternAssignment pv)`
`protected java.util.Set` | `computePossibleUseForEffects(LList pattern)`
`protected java.util.Set` | `directSuccessors(Refinement r)`
`long` | `getMinFullExpandSize(LList pattern)`
`long` | `getMinFullExpandSize(PatternAssignment pv)`
`java.util.Set` | `getPossibleConditions(LList pattern)`
`java.util.Set` | `getPossibleConditions(PatternAssignment pv)`
`java.util.Set` | `getPossibleConstraints(LList pattern)`
`java.util.Set` | `getPossibleEffects(LList pattern)`
`java.util.Set` | `getPossibleEffects(PatternAssignment pv)`
`java.util.Set` | `getPossibleTopLevelConditions(LList pattern)`
`java.util.Set` | `getPossibleTopLevelConstraints(LList pattern)`
`java.util.Set` | `getPossibleTopLevelEffects(LList pattern)`
`java.util.Set` | `getPossibleUseForEffects(LList pattern)`
`DirectedGraph` | `getUnexpandableNodes()`
`boolean` | `haveCommonPatterns(java.util.Collection pvs1, java.util.Collection pvs2)`
`static void` | `main(java.lang.String[] argv)` Test program.
`static boolean` | `match(java.lang.Object pat, java.lang.Object dat)` Simple pattern-matcher that treats all variables as wildcards.
`boolean` | `mightSatisfy(PatternAssignment cond, java.util.Collection effects)`
`boolean` | `mightSatisfy(PatternAssignment cond, PatternAssignment effect)`
`(package private) static void` | `printCollection(java.lang.String label, java.util.Collection c)`
`(package private) static void` | `printGraph(java.lang.String label, DirectedGraph g)`
`java.util.Set<Refinement>` | `refinementsExpandingPattern(LList pattern)`
`java.util.Set` | `refinementsForCondition(PatternAssignment pv)`
`protected void` | `reset()`
`(package private) static java.util.List` | `sortCollection(java.util.Collection c)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### domain

    protected Domain domain

### domainHasChanged

    protected boolean domainHasChanged

### useConditionTypes

    protected boolean useConditionTypes

### refinementToDirectSuccessors

    protected DirectedGraph refinementToDirectSuccessors

### refinementToReachableRefinements

    protected DirectedGraph refinementToReachableRefinements

### possibleConditionsTable

    protected DirectedGraph possibleConditionsTable

### possibleEffectsTable

    protected DirectedGraph possibleEffectsTable

### possibleUseForEffectsTable

    protected DirectedGraph possibleUseForEffectsTable

### possibleConstraintsTable

    protected DirectedGraph possibleConstraintsTable

### minFullExpandFinder

    protected DomainAnalyser.MinFullExpandFinder minFullExpandFinder

### possibleUseForEffectsCache

    protected java.util.Map possibleUseForEffectsCache

### minFullExpandSizeCache

    protected java.util.Map minFullExpandSizeCache

Constructor Detail

### DomainAnalyser

    public DomainAnalyser(Domain domain)

  Make an analyser for a domain.

Method Detail

### analyseIfNeeded

    public void analyseIfNeeded()

### reset

    protected void reset()

### analyse

    public void analyse()

  Construct tables of derived information.

### getPossibleConditions

    public java.util.Set getPossibleConditions(LList pattern)

### computePossibleConditions

    protected java.util.Set computePossibleConditions(LList pattern)

### getPossibleConditions

    public java.util.Set getPossibleConditions(PatternAssignment pv)

### computePossibleConditions

    protected java.util.Set computePossibleConditions(PatternAssignment pv)

### getPossibleTopLevelConditions

    public java.util.Set getPossibleTopLevelConditions(LList pattern)

### getPossibleEffects

    public java.util.Set getPossibleEffects(LList pattern)

### computePossibleEffects

    protected java.util.Set computePossibleEffects(LList pattern)

### getPossibleEffects

    public java.util.Set getPossibleEffects(PatternAssignment pv)

### computePossibleEffects

    protected java.util.Set computePossibleEffects(PatternAssignment pv)

### getPossibleTopLevelEffects

    public java.util.Set getPossibleTopLevelEffects(LList pattern)

### getPossibleUseForEffects

    public java.util.Set getPossibleUseForEffects(LList pattern)

### computePossibleUseForEffects

    protected java.util.Set computePossibleUseForEffects(LList pattern)

### getPossibleConstraints

    public java.util.Set getPossibleConstraints(LList pattern)

### computePossibleConstraints

    protected java.util.Set computePossibleConstraints(LList pattern)

### getPossibleTopLevelConstraints

    public java.util.Set getPossibleTopLevelConstraints(LList pattern)

### getMinFullExpandSize

    public long getMinFullExpandSize(LList pattern)

### getMinFullExpandSize

    public long getMinFullExpandSize(PatternAssignment pv)

### getUnexpandableNodes

    public DirectedGraph getUnexpandableNodes()

### buildRefinementSuccessorTable

    protected DirectedGraph buildRefinementSuccessorTable()

### directSuccessors

    protected java.util.Set directSuccessors(Refinement r)

### refinementsExpandingPattern

    public java.util.Set<Refinement> refinementsExpandingPattern(LList pattern)

### refinementsForCondition

    public java.util.Set refinementsForCondition(PatternAssignment pv)

### haveCommonPatterns

    public boolean haveCommonPatterns(java.util.Collection pvs1,
                                      java.util.Collection pvs2)

### mightSatisfy

    public boolean mightSatisfy(PatternAssignment cond,
                                PatternAssignment effect)

### mightSatisfy

    public boolean mightSatisfy(PatternAssignment cond,
                                java.util.Collection effects)

### match

    public static boolean match(java.lang.Object pat,
                                java.lang.Object dat)

  Simple pattern-matcher that treats all variables as wildcards.

### main

    public static void main(java.lang.String[] argv)

  Test program.

### askForConditionsLoop

    void askForConditionsLoop()

### askForEffectsLoop

    void askForEffectsLoop()

### askLoop

    void askLoop(java.lang.String resultDescr,
                 Function1 f)

### printGraph

    static void printGraph(java.lang.String label,
                           DirectedGraph g)

### printCollection

    static void printCollection(java.lang.String label,
                                java.util.Collection c)

### sortCollection

    static java.util.List sortCollection(java.util.Collection c)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD