#include "kernel/mod2.h"
#include <stdio.h>
#include <string.h>
#include "misc/intvec.h"
#include "misc/mylimits.h"
#include "kernel/spectrum/GMPrat.h"
#include "kernel/spectrum/semic.h"
Go to the source code of this file.
◆ SEMIC_CC
◆ operator*()
Definition at line 219 of file semic.cc.
220{
222 {
224
226 }
227 else
228 {
230
233
235 {
237 }
238
240 }
241}
◆ operator+()
Definition at line 134 of file semic.cc.
135{
136 int i1=0, i2=0, i3=0;
137
139
140 do
141 {
143 {
144 i2++;
145 }
146 else if( i2 >= s2.
n )
147 {
148 i1++;
149 }
150 else if( s1.
s[i1] < s2.
s[i2] )
151 {
152 i1++;
153 }
154 else if( s1.
s[i1] == s2.
s[i2] )
155 {
156 i1++;
157 i2++;
158 }
159 else
160 {
161 i2++;
162 }
163 i3++;
164 }
165 while( i1 < s1.
n || i2 < s2.
n );
166
169
170 i1 = i2 = i3 = 0;
171
172 do
173 {
175 {
178 i2++;
179 }
180 else if( i2 >= s2.
n )
181 {
184 i1++;
185 }
186 else if( s1.
s[i1] < s2.
s[i2] )
187 {
190 i1++;
191 }
192 else if( s1.
s[i1] == s2.
s[i2] )
193 {
196 i1++;
197 i2++;
198 }
199 else
200 {
203 i2++;
204 }
205 i3++;
206 }
207 while( i1 < s1.
n || i2 < s2.
n );
208
211
213}
◆ operator<<()
Definition at line 249 of file semic.cc.
250{
251 for(
int i=0;
i<spec.
n;
i++ )
252 {
254 {
255 #ifdef SEMIC_STDOUT
257 #else
258 fprintf( stdout,"+" );
259 #endif
260 }
261
262 #ifdef SEMIC_STDOUT
263 s << spec.
w[
i] <<
"*t^";
264 #else
265 fprintf( stdout,
"%d*t^",spec.
w[
i] );
266 #endif
267
269 }
270
272}
const CanonicalForm int s