source: git/libpolys/coeffs/rintegers.h @ 2faf9e

fieker-DuValspielwiese
Last change on this file since 2faf9e was 9e2cf88, checked in by Hans Schoenemann <hannes@…>, 6 years ago
split rintegers.cc
  • Property mode set to 100644
File size: 1.1 KB
Line 
1#ifndef RINTEGERS_H
2#define RINTEGERS_H
3/****************************************
4*  Computer Algebra System SINGULAR     *
5****************************************/
6/*
7* ABSTRACT: numbers modulo n
8*/
9#include "misc/auxiliary.h"
10
11#ifdef HAVE_RINGS
12#include "coeffs/coeffs.h"
13
14#if SI_INTEGER_VARIANT == 3
15#define SR_HDL(A) ((long)(A))
16#define SR_INT    1L
17#define INT_TO_SR(INT)  ((number) (((long)INT << 2) + SR_INT))
18#define SR_TO_INT(SR)   (((long)SR) >> 2)
19#define n_Z_IS_SMALL(A)     (SR_HDL(A) & SR_INT)
20#define INT_IS_SMALL(A) ( ((A << 1) >> 1) == A )
21#endif
22
23//extern int nrzExp;
24//extern unsigned long nrzModul;
25
26BOOLEAN nrzInitChar    (coeffs r,  void * parameter);
27
28void    nrzWrite       (number a, const coeffs r); /*for rmodulon.cc*/
29void    nrzDelete      (number *a, const coeffs);  /*for rmodulon.cc*/
30int     nrzSize        (number a, const coeffs);   /*for rmodulon.cc*/
31void nrzWriteFd(number n, const ssiInfo* d, const coeffs); /*for rmodulon.cc*/
32number nrzReadFd(const ssiInfo *d, const coeffs);  /*for rmodulon.cc*/
33
34number  nrzInit        (long i, const coeffs r); /*for SAGE, better: n_Init*/
35
36#endif
37
38#endif
Note: See TracBrowser for help on using the repository browser.