Module org.maxicp

Interface SymbolicSeqVar

All Superinterfaces:
Expression, SeqExpression, SeqVar, Serializable, SymbolicVar, Var
All Known Implementing Classes:
SeqVarImpl

public interface SymbolicSeqVar extends SeqVar, SymbolicVar
  • Method Details

    • defaultStart

      int defaultStart()
    • defaultEnd

      int defaultEnd()
    • defaultNNode

      int defaultNNode()
    • defaultFillNode

      int defaultFillNode(int[] dest, SeqStatus status)
    • defaultNNode

      int defaultNNode(SeqStatus status)
    • defaultIsNode

      boolean defaultIsNode(int node, SeqStatus status)
    • defaultMemberAfter

      int defaultMemberAfter(int node)
    • defaultMemberBefore

      int defaultMemberBefore(int node)
    • defaultFillPred

      int defaultFillPred(int node, int[] dest, SeqStatus status)
    • defaultNPred

      int defaultNPred(int node)
    • defaultFillSucc

      int defaultFillSucc(int node, int[] dest, SeqStatus status)
    • defaultNSucc

      int defaultNSucc(int node)
    • defaultFillInsert

      int defaultFillInsert(int node, int[] dest)
    • defaultNInsert

      int defaultNInsert(int node)
    • defaultHasEdge

      boolean defaultHasEdge(int from, int to)
    • defaultHasInsert

      boolean defaultHasInsert(int prev, int node)
    • defaultFillPred

      default int defaultFillPred(int node, int[] dest)
    • defaultFillSucc

      default int defaultFillSucc(int node, int[] dest)
    • start

      default int start()
      Description copied from interface: SeqVar
      First member of the sequence
      Specified by:
      start in interface SeqVar
      Returns:
      first member of the sequence
    • end

      default int end()
      Description copied from interface: SeqVar
      Last member of the sequence
      Specified by:
      end in interface SeqVar
      Returns:
      last member of the sequence
    • nNode

      default int nNode()
      Description copied from interface: SeqVar
      Gives the total number of nodes.
      Specified by:
      nNode in interface SeqVar
      Returns:
      the total number of nodes.
    • fillNode

      default int fillNode(int[] dest, SeqStatus status)
      Description copied from interface: SeqVar
      Copies the nodes matching a status into an array.
      Specified by:
      fillNode in interface SeqVar
      Parameters:
      dest - an array large enough dest.length >= nNode(status).
      status - status that must be matched by the nodes.
      Returns:
      the number of nodes matching the status and dest[0,...,nNode(status)-1] contains the nodes in an arbitrary order.
    • nNode

      default int nNode(SeqStatus status)
      Description copied from interface: SeqVar
      Gives the number of nodes matching a status.
      Specified by:
      nNode in interface SeqVar
      Parameters:
      status - status that must be matched by the nodes.
      Returns:
      the number of nodes matching the status.
    • isNode

      default boolean isNode(int node, SeqStatus status)
      Description copied from interface: SeqVar
      Tells if a node is matching a status.
      Specified by:
      isNode in interface SeqVar
      Parameters:
      node - node.
      status - status that must be matched by the node.
      Returns:
      true if the node is matching the status.
    • memberAfter

      default int memberAfter(int node)
      Description copied from interface: SeqVar
      Returns the member following another member in the sequence.
      Specified by:
      memberAfter in interface SeqVar
      Parameters:
      node - member within the sequence.
      Returns:
      member following the given node in the sequence.
    • memberBefore

      default int memberBefore(int node)
      Description copied from interface: SeqVar
      Returns the member preceding another member in the sequence.
      Specified by:
      memberBefore in interface SeqVar
      Parameters:
      node - member within the sequence.
      Returns:
      member preceding the given node in the sequence.
    • fillPred

      default int fillPred(int node, int[] dest, SeqStatus status)
      Description copied from interface: SeqVar
      Copies the predecessors of a node matching a status into an array.
      Specified by:
      fillPred in interface SeqVar
      Parameters:
      node - node.
      dest - an array large enough
      status - status that must be matched by the predecessors.
      Returns:
      the number of predecessors matching the status and dest[0,...,nPred(node, status)-1] contains the predecessors in an arbitrary order.
    • nPred

      default int nPred(int node)
      Description copied from interface: SeqVar
      Returns the number of predecessors of a node.
      Specified by:
      nPred in interface SeqVar
      Parameters:
      node - node.
      Returns:
      the number of predecessors.
    • fillSucc

      default int fillSucc(int node, int[] dest, SeqStatus status)
      Description copied from interface: SeqVar
      Copies the successors of a node matching a status into an array.
      Specified by:
      fillSucc in interface SeqVar
      Parameters:
      node - node.
      dest - an array large enough dest.length >= nSucc(node, status).
      status - status that must be matched by the nodes.
      Returns:
      the number of successors matching the status and dest[0,...,nSucc(node, status)-1] contains the successors in an arbitrary order.
    • nSucc

      default int nSucc(int node)
      Description copied from interface: SeqVar
      Returns the number of successors of a node.
      Specified by:
      nSucc in interface SeqVar
      Parameters:
      node - node.
      Returns:
      the number of successors matching the status.
    • fillInsert

      default int fillInsert(int node, int[] dest)
      Description copied from interface: SeqVar
      Fills an array with the insertions for a node. Equivalent to fillPred(node, dest, MEMBER).
      Specified by:
      fillInsert in interface SeqVar
      Parameters:
      node - node.
      dest - an array large enough dest.length >= nInsert(node).
      Returns:
      the number of insertions and dest[0,...,nInsert(node)-1] contains the insertions in an arbitrary order.
    • nInsert

      default int nInsert(int node)
      Description copied from interface: SeqVar
      Returns the number of insertions of a node.
      Specified by:
      nInsert in interface SeqVar
      Parameters:
      node - node.
      Returns:
      the number of insertions of a node.
    • hasEdge

      default boolean hasEdge(int from, int to)
      Description copied from interface: SeqVar
      Tells if a directed edge exists between two nodes.
      Specified by:
      hasEdge in interface SeqVar
      Parameters:
      from - origin of the edge.
      to - destination of the edge.
      Returns:
      true if the directed edge exists between two nodes.
    • hasInsert

      default boolean hasInsert(int prev, int node)
      Description copied from interface: SeqVar
      Tells if an insertion is valid. An insert operation is valid iff - prev is a member node ; - node is an insertable node (either possible or a required node not yet inserted) ; - hasEdge(prev, node) ; - hasEdge(node, memberAfter(prev)).
      Specified by:
      hasInsert in interface SeqVar
      Parameters:
      prev - a member node.
      node - an insertable node.
      Returns:
      true if the node can be inserted after the given member.