source: git/libpolys/coeffs/rmodulon.h @ 014b65

spielwiese
Last change on this file since 014b65 was 014b65, checked in by Mohamed Barakat <mohamed.barakat@…>, 13 years ago
- moved misc,reporter,resources,coeffs,polys -> (new) libpolys (Hans agreed) - migrated to automake in coeffs, misc status: everything builds (except polys) todo: . migrate resources and reporter to automake . create autoconf macros for omalloc, factory, and libpolys
  • Property mode set to 100644
File size: 2.2 KB
Line 
1#ifndef RMODULON_H
2#define RMODULON_H
3/****************************************
4*  Computer Algebra System SINGULAR     *
5****************************************/
6/* $Id$ */
7/*
8* ABSTRACT: numbers modulo n
9*/
10#ifdef HAVE_RINGS
11#include <coeffs/coeffs.h>
12#include <coeffs/rintegers.h>
13
14#ifndef NATNUMBER
15#define NATNUMBER unsigned long
16#endif
17
18BOOLEAN nrnInitChar    (coeffs r, void*);
19number  nrnCopy        (number a, const coeffs r);
20int     nrnSize        (number a, const coeffs r);
21void    nrnDelete      (number *a, const coeffs r);
22BOOLEAN nrnGreaterZero (number k, const coeffs r);
23number  nrnMult        (number a, number b, const coeffs r);
24number  nrnInit        (int i, const coeffs r);
25int     nrnInt         (number &n, const coeffs r);
26number  nrnAdd         (number a, number b, const coeffs r);
27number  nrnSub         (number a, number b, const coeffs r);
28void    nrnPower       (number a, int i, number * result, const coeffs r);
29BOOLEAN nrnIsZero      (number a, const coeffs r);
30BOOLEAN nrnIsOne       (number a, const coeffs r);
31BOOLEAN nrnIsMOne      (number a, const coeffs r);
32BOOLEAN nrnIsUnit      (number a, const coeffs r);
33number  nrnGetUnit     (number a, const coeffs r);
34number  nrnDiv         (number a, number b, const coeffs r);
35number  nrnMod         (number a,number b, const coeffs r);
36number  nrnIntDiv      (number a,number b, const coeffs r);
37number  nrnNeg         (number c, const coeffs r);
38number  nrnInvers      (number c, const coeffs r);
39BOOLEAN nrnGreater     (number a, number b, const coeffs r);
40BOOLEAN nrnDivBy       (number a, number b, const coeffs r);
41int     nrnDivComp     (number a, number b, const coeffs r);
42BOOLEAN nrnEqual       (number a, number b, const coeffs r);
43number  nrnLcm         (number a,number b, const coeffs r);
44number  nrnGcd         (number a,number b, const coeffs r);
45number  nrnExtGcd      (number a, number b, number *s, number *t, const coeffs r);
46nMapFunc nrnSetMap     (const coeffs src, const coeffs dst);
47#define  nrnWrite      nrzWrite
48const char *  nrnRead  (const char *s, number *a, const coeffs r);
49#ifdef LDEBUG
50BOOLEAN nrnDBTest      (number a, const char *f, const int l, const coeffs r);
51#endif
52void    nrnSetExp(int c, const coeffs r);
53void    nrnInitExp(int c, const coeffs r);
54
55#endif
56#endif
Note: See TracBrowser for help on using the repository browser.