alun.markov
Class Product

java.lang.Object
  extended by alun.markov.Product
All Implemented Interfaces:
Graph<Variable,java.lang.Object>
Direct Known Subclasses:
LDModel

public class Product
extends java.lang.Object
implements Graph<Variable,java.lang.Object>


Constructor Summary
Product()
           
Product(java.util.Collection<Function> fs)
           
Product(java.util.Collection<Function> f, java.util.Collection<Variable> v)
           
Product(InputFormatter f)
           
 
Method Summary
 void add(java.util.Collection<? extends Function> f)
           
 void add(Function f)
           
 void addProduct(Product p)
           
 void clear()
           
 void clearTriangulation()
           
 java.lang.Object connection(java.lang.Object a, java.lang.Object b)
           
 boolean connects(java.lang.Object u, java.lang.Object v)
           
 boolean contains(java.lang.Object v)
           
 void fillIn(Variable u, Variable v)
           
 java.util.Collection<java.lang.Object> getEdges()
           
 java.util.Set<Function> getFunctions()
           
 java.util.Set<Function> getFunctions(java.util.Collection<Variable> v)
           
 java.util.Set<Function> getFunctions(Variable v)
           
 java.util.Set<Function> getFunctionsOnly(java.util.Collection<? extends Variable> v)
           
 java.util.Set<Function> getFunctionsOnly(Variable v)
           
 double getLogValue()
           
 java.util.Set<Variable> getNeighbours(java.lang.Object v)
           
 double getValue()
           
 java.util.Set<Variable> getVariables()
           
 java.util.Set<Variable> getVariables(java.util.Collection<Function> f)
           
 java.util.Set<Variable> getVariables(Function f)
           
 java.util.Set<Variable> getVertices()
           
 java.util.Set<Variable> inNeighbours(java.lang.Object v)
           
 double logNStates()
           
static void main(java.lang.String[] args)
           
 java.util.Set<Variable> outNeighbours(java.lang.Object v)
           
 void reduceStates()
           
 void reduceStates(GraphicalModel m)
           
 void remove(java.util.Collection<Function> f)
           
 void remove(Function f)
           
 void removeProduct(Product p)
           
 void removeVariable(Variable v)
           
 void removeVariables(java.util.Collection<? extends Variable> v)
           
 Product subProduct(java.util.Collection<Variable> v)
           
 java.lang.String toString()
           
 java.lang.String toString(boolean asgraph)
           
 java.lang.String toString(int option)
           
 void triangulate()
           
 void triangulate(java.util.Collection<Variable> keep)
           
 void triangulate(java.util.Collection<Variable>[] part)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Product

public Product()

Product

public Product(java.util.Collection<Function> f,
               java.util.Collection<Variable> v)

Product

public Product(java.util.Collection<Function> fs)

Product

public Product(InputFormatter f)
        throws java.io.IOException
Throws:
java.io.IOException
Method Detail

reduceStates

public void reduceStates(GraphicalModel m)

reduceStates

public void reduceStates()

clear

public void clear()

contains

public boolean contains(java.lang.Object v)
Specified by:
contains in interface Graph<Variable,java.lang.Object>

connects

public boolean connects(java.lang.Object u,
                        java.lang.Object v)
Specified by:
connects in interface Graph<Variable,java.lang.Object>

getNeighbours

public java.util.Set<Variable> getNeighbours(java.lang.Object v)
Specified by:
getNeighbours in interface Graph<Variable,java.lang.Object>

outNeighbours

public java.util.Set<Variable> outNeighbours(java.lang.Object v)
Specified by:
outNeighbours in interface Graph<Variable,java.lang.Object>

inNeighbours

public java.util.Set<Variable> inNeighbours(java.lang.Object v)
Specified by:
inNeighbours in interface Graph<Variable,java.lang.Object>

getVertices

public java.util.Set<Variable> getVertices()
Specified by:
getVertices in interface Graph<Variable,java.lang.Object>

connection

public java.lang.Object connection(java.lang.Object a,
                                   java.lang.Object b)
Specified by:
connection in interface Graph<Variable,java.lang.Object>

getEdges

public java.util.Collection<java.lang.Object> getEdges()
Specified by:
getEdges in interface Graph<Variable,java.lang.Object>

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

toString

public java.lang.String toString(boolean asgraph)

toString

public java.lang.String toString(int option)

logNStates

public double logNStates()

add

public void add(Function f)

add

public void add(java.util.Collection<? extends Function> f)

addProduct

public void addProduct(Product p)

remove

public void remove(Function f)

remove

public void remove(java.util.Collection<Function> f)

removeProduct

public void removeProduct(Product p)

removeVariable

public void removeVariable(Variable v)

removeVariables

public void removeVariables(java.util.Collection<? extends Variable> v)

getVariables

public java.util.Set<Variable> getVariables()

getVariables

public java.util.Set<Variable> getVariables(Function f)

getVariables

public java.util.Set<Variable> getVariables(java.util.Collection<Function> f)

getFunctions

public java.util.Set<Function> getFunctions()

getFunctions

public java.util.Set<Function> getFunctions(Variable v)

getFunctions

public java.util.Set<Function> getFunctions(java.util.Collection<Variable> v)

getFunctionsOnly

public java.util.Set<Function> getFunctionsOnly(Variable v)

getFunctionsOnly

public java.util.Set<Function> getFunctionsOnly(java.util.Collection<? extends Variable> v)

getValue

public double getValue()

getLogValue

public double getLogValue()

subProduct

public Product subProduct(java.util.Collection<Variable> v)

fillIn

public void fillIn(Variable u,
                   Variable v)

triangulate

public void triangulate()

triangulate

public void triangulate(java.util.Collection<Variable> keep)

triangulate

public void triangulate(java.util.Collection<Variable>[] part)

clearTriangulation

public void clearTriangulation()

main

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