source: git/Tst/Old/std_test.tst @ b4cbc2

fieker-DuValspielwiese
Last change on this file since b4cbc2 was 75f460, checked in by Hans Schoenemann <hannes@…>, 9 years ago
format
  • Property mode set to 100644
File size: 3.0 KB
Line 
1proc check_ideal_std(int n, string ostring)
2{
3  string ringstr = "ring r = 32003,x(0.." + string(n-1) + ")," + ostring + ";";
4  string idealstr = "ideal j = ";
5  int i;
6
7  for (i=0; i < n-1; i++)
8  {
9    idealstr = idealstr + "x("+ string(i) + ") + ";
10  }
11  idealstr = idealstr + "x(" + string(n-1) + "),";
12
13
14  for (i=0; i < n-1; i++)
15  {
16    idealstr = idealstr + "x("+ string(i % n) + ")*x(" + string((i+1) % n) + ") + ";
17  }
18  idealstr = idealstr + "x("+ string(i % n) + ")*x(" + string((i+1) % n) + "),";
19
20  for (i=0; i < n-1; i++)
21  {
22    idealstr = idealstr + "x("+ string(i % n) + ")*x(" + string((i+1) % n)
23      + ")*x(" + string((i+2) % n) + ")  + ";
24  }
25  idealstr = idealstr + "x("+ string(i % n) + ")*x(" + string((i+1) % n)
26    + ")*x(" + string((i+2) % n) + ");";
27
28  execute(ringstr);
29  execute(idealstr);
30  r;
31  j;
32  std(j);
33}
34
35
36proc check_module_std(int n, string ostring)
37{
38  "check_module_std n=",n," ostring=",ostring;
39  string ringstr = "ring r = 32003,x(0.." + string(n-1) + ")," + ostring + ";";
40  ringstr;
41  string modulestr = "module j = ";
42  int i;
43
44  for (i=0; i < n-1; i++)
45  {
46    modulestr = modulestr + "x("+ string(i) + ")*gen(" +  string(i+1) + ") + ";
47    modulestr = modulestr + "x("+ string(i) + ")*gen(" +  string(i+2) + ") + ";
48  }
49  modulestr = modulestr + "x(" + string(n-1) + ")*gen(" +  string(n) + "), ";
50
51
52  for (i=0; i < n-1; i++)
53  {
54    modulestr = modulestr + "x("+ string(i % n) + ")*x(" + string((i+1) % n) +
55      ")*gen(" +  string(1) + ") + ";
56    modulestr = modulestr + "x("+ string(i % n) + ")*x(" + string((i+1) % n) +
57      ")*gen(" +  string(2) + ") + ";
58  }
59  modulestr = modulestr + "x("+ string((n-1) % n) + ")*x(" + string(n % n) +
60    ")*gen(" +  string((i%n)+1) + "),";
61
62  for (i=0; i < n-1; i++)
63  {
64    modulestr = modulestr + "x("+ string(i % n) + ")*x(" + string((i+1) % n)
65      + ")*x(" + string((i+2) % n) + ")*gen(" +  string(1) + ")  + ";
66    modulestr = modulestr + "x("+ string(i % n) + ")*x(" + string((i+1) % n)
67      + ")*x(" + string((i+2) % n) + ")*gen(" +  string(2) + ")  + ";
68  }
69  modulestr = modulestr + "x("+ string(i % n) + ")*x(" + string((i+1) % n)
70    + ")*x(" + string((i+2) % n) + ")*gen(" +  string(n) + ");";
71
72  execute(ringstr);
73  execute(modulestr);
74  r;
75  j;
76  std(j);
77}
78
79proc check_std_all_1(int n, string ostring)
80{
81  check_ideal_std(n, ostring);
82  check_module_std(n, "(C," + ostring + ")");
83  check_module_std(n, "(c," + ostring + ")");
84  check_module_std(n, "(" + ostring + ",C)");
85  check_module_std(n, "(" + ostring + ",c)");
86}
87
88list orderings = "lp", "dp", "Dp", "ls", "ds", "Ds";
89
90list l = "dp";
91
92
93proc check_std(int n, list olist)
94{
95  int i;
96  int j;
97  for (i=1; i<=size(olist); i++)
98  {
99    for (j=1; j<=n; j++)
100    {
101      check_ideal_std(j, olist[i]);
102    }
103  }
104}
105
106proc check_std_all(int n, list olist)
107{
108  int i;
109  int j;
110  for (i=1; i<=size(olist); i++)
111  {
112    for (j=1; j<=n; j++)
113    {
114      check_std_all_1(j, olist[i]);
115    }
116  }
117}
118
119option(prot);
120
121check_std_all(9, orderings);
122
123LIB "tst.lib";tst_status(1);$
124
Note: See TracBrowser for help on using the repository browser.