
답변1
Prooftree를 사용하여 이 중 일부를 수행하는 것이 이미 가능하지만 버그로 인해 아직 게시된 버전에서는 줄 번호 매기기를 6부터 시작할 수 없습니다.
주의 깊게 살펴보면 다음 split here
과 같은 스타일을 사용할 수 있습니다.내 다른 대답그리고 기반으로Sašo Živanović의 코드prooftrees
prooftree
설명이나 페이지 나누기 또는 그 사이에 무엇이든 삽입하여 한 번 분할합니다 .
참고: 이것은 깨질 것입니다. 어디인지는 모르겠지만 깨질 것이라는 데에는 의심의 여지가 없습니다. 다른 증거는 말할 것도 없고 이 증거에 대해서는 거의 테스트되지 않았습니다.
실제로 저는 prooftrees
이것을 가지고 놀면서 2개의 기존 버그를 발견했습니다.없이증거를 여러 조각으로 나누는 것입니다. (이 문제는 Forest의 다음 버전이 CTAN으로 푸시된 직후 수정될 예정입니다.)
주의사항
예를 들어:
\documentclass{article}
\usepackage{prooftrees,amssymb}
% Sašo Živanović: https://tex.stackexchange.com/a/296771/
\def\hiddenparcommand{\par}
\forestset{%
declare count register={split here level},
declare toks register={split here interject},
split here level'=-1,
split here interject={},
to widest/.style={
tikz+={\path (\forestregister{tempdima}, \forestoption{y}) -- (\forestregister{tempdimb}, \forestoption{y});},
},
split here/.style={%
split here level'/.option=level,
split here interject={#1},
split tree
},
split tree/.code={%
\forestset{%
draw tree stage/.style={
for root'={
tempdima/.min={x()+min_x()}{tree},
tempdimb/.max={x()+max_x()}{tree},
for tree={%
to widest,
},
},
for nodewalk/.wrap pgfmath arg={{draw tree processing order/.style={level<=####1}}{}}{split_here_level},
for root'={draw tree},
TeX/.wrap pgfmath arg={\bigskip\hiddenparcommand ####1\hiddenparcommand}{split_here_interject},
for nodewalk/.wrap pgfmath arg={{draw tree processing order/.style={level>=####1}}{}}{(split_here_level)+1},
for root'={draw tree},
},
}
}
}
\begin{document}
\begin{prooftree}
{
line no shift=5,
just refs right,
}
[Fa, name=fa
[{\lnot((Fa \land \forall y (Fy \supset y=a))} \land Ga), checked
[{\lnot(Fa \land \forall y (Fy \supset y=a))}, checked, split here={So far, so automatic. The right hand branch closes, for we have}
[\lnot Fa, just={from:!u}, close={:!uuu,!c}
]
[{\lnot \forall y (Fy \supset y=a)}, checked
[{\exists y \lnot (Fy \supset y=a)}, just={from:!u}, checked=b
[{\lnot (Fb \supset b=a)}, just={from:!u}
]
]
]
]
[\lnot Ga
[Fa \supset Ga, just=from 3
[\lnot Fa, close={:fa,!c}]
[Ga, close={:!uu,!c}]
]
]
]
]
\end{prooftree}
\end{document}