Changeset a1f17b in git for libpolys/coeffs/coeffs.h


Ignore:
Timestamp:
Mar 20, 2015, 12:19:21 PM (9 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', 'b4f17ed1d25f93d46dbe29e4b499baecc2fd51bb')
Children:
1697dc3a51e8bd47a7d5ba881bd2c289db77aae7c37482ecbeafe4b1c2572f031ec6a0fd5b4d085b
Parents:
0b51f6a84259fb2407bab08b6cd743bf83f0e420
Message:
experimental: chinese remainder with caching inverses

(switch on by system("cache_chinrem",1),   )
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libpolys/coeffs/coeffs.h

    r0b51f6a ra1f17b  
    1717#include <reporter/reporter.h>
    1818#include <reporter/s_buff.h>
     19#include <factory/factory.h>
    1920
    2021#include <coeffs/si_gmp.h>
     
    291292   //CF: by the looks of it: q[i] in Z (coeffs_BIGINT)
    292293   //    strange things happen in naChineseRemainder for example.
    293    number  (*cfChineseRemainder)(number *x, number *q,int rl, BOOLEAN sym,const coeffs);
     294   number  (*cfChineseRemainder)(number *x, number *q,int rl, BOOLEAN sym,CFArray &inv_cache,const coeffs);
    294295
    295296   /// degree for coeffcients: -1 for 0, 0 for "constants", ...
     
    778779}
    779780
    780 static FORCE_INLINE number n_ChineseRemainderSym(number *a, number *b, int rl, BOOLEAN sym,const coeffs r)
    781 { STATISTIC(n_ChineseRemainderSym); assume(r != NULL); assume(r->cfChineseRemainder != NULL); return r->cfChineseRemainder(a,b,rl,sym,r); }
     781static FORCE_INLINE number n_ChineseRemainderSym(number *a, number *b, int rl, BOOLEAN sym,CFArray &inv_cache,const coeffs r)
     782{ STATISTIC(n_ChineseRemainderSym); assume(r != NULL); assume(r->cfChineseRemainder != NULL); return r->cfChineseRemainder(a,b,rl,sym,inv_cache,r); }
    782783
    783784static FORCE_INLINE number n_Farey(number a, number b, const coeffs r)
Note: See TracChangeset for help on using the changeset viewer.