On Wed, Jun 05, 2024 at 11:03:21AM +0200, Ralf Hemmecke wrote: > According to the specification of symmetricRemainder in si.spad > > symmetricRemainder : (%, %) -> % > ++ symmetricRemainder(a, b) (where \spad{b > 1}) yields r > ++ where \spad{-b/2 <= r < b/2}. > > the result of > > %%% (1) -> symmetricRemainder(2,4) > > (1) 2 > > is clearly wrong (should be -2 according to the above specification). > This patch corrects the specification.
OK, thanks. > Of course, it is controversial, whether > -b/2 <= r < b/2 or -b/2 < r <= b/2 is better. > However, having a specification that does not match the implementation is > not ideal. > > Ralf > > -- > You received this message because you are subscribed to the Google Groups > "FriCAS - computer algebra system" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to fricas-devel+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/fricas-devel/3eeee840-3d32-4d86-847e-69e227be99f2%40hemmecke.org. > From a37c9ef382b7349117396c8c6cbc4af8083c6e3c Mon Sep 17 00:00:00 2001 > From: Ralf Hemmecke <r...@hemmecke.org> > Date: Wed, 5 Jun 2024 10:23:57 +0200 > Subject: docfix postcondition of symmetricPower > > According to the specification of symmetricRemainder in si.spad > > symmetricRemainder : (%, %) -> % > ++ symmetricRemainder(a, b) (where \spad{b > 1}) yields r > ++ where \spad{-b/2 <= r < b/2}. > > the result of > ``` > %%% (1) -> symmetricRemainder(2,4) > > (1) 2 > ``` > is clearly wrong (should be -2 according to the above specification). > This patch corrects the specification. > --- > src/algebra/si.spad | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/src/algebra/si.spad b/src/algebra/si.spad > index 149ff4cf..1c688933 100644 > --- a/src/algebra/si.spad > +++ b/src/algebra/si.spad > @@ -31,7 +31,7 @@ IntegerNumberSystem() : Category == > ++ where \spad{0 <= r < b} and \spad{r = a rem b}. > symmetricRemainder : (%, %) -> % > ++ symmetricRemainder(a, b) (where \spad{b > 1}) yields r > - ++ where \spad{-b/2 <= r < b/2}. > + ++ where \spad{-b/2 < r <= b/2}. > rational? : % -> Boolean > ++ rational?(n) tests if n is a rational number > ++ (see \spadtype{Fraction Integer}). > -- > 2.34.1 > -- Waldek Hebisch -- You received this message because you are subscribed to the Google Groups "FriCAS - computer algebra system" group. To unsubscribe from this group and stop receiving emails from it, send an email to fricas-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/fricas-devel/ZmBBbV0U242WZoyk%40fricas.org.