1

I have the following code:

\documentclass[13pt]{scrartcl}
\usepackage[english,main=russian]{babel}
\usepackage{amssymb, amsthm, thmtools}


\declaretheoremstyle[
  title=Доказательство,
  bodyfont=\normalfont,
  qed=\blacksquare
]{myproof}
\declaretheorem[style=myproof, numbered=no]{proof}

\begin{document}

\begin{proof}
    this is a simple proof
\end{proof}

\end{document}

enter image description here

This code is based on thmtools documentation. I can read produced errors, but I have no idea of syntax, which can fix them. Thanks in advance

EDIT

I have added these lines:

\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}

and now I only have 4 errors:

errors2

8
  • For my humble opinion it is a problem of font encoding for russian babel. – Sebastiano Feb 21 at 22:29
  • 1
    You didn't declazre any font encoding, so you're sopposed to use the default: OT1, which is OK only for english. – Bernard Feb 21 at 22:34
  • as the (first) error tells you proof is already defined. – Ulrike Fischer Feb 21 at 22:48
  • 1
    Is there any reason that you can't just use amsthm with two redefinitions: \renewcommand{\qedsymbol}{\blacksquare} and \renewcommand{\proofname}{Доказательство}? That should work without needing thmtools. – barbara beeton Feb 22 at 4:50
  • 1
    I only mean you should load the T2A font encoding. – Bernard Feb 22 at 17:36
2

thmtools doesn't like to redefine an existing theorem. I don't see anything in the docu about it (but didn't look very hard), but you could simply undefine proof first:

\documentclass[13pt]{scrartcl}
\usepackage[english,main=russian]{babel}
\usepackage{amssymb, amsthm, thmtools}


\declaretheoremstyle[
  title=Доказательство,
  bodyfont=\normalfont,
  qed=$\blacksquare$ %mathmode
]{myproof}

\let\proof\undefined
\declaretheorem[style=myproof, numbered=no]{proof}

\begin{document}

\begin{proof}
    this is a simple proof
\end{proof}

\end{document}

enter image description here

5
  • 1
    This certainly works. The downside is that the ability to use \qedhere is lost. Restoring it isn't trivial. Calling the new version instead Proof would allow use of both. – barbara beeton Feb 22 at 17:14
  • @barbarabeeton, thanks for mentioning. Where we may need to use the command \qedhere? – Allok Feb 22 at 17:17
  • @barbarabeeton \qedhere still works (but I have no idea if it works in all cases and in the same way) – Ulrike Fischer Feb 22 at 17:28
  • 1
    @Allok -- thmtools has apparently implemented \qedhere; I didn't think it had. As for where \qedhere is useful, it's intended to be used to move the tombstone up to the last line when a proof ends with a display equation, a list, or other element that isn't simply ordinary text. See the amsthm user guide for examples (texdoc amsthdoc). – barbara beeton Feb 22 at 17:58
  • thanks to all of you – Allok Feb 22 at 18:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.