Re: [Bug-apl] Modulo or residue function is not generating consistent complete residue systems for some arguments

2017-06-20 Thread Frederick Pitts
Jürgen, This message is being resent because last minute changes I made to CRS0.apl and CRS1.apl do not output thedata I intended.  This message has corrected versions of those files attached.  Please discard the old CRS0.apl and CRS1.apl files.  The first line of output is the modulo basis

Re: [Bug-apl] Modulo or residue function is not generating consistent complete residue systems for some arguments

2017-06-20 Thread Frederick Pitts
Hello Jürgen, SVN 964 moved us in the right direction but not completely out of thewoods.  SVN 964 still exhibits errors.  For instance   2J6 | 5J5¯1J7  2J6 | ¯1J7¯3J1  2J6 | ¯3J1¯3J1 I found this and previous residue function errors using the attached APLcode files.  Th

Re: [Bug-apl] Modulo or residue function is not generating consistent complete residue systems for some arguments

2017-06-20 Thread Xiao-Yong Jin
I guess APL standard is really bad in this regard. Dyalog APL gives the following: Dyalog APL/S-64 Version 15.0.27700 Unicode Edition Tue Jun 20 10:46:08 2017 5J3|14J5 1J4 5J3|1J4 ¯4J1 5J3|¯4J1 ¯4J1 which coincides with the previous gnu apl result. > On Jun 20, 2017, at 3:02 AM,

Re: [Bug-apl] Modulo or residue function is not generating consistent complete residue systems for some arguments

2017-06-20 Thread Juergen Sauermann
Hi Frederick, the algorithm for A ∣ B used in GNU APL is this: - compute the quotient Q←B÷A, - "round down" Q to the next (complex) integer Q1, - return B - Q1×A Now the problem seems to be what is meant by "round down". Th

Re: [Bug-apl] Modulo or residue function is not generating consistent complete residue systems for some arguments

2017-06-20 Thread Elias Mårtenson
You are right of course. I forgot about that part. Speaking of which, I have often wished that - and ÷ behaved the same. I'm really glad that ⍨ exists. On 20 June 2017 at 16:15, Jay Foad wrote: > You need to swap the arguments; "⍺|⍵" in APL is "⍵ mod ⍺" or "⍵ rem ⍺" or > "⍵ % ⍺" in most other s

Re: [Bug-apl] Modulo or residue function is not generating consistent complete residue systems for some arguments

2017-06-20 Thread Jay Foad
You need to swap the arguments; "⍺|⍵" in APL is "⍵ mod ⍺" or "⍵ rem ⍺" or "⍵ % ⍺" in most other systems. On 20 June 2017 at 09:11, Elias Mårtenson wrote: > Wolfram Alpha tells me it should be 5J3: > > https://www.wolframalpha.com/input/?i=(5%2B3i)+mod+(14%2B5i) > > Regards, > Elias > > On 20 Jun

Re: [Bug-apl] Modulo or residue function is not generating consistent complete residue systems for some arguments

2017-06-20 Thread Elias Mårtenson
Wolfram Alpha tells me it should be 5J3: https://www.wolframalpha.com/input/?i=(5%2B3i)+mod+(14%2B5i) Regards, Elias On 20 June 2017 at 16:02, Jay Foad wrote: > With the demo version of APL2 I get: > > 5J3 ∣ 14J5 > ¯4J1 > 5J3 | 1J4 > ¯4J1 > 5J3 | ¯4J1 > ¯4J1 > > Jay. > > On 1

Re: [Bug-apl] Modulo or residue function is not generating consistent complete residue systems for some arguments

2017-06-20 Thread Jay Foad
With the demo version of APL2 I get: 5J3 ∣ 14J5 ¯4J1 5J3 | 1J4 ¯4J1 5J3 | ¯4J1 ¯4J1 Jay. On 19 June 2017 at 18:03, Frederick Pitts wrote: > Jürgen, > > With gnu apl (svn 961 on Fedora 25, Intel(R) Core(TM) i7-6700 > CPU), the residue function (∣) yields the following:

Re: [Bug-apl] Modulo or residue function is not generating consistent complete residue systems for some arguments

2017-06-20 Thread Jay Foad
I hadn't heard of "complete residue systems" before. Perhaps another way of saying the same thing is: f←{5J3|⍵} should be idempotent, so (f ⍵)≡f f ⍵ for any ⍵ ... ? Jay. On 19 June 2017 at 18:03, Frederick Pitts wrote: > Jürgen, > > With gnu apl (svn 961 on Fedora 25, Intel(R) Core(TM)