6 #ifndef CoinPresolveDupcol_H
7 #define CoinPresolveDupcol_H
Declarations for CoinPresolveMatrix and CoinPostsolveMatrix and their common base class CoinPrePostso...
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during postsol...
Abstract base class of all presolve routines.
const CoinPresolveAction * next
The next presolve transformation.
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during presolv...
Detect and remove duplicate columns.
const char * name() const
A name for debug printing.
dupcol_action & operator=(const dupcol_action &rhs)
const action *const actions_
static const CoinPresolveAction * presolve(CoinPresolveMatrix *prob, const CoinPresolveAction *next)
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
dupcol_action(int nactions, const action *actions, const CoinPresolveAction *next)
dupcol_action(const dupcol_action &rhs)
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
static const CoinPresolveAction * presolve(CoinPresolveMatrix *prob, const CoinPresolveAction *next)
duprow3_action(int nactions, const action *actions, const CoinPresolveAction *next)
const char * name() const
A name for debug printing.
const action *const actions_
Detect and remove duplicate rows.
const action *const actions_
duprow_action(int nactions, const action *actions, const CoinPresolveAction *next)
static const CoinPresolveAction * presolve(CoinPresolveMatrix *prob, const CoinPresolveAction *next)
const char * name() const
A name for debug printing.
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
Detect and remove entries whose sum is known.
const action *const actions_
static const CoinPresolveAction * presolve(CoinPresolveMatrix *prob, const CoinPresolveAction *next)
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
const char * name() const
A name for debug printing.
gubrow_action(int nactions, const action *actions, const CoinPresolveAction *next)
Detect interesting 2 by 2 blocks.
const action *const actions_
twoxtwo_action(int nactions, const action *actions, const CoinPresolveAction *next)
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
const char * name() const
A name for debug printing.
static const CoinPresolveAction * presolve(CoinPresolveMatrix *prob, const CoinPresolveAction *next)