8

It's neccessary to have at least two extra tuples of Albera Operators.

A minimal tuple is a triple (to_be_subset_eq, meet_operator, join_operator).

There are some ideas how to make 2 extra tupes. However I need help with their implementation. For examples, as follows:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{amssymb}

\usepackage{soul}
\setul{1pt}{0.5pt} %depth, thikness

\usepackage[normalem]{ulem}
\renewcommand{\ULthickness}{0.5pt}
\renewcommand{\ULdepth}{1pt}

\usepackage{accents}

\def\uSubsetOne{\mbox{\bfseries\b{$\Subset$}}}
\def\uSubsetTwo{\mbox{\ul{$\Subset$}}} %soul package
\def\uSubsetThree{\mbox{\uline{$\Subset$}}} %ulem pakcage
\newcommand{\uSubsetFour}[1]{\underline{#1\mkern-4mu}\mkern4mu } %\underline hacking 

the \underline hacking is from here

\def\uSubsetFive{\mathbf{\underaccent{\bar}{\Subset}}} %accent package

\begin{document}

1. In the First triple  $(\sqsubseteq,\sqcap,\sqcup)$ we need to increase the thickness.

2. Possible variants of $\Subset$ upgrading.

2.1. $(\uSubsetOne,\Cap,\Cup)$ --- the line should be at the right corner.

2.2. $(\uSubsetTwo,\Cap,\Cup)$ ---  the width of the line is too large, soul package. 

2.3. $(\uSubsetThree,\Cap,\Cup)$ ---  the width of the line is too large, ulem package.

2.4. $(\uSubsetFour{\Subset},\Cap,\Cup)$ --- lack of thickness, problems with depth and positioning, width is too large. 

2.5. $(\uSubsetFive,\Cap,\Cup)$ --- the line should be at the right corner, accents package.

\end{document}

The result of compilation: The result of compilation

Here are some useful links: to design a New Large Math Symbol

to design a New Arrow-like relation symbol - this variant is aslo applicable in case of implementing \multimapdot instead of an arrow in a triple (\sqsubseteq,\sqcap,\sqcup).

to design a New fuzzy logic symbol

to design a New Box-like symbol

Can anyone please help me?

4
  • 1
    The \stackinset macro of the stackengine package is very good at overlaying glyphs, if you need to tailor the appearance of your new operators. And insets can be nested. See tex.stackexchange.com/questions/139355/…, for example, or just do a search for \stackinset. Feb 19, 2014 at 12:06
  • @StevenB.Segletes Note: It's very nice that tabstackengine has found it's way to CTAN. :) Feb 19, 2014 at 12:10
  • @SvendTveskæg Thanks. I will be releasing an update soon to fix two of the bugs noted in the documentation. But I just wanted to get the package out the door, since I had been sitting on it so long. Feb 19, 2014 at 12:13
  • @StevenB.Segletes Thank you. The example works great. One of the best parameters are \stackunder[0.8pt]{$\Subset$}{\rule{1.4ex}{.3pt}}. Feb 19, 2014 at 15:26

3 Answers 3

4

Is this more what you are looking for? I have used the stackengine package for setting things vertically relative. The thicker square operators were created by laying two copies in close proximity (.2pt vertical and horizontal offset). The underlined subset placed a \rule under the \Subset.

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{amssymb}
\usepackage{stackengine}
\stackMath
\def\Sqsubseteq{\def\stacktype{L}\mathrel{\stackon[.2pt]{\sqsubseteq}{\kern.2pt\sqsubseteq}}}
\def\Sqcap{\def\stacktype{L}\mathrel{\stackon[.2pt]{\sqcap}{\kern.2pt\sqcap}}}
\def\Sqcup{\def\stacktype{L}\mathrel{\stackon[.2pt]{\sqcup}{\kern.2pt\sqcup}}}
\def\uSubset{\mathrel{\stackunder[1pt]{\Subset}{\rule{1.35ex}{.45pt}}}}
\begin{document}
1. In the First triple  $(\sqsubseteq,\sqcap,\sqcup)$ we need to increase the thickness.\par
1. Try $(\Sqsubseteq,\Sqcap,\Sqcup)$\par
2. Possible variants of $\Subset$ upgrading.\par
Try $(\uSubset,\Cap,\Cup)$ 
\end{document}

enter image description here

4
  • Is it possible to improve the situation with the code? I've got some errors just after its extention by the line \stackunder[0.8pt]{$\Subset$}{\rule{1.4ex}{.3pt}}, probably because of \stackMath. Feb 19, 2014 at 18:43
  • @VladimirParkhomenko Are you using stackengine for anything else in your document, or just this? One can omit the \stackMath if one is willing to enclose the \stackon arguments in $ delimiters. And what do you mean by "extention"? Further, this solution will not, without changes, translate to smaller sizes like \scriptstyle, if that is an issue. Feb 19, 2014 at 18:48
  • Yes. I've tried to add the commands \stackunder[0.8pt]{$\Subset$}{\rule{1.4ex}{.3pt}} and \stackengine{\Lstackgap}{A}{BC}{O}{r}{F}{\useanchorwidth}{L} after $(\uSubset,\Cap,\Cup)$. Commenting of \stackMath does not help. Feb 20, 2014 at 14:04
  • 1
    @VladimirParkhomenko If I take my MWE from above (with the \stackMath in place), and add these two lines before the end: \stackunder[0.8pt]{\Subset}{\rule{1.4ex}{.3pt}} and \stackengine{\Lstackgap}{A}{BC}{O}{r}{F}{\useanchorwidth}{L}, it compiles just fine. I had to remove the $ signs from what you had placed in your comment, since \stackMath will place those dollar signs there for you.. Feb 20, 2014 at 14:11
7

I'm fond of \ooalign, as everybody knows.

\documentclass{article}
\usepackage{amssymb,bm}
\newcommand{\Subseteq}{%
  \mathrel{%
    \vphantom{\subseteq}%
    \smash{\vcenter{\doSubseteq}}%
  }%
}
\newcommand{\doSubseteq}{%
  \hbox{\ooalign{%
    \noalign{\kern.5ex}
    $\Subset$\cr
    \noalign{\kern1.1ex}
    \smash{$-$}\cr
  }}%
}
\newcommand{\bsqsubseteq}{\bm{\sqsubseteq}}
\newcommand{\bsqcup}{\bm{\sqcup}}
\newcommand{\bsqcap}{\bm{\sqcap}}

\begin{document}

\fboxsep=0pt\fboxrule=0.1pt
\fbox{$\subseteq\Subseteq\subset\Subset$} % just to show the relative shapes

$(\subseteq,\cap,\cup)$

$(\Subseteq,\Cap,\Cup)$

$(\sqsubseteq,\sqcap,\sqcup)$

$(\bsqsubseteq,\bsqcap,\bsqcup)$

\end{document}

enter image description here

1
5

here's a possibility. admittedly, it will work only with computer modern and amsfonts, and i haven't tested it except at "normal" (text and display style) size.

output of example code

\documentclass{article}
\usepackage{amsmath,amssymb}

\newcommand{\Subseteq}{%
  \mathrel{%
    \lower.32ex\hbox{$
    \begin{matrix}
      \Subset\\[-1.78ex] \smash{-}
    \end{matrix}$}
  }}

\begin{document}

Compare: \quad $\subseteq \Subseteq$

Triple $\Subset$:\quad $\Subseteq,\Cap,\Cup$

\end{document}

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .