### 2.3.2.1. Collection generators

The vertices of the initial graph are usually directly generated from collections of items that are arguments of the global constraint $𝙶$ under consideration. However, it sometimes happens that we would like to derive a new collection from existing arguments of $𝙶$ in order to produce the vertices of the initial graph.

EXAMPLE: This is for instance the case of the $\mathrm{𝚎𝚕𝚎𝚖𝚎𝚗𝚝}$$\left(\mathrm{𝙸𝙽𝙳𝙴𝚇},$ $\mathrm{𝚃𝙰𝙱𝙻𝙴},$ $\mathrm{𝚅𝙰𝙻𝚄𝙴}\right)$ constraint, where $\mathrm{𝙸𝙽𝙳𝙴𝚇}$ and $\mathrm{𝚅𝙰𝙻𝚄𝙴}$ are domain variables that we would like to group as a single item $ℐ$ (with two attributes) of a new derived collection. This is in fact done in order to generate the following initial graph:

• The item $ℐ$ as well as all items of $\mathrm{𝚃𝙰𝙱𝙻𝙴}$ constitute the vertices,

• There is an arc from $ℐ$ to each item of the $\mathrm{𝚃𝙰𝙱𝙻𝙴}$ collection.

We provide the following mechanism for deriving new collections:

• In a first phase we declare the name of the new collection as well as the names of its attributes and their respective types. This is achieved exactly in the same way as those collections that are used in the arguments of a global constraint (see page 2.2.2).

EXAMPLE: Consider again the example of the $\mathrm{𝚎𝚕𝚎𝚖𝚎𝚗𝚝}$$\left(\mathrm{𝙸𝙽𝙳𝙴𝚇},$ $\mathrm{𝚃𝙰𝙱𝙻𝙴},$ $\mathrm{𝚅𝙰𝙻𝚄𝙴}\right)$ constraint. The declaration $\mathrm{𝙸𝚃𝙴𝙼}-\mathrm{𝚌𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚘𝚗}\left(\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathrm{𝚍𝚟𝚊𝚛},\mathrm{𝚟𝚊𝚕𝚞𝚎}-\mathrm{𝚍𝚟𝚊𝚛}\right)$ introduces a new collection called $\mathrm{𝙸𝚃𝙴𝙼}$ where each item has an $\mathrm{𝚒𝚗𝚍𝚎𝚡}$ and a $\mathrm{𝚟𝚊𝚕𝚞𝚎}$ attribute. Both attributes correspond to domain variables.

• In a second phase we give a list of patterns that are used for generating the items of the new collection. A pattern $o-\mathrm{𝚒𝚝𝚎𝚖}\left({𝚊}_{1}-{v}_{1},{𝚊}_{2}-{v}_{2},\cdots ,{𝚊}_{n}-{v}_{n}\right)$ or $\mathrm{𝚒𝚝𝚎𝚖}\left({𝚊}_{1}-{v}_{1},{𝚊}_{2}-{v}_{2},\cdots ,{𝚊}_{n}-{v}_{n}\right)$ specifies for each attribute ${𝚊}_{i}\left(1\le i\le n\right)$ of the new collection how to fill it.$o$ is one of the comparison operators $=,\ne ,<,\ge ,>,\le$. When omitted its default value is $=$. This is done by providing for each attribute ${𝚊}_{i}$ one of the following expression ${v}_{i}$:

• A constant.

• An argument of the global constraint $𝙶$.

• An expression $𝚌.𝚊$, where $𝚊$ is an attribute of a collection $𝚌$, such that $𝚌$ is an argument of the global constraint $𝙶$ or a derived collection that was previously declared. An expression of this form is called a direct reference to an attribute of a collection.

• An expression ${𝚌}_{1}.{𝚌}_{2}.𝚊$, where $𝚊$ is an attribute of a collection ${𝚌}_{2}$, and ${𝚌}_{2}$ is an attribute of a collection ${𝚌}_{1}$ such that ${𝚌}_{1}$ is an argument of the global constraint $𝙶$ or a derived collection that was previously declared. An expression of this form is called an indirect reference to an attribute of a collection.

This expression ${v}_{i}$ must be compatible with the type declaration of the corresponding attribute of the new collection.

EXAMPLE: We continue the example of the $\mathrm{𝚎𝚕𝚎𝚖𝚎𝚗𝚝}$$\left(\mathrm{𝙸𝙽𝙳𝙴𝚇},\mathrm{𝚃𝙰𝙱𝙻𝙴},\mathrm{𝚅𝙰𝙻𝚄𝙴}\right)$ constraint and the derived collection $\mathrm{𝙸𝚃𝙴𝙼}-\mathrm{𝚌𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚘𝚗}\left(\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathrm{𝚍𝚟𝚊𝚛},\mathrm{𝚟𝚊𝚕𝚞𝚎}-\mathrm{𝚍𝚟𝚊𝚛}\right)$. The pattern $\mathrm{𝚒𝚝𝚎𝚖}\left(\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathrm{𝙸𝙽𝙳𝙴𝚇},\mathrm{𝚟𝚊𝚕𝚞𝚎}-\mathrm{𝚅𝙰𝙻𝚄𝙴}\right)$ indicates that:

• The $\mathrm{𝚒𝚗𝚍𝚎𝚡}$ attribute of the $\mathrm{𝙸𝚃𝙴𝙼}$ collection will be generated by using the $\mathrm{𝙸𝙽𝙳𝙴𝚇}$ argument of the $\mathrm{𝚎𝚕𝚎𝚖𝚎𝚗𝚝}$ constraint. Since $\mathrm{𝙸𝙽𝙳𝙴𝚇}$ is a domain variable, it is compatible with the declaration $\mathrm{𝙸𝚃𝙴𝙼}-\mathrm{𝚌𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚘𝚗}\left(\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathrm{𝚍𝚟𝚊𝚛},\mathrm{𝚟𝚊𝚕𝚞𝚎}-\mathrm{𝚍𝚟𝚊𝚛}\right)$ of the new collection.

• The $\mathrm{𝚟𝚊𝚕𝚞𝚎}$ attribute of the $\mathrm{𝙸𝚃𝙴𝙼}$ collection will be generated by using the $\mathrm{𝚅𝙰𝙻𝚄𝙴}$ argument of the $\mathrm{𝚎𝚕𝚎𝚖𝚎𝚗𝚝}$ constraint. $\mathrm{𝚅𝙰𝙻𝚄𝙴}$ is also compatible with the declaration statement of the new collection.

We now describe how we use the pattern for generating the items of a derived collection. We have the following two cases:

• If the pattern $o-\mathrm{𝚒𝚝𝚎𝚖}\left({𝚊}_{1}-{v}_{1},{𝚊}_{2}-{v}_{2},\cdots ,{𝚊}_{n}-{v}_{n}\right)$ does not contain any direct or indirect reference to an attribute of a collection then we generate a single item for such pattern.In this first case the value of $o$ is irrelevant. In this context the value ${v}_{i}$ of the attribute ${𝚊}_{i}$ $\left(1\le i\le n\right)$ corresponds to a constant, to an argument of the global constraint or to a new derived collection.

• If the pattern $o-\mathrm{𝚒𝚝𝚎𝚖}\left({𝚊}_{1}-{v}_{1},{𝚊}_{2}-{v}_{2},\cdots ,{𝚊}_{n}-{v}_{n}\right)$, where $o$ is one of the comparison operators $=,\ne ,<,\ge ,>,\le$, contains one or several direct or indirect references to an attribute of a collectionThis collection is an argument of the global constraint or corresponds to a newly derived collection. we denote by:

• $𝒟$ the set of indices of the positions corresponding to a direct reference to an attribute of a collection within $\mathrm{𝚒𝚝𝚎𝚖}\left({𝚊}_{1}-{v}_{1},{𝚊}_{2}-{v}_{2},\cdots ,{𝚊}_{n}-{v}_{n}\right)$. In this context, let ${𝚌}_{{\alpha }_{1}},{𝚌}_{{\alpha }_{2}},\cdots ,{𝚌}_{{\alpha }_{m}}$ and ${𝚊}_{{\alpha }_{1}},{𝚊}_{{\alpha }_{2}},\cdots ,{𝚊}_{{\alpha }_{m}}$ respectively denote the corresponding collections and attributes.

• $ℐ$ the set of indices of the positions corresponding to an indirect reference to an attribute of a collection within $\mathrm{𝚒𝚝𝚎𝚖}\left({𝚊}_{1}-{v}_{1},{𝚊}_{2}-{v}_{2},\cdots ,{𝚊}_{n}-{v}_{n}\right)$. In this context, let ${𝚌}_{{\beta }_{1}}^{1},{𝚌}_{{\beta }_{2}}^{1},\cdots ,{𝚌}_{{\beta }_{p}}^{1}$, ${𝚌}_{{\beta }_{1}}^{2},{𝚌}_{{\beta }_{2}}^{2},\cdots ,{𝚌}_{{\beta }_{p}}^{2}$ and ${𝚊}_{{\beta }_{1}},{𝚊}_{{\beta }_{2}},\cdots ,{𝚊}_{{\beta }_{p}}$ respectively denote the corresponding collections, attributes of type collection and attributes.

• Let ${\mathrm{𝑑𝑖𝑟}}_{1},{\mathrm{𝑑𝑖𝑟}}_{2},\cdots ,{\mathrm{𝑑𝑖𝑟}}_{m}$, ${\mathrm{𝑖𝑛𝑑}}_{1},{\mathrm{𝑖𝑛𝑑}}_{2},\cdots ,{\mathrm{𝑖𝑛𝑑}}_{p}$ and ${\mathrm{𝑖𝑑}}_{1},{\mathrm{𝑖𝑑}}_{2},\cdots ,{\mathrm{𝑖𝑑}}_{m+p}$ respectively denote the indices sorted in increasing order of $𝒟$, $ℐ$ and $𝒟\cup ℐ$.

For each combination of items ${𝚌}_{{\alpha }_{1}}\left[{i}_{1}\right],{𝚌}_{{\alpha }_{2}}\left[{i}_{2}\right],\cdots ,{𝚌}_{{\alpha }_{m}}\left[{i}_{m}\right]$, ${𝚌}_{{\beta }_{1}}^{1}\left[{j}_{1}\right].{𝚌}_{{\beta }_{1}}^{2}\left[{k}_{1}\right],{𝚌}_{{\beta }_{2}}^{1}\left[{j}_{2}\right].{𝚌}_{{\beta }_{2}}^{2}\left[{k}_{2}\right],\cdots ,{𝚌}_{{\beta }_{p}}^{1}\left[{j}_{p}\right].{𝚌}_{{\beta }_{p}}^{2}\left[{k}_{p}\right]$ such that:

$\left\{\begin{array}{cccc}{i}_{1}\in \left[1,|{𝚌}_{{\alpha }_{1}}|\right],\hfill & {i}_{2}\in \left[1,|{𝚌}_{{\alpha }_{2}}|\right],\hfill & \cdots ,\hfill & {i}_{m}\in \left[1,|{𝚌}_{{\alpha }_{m}}|\right]\hfill \\ {j}_{1}\in \left[1,|{𝚌}_{{\beta }_{1}}^{1}|\right],\hfill & {j}_{2}\in \left[1,|{𝚌}_{{\beta }_{2}}^{1}|\right],\hfill & \cdots ,\hfill & {j}_{p}\in \left[1,|{𝚌}_{{\beta }_{p}}^{1}|\right]\hfill \\ {k}_{1}\in \left[1,|{𝚌}_{{\beta }_{1}}^{1}\left[{j}_{1}\right].{𝚌}_{{\beta }_{1}}^{2}|\right],\hfill & {k}_{2}\in \left[1,|{𝚌}_{{\beta }_{2}}^{1}\left[{j}_{2}\right].{𝚌}_{{\beta }_{2}}^{2}|\right],\hfill & \cdots ,\hfill & {k}_{p}\in \left[1,|{𝚌}_{{\beta }_{p}}^{1}\left[{j}_{p}\right].{𝚌}_{{\beta }_{p}}^{2}|\right]\hfill \\ {\mathrm{𝑖𝑑}}_{1}o{\mathrm{𝑖𝑑}}_{2}o\cdots o{\mathrm{𝑖𝑑}}_{m+p}\hfill \end{array}\right\$

we generate an item of the new derived collection $〈{𝚊}_{1}-{w}_{1}{𝚊}_{2}-{w}_{2}\cdots {𝚊}_{n}-{w}_{n}〉$ defined by:

${w}_{j}\left(1\le j\le n\right)=\left\{\begin{array}{cc}\hfill {𝚌}_{{\alpha }_{r}}\left[{i}_{r}\right].{𝚊}_{{\alpha }_{r}}& \mathrm{if}j\in 𝒟,j={\mathrm{𝑑𝑖𝑟}}_{r}\hfill \\ \hfill {𝚌}_{{\beta }_{r}}^{1}\left[{j}_{r}\right].{𝚌}_{{\beta }_{r}}^{2}\left[{k}_{r}\right].{𝚊}_{{\beta }_{r}}& \mathrm{if}j\in ℐ,j={\mathrm{𝑖𝑛𝑑}}_{r}\hfill \\ \hfill {v}_{j}& \mathrm{if}j\notin 𝒟\cup ℐ\hfill \end{array}\right\.$

We illustrate this generation process on a set of examples. Each example is described by providing:

• The global constraint and its arguments,

• The declaration of the new derived collection,

• The pattern used for creating an item of the new collection,

• The items generated by applying this pattern to the global constraint,

• A comment about the generation process.

We first start with four examples that do not mention any references to an attribute of a collection. A box surrounds an argument of a global constraint that is mentioned in a generated item.

EXAMPLE

$\mathrm{𝙲𝙾𝙽𝚂𝚃𝚁𝙰𝙸𝙽𝚃}$:

$\mathrm{𝚎𝚕𝚎𝚖𝚎𝚗𝚝}$$\left(\begin{array}{|c|}\hline \mathrm{𝙸𝙽𝙳𝙴𝚇}\\ \hline\end{array},\mathrm{𝚃𝙰𝙱𝙻𝙴},\begin{array}{|c|}\hline \mathrm{𝚅𝙰𝙻𝚄𝙴}\\ \hline\end{array}\right)$

$\mathrm{𝙳𝙴𝚁𝙸𝚅𝙴𝙳}\mathrm{𝙲𝙾𝙻𝙻𝙴𝙲𝚃𝙸𝙾𝙽}$:

$\mathrm{𝙸𝚃𝙴𝙼}-\mathrm{𝚌𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚘𝚗}\left(\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathrm{𝚍𝚟𝚊𝚛},\mathrm{𝚟𝚊𝚕𝚞𝚎}-\mathrm{𝚍𝚟𝚊𝚛}\right)$

$\mathrm{𝙿𝙰𝚃𝚃𝙴𝚁𝙽}\left(𝚂\right)$         :

$\mathrm{𝚒𝚝𝚎𝚖}\left(\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathrm{𝙸𝙽𝙳𝙴𝚇},\mathrm{𝚟𝚊𝚕𝚞𝚎}-\mathrm{𝚅𝙰𝙻𝚄𝙴}\right)$

$\mathrm{𝙶𝙴𝙽𝙴𝚁𝙰𝚃𝙴𝙳}\mathrm{𝙸𝚃𝙴𝙼}\left(𝚂\right)$  :

$〈\mathrm{𝚒𝚗𝚍𝚎𝚡}-\begin{array}{|c|}\hline \mathrm{𝙸𝙽𝙳𝙴𝚇}\\ \hline\end{array}\mathrm{𝚟𝚊𝚕𝚞𝚎}-\begin{array}{|c|}\hline \mathrm{𝚅𝙰𝙻𝚄𝙴}\\ \hline\end{array}〉$

We generate a single item where the two attributes $\mathrm{𝚒𝚗𝚍𝚎𝚡}$ and $\mathrm{𝚟𝚊𝚕𝚞𝚎}$ respectively take the first argument $\mathrm{𝙸𝙽𝙳𝙴𝚇}$ and the third argument $\mathrm{𝚅𝙰𝙻𝚄𝙴}$ of the $\mathrm{𝚎𝚕𝚎𝚖𝚎𝚗𝚝}$ constraint.

EXAMPLE

$\mathrm{𝙲𝙾𝙽𝚂𝚃𝚁𝙰𝙸𝙽𝚃}$:

$\mathrm{𝚕𝚎𝚡}_\mathrm{𝚕𝚎𝚜𝚜𝚎𝚚}$$\left(\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{1},\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{2}\right)$

$\mathrm{𝙳𝙴𝚁𝙸𝚅𝙴𝙳}\mathrm{𝙲𝙾𝙻𝙻𝙴𝙲𝚃𝙸𝙾𝙽}$:

$\mathrm{𝙳𝙴𝚂𝚃𝙸𝙽𝙰𝚃𝙸𝙾𝙽}-\mathrm{𝚌𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚘𝚗}\left(\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathrm{𝚒𝚗𝚝},𝚡-\mathrm{𝚒𝚗𝚝},𝚢-\mathrm{𝚒𝚗𝚝}\right)$

$\mathrm{𝙿𝙰𝚃𝚃𝙴𝚁𝙽}\left(𝚂\right)$          :

$\mathrm{𝚒𝚝𝚎𝚖}\left(\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathtt{0},𝚡-\mathtt{0},𝚢-\mathtt{0}\right)$

$\mathrm{𝙶𝙴𝙽𝙴𝚁𝙰𝚃𝙴𝙳}\mathrm{𝙸𝚃𝙴𝙼}\left(𝚂\right)$  :

$〈\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathtt{0}𝚡-\mathtt{0}𝚢-\mathtt{0}〉$

We generate a single item where the three attributes $\mathrm{𝚒𝚗𝚍𝚎𝚡}$, $𝚡$ and $𝚢$ take value 0.

EXAMPLE

$\mathrm{𝙲𝙾𝙽𝚂𝚃𝚁𝙰𝙸𝙽𝚃}$:

$\mathrm{𝚒𝚗}_\mathrm{𝚛𝚎𝚕𝚊𝚝𝚒𝚘𝚗}$$\left(\begin{array}{|c|}\hline \mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}\\ \hline\end{array},\mathrm{𝚃𝚄𝙿𝙻𝙴𝚂}_\mathrm{𝙾𝙵}_\mathrm{𝚅𝙰𝙻𝚂}\right)$

$\mathrm{𝙳𝙴𝚁𝙸𝚅𝙴𝙳}\mathrm{𝙲𝙾𝙻𝙻𝙴𝙲𝚃𝙸𝙾𝙽}$:

$\mathrm{𝚃𝚄𝙿𝙻𝙴𝚂}_\mathrm{𝙾𝙵}_\mathrm{𝚅𝙰𝚁𝚂}-\mathrm{𝚌𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚘𝚗}\left(\mathrm{𝚟𝚎𝚌}-\mathrm{𝚃𝚄𝙿𝙻𝙴}_\mathrm{𝙾𝙵}_\mathrm{𝚅𝙰𝚁𝚂}\right)$

$\mathrm{𝙿𝙰𝚃𝚃𝙴𝚁𝙽}\left(𝚂\right)$         :

$\mathrm{𝚒𝚝𝚎𝚖}\left(\mathrm{𝚟𝚎𝚌}-\mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}\right)$

$\mathrm{𝙶𝙴𝙽𝙴𝚁𝙰𝚃𝙴𝙳}\mathrm{𝙸𝚃𝙴𝙼}\left(𝚂\right)$  :

$〈\mathrm{𝚟𝚎𝚌}-\begin{array}{|c|}\hline \mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}\\ \hline\end{array}〉$

We generate a single item where the unique attribute $\mathrm{𝚟𝚎𝚌}$ takes the first argument of the $\mathrm{𝚒𝚗}_\mathrm{𝚛𝚎𝚕𝚊𝚝𝚒𝚘𝚗}$ constraint as its value.

EXAMPLE

$\mathrm{𝙲𝙾𝙽𝚂𝚃𝚁𝙰𝙸𝙽𝚃}$:

$\mathrm{𝚍𝚘𝚖𝚊𝚒𝚗}_\mathrm{𝚌𝚘𝚗𝚜𝚝𝚛𝚊𝚒𝚗𝚝}$$\left(\begin{array}{|c|}\hline \mathrm{𝚅𝙰𝚁}\\ \hline\end{array},\mathrm{𝚅𝙰𝙻𝚄𝙴𝚂}\right)$

$\mathrm{𝙳𝙴𝚁𝙸𝚅𝙴𝙳}\mathrm{𝙲𝙾𝙻𝙻𝙴𝙲𝚃𝙸𝙾𝙽}$:

$\mathrm{𝚅𝙰𝙻𝚄𝙴}-\mathrm{𝚌𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚘𝚗}\left(\mathrm{𝚟𝚊𝚛}\mathtt{01}-\mathrm{𝚒𝚗𝚝},\mathrm{𝚟𝚊𝚕𝚞𝚎}-\mathrm{𝚍𝚟𝚊𝚛}\right)$

$\mathrm{𝙿𝙰𝚃𝚃𝙴𝚁𝙽}\left(𝚂\right)$         :

$\mathrm{𝚒𝚝𝚎𝚖}\left(\mathrm{𝚟𝚊𝚛}\mathtt{01}-\mathtt{1},\mathrm{𝚟𝚊𝚕𝚞𝚎}-\mathrm{𝚅𝙰𝚁}\right)$

$\mathrm{𝙶𝙴𝙽𝙴𝚁𝙰𝚃𝙴𝙳}\mathrm{𝙸𝚃𝙴𝙼}\left(𝚂\right)$  :

$〈\mathrm{𝚟𝚊𝚛}\mathtt{01}-\mathtt{1}\mathrm{𝚟𝚊𝚕𝚞𝚎}-\begin{array}{|c|}\hline \mathrm{𝚅𝙰𝚁}\\ \hline\end{array}〉$

We generate a single item where the two attributes $\mathrm{𝚟𝚊𝚛}\mathtt{01}$ and $\mathrm{𝚟𝚊𝚕𝚞𝚎}$ respectively take value 1 and the first argument of the $\mathrm{𝚍𝚘𝚖𝚊𝚒𝚗}_\mathrm{𝚌𝚘𝚗𝚜𝚝𝚛𝚊𝚒𝚗𝚝}$ constraint.

We continue with three examples that mention one or several direct references to an attribute of some collections. We now need to explicitly give the items of these collections in order to generate the items of the derived collection.

EXAMPLE

$\mathrm{𝙲𝙾𝙽𝚂𝚃𝚁𝙰𝙸𝙽𝚃}$:

$\mathrm{𝚕𝚎𝚡}_\mathrm{𝚕𝚎𝚜𝚜𝚎𝚚}$$\left(\begin{array}{|c|}\hline \mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{1}\\ \hline\end{array},\begin{array}{|c|}\hline \mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{2}\\ \hline\end{array}\right)$

$\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{1}$:

$〈\mathrm{𝚟𝚊𝚛}-\mathtt{5},\mathrm{𝚟𝚊𝚛}-\mathtt{2},\mathrm{𝚟𝚊𝚛}-\mathtt{3},\mathrm{𝚟𝚊𝚛}-\mathtt{1}〉$

$\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{2}$:

$〈\mathrm{𝚟𝚊𝚛}-\mathtt{5},\mathrm{𝚟𝚊𝚛}-\mathtt{2},\mathrm{𝚟𝚊𝚛}-\mathtt{6},\mathrm{𝚟𝚊𝚛}-\mathtt{2}〉$

$\mathrm{𝙳𝙴𝚁𝙸𝚅𝙴𝙳}\mathrm{𝙲𝙾𝙻𝙻𝙴𝙲𝚃𝙸𝙾𝙽}$:

$\mathrm{𝙲𝙾𝙼𝙿𝙾𝙽𝙴𝙽𝚃𝚂}-\mathrm{𝚌𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚘𝚗}\left(\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathrm{𝚒𝚗𝚝},$

$𝚡-\mathrm{𝚍𝚟𝚊𝚛},𝚢-\mathrm{𝚍𝚟𝚊𝚛}\right)$

$\mathrm{𝙿𝙰𝚃𝚃𝙴𝚁𝙽}\left(𝚂\right)$          :

$\mathrm{𝚒𝚝𝚎𝚖}\left(\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{1}.\mathrm{𝚔𝚎𝚢}$As defined in Section 2.2.2 on page 2.2.2, $\mathrm{𝚔𝚎𝚢}$ is an implicit attribute corresponding to the position of an item within a collection.$,$

$𝚡-\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{1}.\mathrm{𝚟𝚊𝚛},𝚢-\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{2}.\mathrm{𝚟𝚊𝚛}\right)$

$\mathrm{𝙶𝙴𝙽𝙴𝚁𝙰𝚃𝙴𝙳}\mathrm{𝙸𝚃𝙴𝙼}\left(𝚂\right)$  :

$〈\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathtt{1}𝚡-\mathtt{5}𝚢-\mathtt{5},\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathtt{2}𝚡-\mathtt{2}𝚢-\mathtt{2},$

$\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathtt{3}𝚡-\mathtt{3}𝚢-\mathtt{6},\mathrm{𝚒𝚗𝚍𝚎𝚡}-\mathtt{4}𝚡-\mathtt{1}𝚢-\mathtt{2}〉$

The pattern mentions three references $\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{1}.\mathrm{𝚔𝚎𝚢}$, $\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{1}.\mathrm{𝚟𝚊𝚛}$ and $\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{2}.\mathrm{𝚟𝚊𝚛}$ to the collections $\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{1}$ and $\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{2}$ used in the arguments of the $\mathrm{𝚕𝚎𝚡}_\mathrm{𝚕𝚎𝚜𝚜𝚎𝚚}$ constraint. $\forall {i}_{1}\in \left[1,|\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{1}|\right],\forall {i}_{2}\in \left[1,|\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{2}|\right]$ such that ${i}_{1}={i}_{2}$We use an equality since this is the default value of the comparison operator $o$ when we do not use a pattern of the form $o-\mathrm{𝚒𝚝𝚎𝚖}\left(\cdots \right)$. we generate an item $\mathrm{𝚒𝚗𝚍𝚎𝚡}-{v}_{1}𝚡-{v}_{2}𝚢-{v}_{3}$ where:

${v}_{1}={i}_{1},{v}_{2}=\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{1}\left[{i}_{1}\right].\mathrm{𝚟𝚊𝚛},{v}_{3}=\mathrm{𝚅𝙴𝙲𝚃𝙾𝚁}\mathtt{2}\left[{i}_{1}\right].\mathrm{𝚟𝚊𝚛}.$

This leads to the four items listed in the $\mathrm{𝙶𝙴𝙽𝙴𝚁𝙰𝚃𝙴𝙳}\mathrm{𝙸𝚃𝙴𝙼}\left(𝚂\right)$ field.

EXAMPLE

$\mathrm{𝙲𝙾𝙽𝚂𝚃𝚁𝙰𝙸𝙽𝚃}$:

$\mathrm{𝚌𝚞𝚖𝚞𝚕𝚊𝚝𝚒𝚟𝚎𝚜}$$\left(\begin{array}{|c|}\hline \mathrm{𝚃𝙰𝚂𝙺𝚂}\\ \hline\end{array},\mathrm{𝙼𝙰𝙲𝙷𝙸𝙽𝙴𝚂},\mathrm{𝙲𝚃𝚁}\right)$

$\mathrm{𝚃𝙰𝚂𝙺𝚂}$:

$〈\mathrm{𝚖𝚊𝚌𝚑𝚒𝚗𝚎}-\mathtt{1}\mathrm{𝚘𝚛𝚒𝚐𝚒𝚗}-\mathtt{1}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathtt{4}\mathrm{𝚎𝚗𝚍}-\mathtt{5}\mathrm{𝚑𝚎𝚒𝚐𝚑𝚝}-\mathtt{1},$

$\mathrm{𝚖𝚊𝚌𝚑𝚒𝚗𝚎}-\mathtt{1}\mathrm{𝚘𝚛𝚒𝚐𝚒𝚗}-\mathtt{4}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathtt{2}\mathrm{𝚎𝚗𝚍}-\mathtt{6}\mathrm{𝚑𝚎𝚒𝚐𝚑𝚝}-\mathtt{3},$

$\mathrm{𝚖𝚊𝚌𝚑𝚒𝚗𝚎}-\mathtt{1}\mathrm{𝚘𝚛𝚒𝚐𝚒𝚗}-\mathtt{2}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathtt{3}\mathrm{𝚎𝚗𝚍}-\mathtt{5}\mathrm{𝚑𝚎𝚒𝚐𝚑𝚝}-\mathtt{2},$

$\mathrm{𝚖𝚊𝚌𝚑𝚒𝚗𝚎}-\mathtt{2}\mathrm{𝚘𝚛𝚒𝚐𝚒𝚗}-\mathtt{5}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathtt{2}\mathrm{𝚎𝚗𝚍}-\mathtt{7}\mathrm{𝚑𝚎𝚒𝚐𝚑𝚝}-\mathtt{2}〉$

$\mathrm{𝙳𝙴𝚁𝙸𝚅𝙴𝙳}\mathrm{𝙲𝙾𝙻𝙻𝙴𝙲𝚃𝙸𝙾𝙽}$:

$\mathrm{𝚃𝙸𝙼𝙴}_\mathrm{𝙿𝙾𝙸𝙽𝚃𝚂}-\mathrm{𝚌𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚘𝚗}\left(\mathrm{𝚒𝚍𝚖}-\mathrm{𝚒𝚗𝚝},$

$\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathrm{𝚍𝚟𝚊𝚛},\mathrm{𝚙𝚘𝚒𝚗𝚝}-\mathrm{𝚍𝚟𝚊𝚛}\right)$

$\mathrm{𝙿𝙰𝚃𝚃𝙴𝚁𝙽}\left(𝚂\right)$         :

$\mathrm{𝚒𝚝𝚎𝚖}\left(\mathrm{𝚒𝚍𝚖}-\mathrm{𝚃𝙰𝚂𝙺𝚂}.\mathrm{𝚖𝚊𝚌𝚑𝚒𝚗𝚎},$

$\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathrm{𝚃𝙰𝚂𝙺𝚂}.\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗},\mathrm{𝚙𝚘𝚒𝚗𝚝}-\mathrm{𝚃𝙰𝚂𝙺𝚂}.\mathrm{𝚘𝚛𝚒𝚐𝚒𝚗}\right)$

$\mathrm{𝚒𝚝𝚎𝚖}\left(\mathrm{𝚒𝚍𝚖}-\mathrm{𝚃𝙰𝚂𝙺𝚂}.\mathrm{𝚖𝚊𝚌𝚑𝚒𝚗𝚎},$

$\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathrm{𝚃𝙰𝚂𝙺𝚂}.\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗},\mathrm{𝚙𝚘𝚒𝚗𝚝}-\mathrm{𝚃𝙰𝚂𝙺𝚂}.\mathrm{𝚎𝚗𝚍}\right)$

$\mathrm{𝙶𝙴𝙽𝙴𝚁𝙰𝚃𝙴𝙳}\mathrm{𝙸𝚃𝙴𝙼}\left(𝚂\right)$  :

$〈\mathrm{𝚒𝚍𝚖}-\mathtt{1}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathtt{4}\mathrm{𝚙𝚘𝚒𝚗𝚝}-\mathtt{1},$

$\mathrm{𝚒𝚍𝚖}-\mathtt{1}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathtt{2}\mathrm{𝚙𝚘𝚒𝚗𝚝}-\mathtt{4},$

$\mathrm{𝚒𝚍𝚖}-\mathtt{1}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathtt{3}\mathrm{𝚙𝚘𝚒𝚗𝚝}-\mathtt{2},$

$\mathrm{𝚒𝚍𝚖}-\mathtt{2}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathtt{2}\mathrm{𝚙𝚘𝚒𝚗𝚝}-\mathtt{5},$

$\mathrm{𝚒𝚍𝚖}-\mathtt{1}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathtt{4}\mathrm{𝚙𝚘𝚒𝚗𝚝}-\mathtt{5},$

$\mathrm{𝚒𝚍𝚖}-\mathtt{1}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathtt{2}\mathrm{𝚙𝚘𝚒𝚗𝚝}-\mathtt{6},$

$\mathrm{𝚒𝚍𝚖}-\mathtt{1}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathtt{3}\mathrm{𝚙𝚘𝚒𝚗𝚝}-\mathtt{5},$

$\mathrm{𝚒𝚍𝚖}-\mathtt{2}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-\mathtt{2}\mathrm{𝚙𝚘𝚒𝚗𝚝}-\mathtt{7}〉$

The two patterns mention the references $\mathrm{𝚃𝙰𝚂𝙺𝚂}.\mathrm{𝚖𝚊𝚌𝚑𝚒𝚗𝚎}$, $\mathrm{𝚃𝙰𝚂𝙺𝚂}.\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}$, $\mathrm{𝚃𝙰𝚂𝙺𝚂}.\mathrm{𝚘𝚛𝚒𝚐𝚒𝚗}$ and $\mathrm{𝚃𝙰𝚂𝙺𝚂}.\mathrm{𝚎𝚗𝚍}$ of the $\mathrm{𝚃𝙰𝚂𝙺𝚂}$ collection used in the arguments of the $\mathrm{𝚌𝚞𝚖𝚞𝚕𝚊𝚝𝚒𝚟𝚎𝚜}$ constraint. $\forall i\in \left[1,|\mathrm{𝚃𝙰𝚂𝙺𝚂}|\right]$, we generate two items $\mathrm{𝚒𝚍𝚖}-{u}_{1}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-{u}_{2}\mathrm{𝚙𝚘𝚒𝚗𝚝}-{u}_{3}$, $\mathrm{𝚒𝚍𝚖}-{v}_{1}\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗}-{v}_{2}\mathrm{𝚙𝚘𝚒𝚗𝚝}-{v}_{3}$ where:

${u}_{1}=\mathrm{𝚃𝙰𝚂𝙺𝚂}\left[i\right].\mathrm{𝚖𝚊𝚌𝚑𝚒𝚗𝚎},{u}_{2}=\mathrm{𝚃𝙰𝚂𝙺𝚂}\left[i\right].\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗},{u}_{3}=\mathrm{𝚃𝙰𝚂𝙺𝚂}\left[i\right].\mathrm{𝚘𝚛𝚒𝚐𝚒𝚗},$

${v}_{1}=\mathrm{𝚃𝙰𝚂𝙺𝚂}\left[i\right].\mathrm{𝚖𝚊𝚌𝚑𝚒𝚗𝚎},{v}_{2}=\mathrm{𝚃𝙰𝚂𝙺𝚂}\left[i\right].\mathrm{𝚍𝚞𝚛𝚊𝚝𝚒𝚘𝚗},{v}_{3}=\mathrm{𝚃𝙰𝚂𝙺𝚂}\left[i\right].\mathrm{𝚎𝚗𝚍}$.

This leads to the eight items listed in the $\mathrm{𝙶𝙴𝙽𝙴𝚁𝙰𝚃𝙴𝙳}\mathrm{𝙸𝚃𝙴𝙼}\left(𝚂\right)$ field.

EXAMPLE

$\mathrm{𝙲𝙾𝙽𝚂𝚃𝚁𝙰𝙸𝙽𝚃}$:

$\mathrm{𝚐𝚘𝚕𝚘𝚖𝚋}$$\left(\begin{array}{|c|}\hline \mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}\\ \hline\end{array}\right)$

$\mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}$:

$〈\mathrm{𝚟𝚊𝚛}-\mathtt{0},\mathrm{𝚟𝚊𝚛}-\mathtt{1},\mathrm{𝚟𝚊𝚛}-\mathtt{4},\mathrm{𝚟𝚊𝚛}-\mathtt{6}〉$

$\mathrm{𝙳𝙴𝚁𝙸𝚅𝙴𝙳}\mathrm{𝙲𝙾𝙻𝙻𝙴𝙲𝚃𝙸𝙾𝙽}$:

$\mathrm{𝙿𝙰𝙸𝚁𝚂}-\mathrm{𝚌𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚘𝚗}\left(𝚡-\mathrm{𝚍𝚟𝚊𝚛},𝚢-\mathrm{𝚍𝚟𝚊𝚛}\right)$

$\mathrm{𝙿𝙰𝚃𝚃𝙴𝚁𝙽}\left(𝚂\right)$         :

$>-\mathrm{𝚒𝚝𝚎𝚖}\left(𝚡-\mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}.\mathrm{𝚟𝚊𝚛},𝚢-\mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}.\mathrm{𝚟𝚊𝚛}\right)$

$\mathrm{𝙶𝙴𝙽𝙴𝚁𝙰𝚃𝙴𝙳}\mathrm{𝙸𝚃𝙴𝙼}\left(𝚂\right)$  :

$〈𝚡-\mathtt{1}𝚢-\mathtt{0},$

$𝚡-\mathtt{4}𝚢-\mathtt{0},𝚡-\mathtt{4}𝚢-\mathtt{1},$

$𝚡-\mathtt{6}𝚢-\mathtt{0},𝚡-\mathtt{6}𝚢-\mathtt{1},𝚡-\mathtt{6}𝚢-\mathtt{4}〉$

The pattern mentions two references $\mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}.\mathrm{𝚟𝚊𝚛}$ and $\mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}.\mathrm{𝚟𝚊𝚛}$ to the $\mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}$ collection used in the arguments of the $\mathrm{𝚐𝚘𝚕𝚘𝚖𝚋}$ constraint. $\forall {i}_{1}\in \left[1,|\mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}|\right]$, $\forall {i}_{2}\in \left[1,|\mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}|\right]$ such that ${i}_{1}>{i}_{2}$We use the comparison operator $>$ since we have a pattern of the form $>-\mathrm{𝚒𝚝𝚎𝚖}\left(\cdots \right)$. we generate the item $𝚡-{u}_{1}𝚢-{u}_{2}$ where:

${u}_{1}=\mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}\left[{i}_{1}\right].\mathrm{𝚟𝚊𝚛},{u}_{2}=\mathrm{𝚅𝙰𝚁𝙸𝙰𝙱𝙻𝙴𝚂}\left[{i}_{2}\right].\mathrm{𝚟𝚊𝚛}$.

This leads to the six items listed in the $\mathrm{𝙶𝙴𝙽𝙴𝚁𝙰𝚃𝙴𝙳}\mathrm{𝙸𝚃𝙴𝙼}\left(𝚂\right)$ field.

We finish with an example that mentions an indirect reference to an attribute of a collection.

EXAMPLE

$\mathrm{𝙲𝙾𝙽𝚂𝚃𝚁𝙰𝙸𝙽𝚃}$:

$\mathrm{𝚌𝚞𝚖𝚞𝚕𝚊𝚝𝚒𝚟𝚎}_\mathrm{𝚌𝚘𝚗𝚟𝚎𝚡}$$\left(\begin{array}{|c|}\hline \mathrm{𝚃𝙰𝚂𝙺𝚂}\\ \hline\end{array},\mathrm{𝙻𝙸𝙼𝙸𝚃}\right)$

$\mathrm{𝚃𝙰𝚂𝙺𝚂}$:

$〈\mathrm{𝚙𝚘𝚒𝚗𝚝𝚜}-〈\mathrm{𝚟𝚊𝚛}-\mathtt{2},\mathrm{𝚟𝚊𝚛}-\mathtt{1},\mathrm{𝚟𝚊𝚛}-\mathtt{5}〉\mathrm{𝚑𝚎𝚒𝚐𝚑𝚝}-\mathtt{1},$

$\mathrm{𝚙𝚘𝚒𝚗𝚝𝚜}-〈\mathrm{𝚟𝚊𝚛}-\mathtt{4},\mathrm{𝚟𝚊𝚛}-\mathtt{5},\mathrm{𝚟𝚊𝚛}-\mathtt{7}〉\mathrm{𝚑𝚎𝚒𝚐𝚑𝚝}-\mathtt{2},$

$\mathrm{𝚙𝚘𝚒𝚗𝚝𝚜}-〈\mathrm{𝚟𝚊𝚛}-\mathtt{14},\mathrm{𝚟𝚊𝚛}-\mathtt{15}〉\mathrm{𝚑𝚎𝚒𝚐𝚑𝚝}-\mathtt{2}〉$

$\mathrm{𝙳𝙴𝚁𝙸𝚅𝙴𝙳}\mathrm{𝙲𝙾𝙻𝙻𝙴𝙲𝚃𝙸𝙾𝙽}$:

$\mathrm{𝙸𝙽𝚂𝚃𝙰𝙽𝚃𝚂}-\mathrm{𝚌𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚘𝚗}\left(\mathrm{𝚒𝚗𝚜𝚝𝚊𝚗𝚝}-\mathrm{𝚒𝚗𝚝}\right)$

$\mathrm{𝙿𝙰𝚃𝚃𝙴𝚁𝙽}\left(𝚂\right)$          :

$\mathrm{𝚒𝚝𝚎𝚖}\left(\mathrm{𝚒𝚗𝚜𝚝𝚊𝚗𝚝}-\mathrm{𝚃𝙰𝚂𝙺𝚂}.\mathrm{𝚙𝚘𝚒𝚗𝚝𝚜}.\mathrm{𝚟𝚊𝚛}\right)$

$\mathrm{𝙶𝙴𝙽𝙴𝚁𝙰𝚃𝙴𝙳}\mathrm{𝙸𝚃𝙴𝙼}\left(𝚂\right)$  :

$〈\mathrm{𝚒𝚗𝚜𝚝𝚊𝚗𝚝}-\mathtt{2},\mathrm{𝚒𝚗𝚜𝚝𝚊𝚗𝚝}-\mathtt{1},\mathrm{𝚒𝚗𝚜𝚝𝚊𝚗𝚝}-\mathtt{5},\mathrm{𝚒𝚗𝚜𝚝𝚊𝚗𝚝}-\mathtt{4},$

$\mathrm{𝚒𝚗𝚜𝚝𝚊𝚗𝚝}-\mathtt{5},\mathrm{𝚒𝚗𝚜𝚝𝚊𝚗𝚝}-\mathtt{7},\mathrm{𝚒𝚗𝚜𝚝𝚊𝚗𝚝}-\mathtt{14},\mathrm{𝚒𝚗𝚜𝚝𝚊𝚗𝚝}-\mathtt{15}〉$

The pattern mentions the indirect reference $\mathrm{𝚃𝙰𝚂𝙺𝚂}.\mathrm{𝚙𝚘𝚒𝚗𝚝𝚜}.\mathrm{𝚟𝚊𝚛}$ of the $\mathrm{𝚃𝙰𝚂𝙺𝚂}$ collection used in the arguments of the $\mathrm{𝚌𝚞𝚖𝚞𝚕𝚊𝚝𝚒𝚟𝚎}_\mathrm{𝚌𝚘𝚗𝚟𝚎𝚡}$ constraint. $\forall i\in \left[1,|\mathrm{𝚃𝙰𝚂𝙺𝚂}|\right]$, $\forall j\in \left[1,|\mathrm{𝚃𝙰𝚂𝙺𝚂}\left[i\right].\mathrm{𝚙𝚘𝚒𝚗𝚝𝚜}|\right]$ we generate the item $\mathrm{𝚒𝚗𝚜𝚝𝚊𝚗𝚝}-{u}_{ij}$ where:

${u}_{ij}=\mathrm{𝚃𝙰𝚂𝙺𝚂}\left[i\right].\mathrm{𝚙𝚘𝚒𝚗𝚝𝚜}\left[j\right]$.

This leads to the eight items listed in the $\mathrm{𝙶𝙴𝙽𝙴𝚁𝙰𝚃𝙴𝙳}\mathrm{𝙸𝚃𝙴𝙼}\left(𝚂\right)$ field.