Iterator[MixedRadix]
ReflectedGrayToOrdinary
convert reflected mixed-radix Gray code to ordinary tuple
Calling Sequence
Parameters
Description
Examples
References
Compatibility
ReflectedGrayToOrdinary(a,m)
a
-
{list,rtable}; tuple
m
{list,rtable}; radices
ReflectedGrayToOrdinary converts a mixed-radix reflected Gray code tuple to the ordinary mixed-radix tuple of the same rank.
The a parameter is the reflected Gray code tuple. It is a list or one-dimensional rtable of nonnegative integers. The first element is the low-order element.
The m parameter is the radices. It is a list or one-dimensional rtable of positive integers.
with⁡Iterator:-MixedRadix:
Compare, by rank, the mixed-radix Gray codes with the ordinary mixed-radix tuples.
radices≔4,3,2:
M≔Iterator:-MixedRadixTuples⁡radices:
G≔Iterator:-MixedRadixGrayCode⁡radices:
forginGdoa≔ReflectedGrayToOrdinary⁡g,radices;printf⁡%2d : %d : %d : %2d\n,Rank⁡G,g,a,Rank⁡M,aenddo:
1 : 0 0 0 : 0 0 0 : 1 2 : 1 0 0 : 1 0 0 : 2 3 : 2 0 0 : 2 0 0 : 3 4 : 3 0 0 : 3 0 0 : 4 5 : 3 1 0 : 0 1 0 : 5 6 : 2 1 0 : 1 1 0 : 6 7 : 1 1 0 : 2 1 0 : 7 8 : 0 1 0 : 3 1 0 : 8 9 : 0 2 0 : 0 2 0 : 9 10 : 1 2 0 : 1 2 0 : 10 11 : 2 2 0 : 2 2 0 : 11 12 : 3 2 0 : 3 2 0 : 12 13 : 3 2 1 : 0 0 1 : 13 14 : 2 2 1 : 1 0 1 : 14 15 : 1 2 1 : 2 0 1 : 15 16 : 0 2 1 : 3 0 1 : 16 17 : 0 1 1 : 0 1 1 : 17 18 : 1 1 1 : 1 1 1 : 18 19 : 2 1 1 : 2 1 1 : 19 20 : 3 1 1 : 3 1 1 : 20 21 : 3 0 1 : 0 2 1 : 21 22 : 2 0 1 : 1 2 1 : 22 23 : 1 0 1 : 2 2 1 : 23 24 : 0 0 1 : 3 2 1 : 24
Knuth, Donald Ervin. The Art of Computer Programming, volume 4, fascicle 2; generating all tuples and permutations, sec. 7.2.1.1, generating all n-tuples, p. 19, eq. 51.
The Iterator[MixedRadix][ReflectedGrayToOrdinary] command was introduced in Maple 2016.
For more information on Maple 2016 changes, see Updates in Maple 2016.
See Also
Iterator[MixedRadixGrayCode]
Download Help Document