SCIPcomputeOrbitsFilterSym

Function SCIPcomputeOrbitsFilterSym 

Source
pub unsafe extern "C" fn SCIPcomputeOrbitsFilterSym(
    scip: *mut SCIP,
    npermvars: c_int,
    permstrans: *mut *mut c_int,
    nperms: c_int,
    inactiveperms: *mut u8,
    orbits: *mut c_int,
    orbitbegins: *mut c_int,
    norbits: *mut c_int,
    components: *mut c_int,
    componentbegins: *mut c_int,
    vartocomponent: *mut c_int,
    componentblocked: *mut c_uint,
    ncomponents: c_int,
    nmovedpermvars: c_int,
) -> SCIP_RETCODE
Expand description

compute non-trivial orbits of symmetry group using filtered generators

The non-trivial orbits of the group action are stored in the array orbits of length npermvars. This array contains the indices of variables from the permvars array such that variables that are contained in the same orbit appear consecutively in the orbits array. The variables of the i-th orbit have indices orbits[orbitbegins[i]], … , orbits[orbitbegins[i + 1] - 1]. Note that the description of the orbits ends at orbitbegins[norbits] - 1.

Only permutations that are not inactive (as marked by @p inactiveperms) are used. Thus, one can use this array to filter out permutations.