Compiling the following code
\documentclass{svmono}%%% v 5.5
\smartqed
\usepackage{amsmath}
%%% Loading lots of other packages here, marginfix among them.
\begin{document}
\begin{example}[Some example]
\begin{align*}
x & =f(y)\\
z & =
\begin{cases}
a,&\text{if}\ \varphi,\\
b,&\text{otherwise}
\end{cases}
\end{align*}
\par\vspace{-1.7\baselineskip}\qed%%%% Way too hardcoded, and not the best vertical alignment.
\end{example}
Text after the example.
\end{document}
with pdflatex leads to
As we see, the placement of the qed symbol is not ideal and subject to changing when someone (say, editor) decides to change the vertical gaps of the align* or cases environements but forgets to update the qed placement. Is there, perhaps, a more automatic way which would place the qed symbol exactly on the last line of an align* ending with cases?
As opposed to Pushing \qed to the right within a displayed formula and amsthm's \qedhere in a proof ending in a displayed cases array:
Loading amsthm or ntheorem is excluded in this question by definition (Loading them in a full, non-minimal example of mine produces unwanted effects with some other packages. Moreover, SVmono provides its own theorem classes that are to be used according to Springer's Reference Guide. Last but not least, ntheorem is broken in certain ways and seems to be not maintained any more.);
Plainly copying-and-pasting the code of amsthm doesn't right-flush the qed symbol completely.
The svmono class and its manual are available from Springer's website.


