Concatenation of Tuples

1.3k Views Asked by At

I'm currently writing something where I need to concatenate tuples. To be more precise, I need to split tuples. I have a tuple $\phi$ of $n$ elements and want to split it into 3 consecutive parts $r$, $s$, and $t$. In uni, the professors would've written $$(\phi) = (r, s, t)$$ and they wouldn't call the tuple $\phi$ but $(\phi)$.

However, I don't like this vague notation, especially because it's important that $(0, (1, 2)) \neq (0, 1, 2)$ in quite some cases and I like things to be unambiguous.

Is there a way to make the concatenation more explicit?

1

There are 1 best solutions below

0
On

You can define it in the way computer scientist or algebraist do for concatenation of strings or words: defining $X$ as the set of $n$-uples for all $n$, that is the union of all the $X_n$, sets of $n$-uples, tou can define a concatenation law on it:

$$\forall x=(x_i)_{i\in I} \in X, \forall y=(y_j)_{j \in J} \in X, x\cdot y := (x_1, \ldots, x_{n_I}, y_1, \ldots, y_{n_J}) \in X$$

You can check it is a well defined law with the awaited properties. In the notation you professor use, you actually suppose applying a natural "forgetful functor": you drop out all the parenthesis (the one at the extremity remains ultimately in my notations, but you should not see them as the same parenthesis as those inside, if you keep your notations). Another way to see it is to define the set of words $W$:

$$\forall x=\prod_{i\in I} x_i \in W, \forall y=\prod_{j \in J} y_j \in X, x\cdot y := x_1\cdots x_{n_I} y_1 \cdots y_{n_J} \in W$$

You get an isomorphic structure, probably less ambiguous.