## #97 closed bug (fixed)

# Return value of factstd(0); should be the zero-ideal

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

Priority: | minor | Milestone: | Release 3-1-0 |

Component: | singular-kernel | Version: | |

Keywords: | factstd(0); | Cc: |

### Description

As the desription of facstd states, facstd should always return a list of ideals,

but

facstd(0);

gives the empty list and not the zero-ideal.

Cited from the Manual:

5.1.29 facstd Syntax: facstd ( ideal_expression ) facstd ( ideal_expression, ideal_expression ) Type: list of ideals Purpose: returns a list of ideals computed by the factorizing Groebnerbasis algorithm. The intersection of these ideals has the same zero-set as the input,

Examples:

ring r=0,x,dp; > facstd(x2); [1]: _[1]=x // OK > facstd(2); [1]: _[1]=1 // OK > facstd(0); // BUG empty list

But it should give

> factstd(0); [0]: _[1]=0

Otherwise,

"The intersection of these ideals has the

same zero-set as the input, ..."

makes no sense.

### Change History (2)

### comment:1 Changed 15 years ago by

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

Status: | new → closed |

### comment:2 Changed 12 years ago by

Could you commit a patch such it returns indeed the 0-ideal,

or is there a need that it works as it does:

> ring r=0,x,dp; > facstd(2); [1]: _[1]=1 // > facstd(0); [1]: > def d = _; > d; [1]: > typeof(d); list > size(d); 1 > typeof(d[1]); ideal > ideal I = d[1]; > I; > size(I); 0 > ncols(I); 0

I would like to have it as in this case (without the message)

> ring r49 = (49,a),x,dp; > facstd(0); // ** no factorization implemented [1]: _[1]=0

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

fixed.