Changeset 939cb2 in git for kernel


Ignore:
Timestamp:
Jan 6, 2009, 2:59:59 PM (15 years ago)
Author:
Hans Schönemann <hannes@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
b9642b1524d4ca8baf1a96bdb46325fe010f9911
Parents:
cfd4a838c712db187faa46eb4ef99d3e4e88ecaf
Message:
*hannes: comment for ring


git-svn-id: file:///usr/local/Singular/svn/trunk@11276 2c84dea3-7e68-4137-9b89-c4e89433aadc
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/structs.h

    rcfd4a8 r939cb2  
    44*  Computer Algebra System SINGULAR     *
    55****************************************/
    6 /* $Id: structs.h,v 1.58 2008-12-09 17:32:52 levandov Exp $ */
     6/* $Id: structs.h,v 1.59 2009-01-06 13:59:59 Singular Exp $ */
    77/*
    88* ABSTRACT
     
    569569struct sip_sring
    570570{
    571   idhdl      idroot; /* local objects */
    572   int*       order;  /* array of orderings */
    573   int*       block0; /* starting pos.*/
    574   int*       block1; /* ending pos.*/
    575   char**     parameter; /* names of parameters */
    576   number     minpoly;
     571// each entry must have a description and a procedure defining it,
     572// general ordering: pointer/structs, long, int, short, BOOLEAN/char/enum
     573// general defining procedures: rInit, rComplete, interpreter, ??
     574  idhdl      idroot; /* local objects , interpreter*/
     575  int*       order;  /* array of orderings, rInit/rSleftvOrdering2Ordering */
     576  int*       block0; /* starting pos., rInit/rSleftvOrdering2Ordering*/
     577  int*       block1; /* ending pos., rInit/rSleftvOrdering2Ordering*/
     578  char**     parameter; /* names of parameters, rInit */
     579  number     minpoly;  /* for Q_a/Zp_a, rInit */
    577580  ideal      minideal;
    578   int**      wvhdl;  /* array of weight vectors */
    579   char **    names;  /* array of variable names */
    580 
    581   unsigned long options; /* ring dependent options */
     581  int**      wvhdl;  /* array of weight vectors, rInit/rSleftvOrdering2Ordering */
     582  char **    names;  /* array of variable names, rInit */
    582583
    583584  // what follows below here should be set by rComplete, _only_
     
    587588  // is NULL for lp or N == 1, otherwise non-NULL (with OrdSize > 0 entries) */
    588589  sro_ord*   typ;   /* array of orderings + sizes, OrdSize entries */
    589 
    590   ideal      qideal; /* extension to the ring structure: qring */
     590  /* if NegWeightL_Size > 0, then NegWeightL_Offset[0..size_1] is index of longs
     591  in ExpVector whose values need an offset due to negative weights */
     592  /* array of NegWeigtL_Size indicies */
     593  int*      NegWeightL_Offset;
     594
     595
     596  ideal      qideal; /* extension to the ring structure: qring, rInit */
    591597
    592598
     
    595601
    596602  struct omBin_s*   PolyBin; /* Bin from where monoms are allocated */
    597   int        ch;     /* characteristic */
    598603#ifdef HAVE_RINGS
    599604  unsigned int  ringtype;  /* cring = 0 => coefficient field, cring = 1 => coeffs from Z/2^m */
     
    601606  unsigned long ringflagb;
    602607#endif
    603   int        ref; /* reference counter to the ring */
    604 
    605   short      float_len; /* additional char-flags */
    606   short      float_len2; /* additional char-flags */
    607 
    608   short      N;      /* number of vars */
    609 
    610   short      P;      /* number of pars */
    611   short      OrdSgn; /* 1 for polynomial rings, -1 otherwise */
     608  unsigned long options; /* ring dependent options */
     609
     610  int        ch;  /* characteristic, rInit */
     611  int        ref; /* reference counter to the ring, interpreter */
     612
     613  short      float_len; /* additional char-flags, rInit */
     614  short      float_len2; /* additional char-flags, rInit */
     615
     616  short      N;      /* number of vars, rInit */
     617
     618  short      P;      /* number of pars, rInit */
     619  short      OrdSgn; /* 1 for polynomial rings, -1 otherwise, rInit */
    612620
    613621  short     firstBlockEnds;
     
    626634  // TRUE if the monomial ordering has polynomial and power series blocks
    627635  BOOLEAN   MixedOrder;
    628   // 1 for lex ordering (except ls), -1 otherwise
     636  // TRUE for global/local mixed orderings, FALSE otherwise
    629637  BOOLEAN   ComponentOrder;
    630638
     
    638646     occupied by variables, only */
    639647  short     VarL_Size;
    640 
    641648  short      BitsPerExp; /* number of bits per exponent */
    642649  short      ExpPerLong; /* maximal number of Exponents per long */
    643 
    644650  short      pCompIndex; /* p->exp.e[pCompIndex] is the component */
    645651  short      pOrdIndex; /* p->exp[pOrdIndex] is pGetOrd(p) */
    646 
    647652  short      OrdSize; /* size of ord vector (in sro_ord) */
    648 
    649653
    650654  /* if >= 0, long vars in exp vector are consecutive and start there
     
    655659  short     MinExpPerLong;
    656660
    657   /* if this is > 0, then NegWeightL_Offset[0..size_1] is index of longs in
    658    ExpVector whose values need an offset due to negative weights */
    659661  short     NegWeightL_Size;
    660   /* array of NegWeigtL_Size indicies */
    661   int*      NegWeightL_Offset;
    662 
    663662  /* array of size VarL_Size,
    664663     VarL_Offset[i] gets i-th long var in exp vector */
Note: See TracChangeset for help on using the changeset viewer.