# Is there a common symbol for concatenating two (finite) sequences?

Say we have two finite sequences $X = (x_0,...,x_n)$ and $Y = (y_0,...,y_n)$. Is there a more or less common notation for the concatenation of these sequences, like $\sum (X,Y) = (x_0,...,x_n,y_0,...,y_n)$?

• I have seen more notations for this, the easiest is $XY$.. – Berci Feb 9 '13 at 10:54
• Depending on context, I have seen $XY$, $X\cdot Y$, and $X^{\frown}Y$. – Brian M. Scott Feb 9 '13 at 13:40
• Yes, probably this $X{}^\frown Y$ is the symbol you are looking for. – Berci Feb 9 '13 at 14:03
• I have seen $X||Y$. – Ron Gordon Feb 9 '13 at 14:33
• I've seen lots of notations, but I prefer $X^\frown Y$ because it doesn't seem to be used for anything else. – Andreas Blass Feb 10 '13 at 21:29

The comments suggest the following notations for the concatenation of $$X$$ and $$Y$$:

• $$X^\frown Y$$ (given by X^\frown Y);
• $$XY$$ (given by XY);
• $$X \cdot Y$$ (given by X \cdot Y);
• $$X \mathbin\Vert Y$$ (given by X \mathbin\Vert Y);

of which the first seems not to be in use for other concepts, making it especially suitable.

• What about concatenation from i=1 to N vectors? – Pedro77 Apr 6 '18 at 22:02
• @Pedro77 How about $\big\Vert_{i=1}^N v_i = v_1 \Vert \dots \Vert v_N$? – user76284 Jul 19 '18 at 21:13
• I would personally definitely avoid $X\cdot Y$, as that easily can be misinterpreted as the dot product. But hey, maybe it's obvious what is meant given the context. – HelloGoodbye Oct 10 '20 at 21:43
• This answer sums up pretty well my problem with mathematical formalism. Even the most ridiculously trivial things are hard to find a clear answer to. – Johan Nov 4 '20 at 10:11

The same question on Tex SE.

From there, and more:

• $X \oplus Y$ (given by X \oplus Y);
• $(X,Y)$ (given by (X,Y));

I would avoid $X \times Y$, $XY$ or $X \cdot Y$ to not confuse it with any sort of multiplication / product.

And I would also not use $X \otimes Y$ because it is usually the tensor product. (See also here.)

• I would avoid (X, Y) for concatenation, as it conflicts with the notation used for sequences (x_0, ..., x_n); appearing to be a sequence containing two sequences. – Warbo Dec 7 '15 at 10:20
• Wouldn't $X\times Y$ be the Cartesian Product of $X$ and $Y$? – Mr Pie Dec 26 '17 at 4:14
• Wouldn't $\oplus$ be confused for XOR? – user3932000 Feb 15 at 21:56

$\newcommand\mdoubleplus{\mathbin{+\mkern-10mu+}}$ In haskell the $\mdoubleplus$ operator is used for concatenating lists.

You can define it in latex using the command

\newcommand\mdoubleplus{\mathbin{+\mkern-10mu+}}

• You'd have to pay your secretary a lot more to type all that for one symbol. :) – DanielWainfleet Aug 5 '16 at 13:06
• @user254665 That would be written once, at the top of the document, and thereafter \mdoubleplus can be used. – OJFord Feb 24 '17 at 14:01
• The ⧺ symbol is \doubleplus in the packages unicode-math, stix and stix2. – Davislor Apr 22 '20 at 5:01
• I haven't used haskell, but how do you even type that symbol (when programming in haskell)? – HelloGoodbye Oct 10 '20 at 21:46
• @HelloGoodbye like ++ – Chiel ten Brinke Oct 11 '20 at 9:15

If $x$ and $y$ are finite sequences, you could denote their concatenation by $xy$. Let me explain. There's at least two ways of formalizing the statement "$x$ and $y$ are finite sequences in $X$"

• $x$ and $y$ are functions of type $[\:\!n) \rightarrow X$, where $[\:\!n)$ is a shorthand for the set $\{0,\ldots,n-1\}$.

• $x$ and $y$ are elements of $X^*$, where $X^*$ is the monoid freely generated by $X$.

If you're interested in concatenating these things, then you should probably take the second perspective, in which case the concatenation of $x$ and $y$ is simply their product in the monoid $X^*$, which is denoted $xy$.

Computer science often uses the ⧺ (U+29FA) symbol for concatenation.

This is \doubleplus in the LaTeX package unicode-math (which requires a modern engine that supports Unicode), as well as the legacy packages stix and stix2. Or, in the modern toolchain, you can use the Unicode symbol in your source.

In formal specifications, one way to concatenate two sequences is using the Haskell concatenation symbol as indicated in one of the comments above. In a $$\mathrm\TeX$$ editor one can type the following: X +\!\!\!+ Y. The result appears like this, $$X+\!\!\!+Y$$.

• i didn't know about \!. thanks\!! – anthonybell Feb 9 '17 at 0:12

First of all, the $$\frown$$ (like the $$\smile$$) are used in algebraic topology for the cap (cup) product, so there is another use for this symbol. I haven't seen $$\uplus$$ suggested and I have searched extensively to find an existing use without success. It seems especially suited because sequences are in fact index-ordered sets which can contain duplicate elements. Concatenation is the union of such sets which preserves the order of concatenation and allows duplicates.

New contributor
Michael Pugh is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.

Starting with your defined sequences $$X = (x_0, \ldots, x_n)$$ and $$Y=(y_0,\ldots,y_n)$$, you can use the commonly accepted tuple/ordered pair notation: \begin{align} (X,Y) &= \left( \left(x_0,\ldots,x_n\right), \left(y_0,\ldots,y_n\right) \right) \\ &= \left(x_0,\ldots,x_n,y_0,\ldots,y_n\right) \end{align}

• Can you please explain reasoning for downvote; I'd like the opportunity to learn from my mistake. – Daedalus Feb 1 at 23:58
• The question is asking for a "symbol" which is basically just a single character, not a notation as in your answer. – SMMH Jun 8 at 6:07