source: git/kernel/rmodulon.h @ e9c3b2

spielwiese
Last change on this file since e9c3b2 was 599326, checked in by Kai Krüger <krueger@…>, 14 years ago
Anne, Kai, Frank: - changes to #include "..." statements to allow cleaner build structure - affected directories: omalloc, kernel, Singular - not yet done: IntergerProgramming git-svn-id: file:///usr/local/Singular/svn/trunk@13032 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 1.9 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 <kernel/structs.h>
12
13#ifndef NATNUMBER
14#define NATNUMBER unsigned long
15#endif
16
17number  nrnCopy        (number a);
18number  cfrnCopy       (number a, const ring r);
19int     nrnSize        (number a);
20void    nrnDelete      (number *a, const ring r);
21BOOLEAN nrnGreaterZero (number k);
22number  nrnMult        (number a, number b);
23number  nrnInit        (int i, const ring r);
24int     nrnInt         (number &n, const ring r);
25number  nrnAdd         (number a, number b);
26number  nrnSub         (number a, number b);
27void    nrnPower       (number a, int i, number * result);
28BOOLEAN nrnIsZero      (number a);
29BOOLEAN nrnIsOne       (number a);
30BOOLEAN nrnIsMOne      (number a);
31BOOLEAN nrnIsUnit      (number a);
32number  nrnGetUnit     (number a);
33number  nrnDiv         (number a, number b);
34number  nrnMod         (number a,number b);
35number  nrnIntDiv      (number a,number b);
36number  nrnNeg         (number c);
37number  nrnInvers      (number c);
38BOOLEAN nrnGreater     (number a, number b);
39BOOLEAN nrnDivBy       (number a, number b);
40int     nrnDivComp     (number a, number b);
41BOOLEAN nrnEqual       (number a, number b);
42number  nrnLcm         (number a,number b, ring r);
43number  nrnGcd         (number a,number b,ring r);
44number  nrnExtGcd      (number a, number b, number *s, number *t);
45nMapFunc nrnSetMap     (const ring src, const ring dst);
46#define  nrnWrite      nrzWrite
47const char *  nrnRead  (const char *s, number *a);
48char *  nrnName        (number n);
49#ifdef LDEBUG
50BOOLEAN nrnDBTest      (number a, const char *f, const int l);
51#endif
52void    nrnSetExp(int c, ring r);
53void    nrnInitExp(int c, ring r);
54
55number nrnMapQ(number from);
56number nrnMapGMP(number from);
57#endif
58#endif
Note: See TracBrowser for help on using the repository browser.