Loading...
Searching...
No Matches
IntMinorValue Class Reference

Class IntMinorValue is derived from MinorValue and can be used for representing values in a cache for sub-determinantes; see class Cache. More...

`#include <Minor.h>`

## Public Member Functions

| IntMinorValue (const int result, const int multiplications, const int additions, const int accumulatedMultiplications, const int accumulatedAdditions, const int retrievals, const int potentialRetrievals)
| A constructor for class MinorValue.
| IntMinorValue (const IntMinorValue &mv)
| Copy constructor.
| IntMinorValue ()
| just to make the compiler happy
virtual | ~IntMinorValue ()
| Destructor.
int | getResult () const
| Accessor for the private field _result.
int | getWeight () const
| Accessor for the current weight of this class instance.
std::string | toString () const
| A method for providing a printable version of the represented MinorValue.
Public Member Functions inherited from MinorValue
bool | operator== (const MinorValue &mv) const
| just to make the compiler happy
bool | operator< (const MinorValue &mv) const
| just to make the compiler happy
int | getRetrievals () const
| A method for accessing the number of retrievals of this minor.
int | getPotentialRetrievals () const
| A method for accessing the maximum number of potential retrievals of this minor.
int | getMultiplications () const
| A method for accessing the multiplications performed while computing this minor.
int | getAccumulatedMultiplications () const
| A method for accessing the multiplications performed while computing this minor, including all nested multiplications.
int | getAdditions () const
| A method for accessing the additions performed while computing this minor.
int | getAccumulatedAdditions () const
| A method for accessing the additions performed while computing this minor, including all nested additions.
void | incrementRetrievals ()
| A method for incrementing the number of performed retrievals of this instance of MinorValue.
int | getUtility () const
| A method for obtaining a rank measure for theiven MinorValue.
void | print () const
| A method for printing a string representation of the given MinorValue to std::cout.

## Private Attributes

int | _result
| a store for the actual value of the minor

## Additional Inherited Members

Static Public Member Functions inherited from MinorValue
static void | SetRankingStrategy (const int rankingStrategy)
| A method for determining the value ranking strategy.
Protected Member Functions inherited from MinorValue
int | rankMeasure1 () const
| A method for obtaining a rank measure for the given MinorValue.
int | rankMeasure2 () const
| A method for obtaining a rank measure for the given MinorValue.
int | rankMeasure3 () const
| A method for obtaining a rank measure for the given MinorValue.
int | rankMeasure4 () const
| A method for obtaining a rank measure for the given MinorValue.
int | rankMeasure5 () const
| A method for obtaining a rank measure for the given MinorValue.
Static Protected Member Functions inherited from MinorValue
static int | GetRankingStrategy ()
| Accessor for the static private field g_rankingStrategy.
Protected Attributes inherited from MinorValue
int | _retrievals
| -1 iff cache is not used, otherwise the number of retrievals so far of the current minor
int | _potentialRetrievals
| -1 iff cache is not used, otherwise the maximum number of potential retrievals of this minor (e.g.
int | _multiplications
| a store for the actual number of multiplications to compute the current minor
int | _additions
| a store for the actual number of additions to compute the current minor
int | _accumulatedMult
| a store for the accumulated number of multiplications to compute the current minor; This also includes all multiplications nested in sub-minors which may be retrieved from a cache.
int | _accumulatedSum
| a store for the accumulated number of additions to compute the current minor; This also includes all additions nested in sub-minors which may be retrieved from a cache.
STATIC_VAR int | g_rankingStrategy = -1
| private store for the current value ranking strategy; This member can be set using MinorValue::SetRankingStrategy (const int).

## Detailed Description

Class IntMinorValue is derived from MinorValue and can be used for representing values in a cache for sub-determinantes; see class Cache.

As such, it is a realization of the template class ValueClass which is used in the declaration of class Cache. Following the documentation of class Cache, we need to implement at least the methods:
`bool IntMinorValue::operator< (const IntMinorValue& key),`
`bool IntMinorValue::operator== (const IntMinorValue& key),`
`int IntMinorValue::getWeight ().`
The main purpose of IntMinorValue is to represent values of sub-determinantes of a pre-defined matrix. Class MinorKey is used to determine which rows and columns of this pre-defined matrix ought to belong to the respective sub-determinante of interest. So far, IntMinorValue is just an example implementation which assumes matrices with int entries, such that the result of any minor is again an int.

Author
  Frank Seelisch, http://www.mathematik.uni-kl.de/~seelisch

Definition at line 717 of file Minor.h.

## Constructor & Destructor Documentation

## IntMinorValue() [1/3]

IntMinorValue::IntMinorValue | ( | const int | result,
|  | const int | multiplications,
|  | const int | additions,
|  | const int | accumulatedMultiplications,
|  | const int | accumulatedAdditions,
|  | const int | retrievals,
|  | const int | potentialRetrievals )

A constructor for class MinorValue.

Parameters

  result | the actual value of the represented minor
  multiplications | number of multiplications to compute this minor
  additions | number of additions to compute this minor
  accumulatedMultiplications | number of multiplications to compute this minor, including nested operations
  accumulatedAdditions | number of additions to compute this minor, including nested operations
  retrievals | number of times this minor has been retrieved from cache
  potentialRetrievals | maximum number of times this minor may be retrieved from cache

Definition at line 988 of file Minor.cc.

{
_result = result;
_multiplications = multiplications;
_additions = additions;
_accumulatedMult = accumulatedMultiplications;
_accumulatedSum = accumulatedAdditions;
_potentialRetrievals = potentialRetrievals;
_retrievals = retrievals;
}
IntMinorValue::_result
int _result
a store for the actual value of the minor
Definition Minor.h:723
MinorValue::_additions
int _additions
a store for the actual number of additions to compute the current minor
Definition Minor.h:432
MinorValue::_potentialRetrievals
int _potentialRetrievals
-1 iff cache is not used, otherwise the maximum number of potential retrievals of this minor (e....
Definition Minor.h:421
MinorValue::_accumulatedMult
int _accumulatedMult
a store for the accumulated number of multiplications to compute the current minor; This also include...
Definition Minor.h:441
MinorValue::_accumulatedSum
int _accumulatedSum
a store for the accumulated number of additions to compute the current minor; This also includes all ...
Definition Minor.h:450
MinorValue::_multiplications
int _multiplications
a store for the actual number of multiplications to compute the current minor
Definition Minor.h:427
MinorValue::_retrievals
int _retrievals
-1 iff cache is not used, otherwise the number of retrievals so far of the current minor
Definition Minor.h:414
result
return result
Definition facAbsBiFact.cc:76

## IntMinorValue() [2/3]

IntMinorValue::IntMinorValue | ( | const IntMinorValue & | mv | ) |

Copy constructor.

Definition at line 1059 of file Minor.cc.

{
_result = mv.getResult();
_retrievals = mv.getRetrievals();
_potentialRetrievals = mv.getPotentialRetrievals();
_multiplications = mv.getMultiplications();
_additions = mv.getAdditions();
_accumulatedMult = mv.getAccumulatedMultiplications();
_accumulatedSum = mv.getAccumulatedAdditions();
}
IntMinorValue::getResult
int getResult() const
Accessor for the private field _result.
Definition Minor.cc:1019
MinorValue::getPotentialRetrievals
int getPotentialRetrievals() const
A method for accessing the maximum number of potential retrievals of this minor.
Definition Minor.cc:878
MinorValue::getAdditions
int getAdditions() const
A method for accessing the additions performed while computing this minor.
Definition Minor.cc:888
MinorValue::getAccumulatedAdditions
int getAccumulatedAdditions() const
A method for accessing the additions performed while computing this minor, including all nested addit...
Definition Minor.cc:898
MinorValue::getMultiplications
int getMultiplications() const
A method for accessing the multiplications performed while computing this minor.
Definition Minor.cc:883
MinorValue::getRetrievals
int getRetrievals() const
A method for accessing the number of retrievals of this minor.
Definition Minor.cc:868
MinorValue::getAccumulatedMultiplications
int getAccumulatedMultiplications() const
A method for accessing the multiplications performed while computing this minor, including all nested...
Definition Minor.cc:893

## IntMinorValue() [3/3]

IntMinorValue::IntMinorValue | ( |  | ) |

just to make the compiler happy

Definition at line 1004 of file Minor.cc.

{
_result = -1;
_multiplications = -1;
_additions = -1;
_accumulatedMult = -1;
_accumulatedSum = -1;
_potentialRetrievals = -1;
_retrievals = -1;
}

## ~IntMinorValue()

IntMinorValue::~IntMinorValue | ( |  | ) |

virtual

Destructor.

Definition at line 1015 of file Minor.cc.

{
}

## Member Function Documentation

## getResult()

int IntMinorValue::getResult | ( |  | ) | const

Accessor for the private field _result.

Returns
  the result encoded in this class instance

Definition at line 1019 of file Minor.cc.

{
return _result;
}

## getWeight()

int IntMinorValue::getWeight | ( |  | ) | const

virtual

Accessor for the current weight of this class instance.

Returns
  the current weight of this class instance

Reimplemented from MinorValue.

Definition at line 980 of file Minor.cc.

{
/* put measure for size of MinorValue here, i.e. number of monomials in
polynomial; so far, we use the accumulated number of multiplications
(i.e., including all nested ones) to simmulate the size of a polynomial */
return _accumulatedMult;
}

## toString()

string IntMinorValue::toString | ( |  | ) | const

virtual

A method for providing a printable version of the represented MinorValue.

Returns
  a printable version of the given instance as instance of class string

Reimplemented from MinorValue.

Definition at line 1024 of file Minor.cc.

{
char h[10];
/* Let's see whether a cache has been used to compute this MinorValue: */
bool cacheHasBeenUsed = true;
if (this->getRetrievals() == -1) cacheHasBeenUsed = false;
snprintf(h,10, "%d", this->getResult());
string s = h;
s += " [retrievals: ";
if (cacheHasBeenUsed) { snprintf(h,10, "%d", this->getRetrievals()); s += h; }
else s += "/";
s += " (of ";
if (cacheHasBeenUsed)
{
snprintf(h,10, "%d", this->getPotentialRetrievals());
s += h;
}
else s += "/";
s += "), *: ";
snprintf(h,10, "%d", this->getMultiplications()); s += h;
s += " (accumulated: ";
snprintf(h,10, "%d", this->getAccumulatedMultiplications()); s += h;
s += "), +: ";
snprintf(h,10, "%d", this->getAdditions()); s += h;
s += " (accumulated: ";
snprintf(h,10, "%d", this->getAccumulatedAdditions()); s += h;
s += "), rank: ";
if (cacheHasBeenUsed) { snprintf(h,10, "%d", this->getUtility()); s += h; }
else s += "/";
s += "]";
return s;
}
MinorValue::getUtility
int getUtility() const
A method for obtaining a rank measure for theiven MinorValue.
Definition Minor.cc:926
s
const CanonicalForm int s
Definition facAbsFact.cc:51
h
STATIC_VAR Poly * h
Definition janet.cc:971

## Field Documentation

## _result

int IntMinorValue::_result

private

a store for the actual value of the minor

Definition at line 723 of file Minor.h.

The documentation for this class was generated from the following files:

- kernel/linear_algebra/Minor.h
- kernel/linear_algebra/Minor.cc