1
$\begingroup$

What is the best way to typeset a proof on cstheory using MathML?

I have seen the trick using \over but it does not work well if the proof is several lines long and each rule has a name like:

$$ {{X \over Y}{A} \over Z}{B} $$

| |
$\endgroup$
  • 2
    $\begingroup$ I'm not sure I understand the question. Aren't we typesetting latex in cstheory all the time ? $\endgroup$ – Suresh Venkat May 31 '11 at 0:46
  • 2
    $\begingroup$ @Suresh, I mean a formal proof tree like the example I gave. In LaTeX we can use packages (I use Paul Taylor and Sam Buss's packages), but I don't think that would work with MathML. $\endgroup$ – Kaveh Jun 1 '11 at 0:04
1
$\begingroup$

Using core latex – I just discovered that you can define new commands –, I'd write

\newcommand{\infer}[3]{\begin{array}{c} #1 \\ \hline #2 \end{array}{#3}}
\infer{
    \infer{\quad X\quad}{Y}{A}}
  {Z}{B}

which gives

$\newcommand{\infer}[3]{\begin{array}{c} #1 \\ \hline #2 \end{array}{#3}} \infer{ \infer{\quad X\quad}{Y}{A}} {Z}{B} $

I still need to work out how to deal with the labels. \raisebox doesn't work.

If doing this in a paper, I'd use a package such as Remy's proof.

| |
$\endgroup$
  • $\begingroup$ I'm a bit confused by searching for mathpartir - what is it's connection to the \usepacakge{proof} that I am used to? $\endgroup$ – Rob Simmons May 31 '11 at 8:15
  • $\begingroup$ It seems to be a companion package. I'll fix my answer. $\endgroup$ – Dave Clarke May 31 '11 at 8:24
  • 1
    $\begingroup$ Thanks Dave, but it doesn't render much better than mine. A should be above B and the lines should have similar lengths. I will try to take a look at Neel's posts to see if he has a better way. $\endgroup$ – Kaveh Jun 1 '11 at 0:06
  • $\begingroup$ @Kaveh: If you give a good specification of what you want, we can match it. I thought you wanted to avoid the small-sized X and Y. I've proposed a fix, though it isn't very good yet. $\endgroup$ – Dave Clarke Jun 1 '11 at 5:31
  • $\begingroup$ The ideal would be something like what one gets from Paul Taylor or Sam Buss's packages for proof trees but I guess that is probably not possible on cstheory. If you can make A and B appear at the same location with respect to their rules and make the lines of the same length without too much code that would be great. $\endgroup$ – Kaveh Jun 2 '11 at 2:21

You must log in to answer this question.

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