# Partial tensor product sign

There is an asymmetric tensor-like binary product operation on rings, and the notation for it is informed by both the notation for semi-direct product \rtimes and that for tensor product \otimes. It looks like a tensor product, with the arc of the surrounding "O" missing between the lower-left leg and upper-left legs of the central "X". Here is a photo of the symbol in context, hand-drawn using an iPad:

As far as I know it is so far exclusively handwritten. How can I create a glyph for this operation in LaTeX? I'd like to call it \rtensor. I have the sense that the easiest way to do this is to somehow modify the glyph for \otimes by removing an arc from one side, since I want it to be the same size and have the same spacing properties. But I don't know how to proceed.

Can someone help me typeset this symbol?

Here is an easy "design-your-own" TikZ solution.

Advantages: Easy. Nicer corners compared to clipping.

Disadvantage: Not truly the exact spacing of \otimes. But close.

Code:

\documentclass{article}
\usepackage{tikz,scalerel}

\newcommand{\rtensor}{\mathbin{\mkern1mu\scalerel*{\tikz[line width=.25]{
\draw(-45:.1)--(135:.1) arc (135:-135:.1) -- (45:.1);
}}{\otimes}\mkern1mu}}

\begin{document}

$H\rtensor C_{H\rtensor C_{H\rtensor C}}$

\end{document}


Update: If it's important to get the spacing for \rtensor to be exactly the same as \otimes, you can redefine \otimes. Use \let to retain the original \otimes definition if you wish.

\documentclass{article}
\usepackage{tikz,scalerel}

\let\oldtimes\otimes

\renewcommand{\otimes}{\mathbin{\mkern1mu\scalerel*{\tikz[line width=.25]{
\draw(0,0) circle[radius=.1]; \draw (-135:.1) -- (45:.1); \draw (135:.1) -- (-45:.1);
}}{\oldtimes}\mkern1mu}}

\newcommand{\rtensor}{\mathbin{\mkern1mu\scalerel*{\tikz[line width=.25]{
\draw(-45:.1)--(135:.1) arc (135:-135:.1) -- (45:.1);
}}{\oldtimes}\mkern1mu}}

\begin{document}

$H\rtensor C_{H\rtensor C_{H\rtensor C}}$

$H\otimes C_{H\otimes C_{H\otimes C}}$

\end{document}


• This looks fantastic! What's the difference in spacing between the first and second parts of the answer? (In any case the spacing looks similar enough I'll probably prefer the first since it's a bit simpler.) And is the renewed \otimes visibly different from \oldtimes? Apr 6, 2021 at 15:19
• I edited my original response to that the spacing was a little better, adding clip and mkern. So the 2 parts are identical except for renewing \otimes. The difference in spacing and line weight changes slightly in scriptstyle and scriptscriptstyle. By renewing \otimes the two characters become identical in size and weight. I can imagine a scenario using align or something similar where you would want the characters to be precisely the same. Apr 6, 2021 at 16:32
• +1 for using scalerel...hoist by my own petard. Apr 7, 2021 at 0:47
• @StevenB.Segletes, best package ever! Apr 7, 2021 at 1:01

Set up to work in all math styles.

As nicely upvoted as the original answer, below, was, I took to heart Barbara's comment on how the clipping should be such to provide square corners. So here is a revision that seems to work well over the span of 10-12 pt documents, without any changes needed.

To see how this is done, you can change the white to red to see how a patch is overlaid over \otimes. Therefore, this version only works out of the box for documents with white background.

\documentclass{article}
\usepackage{amsmath,trimclip,scalerel,xcolor,stackengine}
\newcommand\rtensor{\mathbin{\ThisStyle{\sbox0{$\SavedStyle\otimes$}%
\ensurestackMath{\stackinset{r}{.5\wd0+.1pt+.1\LMpt}{c}{}%
{\textcolor{white}{\clipbox{1.1pt 0pt 0pt 0pt}{\rotatebox%
[origin=c]{45}{\rule{.425\wd0}{.42\wd0}}}}}{\SavedStyle\otimes}}}}}
\begin{document}
$A \rtensor B$

$\scriptstyle A \rtensor B$

$\scriptscriptstyle A \rtensor B$
\end{document}


\documentclass{article}
\usepackage{amsmath,trimclip,scalerel}
\newcommand\rtensor{\mathbin{\ThisStyle{\kern1pt
\clipbox{{\dimexpr.25ex+.12\LMex\relax} 0pt 0pt 0pt}%
{$\SavedStyle\otimes$}}}}
\begin{document}
$A \rtensor B$

$\scriptstyle A \rtensor B$

$\scriptscriptstyle A \rtensor B$
\end{document}


For a [12pt] document, with different sidebearings and relative scales, this adjustment seems to work

\documentclass[12pt]{article}
\usepackage{trimclip,scalerel}
\newcommand\rtensor{\mathbin{\ThisStyle{\kern1pt
\clipbox{{\dimexpr.06ex+.31\LMex\relax} 0pt 0pt 0pt}%
{$\SavedStyle\otimes$}}}}
\def\scriptscriptstyleScaleFactor{0.63}
\begin{document}
$A \rtensor B$

$\scriptstyle A \rtensor B$

$\scriptscriptstyle A \rtensor B$
\end{document}


• Same comment as for @egreg's answer -- "corners" would be better square. Apr 6, 2021 at 1:37
• @barbarabeeton Please see revision. Apr 7, 2021 at 0:42
• Yes! Nice crisp corners! Good job. (I could be fussy, and ask that the original symbol from the font, with the full circle, be shown so that the thickness of the strokes can be compared, but that's probably a bit much to ask.) Apr 7, 2021 at 2:55
• @barbarabeeton If you follow the answer advice and change "white" to "red", you will see the totality of the revision that was done to the original symbol. Apr 7, 2021 at 9:14

An alternative to Steven's answer, with the possibility of fine tuning the clipping in the various styles.

Beware that different math fonts will probably need different factors.

\documentclass{article}
\usepackage{trimclip}

\makeatletter
\DeclareRobustCommand{\rotimes}{\mathbin{\mkern1mu\mathpalette\rotimes@\relax}}
\newcommand{\rotimes@}[2]{%
\clipbox{{\rotimes@clip{#1}} 0pt 0pt 0pt}{$\m@th#1\otimes$}%
}
\newcommand{\rotimes@clip}[1]{%
\ifx#1\displaystyle 0.206\else
\ifx#1\textstyle 0.206\else
0.22\fi\fi\width
}
\makeatother

\begin{document}

$\hat{H}_l \rotimes C[\Gamma(c)]$

$\scriptstyle\hat{H}_l \rotimes C[\Gamma(c)]$

$\scriptstyle\hat{H}_l \rotimes C[\Gamma(c)]$

\Huge$H\rotimes C$

\end{document}


• The "corners" aren't really square. You need to take into account the thickness of the drawn line. It probably doesn't matter whether it's the cross or the circle, but it's likely that only one is needed, and it shouldn't matter which. Apr 6, 2021 at 1:36