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.

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

6 Answers 6


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").


The symbol by itself: $\forkindep$

The symbol used with \verb|\underset|: $A \underset{C}{\forkindep} B$
  • 1
    @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
    Commented Jan 24, 2012 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
    Commented Jan 24, 2012 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$\hidewidth\cr\raise-0.9ex\hbox{$\smile$}}}} will allow you to get the desired result when \forkindep_C is used.
    – qubyte
    Commented Jan 24, 2012 at 5:32
  • @merryman: I merged your two accounts and converted your answer into a comment.
    – Stefan Kottwitz
    Commented Jan 24, 2012 at 6:43
  • 9
    No, \DeclareMathOperator is wrong here: this seems to be a relation symbol.
    – egreg
    Commented Jan 24, 2012 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



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

enter image description here


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

% ^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

enter image description here

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

  • 2
    ...it defines \forksnot... really?
    – Werner
    Commented Jan 24, 2012 at 15:27
  • @Werner: Seems to me
    – morbusg
    Commented Jan 24, 2012 at 15:55
  • 2
    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
    Commented Jan 24, 2012 at 17:02
  • 2
    @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
    Commented Jan 24, 2012 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\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.

  • 6
    Not what I would call good TeX programming.
    – egreg
    Commented Jan 24, 2012 at 18:33
  • 6
    Still, +1 for going to the source. Commented Jan 24, 2012 at 20:23
  • 1
    @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 :-) Commented Jan 24, 2012 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.


Perhaps it's not the most beautiful TeX code, but the following produces a beautiful nonforking symbol ($A \ind_C B$) and an even more beautiful placement of the slash in the forking symbol ($A \nind_C B$).

\def\Ind#1#2{#1\setbox0=\hbox{$#1x$}\kern\wd0\hbox to 0pt{\hss$#1\mid$\hss}
\lower.9\ht0\hbox to 0pt{\hss$#1\smile$\hss}\kern\wd0}


\hbox to 0pt{\mathchardef\nn=12854\hss$#1\nn$\kern1.4\wd0\hss}
\hbox to 0pt{\hss$#1\mid$\hss}\lower.9\ht0 \hbox to 0pt{\hss$#1\smile$\hss}\kern\wd0}


enter image description hereenter image description here

This was passed along to me by Greg Cousins, who got it from Martin Bays, who got it from Rahim Moosa, and you'd have to ask Rahim about the original source.


You must log in to answer this question.

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