Define \rightarrowtriangle
in such a way it's understood by breqn
; then add a level of bracing and tell breqn
to break only at level 0. I used \mid
, perhaps you prefer \vert
for the vertical bar.
\documentclass{report}
\usepackage{amssymb,amsmath}
\usepackage{breqn}
\usepackage{stmaryrd}
\makeatletter
\ExplSyntaxOn
\cs_gset:cpx{mg@stmry}{\hexnumber@\symstmry}%
\DeclareFlexSymbol{\rightarrowtriangle}{Rel}{stmry}{5F}
\makeatother
\ExplSyntaxOff
\begin{document}
\begin{dmath}[breakdepth=0]
\left.
A[A, k_a](M(\Box_0)) \mid I[k_a, d_k] \mid R(K[K, d_k, x])
\right.
\rightarrowtriangle
\left.
A[A,k_a](M(\Box_0 \mid T[k_t])) \mid I[k_a,d_k] \mid I[k_t, d_k] \mid R(K[K,d_k,x])
\right.
\end{dmath}
\end{document}

Actually there should be a stmaryrd.sym
file for turning the definitions of stmaryrd.sty
into something good for breqn
. There isn't, at the moment.
Such an example confirm my opinion that it's a bad idea trying to automatize line breaks in equations.
The breqn
package doesn't like |
; one should use \vert
, \lvert
, \rvert
or \mid
, depending on the mathematical meaning of the bar. In this case one should use \mid
; well, if one does it and makes the proper definition for \rightarrowtriangle
, the result is as follows:

This is clearly unacceptable. If one uses \vert
, no break can be taken. This works "automatically":
\documentclass{report}
\usepackage{amssymb}
\usepackage{breqn}
\usepackage{stmaryrd}
\makeatletter
\ExplSyntaxOn
\cs_gset:cpx{mg@stmry}{\hexnumber@\symstmry}%
\DeclareFlexSymbol{\rightarrowtriangle}{Rel}{stmry}{5F}
\makeatother
\ExplSyntaxOff
% breqn doesn't like |
\newcommand{\OR}{\hiderel{\mid}}
\begin{document}
\begin{dmath}
A[A, k_a](M(\Box_0)) \OR I[k_a, d_k] \OR R(K[K, d_k, x])
\rightarrowtriangle
A[A,k_a](M(\Box_0 \OR T[k_t])) \OR I[k_a,d_k] \OR I[k_t, d_k] \OR R(K[K,d_k,x])
\end{dmath}
\end{document}
and produces

I'm asking myself where's the advantage over writing
\begin{equation}
\begin{aligned}
& A[A, k_a](M(\Box_0)) \mid I[k_a, d_k] \mid R(K[K, d_k, x]) \\
& \quad {} \rightarrowtriangle
A[A,k_a](M(\Box_0 \mid T[k_t])) \mid I[k_a,d_k] \mid I[k_t, d_k] \mid R(K[K,d_k,x])
\end{aligned}
\end{equation}
that produces essentially the same result.
\documentclass{...}
and ending with\end{document}
.stmaryrd
package.breqn
(see the manual) to get automatic line breaking, it doesn't change the behaviour of existing environments such asequation
. Please add a minimal example, as suggested by Kevin.