6

I am trying to reproduce some very old articles for use in an anthology. Some of these articles present certain rules of inference as proofs in sequent calculus, but number them along with equations, using the same numbering style as equations. Normally, I use bussproofs for this kind of proof environment, but bussproofs only allows numbering right next to the inference line in the proof tree. If bussproofs were usable inside an equation environment, what I'm looking for would be something like this:

\begin{equation*}\tag{I1}  
\begin{prooftree}  
\AxiomC{$A \land B$}  
\UnaryInfC{$A$}  
\end{prooftree}  
\end{equation*}

But, of course this errors out when I generate the PDF, since bussproofs proof trees can't be embedded in other environments in this way (or can they, and I just don't know some trick?). Any suggestion as to how I might be able to get the result I'm looking for?

3
  • Welcome to TeX.SX! If you have code blocks in your post, by indenting it with 4 spaces (or using the curly brace button in the edit window) highlights it as such.
    – Count Zero
    May 31, 2012 at 16:20
  • Since the documentation of bussproofs is, to say the least, scanty and the URL shown in it is not valid, would you please show a complete example with numbering?
    – egreg
    May 31, 2012 at 16:38
  • I'm afraid I don't quite understand what you're asking me to show. What I'm trying to achieve is to have a single number that would apply to the entire proof tree; in the above example, the number that would be provided by \tag{I1}. May 31, 2012 at 17:09

1 Answer 1

6

Here's a new environment that you should be able to use quite safely in math alignment environments:

\documentclass{article}
\usepackage{amsmath,varwidth,bussproofs}
\usepackage{lipsum} % mock text, just for testing

\newenvironment{mathprooftree}
  {\varwidth{.9\textwidth}\centering\leavevmode}
  {\DisplayProof\endvarwidth}

\begin{document}
\lipsum*[2]
\begin{equation}\tag{I1}
\begin{mathprooftree}
\AxiomC{$A \land B$}
\UnaryInfC{$A$}
\end{mathprooftree}
\end{equation}
\lipsum[2]
\end{document}

enter image description here

We simply do what bussproofs does, except for the vertical space (that's already taken care of by equation or similar environment), enclosing the result in a varwidth environment which will use only the minimum horizontal size to keep the proof tree (as a maximum I set 90% of the text width, to always have space for the number or tag).

Note that you can use equation without * if you specify a \tag (which is a handy feature).

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.