[mathicgb] 358/393: Clean up of Reducer header file and remove statistics functionality from there. If we need that functionality in future, it should be implemented using the logging facility, not as a part of the main-line code.
Doug Torrance
dtorrance-guest at moszumanska.debian.org
Fri Apr 3 15:59:34 UTC 2015
This is an automated email from the git hooks/post-receive script.
dtorrance-guest pushed a commit to branch upstream
in repository mathicgb.
commit f0241a84c09147a04adc509df8932afd562a0197
Author: Bjarke Hammersholt Roune <bjarkehr.code at gmail.com>
Date: Tue Sep 3 16:26:54 2013 +0200
Clean up of Reducer header file and remove statistics functionality from there. If we need that functionality in future, it should be implemented using the logging facility, not as a part of the main-line code.
---
src/mathicgb/ClassicGBAlg.cpp | 34 +++++------
src/mathicgb/F4Reducer.cpp | 12 ----
src/mathicgb/Reducer.cpp | 20 +------
src/mathicgb/Reducer.hpp | 125 ++++++++++++++--------------------------
src/mathicgb/SignatureGB.cpp | 73 +++++++++++------------
src/mathicgb/SignatureGB.hpp | 6 --
src/mathicgb/TypicalReducer.cpp | 13 -----
src/test/gb-test.cpp | 4 +-
8 files changed, 96 insertions(+), 191 deletions(-)
diff --git a/src/mathicgb/ClassicGBAlg.cpp b/src/mathicgb/ClassicGBAlg.cpp
index 633b328..f93efaa 100755
--- a/src/mathicgb/ClassicGBAlg.cpp
+++ b/src/mathicgb/ClassicGBAlg.cpp
@@ -397,7 +397,7 @@ void ClassicGBAlg::printStats(std::ostream& out) const {
value << mic::ColumnPrinter::commafy(reductions) << '\n';
extra << '\n';
- Reducer::Stats reducerStats = mReducer.sigStats();
+ //Reducer::Stats reducerStats = mReducer.sigStats();
SPairs::Stats sPairStats = mSPairs.stats();
unsigned long long const primeElim = sPairStats.relativelyPrimeHits;
@@ -406,55 +406,55 @@ void ClassicGBAlg::printStats(std::ostream& out) const {
extra << mic::ColumnPrinter::percentInteger(primeElim, reductions)
<< " of late eliminations\n";
- const unsigned long long singularReductions =
+ /*const unsigned long long singularReductions =
reducerStats.singularReductions;
name << "Singular reductions:\n";
value << mic::ColumnPrinter::commafy(singularReductions) << '\n';
extra << mic::ColumnPrinter::percentInteger(singularReductions, reductions)
- << " of reductions\n";
+ << " of reductions\n";*/
- const unsigned long long zeroReductions = reducerStats.zeroReductions;
+ /*const unsigned long long zeroReductions = reducerStats.zeroReductions;
name << "Reductions to zero:\n";
value << mic::ColumnPrinter::commafy(zeroReductions) << '\n';
extra << mic::ColumnPrinter::percentInteger(zeroReductions, reductions)
- << " of reductions\n";
+ << " of reductions\n";*/
- const unsigned long long newReductions =
+ /*const unsigned long long newReductions =
reductions - singularReductions - zeroReductions;
name << "Reductions to new ele:\n";
value << mic::ColumnPrinter::commafy(newReductions) << '\n';
extra << mic::ColumnPrinter::percentInteger(newReductions, reductions)
- << " of reductions\n";
+ << " of reductions\n";*/
- const unsigned long long redSteps = reducerStats.steps;
+ /*const unsigned long long redSteps = reducerStats.steps;
name << "Sig reduction steps:\n";
value << mic::ColumnPrinter::commafy(redSteps) << '\n';
extra << mic::ColumnPrinter::ratioInteger
(redSteps, reductions - singularReductions)
- << " steps per non-sing reduction\n";
+ << " steps per non-sing reduction\n";*/
- const unsigned long long longestReduction = reducerStats.maxSteps;
+ /*const unsigned long long longestReduction = reducerStats.maxSteps;
name << "Longest sig reduction:\n";
value << mic::ColumnPrinter::commafy(longestReduction) << '\n';
- extra << '\n';
+ extra << '\n';*/
- Reducer::Stats classicRedStats = mReducer.classicStats();
+ /*Reducer::Stats classicRedStats = mReducer.classicStats();
const unsigned long long clReductions = classicRedStats.reductions;
name << "Classic reductions:\n";
value << mic::ColumnPrinter::commafy(clReductions) << '\n';
- extra << '\n';
+ extra << '\n';*/
- const unsigned long long clRedSteps = classicRedStats.steps;
+ /*const unsigned long long clRedSteps = classicRedStats.steps;
const double clStepsRatio = static_cast<double>(clRedSteps) / clReductions;
name << "Classic reduction steps:\n";
value << mic::ColumnPrinter::commafy(clRedSteps) << '\n';
extra << mic::ColumnPrinter::ratioInteger(clRedSteps, clReductions)
- << " steps per reduction\n";
+ << " steps per reduction\n";*/
- const unsigned long long clLongestReduction = classicRedStats.maxSteps;
+ /*const unsigned long long clLongestReduction = classicRedStats.maxSteps;
name << "Longest classic red:\n";
value << mic::ColumnPrinter::commafy(clLongestReduction) << '\n';
- extra << '\n';
+ extra << '\n';*/
//SPairs::Stats sPairStats = mSPairs.stats();
unsigned long long marginal = sPairStats.sPairsConsidered;
diff --git a/src/mathicgb/F4Reducer.cpp b/src/mathicgb/F4Reducer.cpp
index 360b74d..bf26ef4 100755
--- a/src/mathicgb/F4Reducer.cpp
+++ b/src/mathicgb/F4Reducer.cpp
@@ -72,8 +72,6 @@ std::unique_ptr<Poly> F4Reducer::classicReduce
"F4Reducer: Using fall-back reducer for single classic reduction\n";
auto p = mFallback->classicReduce(poly, basis);
- mSigStats = mFallback->sigStats();
- mClassicStats = mFallback->classicStats();
return std::move(p);
}
@@ -84,8 +82,6 @@ std::unique_ptr<Poly> F4Reducer::classicTailReduce
"F4Reducer: Using fall-back reducer for single classic tail reduction\n";
auto p = mFallback->classicTailReduce(poly, basis);
- mSigStats = mFallback->sigStats();
- mClassicStats = mFallback->classicStats();
return std::move(p);
}
@@ -98,8 +94,6 @@ std::unique_ptr<Poly> F4Reducer::classicReduceSPoly(
std::cerr << "F4Reducer: "
"Using fall-back reducer for single classic S-pair reduction\n";
auto p = mFallback->classicReduceSPoly(a, b, basis);
- mSigStats = mFallback->sigStats();
- mClassicStats = mFallback->classicStats();
return std::move(p);
}
@@ -113,8 +107,6 @@ void F4Reducer::classicReduceSPolySet(
std::cerr << "F4Reducer: Using fall-back reducer for "
<< spairs.size() << " S-pairs.\n";
mFallback->classicReduceSPolySet(spairs, basis, reducedOut);
- mSigStats = mFallback->sigStats();
- mClassicStats = mFallback->classicStats();
return;
}
reducedOut.clear();
@@ -181,8 +173,6 @@ void F4Reducer::classicReducePolySet
std::cerr << "F4Reducer: Using fall-back reducer for "
<< polys.size() << " polynomials.\n";
mFallback->classicReducePolySet(polys, basis, reducedOut);
- mSigStats = mFallback->sigStats();
- mClassicStats = mFallback->classicStats();
return;
}
@@ -246,8 +236,6 @@ std::unique_ptr<Poly> F4Reducer::regularReduce(
std::cerr <<
"F4Reducer: Using fall-back reducer for single regular reduction\n";
auto p = mFallback->regularReduce(sig, multiple, basisElement, basis);
- mSigStats = mFallback->sigStats();
- mClassicStats = mFallback->classicStats();
return p;
}
diff --git a/src/mathicgb/Reducer.cpp b/src/mathicgb/Reducer.cpp
index 0459942..e6e30d0 100755
--- a/src/mathicgb/Reducer.cpp
+++ b/src/mathicgb/Reducer.cpp
@@ -16,14 +16,7 @@
MATHICGB_NAMESPACE_BEGIN
-Reducer::Reducer():
- stats_maxsize(0),
- stats_maxsize_live(0),
- stats_n_inserts(0),
- stats_n_compares(0) {}
-
-Reducer::~Reducer() {
-}
+Reducer::~Reducer() {}
std::unique_ptr<Reducer> Reducer::makeReducer(
ReducerType type,
@@ -153,15 +146,4 @@ void Reducer::displayReducerTypes(std::ostream &o)
o << " 26 F4 reducer, new" << std::endl;
}
-// Todo: can't this be machine generated?
-Reducer::Stats::Stats():
- reductions(0),
- singularReductions(0),
- zeroReductions(0),
- steps(0),
- maxSteps(0) {}
-
-void Reducer::dump() const {
-}
-
MATHICGB_NAMESPACE_END
diff --git a/src/mathicgb/Reducer.hpp b/src/mathicgb/Reducer.hpp
index f2878be..e9e0473 100755
--- a/src/mathicgb/Reducer.hpp
+++ b/src/mathicgb/Reducer.hpp
@@ -13,10 +13,9 @@ MATHICGB_NAMESPACE_BEGIN
class SigPolyBasis;
class PolyBasis;
-/** Abstract base class for classes that allow reduction of polynomials.
-
-todo: consider changing name of findLeadTerm to leadTerm.
-*/
+/// Abstract base class for classes that allow reduction of polynomials.
+///
+/// @todo: consider changing name of findLeadTerm to leadTerm.
class Reducer {
public:
virtual ~Reducer();
@@ -28,53 +27,60 @@ public:
/// larger sets of reductions at a time.
virtual unsigned int preferredSetSize() const = 0;
+ virtual std::string description() const = 0;
+ virtual size_t getMemoryUse() const = 0;
+
// ***** Methods that do reduction
- /** Clasically reduces poly by the basis elements of basis. The reduction
- is classic in that no signatures are taken into account. */
+ /// Clasically reduces poly by the basis elements of basis. The reduction
+ /// is classic in that no signatures are taken into account.
virtual std::unique_ptr<Poly> classicReduce
- (const Poly& poly, const PolyBasis& basis) = 0;
+ (const Poly& poly, const PolyBasis& basis) = 0;
- /** Clasically reduces poly by the basis elements of basis, except that the
- lead term is not reduced. The reduction is classic in that no signatures
- are taken into account. */
+ /// Clasically reduces poly by the basis elements of basis, except that the
+ /// lead term is not reduced. The reduction is classic in that no signatures
+ /// are taken into account.
virtual std::unique_ptr<Poly> classicTailReduce
- (const Poly& poly, const PolyBasis& basis) = 0;
+ (const Poly& poly, const PolyBasis& basis) = 0;
- /** Clasically reduces the S-polynomial between a and b. */
+ /// Clasically reduces the S-polynomial between a and b.
virtual std::unique_ptr<Poly> classicReduceSPoly
- (const Poly& a, const Poly& b, const PolyBasis& basis) = 0;
-
- /** Clasically reduces the S-polynomial of these pairs. May or may
- not also interreduce these to some extent. Polynomials that are
- reduced to zero are not put into reducedOut. */
- virtual void classicReduceSPolySet
- (std::vector<std::pair<size_t, size_t> >& spairs,
- const PolyBasis& basis,
- std::vector<std::unique_ptr<Poly> >& reducedOut) = 0;
-
- /** Clasically reduces the passed-in polynomials of these pairs. May
- or may not also interreduce these to some extent. Polynomials
- that are reduced to zero are not put into reducedOut. */
- virtual void classicReducePolySet
- (const std::vector<std::unique_ptr<Poly> >& polys,
- const PolyBasis& basis,
- std::vector<std::unique_ptr<Poly> >& reducedOut) = 0;
-
- /** Regular reduce multiple*basisElement in signature sig by the
- basis elements in basis. Returns null (0) if multiple*basisElement
- is not regular top reducible -- this indicates a singular
- reduction. */
+ (const Poly& a, const Poly& b, const PolyBasis& basis) = 0;
+
+ /// Clasically reduces the S-polynomial of these pairs. May or may
+ /// not also interreduce these to some extent. Polynomials that are
+ /// reduced to zero are not put into reducedOut.
+ virtual void classicReduceSPolySet(
+ std::vector<std::pair<size_t, size_t> >& spairs,
+ const PolyBasis& basis,
+ std::vector<std::unique_ptr<Poly> >& reducedOut
+ ) = 0;
+
+ /// Clasically reduces the passed-in polynomials of these pairs. May
+ /// or may not also interreduce these to some extent. Polynomials
+ /// that are reduced to zero are not put into reducedOut.
+ virtual void classicReducePolySet(
+ const std::vector<std::unique_ptr<Poly> >& polys,
+ const PolyBasis& basis,
+ std::vector<std::unique_ptr<Poly> >& reducedOut
+ ) = 0;
+
+ /// Regular reduce multiple*basisElement in signature sig by the
+ /// basis elements in basis. Returns null (0) if multiple*basisElement
+ /// is not regular top reducible -- this indicates a singular
+ /// reduction.
virtual std::unique_ptr<Poly> regularReduce(
const_monomial sig,
const_monomial multiple,
size_t basisElement,
- const SigPolyBasis& basis) = 0;
+ const SigPolyBasis& basis
+ ) = 0;
- /** Sets how many bytes of memory to increase the memory use by
- at a time - if such a thing is appropriate for the reducer. */
+ /// Sets how many bytes of memory to increase the memory use by
+ /// at a time - if such a thing is appropriate for the reducer.
virtual void setMemoryQuantum(size_t quantum) = 0;
+
// ***** Kinds of reducers and creating a Reducer
enum ReducerType {
@@ -111,51 +117,6 @@ public:
static ReducerType reducerType(int typ);
static void displayReducerTypes(std::ostream& o);
-
-
- // ***** Obtaining statistics about the reduction process
-
- struct Stats {
- Stats();
-
- // Number of signature reductions performed including singular reductions.
- unsigned long long reductions;
-
- // Number of regular reductions where the polynomial was not top
- // regular reducible.
- unsigned long long singularReductions;
-
- // Number of reductions to zero.
- unsigned long long zeroReductions;
-
- // Total number of steps across all reductions. Does not count detecting
- // singular reduction as a reduction step.
- unsigned long long steps;
-
- // Number of reduction steps in the reduction that had the most steps.
- unsigned long long maxSteps;
- };
-
- Stats sigStats() const {return mSigStats;}
- Stats classicStats() const {return mClassicStats;}
-
-
- // ***** Miscellaneous
-
- virtual std::string description() const = 0;
- virtual size_t getMemoryUse() const = 0;
- virtual void dump() const;
-
-protected:
- Reducer();
-
- size_t stats_maxsize;
- size_t stats_maxsize_live;
- unsigned long long stats_n_inserts;
- unsigned long long stats_n_compares;
-
- Stats mSigStats;
- Stats mClassicStats;
};
MATHICGB_NAMESPACE_END
diff --git a/src/mathicgb/SignatureGB.cpp b/src/mathicgb/SignatureGB.cpp
index 73e0599..283b9a5 100755
--- a/src/mathicgb/SignatureGB.cpp
+++ b/src/mathicgb/SignatureGB.cpp
@@ -302,7 +302,7 @@ void SignatureGB::displayStats(std::ostream &o) const
void SignatureGB::displayPaperStats(std::ostream& out) const {
SigSPairs::Stats stats = SP->getStats();
- Reducer::Stats reducerStats = reducer->sigStats();
+ //Reducer::Stats reducerStats = reducer->sigStats();
mic::ColumnPrinter pr;
pr.addColumn(true, " ");
pr.addColumn(false, " ");
@@ -369,20 +369,21 @@ void SignatureGB::displayPaperStats(std::ostream& out) const {
value << mic::ColumnPrinter::commafy(stats_relativelyPrimeEliminated) << '\n';
extra << '\n';
- name << "Removed (singular reduction):\n";
+ /*name << "Removed (singular reduction):\n";
value << mic::ColumnPrinter::commafy(reducerStats.singularReductions) << '\n';
- extra << '\n';
+ extra << '\n';*/
- unsigned long long nonzeroReductions = stats_pairsReduced - reducerStats.singularReductions - reducerStats.zeroReductions;
+ //unsigned long long nonzeroReductions = stats_pairsReduced - reducerStats.singularReductions - reducerStats.zeroReductions;
- name << "Number of pairs reduced to signature GB elems:\n";
+ /*name << "Number of pairs reduced to signature GB elems:\n";
value << mic::ColumnPrinter::commafy(nonzeroReductions) << '\n';
- extra << '\n';
+ extra << '\n';*/
- name << "Number of pairs reduced to new syzygy signatures:\n";
+ /*name << "Number of pairs reduced to new syzygy signatures:\n";
value << mic::ColumnPrinter::commafy(reducerStats.zeroReductions) << '\n';
- extra << '\n';
+ extra << '\n';*/
+ /*
unsigned long long nleft = considered
- stats.nonregularSPairs
- stats.lowBaseDivisorHits
@@ -405,7 +406,7 @@ void SignatureGB::displayPaperStats(std::ostream& out) const {
name << "Number of spairs unaccounted for:\n";
value << mic::ColumnPrinter::commafy(nleft) << '\n';
- extra << '\n';
+ extra << '\n';*/
#ifdef MATHIC_TRACK_DIV_MASK_HIT_RATIO
name << "Divisor Mask Stats" << '\n';
@@ -561,76 +562,76 @@ void SignatureGB::displaySomeStats(std::ostream& out) const {
extra << mic::ColumnPrinter::oneDecimal(perSig)
<< " spairs per signature\n";
- Reducer::Stats reducerStats = reducer->sigStats();
+ //Reducer::Stats reducerStats = reducer->sigStats();
- const unsigned long long reductions = reducerStats.reductions;
+ /*const unsigned long long reductions = reducerStats.reductions;
const size_t koszulElim = stats_koszulEliminated;
name << "Koszul sp eliminated:\n";
value << mic::ColumnPrinter::commafy(koszulElim) << '\n';
extra << mic::ColumnPrinter::percentInteger(koszulElim, sigsDone - reductions)
- << " of late eliminations\n";
+ << " of late eliminations\n";*/
- const size_t primeElim = stats_relativelyPrimeEliminated;
+ /*const size_t primeElim = stats_relativelyPrimeEliminated;
name << "Rel.prime sp eliminated:\n";
value << mic::ColumnPrinter::commafy(primeElim) << '\n';
extra << mic::ColumnPrinter::percentInteger(primeElim, sigsDone - reductions)
- << " of late eliminations\n";
+ << " of late eliminations\n";*/
- name << "Signature reductions:\n";
+ /*name << "Signature reductions:\n";
value << mic::ColumnPrinter::commafy(reductions) << '\n';
extra << mic::ColumnPrinter::percentInteger(reductions, sigsDone)
- << " of S-pairs are reduced\n";
+ << " of S-pairs are reduced\n";*/
- const unsigned long long singularReductions =
+ /*const unsigned long long singularReductions =
reducerStats.singularReductions;
name << "Singular reductions:\n";
value << mic::ColumnPrinter::commafy(singularReductions) << '\n';
extra << mic::ColumnPrinter::percentInteger(singularReductions, reductions)
- << " of reductions\n";
+ << " of reductions\n";*/
- const unsigned long long zeroReductions = reducerStats.zeroReductions;
+ /*const unsigned long long zeroReductions = reducerStats.zeroReductions;
name << "Reductions to zero:\n";
value << mic::ColumnPrinter::commafy(zeroReductions) << '\n';
extra << mic::ColumnPrinter::percentInteger(zeroReductions, reductions)
- << " of reductions\n";
+ << " of reductions\n";*/
- const unsigned long long newReductions =
+ /*const unsigned long long newReductions =
reductions - singularReductions - zeroReductions;
name << "Reductions to new ele:\n";
value << mic::ColumnPrinter::commafy(newReductions) << '\n';
extra << mic::ColumnPrinter::percentInteger(newReductions, reductions)
- << " of reductions\n";
+ << " of reductions\n";*/
- const unsigned long long redSteps = reducerStats.steps;
+ /*const unsigned long long redSteps = reducerStats.steps;
const double stepsRatio =
static_cast<double>(redSteps) / (reductions - singularReductions);
name << "Sig reduction steps:\n";
value << mic::ColumnPrinter::commafy(redSteps) << '\n';
extra << mic::ColumnPrinter::oneDecimal(stepsRatio)
- << " steps per non-sing reduction\n";
+ << " steps per non-sing reduction\n";*/
- const unsigned long long longestReduction = reducerStats.maxSteps;
+ /*const unsigned long long longestReduction = reducerStats.maxSteps;
name << "Longest sig reduction:\n";
value << mic::ColumnPrinter::commafy(longestReduction) << '\n';
- extra << '\n';
+ extra << '\n';*/
- Reducer::Stats classicRedStats = reducer->classicStats();
+ /*Reducer::Stats classicRedStats = reducer->classicStats();
const unsigned long long clReductions = classicRedStats.reductions;
name << "Classic reductions:\n";
value << mic::ColumnPrinter::commafy(clReductions) << '\n';
- extra << '\n';
+ extra << '\n';*/
- const unsigned long long clRedSteps = classicRedStats.steps;
+ /*const unsigned long long clRedSteps = classicRedStats.steps;
const double clStepsRatio = static_cast<double>(clRedSteps) / clReductions;
name << "Classic reduction steps:\n";
value << mic::ColumnPrinter::commafy(clRedSteps) << '\n';
extra << mic::ColumnPrinter::oneDecimal(clStepsRatio)
- << " steps per reduction\n";
+ << " steps per reduction\n";*/
- const unsigned long long clLongestReduction = classicRedStats.maxSteps;
+ /*const unsigned long long clLongestReduction = classicRedStats.maxSteps;
name << "Longest classic red:\n";
value << mic::ColumnPrinter::commafy(clLongestReduction) << '\n';
- extra << '\n';
+ extra << '\n';*/
out << "*** Some of the statistics ***\n" << pr << std::flush;
}
@@ -701,12 +702,4 @@ void SignatureGB::displayMemoryUse(std::ostream& out) const
out << "*** Summary of memory use ***\n" << pr << std::flush;
}
-unsigned long long SignatureGB::getSigReductionCount() const {
- return reducer->sigStats().reductions;
-}
-
-unsigned long long SignatureGB::getSingularReductionCount() const {
- return reducer->sigStats().singularReductions;
-}
-
MATHICGB_NAMESPACE_END
diff --git a/src/mathicgb/SignatureGB.hpp b/src/mathicgb/SignatureGB.hpp
index de76f0a..d7f800e 100755
--- a/src/mathicgb/SignatureGB.hpp
+++ b/src/mathicgb/SignatureGB.hpp
@@ -40,12 +40,6 @@ public:
void computeGrobnerBasis();
- // How many S-pairs were not eliminated before reduction.
- unsigned long long getSigReductionCount() const;
-
- // How many reductions were singular
- unsigned long long getSingularReductionCount() const;
-
SigPolyBasis* getGB() { return GB.get(); }
ModuleMonoSet* getSyzTable() { return mProcessor->processingNeeded() ? Hsyz2.get() : Hsyz.get(); }
SigSPairs* getSigSPairs() { return SP.get(); }
diff --git a/src/mathicgb/TypicalReducer.cpp b/src/mathicgb/TypicalReducer.cpp
index 9c7212f..c0ca77d 100755
--- a/src/mathicgb/TypicalReducer.cpp
+++ b/src/mathicgb/TypicalReducer.cpp
@@ -30,7 +30,6 @@ std::unique_ptr<Poly> TypicalReducer::regularReduce(
const SigPolyBasis& basis)
{
const PolyRing& ring = basis.ring();
- ++mSigStats.reductions;
monomial tproduct = ring.allocMonomial(mArena);
monomial u = ring.allocMonomial(mArena);
@@ -38,7 +37,6 @@ std::unique_ptr<Poly> TypicalReducer::regularReduce(
size_t reducer = basis.regularReducer(sig, tproduct);
if (reducer == static_cast<size_t>(-1)) {
- ++mSigStats.singularReductions;
mArena.freeAllAllocs();
return nullptr; // singular reduction: no regular top reduction possible
}
@@ -76,11 +74,6 @@ std::unique_ptr<Poly> TypicalReducer::regularReduce(
}
result->makeMonic();
- mSigStats.steps += steps;
- mSigStats.maxSteps = std::max(mSigStats.maxSteps, steps);
- if (result->isZero())
- ++mSigStats.zeroReductions;
-
reset();
return result;
}
@@ -171,7 +164,6 @@ std::unique_ptr<Poly> TypicalReducer::classicReduce
(std::unique_ptr<Poly> result, const PolyBasis& basis) {
const PolyRing& ring = basis.ring();
MATHICGB_ASSERT(&result->ring() == &ring);
- ++mClassicStats.reductions;
if (tracingLevel > 100)
std::cerr << "Classic reduction begun." << std::endl;
@@ -215,11 +207,6 @@ std::unique_ptr<Poly> TypicalReducer::classicReduce
}
result->makeMonic();
- mClassicStats.steps += steps;
- mClassicStats.maxSteps = std::max(mClassicStats.maxSteps, steps);
- if (result->isZero())
- ++mClassicStats.zeroReductions;
-
if (tracingLevel > 100)
std::cerr << "Classic reduction done." << std::endl;
diff --git a/src/test/gb-test.cpp b/src/test/gb-test.cpp
index 0e01cd0..cef0d30 100755
--- a/src/test/gb-test.cpp
+++ b/src/test/gb-test.cpp
@@ -304,10 +304,10 @@ spairQueue reducerType divLookup monTable buchberger postponeKoszul useBaseDivis
<< reducerType << ' ' << divLookup << ' '
<< monTable << ' ' << ' ' << postponeKoszul << ' '
<< useBaseDivisors;
- EXPECT_EQ(nonSingularReductions, alg.getSigReductionCount() - alg.getSingularReductionCount())
+ /*EXPECT_EQ(nonSingularReductions, alg.getSigReductionCount() - alg.getSingularReductionCount())
<< reducerType << ' ' << divLookup << ' '
<< monTable << ' ' << ' ' << postponeKoszul << ' '
- << useBaseDivisors;
+ << useBaseDivisors;*/
}
}
}
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/mathicgb.git
More information about the debian-science-commits
mailing list