Changeset e8bfdb9 in git
- Timestamp:
- Dec 15, 2005, 11:55:51 AM (18 years ago)
- Branches:
- (u'spielwiese', '5b153614cbc72bfa198d75b1e9e33dab2645d9fe')
- Children:
- ab716ede84e750ae0b3d8da7f70a9705c259e864
- Parents:
- 4774ab77fcf927d3f53d5f78e7402f921ec0e4b7
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/kbuckets.cc
r4774ab re8bfdb9 2 2 * Computer Algebra System SINGULAR * 3 3 ****************************************/ 4 /* $Id: kbuckets.cc,v 1. 6 2005-12-15 08:02:26bricken Exp $ */4 /* $Id: kbuckets.cc,v 1.7 2005-12-15 10:55:51 bricken Exp $ */ 5 5 6 6 #include "mod2.h" … … 701 701 number n=n_Init(1,r); 702 702 if (i <= bucket->buckets_used && bucket->buckets[i] != NULL) 703 { 703 { 704 //if (FALSE){ 705 if ((bucket->coef[i]!=NULL) &&(i>=coef_start)){ 706 number orig_coef=p_GetCoeff(bucket->coef[i],r); 707 //we take ownership: 708 p_SetCoeff0(bucket->coef[i],n_Init(0,r),r); 709 number add_coef=n_Copy(p_GetCoeff(m,r),r); 710 number gcd=n_Gcd(add_coef, orig_coef,r); 711 712 if (!(n_IsOne(gcd,r))) { 713 number orig_coef2=n_IntDiv(orig_coef,gcd,r); 714 number add_coef2=n_IntDiv(add_coef, gcd,r); 715 n_Delete(&orig_coef,r); 716 n_Delete(&add_coef,r); 717 orig_coef=orig_coef2; 718 add_coef=add_coef2; 719 720 //p_Mult_nn(bucket->buckets[i], orig_coef,r); 721 n_Delete(&n,r); 722 n=gcd; 723 724 } 725 726 //assume(n_IsOne(n,r)); 727 number backup=p_GetCoeff(m,r); 728 729 p_SetCoeff0(m,add_coef,r); 730 bucket->buckets[i]=p_Mult_nn(bucket->buckets[i],orig_coef,r); 731 732 n_Delete(&orig_coef,r); 733 p_Delete(&bucket->coef[i],r); 734 735 736 p1 = p_Plus_mm_Mult_qq(bucket->buckets[i], m, p1, 737 bucket->buckets_length[i], l1, r); 738 bucket->buckets[i]=NULL; 739 l1=bucket->buckets_length[i]; 740 assume(l1==pLength(p1)); 741 742 p_SetCoeff(m,backup,r); //deletes add_coef 743 744 745 } 746 else { 747 704 748 MULTIPLY_BUCKET(bucket,i); 705 749 p1 = p_Plus_mm_Mult_qq(bucket->buckets[i], m, p1, … … 709 753 bucket->buckets_length[i] = 0; 710 754 i = pLogLength(l1); 711 } 712 else 713 { 755 } 756 } 757 else 758 { 759 714 760 number swap_n=p_GetCoeff(m,r); 715 761
Note: See TracChangeset
for help on using the changeset viewer.