source: git/Singular/numbers.h @ 49f089

spielwiese
Last change on this file since 49f089 was 49f089, checked in by Hans Schönemann <hannes@…>, 25 years ago
* hannes: ring.h: rField_has_simple_Alloc introduced numbers*: npCopy, nfCopy, nrCopy are all the same: it's now called ndCopy git-svn-id: file:///usr/local/Singular/svn/trunk@3796 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 2.0 KB
Line 
1#ifndef NUMBERS_H
2#define NUMBERS_H
3/****************************************
4*  Computer Algebra System SINGULAR     *
5****************************************/
6/* $Id: numbers.h,v 1.11 1999-10-26 16:40:46 Singular Exp $ */
7/*
8* ABSTRACT: interface to coefficient aritmetics
9*/
10#include "structs.h"
11
12/* typedefs */
13/*typedef void (*numberproc)(number a,number b,number * c);*/
14/*typedef number (*numberfunc)(number a,number b);*/
15
16/* variables */
17extern short fftable[];
18/*extern int characteristic;*/
19
20/* prototypes */
21extern numberfunc nMult, nSub ,nAdd ,nDiv, nIntDiv, nIntMod, nExactDiv;
22extern void    (*nNew)(number * a);
23extern number  (*nInit)(int i);
24extern number  (*nPar)(int i);
25extern int     (*nParDeg)(number n);
26extern int     (*nSize)(number n);
27extern int     (*nInt)(number &n);
28extern number  (*nNeg)(number a);
29extern number  (*nInvers)(number a);
30extern number  (*nCopy)(number a);
31extern void    (*nWrite)(number &a);
32extern char *  (*nRead)(char * s, number * a);
33extern void    (*nNormalize)(number &a);
34extern BOOLEAN (*nGreater)(number a,number b),
35               (*nEqual)(number a,number b),
36               (*nIsZero)(number a),
37               (*nIsOne)(number a),
38               (*nIsMOne)(number a),
39               (*nGreaterZero)(number a);
40extern void    (*nPower)(number a, int i, number * result);
41extern number  (*nGetDenom)(number &n);
42extern numberfunc nGcd, nLcm;
43
44extern number nNULL; /* the 0 as constant */
45
46#ifdef LDEBUG
47extern BOOLEAN (*nDBTest)(number a, char *f, int l);
48#define nTest(a) nDBTest(a,__FILE__,__LINE__)
49extern void    (*nDBDelete)(number * a,char *f, int l);
50#define nDelete(A) nDBDelete(A,__FILE__,__LINE__)
51#else
52#define nTest(a) (1)
53extern void    (*nDelete)(number * a);
54#endif
55
56extern BOOLEAN (*nSetMap)(ring r);
57extern number  (*nMap)(number from);
58extern char *  (*nName)(number n);
59
60void nDummy1(number* d);
61void nDummy2(number &d);
62number ndGcd(number a, number b);
63number ndCopy(number a);
64
65#ifdef LDEBUG
66void nDBDummy1(number* d,char *f, int l);
67#endif
68int  nGetChar();
69void nSetChar(ring r, BOOLEAN complete);
70
71#endif
Note: See TracBrowser for help on using the repository browser.