# What is the LaTeX symbol for “forking independent” (model theory)?

I am looking for a way to set the symbol for "forking independent" (for example, see "Essential Stability Theory", Steven Buechler, p.217). It looks a bit like an anchor or an upside-down 'T' with a curved bar.

-
Depending on your accent, I imagine that 'forking independent' can sometimes sound quite different than its intended meaning :) –  cmhughes Jan 24 '12 at 20:52

I don't think this symbol exists in any of the typical packages, so it looks like you'll have to roll your own. You can combine the \smile symbol from the amssymb package with a \vert line for this. Here's one way to do it, based on Overlay symbol with another and \subseteq + \circ as a single symbol ("open subset").

\documentclass{article}
\usepackage{amsmath,amssymb}
\def\forkindep{\mathrel{\raise0.2ex\hbox{\ooalign{\hidewidth$\vert$\hidewidth\cr\raise-0.9ex\hbox{$\smile$}}}}}

\begin{document}
The symbol by itself: $\forkindep$

The symbol used with \verb|\underset|: $A \underset{C}{\forkindep} B$
\end{document}

-
@Werner: Don't assume that I haven't tried to find the symbol in the Comprehensive LaTeX Symbol List and Detexify couldn't figure out my doodles either. I am not saying that I haven't missed something but I definitely tried to look it up. Jake: Thank you so much! That will work for me. I would accept your answer but I lost my cookie. Sorry. edit: converted to comment –  merryman Jan 24 '12 at 5:09
You can register your account, and a moderator will merge that account with these unregistered ones, so you'll regain ownership of the question. –  Jake Jan 24 '12 at 5:16
An improvement would be to use the starred version of DeclareMathOp, which undersets subscripts automatically, i.e. \DeclareMathOperator*{\forkindep}{\raise0.2ex\hbox{\ooalign{\hidewidth$\vert$\h‌​idewidth\cr\raise-0.9ex\hbox{$\smile$}}}} will allow you to get the desired result when \forkindep_C is used. –  qubyte Jan 24 '12 at 5:32
@MarkS.Everitt: Good suggestion, thanks! –  Jake Jan 24 '12 at 5:46
No, \DeclareMathOperator is wrong here: this seems to be a relation symbol. –  egreg Jan 24 '12 at 7:33

A variation, using \oalign instead of \ooalign; the spacing will be right only if the symbol is treated as a binary relation

\documentclass[a4paper]{article}
\newcommand{\forkindep}[1][]{%
\mathrel{
\mathop{
\vcenter{
\hbox{\oalign{\noalign{\kern-.3ex}\hfil$\vert$\hfil\cr
\noalign{\kern-.7ex}
$\smile$\cr\noalign{\kern-.3ex}}}
}
}\displaylimits_{#1}
}
}

\begin{document}
$A\forkindep[C]B$
$A\forkindep[C]B$
\end{document}


This will typeset the (optional) argument as a subscript in text style and below the symbol in display style.

-

Unicode has that symbol at 0x2ADD, so you could do with XeTeX something like:

\XeTeXmathchardef\nonforking"3"2"2ADD
% ^take from symbol family ("2), and define as relation ("3)
$A \nonforking_C B$
$\displaystyle A \mathop{\nonforking}_C B$ % note: changed from rel to op


This would of course need the appropriate fonts and such loaded (with unicode-math for example, it is already defined as \forksnot)

-
...it defines \forksnot... really? –  Werner Jan 24 '12 at 15:27
@Werner: Seems to me –  morbusg Jan 24 '12 at 15:55
My comment was more tongue-in-cheek, since it resembles \forksnot ~ fork-snot rather than forks-not, which might just as well have been written \notforks. Perhaps I should retrieve my mind from the gutter. –  Werner Jan 24 '12 at 17:02
@Werner: hehe, there seemed to be something off with the command name, but I couldn't quite put my finger on it. Uhh.. “put my finger on a forkful of snot” sounds so wrong –  morbusg Jan 24 '12 at 17:37

Thanks to the arXiv, one can find out what Buechler himself has used (and other model theorists in the area). Downloading the source of this paper and looking in its preamble, one finds:

\def\dnfo{\;\raise.2em\hbox{$\mathrel|\kern-.9em\lower.4em\hbox{$\smile$}$}}

\def\dnf#1{\lower.9em\hbox{$\buildrel\dnfo\over{ \scriptstyle #1}$}}

\def\indep#1#2#3{\hbox{\mathsurround=0pt$#1 \ \dnf{#2} \ #3$}}


(among several related definitions). Then \indep{A}{C}{B} produces your example.

-
Not what I would call good TeX programming. –  egreg Jan 24 '12 at 18:33
Still, +1 for going to the source. –  Ilmari Karonen Jan 24 '12 at 20:23
@egreg: agreed — I considered adding a disclaimer along the lines of “…but the definitions suggested in other answers are rather nicer”, but then decided that was sufficiently self-evident :-) –  Peter LeFanu Lumsdaine Jan 24 '12 at 22:05
Including the package \usepackage{MnSymbol} you can also use \downfree (or \ndownfree respectively if you want to talk about dependent sets) for the desired symbol.