source: git/Singular/spSpolyLoop.h @ 799ce1

spielwiese
Last change on this file since 799ce1 was 1caa72, checked in by Olaf Bachmann <obachman@…>, 26 years ago
1998-04-06 Olaf Bachmann <obachman@mathematik.uni-kl.de> * spSpolyLoop.h: neww calling interface for spGetSpolyLoop * kstd1.cc (kNF): moved strat->ak field initailization out of initBuchMora into single routines * febase.cc (feGetSearchPath): added feGetSearchPath; changed algorithm for searching files: $SINGULARPATH -> relative to executable -> burnt-in locations * added find_exec.c to get absolute pathname of executable git-svn-id: file:///usr/local/Singular/svn/trunk@1341 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 1.3 KB
Line 
1#ifndef SPSPOLYLOOP_H
2#define SPSPOLYLOOP_H
3
4#include "structs.h"
5#include "ring.h"
6#include "kutil.h"
7
8/*
9 * assume monom = L(monom)
10 * pNext(m) = result = p2-p1*m
11 * do not destroy p1, but p2
12 */
13void spSpolyLoop_General (poly a1, poly a2, poly monom, poly spNoether);
14typedef void (*spSpolyLoopProc)(poly p1, poly p2, poly m, poly spNoether);
15
16
17spSpolyLoopProc spGetSpolyLoop(ring r, rOrderType_t ot, BOOLEAN homog);
18
19inline spSpolyLoopProc spGetSpolyLoop(ring r, int modrank, int syzComp, 
20                                      BOOLEAN homog)
21{
22  return spGetSpolyLoop(r, spGetOrderType(r, modrank, syzComp), homog);
23}
24
25inline spSpolyLoopProc spGetSpolyLoop(ring r, kStrategy strat)
26{
27  return spGetSpolyLoop(r, spGetOrderType(r, strat->ak, strat->syzComp), 
28                        ((strat->homog && strat->kModW==NULL && 
29                          ! rHasSimpleLexOrder(r))));
30}
31
32inline spSpolyLoopProc spGetSpolyLoop(ring r, kStrategy strat, int syzComp)
33{
34  return spGetSpolyLoop(r, spGetOrderType(r, strat->ak, syzComp), 
35                        ((strat->homog && strat->kModW==NULL && 
36                          ! rHasSimpleLexOrder(r))));
37}
38
39
40inline spSpolyLoopProc spGetSpolyLoop(ring r)
41{
42  return spGetSpolyLoop(r, rGetOrderType(r), FALSE);
43}
44
45#endif // SPSPOLYLOOP_H
Note: See TracBrowser for help on using the repository browser.