\documentclass[a4paper,11pt]{report} %\usepackage[utf8]{inputenc} \usepackage[cal=boondox,scr=boondoxo]{mathalfa} %%% endrikan'ny mathcal sy mathscr \usepackage[a4paper,bindingoffset=0cm,% left=2cm,right=2cm,top=2cm,bottom=2cm,% footskip=0.8cm]{geometry} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[french]{babel} \frenchbsetup{StandardLists=true} % à inclure si on utilise \usepackage[french]{babel} \usepackage{cite} % pour les citations multiples \usepackage{enumitem} %\bibliographystyle{fr-plain} \usepackage{amsmath, amsthm} % tr`es bon mode mathÂ?ematailletique \usepackage{amsfonts,amssymb}% permet la definition des ensembles \usepackage{mathtools} \usepackage{centernot} %\usepackage{tikz3d-fr} \usepackage{tikz,tkz-tab} \usetikzlibrary{3d} %\usepackage{pgfplots} %\usetikzlibrary{decorations.pathreplacing} \newtheorem{theorem}{Theorem}[section] \newtheorem{definition}{Definition}[section] \begin{document} \section{Write any tensor of any order as vector or tensor of order one !!} Let $\mathbb{K}$ a field( for e.g $\mathbb{R}$ ), we will construct $\mathbb{K}^{d_1\times\cdots\times d_k}\simeq \mathbb{K}^{d_1\cdots d_k}$ such that $d_1,\ldots,d_k\in\mathbb{N}^*$. \begin{definition} A tensor is a collection of elements its dimensions define the size of the collection its order is the number of different dimensions \end{definition} In linear algebra, we have the unfolding \begin{definition} A dimension of a tensor $T$ is a vector $d\in \left(\mathbb{N}^*\right)^k$ $(k<\infty)$. We have $$T=(a)_d=(a)_{d_1,\ldots,d_k} =({\alpha}_{i_1,\ldots,i_k}^{\{k\}})_{0\le i_10$ is the order.\\ The size of the Tensor is $d_1 \times \cdots \times d_k=\prod_{i=1}^kd_i$ % Here $\mathbb{K} = \mathbb{R}$ to simplify but it works for all filds. We can write $$T\in \mathbb{K}^{d_1 \times d_2 \times \cdots \times d_k}$$ \section{Bijection} For a given $d_1,\ldots,d_k\in \mathbb{N}^*$, there exists a bijective application between a set of tensor order 1 of size $n=d_1\cdot d_2 \cdots d_k$ $\mathbb{K}^{n}$ and the set of tensor of order $k$ of the size $n= d_1\cdot d_2 \cdots d_k$ $\mathbb{K}^{d_1\times d_2 \times \cdots \times d_k}$. Little endian $$ \begin{array}{ccc} \mathbb{K}^{d_1\times d_2 \times \cdots \times d_k} & \longrightarrow & \mathbb{K}^{d_1\cdot d_2\cdots d_k} \\ \left({\alpha}_{(i_1,\ldots,i_k)_k}\right) & \longmapsto & \left({\alpha}_{\left(i_1+i_2\cdot d_1+\ldots+i_k \prod_{j=1}^{k-1}d_j\right)_1}\right) \end{array} $$ Big endian $$ \begin{array}{ccc} \mathbb{K}^{d_1\times d_2 \times \cdots \times d_k} & \longrightarrow & \mathbb{K}^{d_1\cdot d_2\cdots d_k} \\ \left({\alpha}_{(i_1,\ldots,i_k)_k}\right) & \longmapsto & \left({\alpha}_{\left(i_1 \prod_{j=2}^kd_j+i_2\prod_{j=3}^k d_j+\ldots +i_{k-1} d_k +i_k \right)_1}\right) \end{array} $$ For $a,b\in \mathbb{N}$, we note $ [\![ a,b ]\!] = [a.. b]=[a,b]\cap \mathbb{N}$ and $ [\![ a,b [\![ = [\![ a,b ) = [a.. b) = [a.. b[=[a,b[\cap \mathbb{N}$ If $a=0$ we note $[b]=[\![0,b]\!]$ and $[b)=[\![0,b[\![$ so here we defined a bijection of indexe, i.e, \begin{align*} f:[d_1)\times[d_2)\times\cdots\times [d_k) & \longrightarrow [d_1\cdot d_2\cdots d_k)\\ (i_1,i_2,\ldots,i_k)_k & \longrightarrow f(i_1,i_2,\ldots,i_k)=(i)_1 \end{align*} If little endian \begin{align*} i & =i_1 +i_2d_1+\cdots+i_k\prod_{j=1}^{k-1} d_j \\ &=\sum_{j=1}^ki_j\prod_{l=1}^{j-1}d_l \end{align*} If big endian \begin{align*} i & =i_1 \prod_{j=2}^kd_j+i_2\prod_{j=3}^k d_j+\ldots +i_{k-1} d_k +i_k \\ &=\sum_{j=1}^ki_j\prod_{l=i+1}^kd_l \end{align*} $ $ \section{Inverse indexes} The inverse of Little endian : For any $i\in \mathbb{N} , i \prod_{l=1}^{k}d_j \end{align*} \begin{align*} m'-m &=\sum_{j=3}^k i_j \prod_{l=j+1}^{k}d_l + i_2 \prod_{l=3}^k d_l + \prod_{l=3}^k d_l \\ &-\left( (d_1-1)\prod_{l=2}^k d_l + i_2\prod_{l=3}d_l +\sum_{j=3}i_j\prod_{l=j+1}d_l \right)\\ &=\sum_{j=3}^k i_j \prod_{l=j+1}^{k}d_l + i_2 \prod_{l=3}^k d_l + \prod_{l=3}^k d_l \\ &-\left( \prod_{l=1}^k d_l-\prod_{l=2}^k d_l + i_2\prod_{l=3}d_l +\sum_{j=3}i_j\prod_{l=j+1}d_l \right)\\ &= \prod_{l=3}^k d_l -\left( \prod_{l=1}^k d_l-\prod_{l=2}^k d_l \right)\\ &= \prod_{l=3}^k d_l + \prod_{l=2}^k d_l - \prod_{l=1}^k d_l \end{align*} If $i_1=d_1-1$ and $i_2=d_2-1$ in $m$ so \begin{align*} m'&=\left(i_1+1\right)\prod_{l=2}^{k}d_j+ \sum_{j=2}^{k} i_j \prod_{l=j+1}^{k}d_j\\ &=\prod_{l=2}^{k}d_j + i_1 \prod_{l=2}^{k}d_j+ \sum_{j=2}^{k} i_j \prod_{l=j+1}^{k}d_j\\ &=\prod_{l=2}^{k}d_j + \sum_{j=1}^{k} i_j \prod_{l=j+1}^{k}d_j\\ &=\prod_{l=2}^{k}d_j + m\\ &=\prod_{l=2}^{k}d_j + (d_1-1)\prod_{j=2}^kd_j+(d_2-1)\prod_{j=3}^kd_j + \sum_{j=3}^{k} i_j \prod_{l=j+1}^{k}d_j\\ &=\prod_{l=2}^{k}d_j + \prod_{j=1}^kd_j -\prod_{j=2}^kd_j+ \prod_{j=2}^kd_j -\prod_{j=3}^kd_j + \sum_{j=3}^{k} i_j \prod_{l=j+1}^{k}d_j\\ &=\prod_{l=2}^{k}d_j + \prod_{j=1}^kd_j -\prod_{j=3}^kd_j + \sum_{j=3}^{k} i_j \prod_{l=j+1}^{k}d_j\\ &=\prod_{l=2}^{k}d_j + \prod_{j=1}^kd_j -\prod_{j=3}^kd_j + i_3 \prod_{l=4}^{k}d_j+ \sum_{j=4}^{k} i_j \prod_{l=j+1}^{k}d_j\\ &> \prod_{j=1}^kd_j\\ \end{align*} \begin{align*} m'-m &= \prod_{l=2}^{k}d_j \\ \end{align*} \begin{align*} m''&= (i_3+1) \prod_{l=4}^{k}d_j + \sum_{j=4}^{k} i_j \prod_{l=j+1}^{k}d_j\\ \end{align*} \begin{align*} m''-m &= (i_3+1) \prod_{l=4}^{k}d_j + \sum_{j=4}^{k} i_j \prod_{l=j+1}^{k}d_j - \left((d_1-1)\prod_{l=2}^k d_l + (d_2-1)\prod_{l=3}^kd_l + i_3 \prod_{l=4}^kd_l + \sum_{j=4}^k i_j \prod_{l=j+1}^kd_l \right) \\ m''-m &= \prod_{l=4}^{k}d_j - \left((d_1-1)\prod_{l=2}^k d_l + (d_2-1)\prod_{l=3}^kd_l \right) \\ m''-m &= \prod_{l=4}^{k}d_j - \left(\prod_{l=1}^k d_l-\prod_{l=2}^k d_l + \prod_{l=2}^k d_l-\prod_{l=3}^kd_l \right) \\ m''-m &= \prod_{l=4}^{k}d_j - \left(\prod_{l=1}^k d_l-\prod_{l=3}^kd_l \right) \\ m''-m &= \prod_{l=3}^kd_l + \prod_{l=4}^{k}d_j - \prod_{l=1}^k d_l \\ \end{align*} if $i_1=d_1-1$, $i_2=d_2-1$, $i_3=d_3-1$ \begin{align*} m+\prod_{l=3}^kd_l + \prod_{l=4}^{k}d_j - \prod_{l=1}^k d_l &= \left( (d_1-1)\prod_{l=2}^kd_l+(d_2-1)\prod_{l=3}^kd_l+(d_3-1)\prod_{l=4}^kd_l +\sum_{j=4}^k i_j\prod_{l=j+1}d_l \right) \\& +\prod_{l=3}^kd_l+ \prod_{l=4}^{k}d_j - \prod_{l=1}^k d_l\\ \end{align*} \begin{align*} m+\prod_{l=3}^kd_l + \prod_{l=4}^{k}d_j - \prod_{l=1}^k d_l &= \left( (d_1-1)\prod_{l=2}^kd_l+(d_2-1)\prod_{l=3}^kd_l+(d_3-1)\prod_{l=4}^kd_l +\sum_{j=4}^k i_j\prod_{l=j+1}d_l \right) \\& +\prod_{l=3}^kd_l+ \prod_{l=4}^{k}d_j - \prod_{l=1}^k d_l\\ &= \left(\prod_{l=1}^kd_l-\prod_{l=2}^kd_l+ \prod_{l=2}^kd_l-\prod_{l=3}^kd_l+\prod_{l=3}^kd_l-\prod_{l=4}^kd_l +\sum_{j=4}^k i_j\prod_{l=j+1}d_l \right) \\& + \prod_{l=3}^kd_l+ \prod_{l=4}^{k}d_j - \prod_{l=1}^k d_l\\ &= \left(\prod_{l=1}^kd_l-\prod_{l=4}^kd_l +\sum_{j=4}^k i_j\prod_{l=j+1}d_l \right) \\& + \prod_{l=3}^kd_l+ \prod_{l=4}^{k}d_j - \prod_{l=1}^k d_l\\ &= \sum_{j=4}^k i_j\prod_{l=j+1}d_l + \prod_{l=3}^kd_l\\ &= \sum_{j=4}^k i_j\prod_{l=j+1}d_l + <\prod_{l=3}^kd_l\\ \end{align*} \begin{align*} l+1&=\sum_{j=1}^k i_j\prod_{l=1}^{j-1}d_l +1\\ &= 1+(d_1-1) + (d_2-1)d_1 + (d_3-1)d_1 d_2+i_4d_1d_2d_3 +\sum_{j=5}^k i_j\prod_{l=1}^{j-1}d_l\\ &= d_1 + d_2-d_1 + d_1d_2d_3-d_1 d_2+i_4d_1d_2d_3 +\sum_{j=5}^k i_j\prod_{l=1}^{j-1}d_l\\ &= (i_4+1)d_1d_2d_3 +\sum_{j=5}i_j\prod_{l=1}^{j-1}d_l\\ \end{align*} corresponds to \begin{align*} m' &= (i_4+1)\prod_{l=5}^kd_l + \sum_{j=5}i_j\prod_{l=j+1}^kd_l\\ &= i_4\prod_{l=5}^kd_l +\prod_{l=5}^kd_l + \sum_{j=5}i_j\prod_{l=j+1}^kd_l\\ \end{align*} \begin{align*} m'-m &= i_4\prod_{l=5}^kd_l +\prod_{l=5}^kd_l + \sum_{j=5}i_j\prod_{l=j+1}^kd_l\\ & -\left( (d_1-1)\prod_{l=2}^kd_l + (d_2-1)\prod_{l=3}^kd_l+(d_3-1)\prod_{l=4}^kd_l+i_4\prod_{l=5}^kd_l+\sum_{j=5}^ki_j\prod_{l=j+1}^k d_l \right)\\ &= i_4\prod_{l=5}^kd_l +\prod_{l=5}^kd_l + \sum_{j=5}i_j\prod_{l=j+1}^kd_l\\ & -\left( \prod_{l=1}^kd_l-\prod_{l=2}^kd_l + \prod_{l=2}^kd_l-\prod_{l=3}^kd_l+\prod_{l=3}^kd_l-\prod_{l=4}^kd_l+i_4\prod_{l=5}^kd_l+\sum_{j=5}^ki_j\prod_{l=j+1}^k d_l \right)\\ &= \prod_{l=5}^kd_l + \prod_{l=4}^kd_l - \prod_{l=1}^kd_l \end{align*} \section{Transposition backward} $l=\sum_{j=1}^ki_j\prod_{l=1}^{j-1}d_l$ corresponds to $m=\sum_{j=1}^ki'_j\prod_{l=1}^{j-1}d'_l$ such that \begin{align*} d'_l&=d_{k-l+1} \\ i'_j&=d'_{j}-i_{k-j+1} -1\\ &=d_{k-j+1}-i_{k-j+1}-1 \\ \end{align*} \begin{align*} m&=\sum_{j=1}^ki'_j\prod_{l=1}^{j-1}d'_l\\ &=\sum_{j=1}^k\left(d_{k-j+1}-i_{k-j+1}-1\right)\prod_{l=1}^{j-1}d_{k-l+1}\\ &t=k-j+1 \Rightarrow j=k-t+1\\ &j=1 \Rightarrow t=k\\ &j=k \Rightarrow t=1\\ m&=\sum_{t=k}^1\left(d_{t}-i_{t}-1\right)\prod_{l=1}^{k-t+1-1}d_{k-l+1}\\ m&=\sum_{t=1}^k\left(d_{t}-i_{t}-1\right)\prod_{l=1}^{k-t}d_{k-l+1}\\ &s=k-l+1 \Rightarrow l=k-s+1\\ &l=1 \Rightarrow s=k\\ &l=k-t \Rightarrow s=k-(k-t)+1=t+1\\ m&=\sum_{t=1}^k\left(d_{t}-i_{t}-1\right)\prod_{s=k}^{t+1}d_{s}\\ m&=\sum_{t=1}^k\left(d_{t}-i_{t}-1\right)\prod_{s=t+1}^{k}d_{s}\\ \end{align*} if $i_1 \prod_{l=3}^k d_l -1 -\prod_{l=2}^k d_l \ge m-\prod_{l=2}^k d_l &\ge \prod_{s=4}d_s - \prod_{l=2}^k d_l \\ (d_1-1)\prod_{l=2}^k+\prod_{l=3}^k d_l \ge m +(d_1-1)\prod_{l=2}^k -1 &\ge (d_1-1)\prod_{l=2}^k+ \prod_{s=4}d_s \\ % (1-d_2)\prod_{l=3}^k d_l \ge m-\prod_{l=2}^k d_l &\ge \prod_{s=4}d_s - \prod_{l=2}^k d_l \\ % (1-d_2)\prod_{l=3}^k d_l \ge m-\prod_{l=2}^k d_l &\ge \prod_{s=4}d_s - \prod_{s=3}d_s + \prod_{s=3}d_s - \prod_{l=2}^k d_l \\ % (1-d_2)\prod_{l=3}^k d_l \ge m-\prod_{l=2}^k d_l &\ge (1-d_3)\prod_{s=4}d_s + (1-d_2) \prod_{s=3}d_s \\ \end{align*} Perhaps, it's a little endian rewrite in big endian For any $i\in \mathbb{N} , i,>=latex] (0,0,0)--(1,0,0) node[right] {$\vec{\imath}$} ; \draw[->,>=latex] (0,0,0)--(0,1,0) node[right] {$\vec{\jmath}$} ; \draw[->,>=latex] (0,0,0)--(0,0,1) node[above] {$\vec{k}$} ; \end{EnvTikzEspace} \begin{EmpilementCubes} \BlocPetitsCubes{1,2,3,4,5 / 0,2,1,1,3 / 0,2,1,1,2 / 1,1,1,1,3} \end{EmpilementCubes} \fi \iffalse \begin{tikzpicture} \draw (0,0,0)--(1,0,0)--(1,1,0)--(0,1,0)--cycle; % face arrière \draw (0,0,1)--(1,0,1)--(1,1,1)--(0,1,1)--cycle; % face avant % arêtes horizontales, de l’arrière vers l’avant \draw (0,0,0) -- (0,0,1); % bas gauche \draw (1,0,0) -- (1,0,1); % bas droit \draw (1,1,0) -- (1,1,1); % haut droit \draw (0,1,0) -- (0,1,1); % haut gauche \end{tikzpicture} \newcommand{\xangle}{13} %{15} \newcommand{\yangle}{160}%{153} \newcommand{\zangle}{90} \newcommand{\xlength}{1} \newcommand{\ylength}{1} \newcommand{\zlength}{1} \newcommand{\dimension}{1}% actually dimension-1 \pgfmathsetmacro{\xx}{\xlength*cos(\xangle)} \pgfmathsetmacro{\xy}{\xlength*sin(\xangle)} \pgfmathsetmacro{\yx}{\ylength*cos(\yangle)} \pgfmathsetmacro{\yy}{\ylength*sin(\yangle)} \pgfmathsetmacro{\zx}{\zlength*cos(\zangle)} \pgfmathsetmacro{\zy}{\zlength*sin(\zangle)} \begin{tikzpicture} [ x={(\xx cm,\xy cm)}, y={(\yx cm,\yy cm)}, z={(\zx cm,\zy cm)}, ] \foreach \a in {0,...,\dimension} { \foreach \b in {0,...,\dimension} { \pgfmathsetmacro{\c}{100-\a*7-\b*7} \draw[canvas is xy plane at z=\a, black!\c] (\b,0) -- (\b,\dimension) (0,\b) -- (\dimension,\b); \draw[canvas is xz plane at y=\a, black!\c] (\b,0) -- (\b,\dimension) (0,\b) -- (\dimension,\b); \draw[canvas is yz plane at x=\a, black!\c] (\b,0) -- (\b,\dimension) (0,\b) -- (\dimension,\b); } } \pgfmathsetmacro{\dim}{\dimension-1} \foreach \a in {0,...,\dimension} { \foreach \b in {0,...,\dimension} { \foreach \c in {0,...,\dimension} { \pgfmathsetmacro{\d}{\c+\b*\dimension+\a*\dimension*\dimension} % \fill (\a,\b,\c) circle (0.05cm); \node (1) at (\a,\b,\c) {$\d$}; } } } \end{tikzpicture} \fi \end{document}