[SCM] an open source computer algebra system branch, cleanedupstream, updated. 6125e540ca6d66c307958938a9d53b245507c323

Bernhard R. Link brlink at debian.org
Tue Apr 24 15:55:23 UTC 2012


The following commit has been merged in the cleanedupstream branch:
commit 9ff20fefb546702a3caaf78c1577767c8f252215
Author: Martin Lee <martinlee84 at web.de>
Date:   Tue Mar 20 11:52:12 2012 +0100

    fix: swap variables before return after LucksWangSparseHeuristic
    fix: remove contents in extNonMonicFactorRecombination

diff --git a/factory/facFqFactorize.cc b/factory/facFqFactorize.cc
index d84c43f..925fe3d 100644
--- a/factory/facFqFactorize.cc
+++ b/factory/facFqFactorize.cc
@@ -2128,7 +2128,7 @@ extNonMonicFactorRecombination (const CFList& factors, const CanonicalForm& F,
           return result;
         }
         else
-          return CFList (buf);
+          return CFList (buf/myContent(buf));
       }
 
       S= subset (v, s, TT, noSubset);
@@ -2167,6 +2167,7 @@ extNonMonicFactorRecombination (const CFList& factors, const CanonicalForm& F,
           if (T.length() < 2*s || T.length() == s)
           {
             delete [] v;
+            buf /= myContent (buf);
             buf /= Lc (buf);
             appendTestMapDown (result, buf, info, source, dest);
             return result;
@@ -2182,7 +2183,7 @@ extNonMonicFactorRecombination (const CFList& factors, const CanonicalForm& F,
     if (T.length() < 2*s || T.length() == s)
     {
       delete [] v;
-      appendTestMapDown (result, buf, info, source, dest);
+      appendTestMapDown (result, buf/myContent(buf), info, source, dest);
       return result;
     }
     for (int i= 0; i < T.length(); i++)
@@ -2190,7 +2191,7 @@ extNonMonicFactorRecombination (const CFList& factors, const CanonicalForm& F,
     noSubset= false;
   }
   if (T.length() < 2*s)
-    appendMapDown (result, F, info, source, dest);
+    appendMapDown (result, F/myContent(F), info, source, dest);
 
   delete [] v;
   return result;
@@ -2615,6 +2616,11 @@ multiFactorize (const CanonicalForm& F, const ExtensionInfo& info)
       if (extension)
         factors= extNonMonicFactorRecombination (factors, A, info);
 
+      if (v.level() != 1)
+      {
+        for (CFListIterator iter= factors; iter.hasItem(); iter++)
+          iter.getItem()= swapvar (iter.getItem(), v, y);
+      }
       appendSwapDecompress (factors, contentAFactors, N, swapLevel,
                             swapLevel2, x);
       normalize (factors);

-- 
an open source computer algebra system



More information about the debian-science-commits mailing list