Opened 8 years ago

Closed 8 years ago

## #698 closed bug (not a bug)

# overflow hell strikes back

Reported by: | Owned by: | somebody | |
---|---|---|---|

Priority: | minor | Milestone: | 4-1-0 and higher |

Component: | dontKnow | Version: | 4-0-1 |

Keywords: | exponent overflow hell | Cc: |

### Description

A working example for a starters

LIB("primdec.lib"); ring R = 0,(x,y),dp; short = 0; ring G = 0,(a,b),dp; short = 0; ideal phi = a^3,b; map m = R,phi; ideal I = a^645*b; setring R; ideal pI = preimage(G,m,I); setring G; ideal mpI = m(pI); mpI; // = a^645*b; ok ASSUME(0, idealsEqual(mpI , I) ); //ok

and now a failing one:

LIB("primdec.lib"); ring R = 0,(x,y),dp; short = 0; ring G = 0,(a,b),dp; short = 0; ideal phi = a^3,b; map m = R,phi; ideal I = a^2147483645*b; setring R; ideal pI = preimage(G,m,I); setring G; ideal mpI = m(pI); mpI; // mpI[1]=a^65535*b ASSUME(0, idealsEqual(mpI , I) ); // fails

This is not just a single issue, this is overflow hell, you know? (unfortunately)

And it is very unlikely that I will catch them all.

### Change History (2)

### comment:1 Changed 8 years ago by

### comment:2 Changed 8 years ago by

Resolution: | → not a bug |
---|---|

Status: | new → closed |

"not a bug" is not really the right solution, but the closest one. Should be "not correctly stated problem". Solved by changing the policy from "trying the best possible" to "sticking strictly to the documentation" (which limits the maximal expontent to 32767 in this case).

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

update: the failing example should really be

( 2147483645 is not 0 mod 3)

But screwing up that example did let me see another flaw of

`preimage`

. Can you see it, too?