我想定义一个证明树函数,使用mathpartir
布局校样。例如:
不过,我希望函数括号能够紧密贴合推理规则。
我正在使用\mbox
,但似乎不起作用;我尝试了\fbox
看看\setlength\fboxsep{0pt}
有任何影响,但是它没有出现(而且我也不想要可见的边框)。
我可以通过以下方式获得更好的结果\makebox
:
但这涉及必须为函数的每种情况手动设置大小。
第二个限制(我的两张图片都没有说明)是证明树论证应该是垂直居中在括号内。
这是我的代码:
\documentclass{article}
\usepackage{amsmath}
\usepackage{mathpartir}
\begin{document}
\begin{align*}
f\left(
\mbox{
\begin{mathpar}
\inferrule*
{
T \\
U
}
{
\rho, (e_1, e_2) \Rightarrow v
}
\end{mathpar}
}
\right)
&=
(f(T), f(U))
\\
f\left(
\makebox[0.9in]{
\begin{mathpar}
\inferrule*
{
T \\
U
}
{
\rho, (e_1, e_2) \Rightarrow v
}
\end{mathpar}
}
\right)
&=
(f(T), f(U))
\end{align*}
\end{document}
答案1
解决方案 1。
为什么不直接\frac
在括号中使用?它似乎具有您想要实现的布局。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation*}
f\left(\frac{T\qquad U}{\rho,(e_1,e_2)\Rightarrow v}\right) = (f(T),f(U))
\end{equation*}
\end{document}
解决方案 2。
如果你愿意手动调整长度,你可以尝试
\documentclass{article}
\usepackage{amsmath,mathpartir}
\begin{document}
\begin{equation*}
f\left(\raisebox{-0.25cm}{\makebox[0.9in]{
\begin{mathpar}
\inferrule*
{
T \\
U
}
{
\rho, (e_1, e_2) \Rightarrow v
}
\end{mathpar}}}
\right)
\end{equation*}
\end{document}