[Jprogramming] definition of +.
Devon McCormick
devonmcc at gmail.com
Mon Jul 25 21:57:51 HKT 2011
Based on a quick test, it looks like it gives a result consistent with the
integer definition of GCD: if you divide both terms by the answer, you get
integer results:
3 4 5 +.~ 12
3 4 1
3 4 5 +. 12.5
0.5 0.5 2.5
gcdDivBy=: 4 : '(x;y)%&><x +. y'
3 4 5 gcdDivBy 12
1 1 5
4 3 12
3 4 5 gcdDivBy 12.5
6 8 2
25 25 5
3 4 5 gcdDivBy 12.25
12 16 20
49 49 49
On Sun, Jul 24, 2011 at 6:27 PM, Boyko Bantchev <boykobb at gmail.com> wrote:
> The +. verb computes the `GCD' of all kinds of numbers known to
> J, but the corresponding page of the DoJ does not say what exactly
> +. produces. As there is no standard definition of GCD for
> floating-point or complex numbers in mathematics, +. seems to be
> underspecified. Moreover, the text
>
> `The greatest common divisor divides both of its arguments x
> and y to produce results that have no common factor, that is,
> the GCD of the quotients is 1. Moreover, these quotients
> represent the fraction x%y in lowest form.'
>
> seems to suggest only integer arguments. For example,
> `the GCD of the quotients is 1'
> apparently does not hold for many reals.
>
> So, what does +. compute?
> (I can imagine several definitions, but I am curious what the actual one
> is.)
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
--
Devon McCormick, CFA
^me^ at acm.
org is my
preferred e-mail
More information about the Programming
mailing list