表格中 Fitch 风格环境的垂直对齐

表格中 Fitch 风格环境的垂直对齐

我正在尝试在表格中垂直对齐 Fitch 样式的环境。我使用的包是惠誉代码如下塞林格·惠誉。这是我的代码:

\documentclass{article}

\usepackage{amsmath}
\usepackage{fitch}
\newcommand{\bsub}[2]{\boxed{#1}~{#2}}

\begin{document}

\newcommand{\peanoInduct}{
    \begin{nd}
        \have[~]{}{P(0)}
        \open
        \hypo[~]{}{\bsub{n}{P(n)}}
        \have[~]{}{P(s(n))}
        \close
        \have[\triangleright]{}{\forall x: P(x)} \by{PI}{}
    \end{nd}
}

\newcommand{\strongInduct}{
    \begin{nd}
        \open
        \hypo[~]{}{\bsub{n}{\forall x: x < n \rightarrow P(x)}}
        \have[~]{}{P(n)}
        \close
        \have[\triangleright]{}{\forall x: P(x)} \by{SI}{}
    \end{nd}
}

\begin{tabular}{ll}
    Peano Induction (PI) & Strong Induction (SI) \\
    $ \peanoInduct $ & $ \strongInduct $
\end{tabular}

\end{document}

其结果是

在此处输入图片描述

我想让两个 Fitch 环境都与每个单元格的顶部对齐。这个问题的系统解决方案是什么?我尝试将选项makecell应用于[t]每个单元格,但徒劳无功。似乎惠誉系统正在内部使用array。不使用表的方法是可以的。

编辑:

我找到了一个解决方案。我在里面[t]向环境添加了选项array\def惠誉

\def\nd*beginb{\begingroup\nd*reset\gdef\nd*stack{\nd*nil}\nd*push\nd*stack{\nd*t}%
  \begin{array}{l@{\hspace{\nd*labelsep}}l@{\hspace{\nd*justsep}}l}}
\def\nd*resumeb{\begingroup\begin{array}{l@{\hspace{\nd*labelsep}}l@{\hspace{\nd*justsep}}l}}
\def\nd*endb{\end{array}\endgroup}

\def\nd*beginb{\begingroup\nd*reset\gdef\nd*stack{\nd*nil}\nd*push\nd*stack{\nd*t}%
  \begin{array}[t]{l@{\hspace{\nd*labelsep}}l@{\hspace{\nd*justsep}}l}}
\def\nd*resumeb{\begingroup\begin{array}{l@{\hspace{\nd*labelsep}}l@{\hspace{\nd*justsep}}l}}
\def\nd*endb{\end{array}\endgroup}

我如何编辑样式文件以使此选项附加到环境中nd,以便我可以为每种情况选择对齐方式?例如,

\begin{nd}[t]
    contents
\end{nd}

相关内容