Thanks for the assertion and the correction.  I knew it was named after a
person, hence the upper case G, but I am one of those that reads and writes
phonetically (if you know what I mean) and I could not see (hear) the
difference between Gray and grey.

On Sun, Nov 17, 2013 at 12:06 PM, Henry Rich <[email protected]> wrote:

> Oh - and it's Gray code, not Grey.  It's named not because you don't have
> black-to-white transitions on more than one bit at a time; it's named for
> Frank Gray.
>
>
> Henry Rich
>
> On 11/17/2013 11:24 AM, Jose Mario Quintana wrote:
>
>> My understanding is that Grey codes encode numbers in such a way that the
>> binary representation of consecutive numbers (including the last and first
>> couple) in the sequence can be produced, one from the other, by flipping
>> only one bit.
>> For example, the binary representation of a four bit Grey sequence, of 2^4
>> numbers, and the flipping bit to produce the next number follows,
>>
>>     o=. @:
>>     ( Grey=. (xor f. <. o -:) o i. o (2&^)) ( xor=. 22 b. )
>> (22 b. <.@:-:)@:i.@:(2&^) 22 b.
>>
>>     (#: ; (2 #: o (xor/\) ]) o (, {.)) o Grey 4
>> ┌───────┬───────┐
>> │0 0 0 0│0 0 0 1│
>> │0 0 0 1│0 0 1 0│
>> │0 0 1 1│0 0 0 1│
>> │0 0 1 0│0 1 0 0│
>> │0 1 1 0│0 0 0 1│
>> │0 1 1 1│0 0 1 0│
>> │0 1 0 1│0 0 0 1│
>> │0 1 0 0│1 0 0 0│
>> │1 1 0 0│0 0 0 1│
>> │1 1 0 1│0 0 1 0│
>> │1 1 1 1│0 0 0 1│
>> │1 1 1 0│0 1 0 0│
>> │1 0 1 0│0 0 0 1│
>> │1 0 1 1│0 0 1 0│
>> │1 0 0 1│0 0 0 1│
>> │1 0 0 0│1 0 0 0│
>> └───────┴───────┘
>>
>> However, flipping as many as three bits are sometimes required for the
>> referred sequence,
>>
>>     T=. 0 8 12 14 15 13 10 11 9 4 6 7 5 2 3 1
>>
>>     (#: ; (2 #: o (xor/\) ]) o (, {.)) T
>> ┌───────┬───────┐
>> │0 0 0 0│1 0 0 0│
>> │1 0 0 0│0 1 0 0│
>> │1 1 0 0│0 0 1 0│
>> │1 1 1 0│0 0 0 1│
>> │1 1 1 1│0 0 1 0│
>> │1 1 0 1│0 1 1 1│
>> │1 0 1 0│0 0 0 1│
>> │1 0 1 1│0 0 1 0│
>> │1 0 0 1│1 1 0 1│
>> │0 1 0 0│0 0 1 0│
>> │0 1 1 0│0 0 0 1│
>> │0 1 1 1│0 0 1 0│
>> │0 1 0 1│0 1 1 1│
>> │0 0 1 0│0 0 0 1│
>> │0 0 1 1│0 0 1 0│
>> │0 0 0 1│0 0 0 1│
>> └───────┴───────┘
>>
>> Am I missing something?
>>
>>
>>
>> On Fri, Nov 15, 2013 at 2:07 PM, R.E. Boss <[email protected]> wrote:
>>
>>  Actually, it IS a (4D binary reflected) Gray code.
>>>
>>>
>>> R.E. Boss
>>>
>>> (Add your info to http://www.jsoftware.com/jwiki/Community/Demographics)
>>>
>>>
>>>  -----Original Message-----
>>>> From: [email protected] [mailto:programming-
>>>> [email protected]] On Behalf Of Devon McCormick
>>>> Sent: vrijdag 15 november 2013 19:33
>>>> To: J-programming forum
>>>> Subject: Re: [Jprogramming] Sets
>>>>
>>>> These look like Gray codes.
>>>>
>>>> On Nov 14, 2013 10:04 PM, "Raul Miller" <[email protected]> wrote:
>>>>
>>>>>
>>>>> Easy enough to add.
>>>>>
>>>>> It's an interesting progression though:
>>>>>
>>>>>     #:/:&> (<@#~ 2 #:@i.@^ #)&.> set 2;'b';1;'a'
>>>>> 0 0 0 0
>>>>> 1 0 0 0
>>>>> 1 1 0 0
>>>>> 1 1 1 0
>>>>> 1 1 1 1
>>>>> 1 1 0 1
>>>>> 1 0 1 0
>>>>> 1 0 1 1
>>>>> 1 0 0 1
>>>>> 0 1 0 0
>>>>> 0 1 1 0
>>>>> 0 1 1 1
>>>>> 0 1 0 1
>>>>> 0 0 1 0
>>>>> 0 0 1 1
>>>>> 0 0 0 1
>>>>>
>>>>> --
>>>>> Raul
>>>>>
>>>>> On Thu, Nov 14, 2013 at 6:06 PM, km <[email protected]> wrote:
>>>>>
>>>>>> Cool; needs a sort.  --Kip
>>>>>>
>>>>>>
>>>>>>       psr=: (<@#~ 2 #:@i.@^ #)&.>  NB. Raul's
>>>>>>     psr set 0;1
>>>>>> +----------------+
>>>>>> |++---+---+-----+|
>>>>>> |||+-+|+-+|+-+-+||
>>>>>> ||||1|||0|||0|1|||
>>>>>> |||+-+|+-+|+-+-+||
>>>>>> |++---+---+-----+|
>>>>>> +----------------+
>>>>>>     ps set 0;1  NB. list inside box is sorted
>>>>>> +----------------+
>>>>>> |++---+-----+---+|
>>>>>> |||+-+|+-+-+|+-+||
>>>>>> ||||0|||0|1|||1|||
>>>>>> |||+-+|+-+-+|+-+||
>>>>>> |++---+-----+---+|
>>>>>> +----------------+
>>>>>>
>>>>>> Sent from my iPad
>>>>>>
>>>>>>  On Nov 14, 2013, at 3:17 PM, Raul Miller <[email protected]>
>>>>>>>
>>>>>> wrote:
>>>>
>>>>>
>>>>>>> Derived from ps at http://rosettacode.org/wiki/Power_set#J
>>>>>>>
>>>>>>>    ps=: (<@#~ 2 #:@i.@^ #)&.>
>>>>>>>
>>>>>>> --
>>>>>>> Raul
>>>>>>>
>>>>>>>
>>>>>>>  On Thu, Nov 14, 2013 at 3:17 PM, km <[email protected]> wrote:
>>>>>>>> Here is my latest attempt at sets in J.  Would anyone care to write
>>>>>>>>
>>>>>>> a
>>>
>>>> verb ps (power set) such that ps y is the set of all subsets of set y?
>>>>   It's called the power set in part because when a set has n elements
>>>> its
>>>> power set has 2^n elements.  --Kip Murray
>>>>
>>>>>
>>>>>>>>    NB. A set is a box with a sorted list of boxes inside.
>>>>>>>>    NB. An element is the contents of a box in the list.
>>>>>>>>    NB. A -: B tests whether set A is set B.
>>>>>>>>
>>>>>>>>    set =: [: < [: /:~ ~.  NB. create set from list of boxes
>>>>>>>>
>>>>>>>>    NB. The list may have duplicates but the set has none.
>>>>>>>>
>>>>>>>>    EE =: <$0  NB. empty set, same as Ace a:
>>>>>>>>
>>>>>>>>    eo =: <@[ e. >@] NB. test whether x is an element of y
>>>>>>>>
>>>>>>>>    uu =: [: set ,&>  NB. union
>>>>>>>>
>>>>>>>>    mm =: [: < -.&> NB. minus
>>>>>>>>
>>>>>>>>    sd =: mm uu mm~  NB. symmetric difference
>>>>>>>>
>>>>>>>>    cp =: uu mm sd  NB. common part (intersection)
>>>>>>>>
>>>>>>>>    ss =: uu -: ]  NB. test whether x is a subset of y
>>>>>>>>
>>>>>>>>    (set 1;2;3;3) -: set 3;1;2
>>>>>>>> 1
>>>>>>>>
>>>>>>>>    ]A =: set 2;'b';1;'a'
>>>>>>>> +---------+
>>>>>>>> |+-+-+-+-+|
>>>>>>>> ||1|2|a|b||
>>>>>>>> |+-+-+-+-+|
>>>>>>>> +---------+
>>>>>>>>
>>>>>>>>    ]B =: set 'b';'a';4;3;'a'
>>>>>>>> +---------+
>>>>>>>> |+-+-+-+-+|
>>>>>>>> ||3|4|a|b||
>>>>>>>> |+-+-+-+-+|
>>>>>>>> +---------+
>>>>>>>>
>>>>>>>>    A uu B
>>>>>>>> +-------------+
>>>>>>>> |+-+-+-+-+-+-+|
>>>>>>>> ||1|2|3|4|a|b||
>>>>>>>> |+-+-+-+-+-+-+|
>>>>>>>> +-------------+
>>>>>>>>
>>>>>>>>    A sd B
>>>>>>>> +---------+
>>>>>>>> |+-+-+-+-+|
>>>>>>>> ||1|2|3|4||
>>>>>>>> |+-+-+-+-+|
>>>>>>>> +---------+
>>>>>>>>
>>>>>>>>    A cp B
>>>>>>>> +-----+
>>>>>>>> |+-+-+|
>>>>>>>> ||a|b||
>>>>>>>> |+-+-+|
>>>>>>>> +-----+
>>>>>>>>
>>>>>>>>    NB. Below is the set of all subsets of set 0;1
>>>>>>>>
>>>>>>>>    set EE;(set <0);(set <1);<set 0;1
>>>>>>>> +------------------------+
>>>>>>>> |+--+-----+-------+-----+|
>>>>>>>> ||++|+---+|+-----+|+---+||
>>>>>>>> ||||||+-+|||+-+-+|||+-+|||
>>>>>>>> ||++|||0|||||0|1|||||1||||
>>>>>>>> ||  ||+-+|||+-+-+|||+-+|||
>>>>>>>> ||  |+---+|+-----+|+---+||
>>>>>>>> |+--+-----+-------+-----+|
>>>>>>>> +------------------------+
>>>>>>>>
>>>>>>>> Sent from my iPad
>>>>>>>>
>>>>>>>>  ------------------------------------------------------------
>>> ----------
>>>
>>>>  For information about J forums see
>>>>>>>>
>>>>>>> http://www.jsoftware.com/forums.htm
>>>>
>>>>>
>>>>>>>  ------------------------------------------------------------
>>> ----------
>>>
>>>>  For information about J forums see
>>>>>>>
>>>>>> http://www.jsoftware.com/forums.htm
>>>>
>>>>>
>>>>>>  ------------------------------------------------------------
>>> ----------
>>>
>>>>  For information about J forums see
>>>>>>
>>>>> http://www.jsoftware.com/forums.htm
>>>>
>>>>> ----------------------------------------------------------------------
>>>>> For information about J forums see
>>>>>
>>>> http://www.jsoftware.com/forums.htm
>>>> ----------------------------------------------------------------------
>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>>
>>>
>>> ----------------------------------------------------------------------
>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>
>>>  ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
>>
>>  ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to