[Tex/LaTex] thmtools declaration for theorem and proof.

formattingthmtools

I'm using thmtools to specify the theorem and proof environments. The problem that arises is that I want my theorems stated in italics and my proofs in non-italic. The following is my initial setup:

\documentclass{report}

\usepackage{amsfonts, amssymb, amsthm}
\usepackage{mathtools}
\usepackage{undertilde}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{hyperref}

\usepackage{thmtools}
\declaretheoremstyle[
    spaceabove=-6pt, 
    spacebelow=6pt, 
    headfont=\normalfont\bfseries, 
    bodyfont = \normalfont,
    postheadspace=1em, 
    qed=$\blacksquare$, 
    headpunct={:}]{mystyle} 
\declaretheorem[name={Proof}, style=mystyle, unnumbered]{Proof}

\declaretheoremstyle[
    spaceabove=6pt, 
    spacebelow=6pt, 
    headfont=\normalfont\bfseries,
    notefont=\mdseries\bfseries, 
    notebraces={(}{)}, 
    bodyfont=\normalfont\itshape,
    postheadspace=1em,
    headpunct={:}]{mystyle}
\declaretheorem[name={Theorem}, style=mystyle,numberwithin=section]{thm}

as with the bodyfont, I've declared the theorem statements to be italic. I have not done so for the proofs, nevertheless, both the theorem and proof are stated in italics.

Best Answer

You're declaring twice the style mystyle, once for Proof and second for Theorem. Only the last one is remmembered. You must change one of style names and apply the change is corresponding \declaretheorem definition.

\documentclass{report}

\usepackage{amsfonts, amssymb, amsthm}
\usepackage{mathtools}
\usepackage{undertilde}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{hyperref}

\usepackage{thmtools}
\declaretheoremstyle[
    spaceabove=-6pt, 
    spacebelow=6pt, 
    headfont=\normalfont\bfseries, 
    bodyfont = \normalfont,
    postheadspace=1em, 
    qed=$\blacksquare$, 
    headpunct={:}]{myproofstyle} %<---- change this name
\declaretheorem[name={Proof}, style=myproofstyle, unnumbered]{Proof}

\declaretheoremstyle[
    spaceabove=6pt, 
    spacebelow=6pt, 
    headfont=\normalfont\bfseries,
    notefont=\mdseries\bfseries, 
    notebraces={(}{)}, 
    bodyfont=\normalfont\itshape,
    postheadspace=1em,
    headpunct={:}]{mystyle}
\declaretheorem[name={Theorem}, style=mystyle,numberwithin=section]{thm}

\begin{document}

\begin{thm}
Body of my first theorem
\end{thm}

\begin{Proof}
This proves my first theorem
\end{Proof}

\end{document}

enter image description here