public BooleanCondition(IVariableCondition parent, int stateindex) : base(parent) { if(stateindex > 2) { throw new ArgumentException("invalid boolean state index."); } StateIndex = stateindex; }
public BooleanCondition(IVariableCondition parent, int stateindex) : base(parent) { if (stateindex > 2) { throw new ArgumentException("invalid boolean state index."); } StateIndex = stateindex; }
public VariableCondition(IVariableCondition parent) { Debug.Assert(parent != this); Parent = parent; Variable = Parent.Variable; var top = Parent; while(null != top) { if(top.IsTransition) { _transparent = top; break; } top = top.Parent; } }
public VariableCondition(IVariableCondition parent) { Debug.Assert(parent != this); Parent = parent; Variable = Parent.Variable; var top = Parent; while (null != top) { if (top.IsTransition) { _transparent = top; break; } top = top.Parent; } }
public BooleanFactor(IInput input) : base(input.Group) { _value = input; _condition = input as IVariableCondition; }
public static IGate Decompose(this IVariableCondition vc) { return(vc.CreateElementaryCondition(vc.StateIndex)); }
public SimpleFactor(IVariableCondition condition, Variable v) : base(v.Address) { _condition = condition; _invert = new bool[v.Cardinality]; }
public ElementaryCondition(IVariableCondition parent, int i) : base(parent) { Debug.Assert(0 <= i && i < Variable.Cardinality); StateIndex = i; }
public Transition(IVariableCondition parent) { Parent = parent; }
public StateCondition(StateCondition parent) : this(parent.Variable) { Parent = parent; }