[BACK]Return to binomial.h CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / TiGERS_0.9

Annotation of OpenXM_contrib/TiGERS_0.9/binomial.h, Revision 1.1

1.1     ! maekawa     1: /*
        !             2: ** binomial.h                                 Birk Huber, 4/99
        !             3: ** -- header file for binomal type and main operations on binomials
        !             4: **
        !             5: **
        !             6: ** TiGERS,  Toric Groebner Basis Enumeration by Reverse Search
        !             7: ** copyright (c) 1999  Birk Huber
        !             8: **
        !             9: */
        !            10:
        !            11: #ifndef BINOMIAL_H
        !            12: extern int ring_N;
        !            13: extern int ring_lv;
        !            14: extern int *ring_weight;
        !            15: #endif
        !            16:
        !            17: int ring_set(int n);
        !            18: int ring_getvar(FILE *ifile);
        !            19: #define ring_putvar(ofile,v) fprintf(ofile,"%c",'a'+v)
        !            20:
        !            21:
        !            22: typedef int *monomial;
        !            23: int monomial_divides(monomial m1, monomial m2);
        !            24: int monomial_equal(monomial m1, monomial m2);
        !            25: int monomial_lexcomp(monomial m1, monomial m2);
        !            26: int monomial_rlexcomp(monomial m1, monomial m2);
        !            27:
        !            28: typedef struct bin_tag *binomial;
        !            29: struct bin_tag{
        !            30:   int *exps1;
        !            31:   int *exps2;
        !            32:   int *E;
        !            33:   int ff;
        !            34:   int bf;
        !            35:   binomial next;
        !            36:   };
        !            37:
        !            38:
        !            39: #define BINOMIAL 1
        !            40: #define MONOMIAL 0
        !            41: #define FACET    0
        !            42: #define NONFACET 1
        !            43: #define UNKNOWN -1
        !            44:
        !            45: #define binomial_next(b) (b->next)
        !            46: #define binomial_lead(b) (b->exps1)
        !            47: #define binomial_trail(b) (b->exps2)
        !            48: #define monomial_set(b)   (b->bf=MONOMIAL)
        !            49: #define binomial_set(b)   (b->bf=BINOMIAL)
        !            50: #define binomial_facet(b) (b->ff)
        !            51: binomial binomial_new();
        !            52: void binomial_free(binomial m);
        !            53: void binomial_read(FILE *is, binomial b);
        !            54: void binomial_print(FILE *of, binomial b);
        !            55: binomial monomial_spair(binomial b,monomial m);
        !            56: void binomial_flip(binomial b);
        !            57: int binomial_spair(binomial b1, binomial b2);
        !            58: /*
        !            59: ** return TRUE if binomials marking agrees with respect to the
        !            60: ** lexicographic term order
        !            61: */
        !            62: #define binomial_ordered(b)\
        !            63:   ((monomial_lexcomp(binomial_lead(b),binomial_trail(b))>=0) ? TRUE : FALSE)

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>