version 1.2, 2000/08/21 08:31:40 |
version 1.5, 2000/12/11 02:00:42 |
|
|
* shall be made on your publication or presentation in any form of the |
* shall be made on your publication or presentation in any form of the |
* results obtained by use of the SOFTWARE. |
* results obtained by use of the SOFTWARE. |
* (4) In the event that you modify the SOFTWARE, you shall notify FLL by |
* (4) In the event that you modify the SOFTWARE, you shall notify FLL by |
* e-mail at risa-admin@flab.fujitsu.co.jp of the detailed specification |
* e-mail at risa-admin@sec.flab.fujitsu.co.jp of the detailed specification |
* for such modification or the source code of the modified part of the |
* for such modification or the source code of the modified part of the |
* SOFTWARE. |
* SOFTWARE. |
* |
* |
|
|
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* |
* |
* $OpenXM: OpenXM_contrib2/asir2000/lib/bfct,v 1.1 2000/06/05 04:59:34 noro Exp $ |
* $OpenXM: OpenXM_contrib2/asir2000/lib/bfct,v 1.4 2000/12/08 08:26:09 noro Exp $ |
*/ |
*/ |
/* requires 'primdec' */ |
/* requires 'primdec' */ |
|
|
|
|
for ( I = 0; I < N; I++ ) { |
for ( I = 0; I < N; I++ ) { |
B = cons(DV[I]+y1*diff(F,V[I])*dt,B); |
B = cons(DV[I]+y1*diff(F,V[I])*dt,B); |
} |
} |
ctrl("do_weyl",1); |
|
dp_nelim(2); |
dp_nelim(2); |
G0 = dp_gr_main(B,append(W,DW),0,0,6); |
G0 = dp_weyl_gr_main(B,append(W,DW),0,0,6); |
G1 = []; |
G1 = []; |
for ( T = G0; T != []; T = cdr(T) ) { |
for ( T = G0; T != []; T = cdr(T) ) { |
E = car(T); VL = vars(E); |
E = car(T); VL = vars(E); |
|
|
G2 = map(subst,G1,dt,1); |
G2 = map(subst,G1,dt,1); |
G3 = map(b_subst,G2,t); |
G3 = map(b_subst,G2,t); |
G4 = map(subst,G3,t,-1-s); |
G4 = map(subst,G3,t,-1-s); |
ctrl("do_weyl",0); |
|
return G4; |
return G4; |
} |
} |
|
|
|
|
{ |
{ |
G4 = ann(F); |
G4 = ann(F); |
|
|
ctrl("do_weyl",1); |
|
V = vars(F); |
V = vars(F); |
N = length(V); |
N = length(V); |
for ( I = N-1, DV = []; I >= 0; I-- ) |
for ( I = N-1, DV = []; I >= 0; I-- ) |
|
|
M[I+2][I] = 1; |
M[I+2][I] = 1; |
#endif |
#endif |
V1 = cons(s,V); DV1 = cons(ds,DV); |
V1 = cons(s,V); DV1 = cons(ds,DV); |
G5 = dp_gr_main(cons(F,G4),append(V1,DV1),0,0,M); |
dp_nelim(0); |
|
/* G4 = dp_weyl_gr_main(G4,append(V1,DV1),0,0,10); */ |
|
for ( PrimeIndex = 0; ; PrimeIndex++ ) { |
|
Prime = lprime(PrimeIndex); |
|
dp_nelim(0); /* XXX */ |
|
Success = dp_weyl_gr_main(cons(F,G4),append(V1,DV1),0,Prime,10); |
|
if ( !Success ) |
|
continue; |
|
dp_nelim(N+1); |
|
G5 = dp_weyl_gr_main(cons(F,G4),append(V1,DV1),0,-Prime,10); |
|
if ( G5 ) |
|
break; |
|
} |
for ( T = G5, G6 = []; T != []; T = cdr(T) ) { |
for ( T = G5, G6 = []; T != []; T = cdr(T) ) { |
E = car(T); |
E = car(T); |
if ( intersection(vars(E),DV1) == [] ) |
if ( intersection(vars(E),DV1) == [] ) |
G6 = cons(E,G6); |
G6 = cons(E,G6); |
} |
} |
ctrl("do_weyl",0); |
|
G6_0 = remove_zero(map(z_subst,G6,V)); |
G6_0 = remove_zero(map(z_subst,G6,V)); |
F0 = flatmf(cdr(fctr(dp_gr_main(G6_0,[s],0,0,0)[0]))); |
F0 = flatmf(cdr(fctr(dp_gr_main(G6_0,[s],0,0,0)[0]))); |
for ( T = F0, BF = []; T != []; T = cdr(T) ) { |
for ( T = F0, BF = []; T != []; T = cdr(T) ) { |