1 | ////////////////////////////////////////////////////////////////////////////// |
---|
2 | version="version locnormal.lib 4.3.1.0 Jul_2022 "; // $Id$ |
---|
3 | category="Commutative Algebra"; |
---|
4 | info=" |
---|
5 | LIBRARY: locnormal.lib Normalization of affine domains using local methods |
---|
6 | AUTHORS: J. Boehm boehm@mathematik.uni-kl.de |
---|
7 | W. Decker decker@mathematik.uni-kl.de |
---|
8 | S. Laplagne slaplagn@dm.uba.ar |
---|
9 | G. Pfister pfister@mathematik.uni-kl.de |
---|
10 | S. Steidel steidel@mathematik.uni-kl.de |
---|
11 | A. Steenpass steenpass@mathematik.uni-kl.de |
---|
12 | |
---|
13 | OVERVIEW: |
---|
14 | |
---|
15 | Suppose A is an affine domain over a perfect field.@* |
---|
16 | This library implements a local-to-global strategy for finding the normalization |
---|
17 | of A. Following [1], the idea is to stratify the singular locus of A, apply the |
---|
18 | normalization algorithm given in [2] locally at each stratum, and put the local |
---|
19 | results together. This approach is inherently parallel.@* |
---|
20 | Furthermore we allow for the optional modular computation of the local results |
---|
21 | as provided by modnormal.lib. See again [1] for details. |
---|
22 | |
---|
23 | REFERENCES: |
---|
24 | |
---|
25 | [1] Janko Boehm, Wolfram Decker, Santiago Laplagne, Gerhard Pfister, Stefan Steidel, |
---|
26 | Andreas Steenpass: Parallel algorithms for normalization, http://arxiv.org/abs/1110.4299, 2011. |
---|
27 | |
---|
28 | [2] Gert-Martin Greuel, Santiago Laplagne, Frank Seelisch: Normalization of Rings, |
---|
29 | Journal of Symbolic Computation 9 (2010), p. 887-901 |
---|
30 | |
---|
31 | KEYWORDS: |
---|
32 | normalization; local methods; modular methods |
---|
33 | |
---|
34 | SEE ALSO: normal_lib |
---|
35 | |
---|
36 | PROCEDURES: |
---|
37 | locNormal(I, [...]); normalization of R/I using local methods |
---|
38 | |
---|
39 | "; |
---|
40 | |
---|
41 | LIB "normal.lib"; |
---|
42 | LIB "sing.lib"; |
---|
43 | LIB "modstd.lib"; |
---|
44 | |
---|
45 | /////////////////////////////////////////////////////////////////////////// |
---|
46 | // |
---|
47 | // All procedures here have been moved to normal.lib |
---|
48 | // |
---|
49 | /////////////////////////////////////////////////////////////////////////// |
---|
50 | |
---|
51 | |
---|
52 | /////////////////////////////////////////////////////////////////////////// |
---|
53 | // |
---|
54 | // EXAMPLES |
---|
55 | // |
---|
56 | /////////////////////////////////////////////////////////////////////////// |
---|
57 | /* |
---|
58 | // plane curves |
---|
59 | |
---|
60 | ring r24 = 0,(x,y,z),dp; |
---|
61 | int k = 2; |
---|
62 | poly f = (x^(k+1)+y^(k+1)+z^(k+1))^2-4*(x^(k+1)*y^(k+1)+y^(k+1)*z^(k+1)+z^(k+1)*x^(k+1)); |
---|
63 | f = subst(f,z,2x-y+1); |
---|
64 | ring s24 = 0,(x,y),dp; |
---|
65 | poly f = imap(r24,f); |
---|
66 | ideal i = f; |
---|
67 | |
---|
68 | locNormal(i); |
---|
69 | //modNormal(i,1); |
---|
70 | |
---|
71 | |
---|
72 | ring r24 = 0,(x,y,z),dp; |
---|
73 | int k = 3; |
---|
74 | poly f = (x^(k+1)+y^(k+1)+z^(k+1))^2-4*(x^(k+1)*y^(k+1)+y^(k+1)*z^(k+1)+z^(k+1)*x^(k+1)); |
---|
75 | f = subst(f,z,2x-y+1); |
---|
76 | ring s24 = 0,(x,y),dp; |
---|
77 | poly f = imap(r24,f); |
---|
78 | ideal i = f; |
---|
79 | |
---|
80 | locNormal(i); |
---|
81 | //modNormal(i,1,"noVerification"); |
---|
82 | |
---|
83 | |
---|
84 | ring r24 = 0,(x,y,z),dp; |
---|
85 | int k = 4; |
---|
86 | poly f = (x^(k+1)+y^(k+1)+z^(k+1))^2-4*(x^(k+1)*y^(k+1)+y^(k+1)*z^(k+1)+z^(k+1)*x^(k+1)); |
---|
87 | f = subst(f,z,2x-y+1); |
---|
88 | ring s24 = 0,(x,y),dp; |
---|
89 | poly f = imap(r24,f); |
---|
90 | ideal i = f; |
---|
91 | |
---|
92 | locNormal(i); |
---|
93 | //modNormal(i,1,"noVerification"); |
---|
94 | |
---|
95 | |
---|
96 | ring r24 = 0,(x,y,z),dp; |
---|
97 | int k = 5; |
---|
98 | poly f = (x^(k+1)+y^(k+1)+z^(k+1))^2-4*(x^(k+1)*y^(k+1)+y^(k+1)*z^(k+1)+z^(k+1)*x^(k+1)); |
---|
99 | f = subst(f,z,2x-y+1); |
---|
100 | ring s24 = 0,(x,y),dp; |
---|
101 | poly f = imap(r24,f); |
---|
102 | ideal i = f; |
---|
103 | |
---|
104 | locNormal(i); |
---|
105 | |
---|
106 | |
---|
107 | |
---|
108 | ring s24 = 0,(x,y),dp; |
---|
109 | int a=7; |
---|
110 | ideal i = ((x-1)^a-y^3)*((x+1)^a-y^3)*((x)^a-y^3)*((x-2)^a-y^3)*((x+2)^a-y^3)+y^15; |
---|
111 | |
---|
112 | locNormal(i); |
---|
113 | //modNormal(i,1); |
---|
114 | |
---|
115 | |
---|
116 | ring s24 = 0,(x,y),dp; |
---|
117 | int a=7; |
---|
118 | ideal i = ((x-1)^a-y^3)*((x+1)^a-y^3)*((x)^a-y^3)*((x-2)^a-y^3)*((x+2)^a-y^3)+y^15; |
---|
119 | |
---|
120 | locNormal(i); |
---|
121 | //modNormal(i,1); |
---|
122 | |
---|
123 | ring s24 = 0,(x,y),dp; |
---|
124 | int a=7; |
---|
125 | ideal i = ((x-1)^a-y^3)*((x+1)^a-y^3)*((x)^a-y^3)*((x-2)^a-y^3)*((x+2)^a-y^3)+y^15; |
---|
126 | |
---|
127 | locNormal(i); |
---|
128 | //modNormal(i,1,"noVerification"); |
---|
129 | |
---|
130 | |
---|
131 | |
---|
132 | |
---|
133 | ring r=0,(x,y),dp; |
---|
134 | ideal i=9127158539954x10+3212722859346x8y2+228715574724x6y4-34263110700x4y6 |
---|
135 | -5431439286x2y8-201803238y10-134266087241x8-15052058268x6y2+12024807786x4y4 |
---|
136 | +506101284x2y6-202172841y8+761328152x6-128361096x4y2+47970216x2y4-6697080y6 |
---|
137 | -2042158x4+660492x2y2-84366y4+2494x2-474y2-1; |
---|
138 | |
---|
139 | locNormal(i); |
---|
140 | //modNormal(i,1); |
---|
141 | |
---|
142 | |
---|
143 | // surfaces in A3 |
---|
144 | |
---|
145 | |
---|
146 | ring r7 = 0,(x,y,t),dp; |
---|
147 | int a=11; |
---|
148 | ideal i = x*y*(x-y)*(x+y)*(y-1)*t+(x^a-y^2)*(x^10-(y-1)^2); |
---|
149 | locNormal(i); |
---|
150 | //modNormal(i,1,"noVerification"); |
---|
151 | |
---|
152 | ring r7 = 0,(x,y,t),dp; |
---|
153 | int a=12; |
---|
154 | ideal i = x*y*(x-y)*(x+y)*(y-1)*t+(x^a-y^2)*(x^10-(y-1)^2); |
---|
155 | locNormal(i); |
---|
156 | //modNormal(i,1,"noVerification"); |
---|
157 | |
---|
158 | |
---|
159 | ring r7 = 0,(x,y,t),dp; |
---|
160 | int a=13; |
---|
161 | ideal i = x*y*(x-y)*(x+y)*(y-1)*t+(x^a-y^2)*(x^10-(y-1)^2); |
---|
162 | |
---|
163 | locNormal(i); |
---|
164 | modNormal(i,1,"noVerification"); |
---|
165 | |
---|
166 | |
---|
167 | ring r22 = 0,(x,y,z),dp; |
---|
168 | ideal i = z2-(y2-1234x3)^2*(15791x2-y3)*(1231y2-x2*(x+158))*(1357y5-3x11); |
---|
169 | |
---|
170 | locNormal(i); |
---|
171 | //modNormal(i,1,"noVerification"); |
---|
172 | |
---|
173 | |
---|
174 | ring r22 = 0,(x,y,z),dp; |
---|
175 | ideal i = z2-(y2-1234x3)^3*(15791x2-y3)*(1231y2-x2*(x+158))*(1357y5-3x11); |
---|
176 | |
---|
177 | locNormal(i); |
---|
178 | //modNormal(i,1,"noVerification"); |
---|
179 | |
---|
180 | |
---|
181 | ring r23 = 0,(x,y,z),dp; |
---|
182 | ideal i = z5-((13x-17y)*(5x2-7y3)*(3x3-2y2)*(19y2-23x2*(x+29)))^2; |
---|
183 | |
---|
184 | locNormal(i); |
---|
185 | //modNormal(i,1,"noVerification"); |
---|
186 | |
---|
187 | |
---|
188 | // curve in A3 |
---|
189 | |
---|
190 | ring r23 = 0,(x,y,z),dp; |
---|
191 | ideal i = z3-(19y2-23x2*(x+29))^2,x3-(11y2-13z2*(z+1)); |
---|
192 | |
---|
193 | locNormal(i); |
---|
194 | //modNormal(i,1,"noVerification"); |
---|
195 | |
---|
196 | |
---|
197 | ring r23 = 0,(x,y,z),dp; |
---|
198 | ideal i = z3-(19y2-23x2*(x+29))^2,x3-(11y2-13z2*(z+1))^2; |
---|
199 | |
---|
200 | locNormal(i); |
---|
201 | //modNormal(i,1,"noVerification"); |
---|
202 | |
---|
203 | // surface in A4 |
---|
204 | |
---|
205 | ring r23 = 0,(x,y,z,w),dp; |
---|
206 | ideal i = z2-(y3-123456w2)*(15791x2-y3)^2, w*z-(1231y2-x*(111x+158)); |
---|
207 | |
---|
208 | |
---|
209 | locNormal(i); |
---|
210 | //modNormal(i,1,"noVerification"); |
---|
211 | */ |
---|
212 | |
---|