Scippy

SCIP

Solving Constraint Integer Programs

SPQRColReducedMember Struct Reference

Detailed Description

A struct that keeps track of the relevant data for the members that are in the subtree given by the specified row arcs.

We typically call these 'reduced' members (members of the reduced tree).

Definition at line 3549 of file network.c.

Data Fields

spqr_member member
 
spqr_member rootMember
 
int depth
 
ReducedMemberType type
 
reduced_member_id parent
 
children_idx firstChild
 
children_idx numChildren
 
path_arc_id firstPathArc
 
int numPathArcs
 
SCIP_Bool reverseArcs
 
spqr_node rigidPathStart
 
spqr_node rigidPathEnd
 
SCIP_Bool pathBackwards
 
int numPropagatedChildren
 
int componentIndex
 
MemberPathType pathType
 
reduced_member_id nextPathMember
 
SCIP_Bool nextPathMemberIsParent
 
spqr_arc pathSourceArc
 
spqr_arc pathTargetArc
 

Field Documentation

◆ member

◆ rootMember

spqr_member SPQRColReducedMember::rootMember

The root member of the arborescence that contains this member

Definition at line 3552 of file network.c.

Referenced by constructReducedDecomposition(), and createReducedMembersToRoot().

◆ depth

int SPQRColReducedMember::depth

The depth of this member in the arborescence

Definition at line 3553 of file network.c.

Referenced by constructReducedDecomposition(), and createReducedMembersToRoot().

◆ type

◆ parent

reduced_member_id SPQRColReducedMember::parent

The reduced member id of the parent of this reduced member

Definition at line 3555 of file network.c.

Referenced by constructReducedDecomposition(), createReducedMembersToRoot(), determineSingleComponentType(), and propagateCycles().

◆ firstChild

children_idx SPQRColReducedMember::firstChild

The index of the first child in the children array.

Definition at line 3557 of file network.c.

Referenced by constructReducedDecomposition(), determinePathTypes(), and propagateCycles().

◆ numChildren

children_idx SPQRColReducedMember::numChildren

The number of children in the arborescence of this reduced member

Definition at line 3558 of file network.c.

Referenced by computeLeafMembers(), constructReducedDecomposition(), createReducedMembersToRoot(), determinePathTypes(), determineSingleComponentType(), propagateCycles(), and transformComponent().

◆ firstPathArc

◆ numPathArcs

int SPQRColReducedMember::numPathArcs

The number of path arcs in the linked list

Definition at line 3561 of file network.c.

Referenced by columnTransformSingleParallel(), createPathArc(), createReducedMembersToRoot(), splitSeries(), and splitSeriesMerging().

◆ reverseArcs

SCIP_Bool SPQRColReducedMember::reverseArcs

Will the arcs in this component be reversed?

Definition at line 3563 of file network.c.

Referenced by determinePathRigidType(), and transformAndMergeRigid().

◆ rigidPathStart

spqr_node SPQRColReducedMember::rigidPathStart

The start node of the path. Only used for Rigid/3-connected nodes

Definition at line 3564 of file network.c.

Referenced by checkRigidLeaf(), columnTransformSingleRigid(), createReducedMembersToRoot(), determinePathRigidType(), determineRigidPath(), transformAndMergeRigid(), and transformFirstPathMember().

◆ rigidPathEnd

spqr_node SPQRColReducedMember::rigidPathEnd

The end node of the path. Only used for Rigid/3-connected nodes

Definition at line 3565 of file network.c.

Referenced by checkRigidLeaf(), columnTransformSingleRigid(), createReducedMembersToRoot(), determinePathRigidType(), determineRigidPath(), transformAndMergeRigid(), and transformFirstPathMember().

◆ pathBackwards

SCIP_Bool SPQRColReducedMember::pathBackwards

Indicates if the path direction is reversed with respect to the default orientation within series and parallel members.

Definition at line 3567 of file network.c.

Referenced by checkLeaf(), columnTransformSingleParallel(), determinePathSeriesType(), determineSingleComponentType(), and splitSeries().

◆ numPropagatedChildren

int SPQRColReducedMember::numPropagatedChildren

Counts the number of children that are cycles that propagated to this reduced member

Definition at line 3570 of file network.c.

Referenced by createReducedMembersToRoot(), determineSingleComponentType(), propagateCycles(), and transformComponent().

◆ componentIndex

int SPQRColReducedMember::componentIndex

Stores the index of the component of the SPQR forest that this reduced member is contained in.

Definition at line 3572 of file network.c.

Referenced by createReducedMembersToRoot(), and propagateCycles().

◆ pathType

MemberPathType SPQRColReducedMember::pathType

◆ nextPathMember

reduced_member_id SPQRColReducedMember::nextPathMember

Indicates the id of the next reduced member in the path during merging. During merging, the SPQR tree must be a path itself.

Definition at line 3576 of file network.c.

Referenced by determinePathTypes(), and transformPath().

◆ nextPathMemberIsParent

SCIP_Bool SPQRColReducedMember::nextPathMemberIsParent

Indicates if the next reduced member in the path is a parent of this member

Definition at line 3578 of file network.c.

Referenced by determinePathTypes(), and transformPath().

◆ pathSourceArc

spqr_arc SPQRColReducedMember::pathSourceArc

The virtual arc from where the path originates

Definition at line 3580 of file network.c.

Referenced by determinePathMemberType(), transformAndMergeParallel(), transformAndMergeRigid(), and transformAndMergeSeries().

◆ pathTargetArc

spqr_arc SPQRColReducedMember::pathTargetArc

The virtual arc where the path has to go

Definition at line 3581 of file network.c.

Referenced by determinePathMemberType(), transformAndMergeParallel(), transformAndMergeRigid(), transformAndMergeSeries(), and transformFirstPathMember().