Opened 9 years ago

Closed 9 years ago

#514 closed bug (fixed)

changed behaviour of imap in spielwiese

Reported by: kroeker@… Owned by: somebody
Priority: major Milestone: Release 4-0-0
Component: singular-kernel Version: spielwiese
Keywords: imap behaviour change ring parameter master spielwiese Cc:



in spielwiese 'imap' behaves differently than in 3.1.6 or in master when dealing with parameters.

ring R = (2,a,c),(b),(C,dp(1));
ideal I= b^ 2+(c+1)/a;
ring S = (2),(b,a,c),(dp(3));
ideal I = imap(R,I);
// spielwiese:    // I[1]=b2+c+1
// 3.1.6, master: // I[1]=b2

Since 'imap' is used very often, I would advocate introducing a new method or an option, in case the behaviour of 'imap' has to be changed;

Alternatively , -routines using imap (2683 occurencies of imap) should be reviewed; (it should be checked, if this change will lead to problems) -and if there are sufficient tests cases for the affected routines.


Change History (3)

comment:1 Changed 9 years ago by kroeker@…

Another option is always to throw an error in case parameter variables occur in a denominator.

comment:2 Changed 9 years ago by kroeker@…

'imap' now gives a warning in case parameter names occur in the denominator of an ideal generator term ( commit f29e226d38b79f8a047c6d968c419de9ce584fb7 )

To avoid overlooking warnings in long output, it could be helpful either to record occured warnings by default and check later if there were some or turn all warnings by an option into errors. (=> open new 'proposed feature' ?) Other ideas?

comment:3 Changed 9 years ago by hannes

Resolution: fixed
Status: newclosed

Applying imap to a rational function (which is not a polynomial) is not defined for both version of Singular (3 and 4). Additional Singular 4 now outputs a warning - warnings are serious things, if you get one you may proceed but should really know what you are doing - you have been warned! And programming style hint: usually routines should return an result but produce no output.

Note: See TracTickets for help on using tickets.