# Missing } inserted. \end{proof}

I get a bunch of errors telling me:

line 417: Missing { inserted. \end{proof}
line 417: Missing } inserted. \end{proof}
line 426: Missing { inserted. \end{proof}
line 426: Missing } inserted. \end{proof}
line 439: Missing { inserted. \end{proof}
line 439: Missing } inserted. \end{proof}

Some of the sample source code are:

Line 417

\begin{proof}
\begin{equation*}
f'(x)=\lim_{h \to 0}\frac{c-c}{h}=0
\end{equation*}
\end{proof}


Line 426

\begin{proof}
pending
\end{proof}


Line 439

\begin{proof}
\begin{align*}
\frac{d}{dx}(cf)&=\lim_{h \to 0}\frac{cf(x+h)-cf(x)}{h} \\[0.2cm]
&= c\lim_{h \to 0}\frac{f(x+h)-f(x)}{h} \\[0.2cm]
&=c\frac{df}{dx}
\end{align*}
\end{proof}


I will put up my usepackages just in case:

\documentclass[11pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{makeidx}
\usepackage{graphicx}
\usepackage{amsthm}
\usepackage{ntheorem}
\usepackage{proof}

\theoremstyle{break}
\newtheorem*{theorem}{Theorem}

• Welcome to TSE. Please post a Minimal Working Example, instead of a code snippet. Commented Feb 12, 2022 at 2:51
• The definition of proof with which I'm familiar is from amsthm. In that case, it is assumed that \begin{proof} will be followed by text, not by a display. Making the assumption that the package you are using has the same restriction, you can get around it by inserting "phony" text, . After that, a display is acceptable. Commented Feb 12, 2022 at 3:14

Never disregard error messages and always look for the first one, which in your case is

! Package ntheorem Error: Theorem style plain already defined.

See the ntheorem package documentation for explanation.
Type  H <return>  for immediate help.


And the error is due to the fact that ntheorem and amsthm fight each other in redefining \newtheorem.

Remove ntheorem.

If you want a “break style” (which I dislike), you need to build it, because amsthm doesn't offer it out of the box. You can consult its documentation to find

\newtheoremstyle{break}
{}
{}
{\itshape}
{}
{\bfseries}
{}% Note that final punctuation is omitted.
{\newline}
{}


(empty arguments are generally substituted with the default (not the punctuation argument).

\documentclass[11pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{makeidx}
\usepackage{graphicx}
\usepackage{amsthm}
\usepackage{proof}

\newtheoremstyle{break}
{}
{}
{\itshape}
{}
{\bfseries}
{}% Note that final punctuation is omitted.
{\newline}
{}
\theoremstyle{break}

\newtheorem*{theorem}{Theorem}

\begin{document}

\begin{theorem}
Something neat here to state.
\end{theorem}

\begin{proof}
\begin{equation*}
f'(x)=\lim_{h \to 0}\frac{c-c}{h}=0 \qedhere
\end{equation*}
\end{proof}

\end{document}


I left \usepackage{proof}, but I don't think you want it, because it is for “logic proofs” and it has nothing to do with the proof environment.

Ok guys after a few trial and error experiments, the error is caused by a conflict between

\usepackage{ntheorem}

and

\usepackage{amsthm}

I originally included \usepackage{ntheorem} because I want a break after Theorem heading, which I failed to accomplish with AMSTHM's \newtheoremstyle.