![中心证明目标和证明树下方的“QED”](https://linux22.com/image/444541/%E4%B8%AD%E5%BF%83%E8%AF%81%E6%98%8E%E7%9B%AE%E6%A0%87%E5%92%8C%E8%AF%81%E6%98%8E%E6%A0%91%E4%B8%8B%E6%96%B9%E7%9A%84%E2%80%9CQED%E2%80%9D.png)
我正在使用 Clea F. Rees 的prooftrees
软件包在 LaTeX 中排版 tableau 校样。一切运行正常,但有两个问题我不知道如何处理。首先,您可以在 tableau 的序言中指定的“to prove”行是左对齐的,而不是居中的。其次。我还没有找到一种方法将“qed”居中放置在 tableau 的最后一行下方;它总是错位的。
它看起来应该是这样的:
目前的情况是:
这是我的 MWE:
\documentclass[leqno,hyperref={pdfpagemode=FullScreen},aspectratio=169]{beamer}
%%% Font %%%
\usepackage[math-style=upright]{unicode-math} % Mathe-Font gerade
\setmathfont{latinmodern-math.otf} % Latin Modern Math Font
\usepackage{amssymb}
\usepackage[greek, main=ngerman, germanb]{babel}
\usepackage{bussproofs} % für Gentzen-Bäume
\usepackage{tikz} % für Diagramme
\usepackage{forest} % nötig für prooftrees
\usepackage{prooftrees} % für Tableaux
%%%%% Definition der Standardpräambel für Tableaux %%%%%
\forestset{% Hiermit legen wir den Font im Tableaux fest: sans serif ohne italics!
mathsf content/.style={content
format={\noexpand\ensuremath{\noexpand\mathsf{\forestoption{content}}}}}}
\forestset{
default preamble=
{% Beginn der Standardpräambel
line no sep=5mm, % Abstand Baum - Nummerierung
single branches=true, % auch vertikale Striche werden angezeigt
for tree={mathsf content, s sep'=10mm}, % Wie weit gehen die Striche zur Seite?
close with={$\bigtimes$} % Mit Kreuz schließen
}, %Ende der Standardpräambel
}
%%% Nummerierung der Tableaux in Klammern %%%
\renewcommand*\linenumberstyle[1]{(#1)}
\newcommand*{\til}{\ensuremath{\mathbin{{\sim}}}} % Tilde
\usepackage{turnstile}
\usepackage{adjustbox}
\begin{document}
\begin{frame}{Exercixe 9 -- Solution}
\centerline{zz: $\sststile {PL}{} \forall x Fx \to \exists x Fx$}
\smallskip
\begin{adjustbox}{max totalsize={.9\textwidth}{.7\textheight},center}
\begin{tableau}
{
to prove={\text{zz: }\sststile {PL}{} \forall x Fx \to \exists x Fx}
}
[\til (\forall x Fx \to \exists x Fx), just=reductio-Hypothese
[\forall x Fx, just=(1) ($\til \text{,}\to$)
[\til \exists x Fx, just=(1) ($\til \text{,}\to$) % Komma muss als Text ausgegeben werden, weil prooftree sonst denkt, es käme ein weiteres Argument!
[\forall x \til Fx, just=(3) DT
[Fa, just=(2) \text{US: a/x}
[\til Fa, just=(4) \text{US: a/x}, , close={(5),(6)}
]
]
]
]
]
]
\end{tableau}
\end{adjustbox}
\centerline{\textit{q. e. d.}}
\end{frame}
\end{document}
我是 LaTeX 新手。有谁愿意帮忙吗?
答案1
我认为最简单的方法是tikz
在绘制完表格后使用 添加节点。但是,幻灯片上似乎没有空间。我通过删除要证明的语句的重复来腾出空间,但您显然可能更喜欢使用其他方法来腾出空间(例如减少行距或减小字体大小或使用plain
或其他方法)。
\documentclass[leqno,hyperref={pdfpagemode=FullScreen},aspectratio=169]{beamer}
%%% Font %%%
\usepackage[math-style=upright]{unicode-math} % Mathe-Font gerade
\setmathfont{latinmodern-math.otf} % Latin Modern Math Font
\usepackage{amssymb}
\usepackage[greek, main=ngerman, germanb]{babel}
\usepackage{bussproofs} % für Gentzen-Bäume
\usepackage{prooftrees} % für Tableaux
%%%%% Definition der Standardpräambel für Tableaux %%%%%
\forestset{% Hiermit legen wir den Font im Tableaux fest: sans serif ohne italics!
mathsf content/.style={content
format={\noexpand\ensuremath{\noexpand\mathsf{\forestoption{content}}}}}}
\forestset{
default preamble=
{% Beginn der Standardpräambel
line no sep'=5mm, % Abstand Baum - Nummerierung
single branches=true, % auch vertikale Striche werden angezeigt
for tree={mathsf content, s sep'=10mm}, % Wie weit gehen die Striche zur Seite?
close with={$\bigtimes$} % Mit Kreuz schließen
}, %Ende der Standardpräambel
}
%%% Nummerierung der Tableaux in Klammern %%%
\renewcommand*\linenumberstyle[1]{(#1)}
\newcommand*{\til}{\ensuremath{\mathbin{{\sim}}}} % Tilde
\usepackage{turnstile}
\begin{document}
\begin{frame}{Exercixe 9 -- Solution}
\centering
% \centerline{zz: $\sststile {PL}{} \forall x Fx \to \exists x Fx$}
% \smallskip\par
\begin{tableau}
{
to prove={\text{zz: }\sststile {PL}{} \forall x Fx \to \exists x Fx}
}
[\til (\forall x Fx \to \exists x Fx), just=reductio-Hypothese
[\forall x Fx, just=(1) ($\til \text{,}\to$)
[\til \exists x Fx, just=(1) ($\til \text{,}\to$) % Komma muss als Text ausgegeben werden, weil prooftree sonst denkt, es käme ein weiteres Argument!
[\forall x \til Fx, just=(3) DT
[Fa, just=(2) \text{US: a/x}
[\til Fa, just=(4) \text{US: a/x}, , close={(5),(6)}, name=qedhere, tikz+={\node [anchor=base] at ([yshift=-.5\baselineskip]current bounding box.south -| qedhere.center) {q.\ e.\ d.};}
]
]
]
]
]
]
\end{tableau}
\end{frame}
\end{document}