0

I'm in the process of implementing a decoder, and I found this formula in the official specification:

enter image description here

In context, X and Y can be interpreted as either two integers, or two arrays of integers (byte arrays). But I have no idea what the binary "star" operator means.

At first I thought it was just multiplication, but that makes no sense in context. So, I Googled around for some other mathematical uses of this star/asterisk operator, and found it can be used to mean "free product", but that seems to pertain to group theory and it's hard to see how 40 can be interpreted as a group.

So what is this operator? (The document where I found the operator is http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf section 8.19.4)

Channel72
  • 617
  • Why doesn't multiplication make sense in this context? – Michael Albanese Aug 14 '13 at 14:41
  • The document uses an X symbol to mean multiplication elsewhere, and if it is multiplication there's no need for those parentheses. Also, I can't see how multiplication would produce a sensible result – Channel72 Aug 14 '13 at 14:44
  • Why would it not produce a sensible result? If $X$ is an integer $X40$ would be the integer obtained by multiplying $X$ by $40$. If $X$ were an array, $X40$ would be the array obtained by multiplying each entry by $40$. – Michael Albanese Aug 14 '13 at 14:46
  • Elementwise multiplication makes sense in this case. This is also the notation, that is used in Matlab. In mahematics the symbol $*$ means usually convolution, but it isn't applicable now. – Juha-Matti Vihtanen Aug 14 '13 at 14:49

1 Answers1

0

Checking the note,

NOTE – This packing of the first two object identifier components recognizes that only three values are allocated from the root node, and at most 39 subsequent values from nodes reached by X = 0 and X = 1.

... makes it very clear $X,Y$ are integers and that $*$ is meant to denote multiplication here. Multiplication here 'separates' the two adequately; essentially this is the same idea as 'packing' two single-digit numbers into a two-digit one.

obataku
  • 5,571