Changeset 3e0c11d in git
- Timestamp:
- Jul 19, 2013, 5:27:11 PM (10 years ago)
- Branches:
- (u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', 'f875bbaccd0831e36aaed09ff6adeb3eb45aeb94')
- Children:
- cd7ce9b4263a5891ddea76b64838ca31a35e2559
- Parents:
- f377d6d17c096643dc3242eba4b6200ae3630eb3
- git-author:
- Martin Lee <martinlee84@web.de>2013-07-19 17:27:11+02:00
- git-committer:
- Martin Lee <martinlee84@web.de>2013-07-22 15:49:54+02:00
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
factory/facMul.cc
rf377d6 r3e0c11d 2130 2130 CanonicalForm F= mod (A, M); 2131 2131 CanonicalForm G= mod (B, M); 2132 if (F.inCoeffDomain() || G.inCoeffDomain()) 2132 if (F.inCoeffDomain()) 2133 return G*F; 2134 if (G.inCoeffDomain()) 2133 2135 return F*G; 2136 2134 2137 Variable y= M.mvar(); 2135 2138 int degF= degree (F, y); … … 2223 2226 CanonicalForm F= mod (A, M); 2224 2227 CanonicalForm G= mod (B, M); 2225 if (F.inCoeffDomain() || G.inCoeffDomain()) 2228 if (F.inCoeffDomain()) 2229 return G*F; 2230 if (G.inCoeffDomain()) 2226 2231 return F*G; 2227 2232 2228 if (size (F) / MOD.length() < 100 || size (G) / MOD.length() < 100) 2229 return mod (F*G, MOD); 2233 int sizeF= size (F); 2234 int sizeG= size (G); 2235 2236 if (sizeF / MOD.length() < 100 || sizeG / MOD.length() < 100) 2237 { 2238 if (sizeF < sizeG) 2239 return mod (G*F, MOD); 2240 else 2241 return mod (F*G, MOD); 2242 } 2230 2243 2231 2244 Variable y= M.mvar(); … … 2287 2300 else 2288 2301 { 2289 m= (int) ceil (tm ax(degF, degG)/2.0);2302 m= (int) ceil (tmin (degF, degG)/2.0); 2290 2303 CanonicalForm yToM= power (y, m); 2291 2304 CanonicalForm F0= mod (F, yToM);
Note: See TracChangeset
for help on using the changeset viewer.