ve
Class FactorExpand

java.lang.Object
  |
  +--ve.Factor
        |
        +--ve.FactorExpand

public class FactorExpand
extends Factor

This the the class of factors that extend other factors to include more variables. It is used in FactorTimes. The values can be enumerated as needed using the EltsIterator.


Inner Class Summary
private  class FactorExpand.Itr
           
 
Field Summary
private  Factor fact
          the factor to be expanded.
private  int numExpandBlocks
          the number of blocks of variables to be exanded.
private  int[] valsBetween
          the values associated with the variables between those to be expanded.
private  int[] valsExpand
          the values associated with the variables to be expanded.
 
Fields inherited from class ve.Factor
BY_ASSIGN, BY_CPT, BY_DETERMINISTIC, BY_EXPANDING, BY_GENRULE, BY_MAXIMIZING, BY_MULTIPLYING, BY_NORMALIZING, BY_OBSERVED, BY_PLUS, BY_REORDERING, BY_SAVEIT, BY_SUM_OUT, BY_UNIFORM, BY_UPDATABLE, BY_V_ELIM, howCreatedVal, savingForTracing, thesize, variables
 
Constructor Summary
FactorExpand(Factor f1, Variable[] vars)
          constructs a factor with the given variables.
 
Method Summary
 EltsIterator iterator()
          Returns an iterator over the values of the factor.
 
Methods inherited from class ve.Factor
allOnes, contains, display, getName, getSavingForTracing, getVariables, howCreated, isRedundant, isRedundant, print, print, printVariables, setSavingForTracing, size, toString
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

fact

private Factor fact
the factor to be expanded.

valsExpand

private int[] valsExpand
the values associated with the variables to be expanded. We don't keep track of the variables, just the number of variables in the domains.

valsBetween

private int[] valsBetween
the values associated with the variables between those to be expanded. valsBetween[i] is the values between variables given by valsExpand[i-1] and valsExpand[i]

numExpandBlocks

private int numExpandBlocks
the number of blocks of variables to be exanded.
Constructor Detail

FactorExpand

public FactorExpand(Factor f1,
                    Variable[] vars)
constructs a factor with the given variables.
Parameters:
f1 - the factor to be expanded
vars - the list of variables for the resulting factor
Method Detail

iterator

public EltsIterator iterator()
Returns an iterator over the values of the factor. This code is based on the Iterator code in java.util.AbstractList.
Overrides:
iterator in class Factor