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::Coppersmith, Method::CRA< IterationMethod >, 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. More...
 
bool checkResult = false
 Ensure that solving worked by checking Ax = b (might not be implemented by all methods). More...
 
size_t trialsBeforeFailure = LINBOX_DEFAULT_TRIALS_BEFORE_FAILURE
 Maximum number of trials before giving up. More...
 
bool certifyInconsistency = false
 Whether the solver should attempt to find a certificate of inconsistency if it suspects the system to be inconsistent. More...
 
size_t blockingFactor = LINBOX_DEFAULT_BLOCKING_FACTOR
 Size of blocks. More...
 

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.

◆ shapeFlags

ShapeFlags shapeFlags

Shape of the system.

◆ checkResult

bool checkResult = false

Ensure that solving worked by checking Ax = b (might not be implemented by all methods).

◆ trialsBeforeFailure

size_t trialsBeforeFailure = LINBOX_DEFAULT_TRIALS_BEFORE_FAILURE

Maximum number of trials before giving up.

◆ certifyInconsistency

bool certifyInconsistency = false

Whether the solver should attempt to find a certificate of inconsistency if it suspects the system to be inconsistent.

◆ blockingFactor

size_t blockingFactor = LINBOX_DEFAULT_BLOCKING_FACTOR

Size of blocks.


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