答案1
我建议标记各个部分。我使用\wff
(格式正确的公式)来标记主线和\why
理由。选择您自己喜欢的名称。
\documentclass{article}
\usepackage{amsmath}
\newcommand{\wff}[1]{& (#1) \\}
\newcommand{\why}[1]{\equiv{}&\quad\langle\;\text{#1}\;\rangle \\}
\begin{document}
\begin{align*}
\wff{\phi \land \psi}
\why{Ax11}
\wff{\phi \equiv (\psi \equiv (\phi \lor \psi))}
\why{conmutatividad de $\lor$}
\wff{\phi \equiv \psi \equiv (\psi \lor \phi))}
\end{align*}
\end{document}
按“行号”采用不同的方法:奇数行按\wff
前面的代码处理,偶数行按 处理\why
。
\documentclass{article}
\usepackage{amsmath}
\ExplSyntaxOn
\NewDocumentEnvironment{derivation}{b}
{
\davidgomez_derivation:n { #1 }
}
{\ignorespacesafterend}
\seq_new:N \l__davidgomez_derivation_in_seq
\seq_new:N \l__davidgomez_derivation_out_seq
\cs_new_protected:Nn \davidgomez_derivation:n
{
\seq_set_split:Nnn \l__davidgomez_derivation_in_seq { \\ } { #1 }
\seq_clear:N \l__davidgomez_derivation_out_seq
\seq_indexed_map_inline:Nn \l__davidgomez_derivation_in_seq
{
\int_if_odd:nTF { ##1 }
{
\seq_put_right:Nn \l__davidgomez_derivation_out_seq { & (##2) }
}
{
\seq_put_right:Nn \l__davidgomez_derivation_out_seq { \equiv & \quad\langle\;\text{##2}\;\rangle }
}
}
\begin{align*}
\seq_use:Nn \l__davidgomez_derivation_out_seq { \\ }
\end{align*}
}
\ExplSyntaxOff
\begin{document}
\begin{derivation}
\phi \land \psi \\
Ax11 \\
\phi \equiv (\psi \equiv (\phi \lor \psi)) \\
conmutatividad de $\lor$ \\
\phi \equiv \psi \equiv (\psi \lor \phi))
\end{derivation}
\end{document}
答案2
只需使用启用左对齐的环境并\llap{$\equiv$}\quad
在偶数行使用即可。例如,在 Plain TeX 中:
\def\lequiv{\llap{$\equiv$}\quad}
$$
\eqalign{
& (\phi\wedge\psi) \cr
& \lequiv \langle\ {\it Ax}11\ \rangle \cr
& (\phi \equiv (\psi \equiv (\phi \vee \psi))) \cr
& \lequiv \langle\ \hbox{conmutativiad de $\vee$}\ \rangle \cr
& (\phi \equiv (\psi \equiv (\psi \vee \phi)) \cr
}
$$
\bye