linbox
Data Fields
MethodBase Struct Reference

Holds everything a method needs to know about the problem. More...

#include <methods.h>

Inherited by Method::Auto, Method::Blackbox, Method::BlockHankel, Method::BlockLanczos, Method::BlockWiedemann, Method::CRA< IterationMethod >, Method::Coppersmith, Method::DenseElimination, Method::Dixon, Method::Elimination, Method::Lanczos, Method::SparseElimination, Method::SymbolicNumericNorm, Method::SymbolicNumericOverlap, Method::Wiedemann, and Method::WiedemannExtension.

Data Fields

Rank::Value rank = Rank::Unknown
 Rank of the system. More...
 
ShapeFlags shapeFlags
 Shape of the system.
 
bool checkResult = false
 Ensure that solving worked by checking Ax = b (might not be implemented by all methods).
 
size_t trialsBeforeFailure = LINBOX_DEFAULT_TRIALS_BEFORE_FAILURE
 Maximum number of trials before giving up.
 
bool certifyInconsistency = false
 Whether the solver should attempt to find a certificate of inconsistency if it suspects the system to be inconsistent.
 
size_t blockingFactor = LINBOX_DEFAULT_BLOCKING_FACTOR
 Size of blocks.
 

Detailed Description

Holds everything a method needs to know about the problem.

Note
This "put everything in it" design is used so that Method::Auto can specify any parameter of whatever method is going to be used. Fact is this structure is never copied between method switches. It does not matter if it is too big, but for clarity, we try to regroup elements used depending on the method.

Field Documentation

◆ rank

Rank::Value rank = Rank::Unknown

Rank of the system.

-1 means unknown.


The documentation for this struct was generated from the following file: