使这个推理规则更具可读性

使这个推理规则更具可读性

以下代码产生如下结果:

在此处输入图片描述

\usepackage{proof}

\infer[(\implies I)]
{
 (q \land r \land ¬s ) \implies ( u \lor r )
}
{
 \infer[(\lor I r)]
 {
  \\u \lor r
 }
 {
  \infer[(\land E_{2} r)]
  {
   r
  }
  {
   q \land r
  }
 }
}

请帮助我使其更具可读性,这样行就不会分组太多,并且行与行之间的偏移量更大。像这样:

在此处输入图片描述

或者上面两行更长,就像下面那行一样。谢谢。

答案1

可以进行两项调整:

(1)垂直线分离,

(2)水平标签空间。

b

% !TeX TS-program = pdflatex

\documentclass[12pt,a4paper]{article}

\usepackage{amsmath}
\usepackage{proof}

\begin{document}
\noindent Original setup \\ 
    
\infer[(\implies I)]
{
    (q \land r \land ¬s ) \implies ( u \lor r )
}
{
    \infer[(\lor I r)]
    {
        \\u \lor r
    }
    {
        \infer[(\land E_{2} r)]
        {
            r
        }
        {
            q \land r
        }
    }
}       
\vspace*{50pt}  
\noindent Increase the line separation \\
        
\setlength{\inferLineSkip}{6pt}  % increase the lines skip added <<<<<<

\infer[(\implies I)]
{
    (q \land r \land ¬s ) \implies ( u \lor r )
}
{
    \infer[(\lor I r)]
    {
        \\u \lor r
    }
    {
        \infer[(\land E_{2} r)]
        {
            r
        }
        {
            q \land r
        }
    }
}   

\vspace*{50pt}

\noindent And also  increase the labels separation \\

\setlength{\inferLabelSkip}{20pt} % <<<<<<< added

\infer[(\implies I)]
{
    (q \land r \land ¬s ) \quad \implies \quad ( u \lor r ) %changed <<<<<<<<<<<<
}
{
    \infer[(\lor I r)]
    {
        \\u \lor r
    }
    {
        \infer[(\land E_{2} r)]
        {
            r
        }
        {
            q \land r
        }
    }
}   


    
\end{document

答案2

bussproofs

\documentclass{article}
\usepackage{bussproofs}

\begin{document}

\begin{prooftree}
\AxiomC{$q\land r\mathstrut$}     \RightLabel{$(\land E_2r)$}
\UnaryInfC{$rr\mathstrut$}        \RightLabel{$(\lor Ir)$}
\UnaryInfC{$u\lor r\mathstrut$}   \RightLabel{($\Rightarrow I$)}
\UnaryInfC{$(q\land r\land \lnot s)\Rightarrow(u\lor r)$}
\end{prooftree}

\end{document}

在此处输入图片描述

相关内容