Opened 14 years ago

Closed 13 years ago

## #107 closed bug (fixed)

# bug in extgcd

Reported by: | gorzel | Owned by: | hannes |
---|---|---|---|

Priority: | major | Milestone: | 3-1-1 |

Component: | singular-kernel | Version: | |

Keywords: | extgcd | Cc: |

### Description

Several inconsistencies with extgcd

1.) gcd and extgcd should give the **same** normalize gcd

> ring r=0,x,dp; > poly f = 2x+2; > poly g = x2-1; > gcd(f,g); x+1 // OK > extgcd(f,g); [1]: 2x+2 // Not normalized [2]: 1 [3]: 0

It should better be:

> extgcd(f,g); [1]: x+1 [2]: 1/2 [3]: 0

2.) In a ring with parameter, the the gcd is same for gcd and extgcd,

(if the polynomials are independent of the parameter),

but the result for the factors is wrong

> ring rt=(0,t),x,dp; > poly f = 2x+2; > poly g = x2-1; > gcd(f,g); x+1 > extgcd(f,g); [1]: x+1 // OK [2]: 0 // <-- BUG, has to be 1/2 [3]: 0

3.) If the polynomial depends on a parameter, it is not accepted as input,

although it is univariate.

> poly ft = tx+t; > gcd(ft,g); x+1 > extgcd(ft,g); // BUG ? not univariate ? error occurred in STDIN line 13: `extgcd(ft,g);` > univariate(ft); 1

### Change History (2)

### comment:1 Changed 14 years ago by

Milestone: | Release 3-1-0 → Release following release 3-1-0 |
---|

### comment:2 Changed 13 years ago by

Resolution: | → fixed |
---|---|

Status: | new → closed |

**Note:**See TracTickets for help on using tickets.

1.) extgcd tries to avoid rational (in the case of a non-constatnt gcd) 2.) fixed 3.) polynomials in k(a)[x] are not univariate