Labeled linear program with labeled equations and wide objective function

I've taken some liberties in interpreting what you're trying to accomplish here. For example, I assume that you will manually create the tag names for the LP blocks. Also, I think my solution lacks a certain elegance: in particular, each such block has to be created separately. I don't really like that.

Here's the general idea: create two adjacent boxes centered on the baseline with one containing a dummy equation to create the label for the entire block. Spacing after the boxes is a bit wonky. So, I add ~ after the last flalign environment. (Short coming: you also have to manually adjust the width of the first parbox to get the label to be positioned correctly.)

You seemed to want the first line to somehow align with the LP. I've got two solutions to that. The first puts the first line into a box of zero width. (Short coming: you have to re-enter math mode within this box.) The second puts this first line in its own flalign environment. (Short coming: you have to adjust the vertical spacing between the two environments.)

\documentclass{article}
\usepackage{amsmath,calc}
\newlength{\LPlhbox}
\begin{document}


\settowidth{\LPlhbox}{(P.1)}%
\noindent%
\parbox{\LPlhbox}{\begin{align}
               \tag{P.1}\label{My first LP Block}
               \end{align}}%
\hspace*{\fill}%
\begin{minipage}{\linewidth-2cm}
    \begin{flalign}\notag
     & \makebox[0pt][l]{$\displaystyle{}\max \sum\limits_{v \in V} x_v + \sum\limits_{e \in E} y_e + 10000\gamma$} \\
    \label{this line can be referenced}
     & \text{s.t.} & x_v + x_w   & \geq  0                 && \forall \{v,w\} \in E && \\
     &             & y_3         & \geq 0                  && \forall e\in E        && \\
     &             & (\delta(U)) & \geq \frac{1}{2}(|U|-1) && \forall U \subseteq V
    \end{flalign}~
\end{minipage}

\settowidth{\LPlhbox}{(P.2)}%
\noindent%
\parbox{\LPlhbox}{\begin{align}
               \tag{P.2}\label{My second LP Block}
               \end{align}}%
\hspace*{\fill}%
\begin{minipage}{\linewidth-2cm}
   \begin{flalign}\notag
     \max \sum\limits_{v \in V} x_v + \sum\limits_{e \in E} y_e + 10000\gamma &&
   \end{flalign}
    \vspace{-1.5\baselineskip}
   \begin{flalign}
    & \text{s.t.} & x_v + x_w   & \geq  0                 && \forall \{v,w\} \in E && \\
    &             & y_3         & \geq 0                  && \forall e\in E        && \\
    &             & (\delta(U)) & \geq \frac{1}{2}(|U|-1) && \forall U \subseteq V
   \end{flalign}~
\end{minipage}

Notice that we can reference line~\ref{this line can be referenced}
and both block~\ref{My first LP Block} and block~\ref{My second LP Block}
\end{document}

What would be nice is if there were a commands \lefttag and \righttag to temporarily override document defaults.

You can also easily create a command to do the work of the left-hand box.

\newcommand{\LPblocktag}[2]{\settowidth{\LPlhbox}{(#1)}%
                            \parbox{\LPlhbox}{\begin{align}\tag{#1}#2\end{align}}%
                            \hspace*{\fill}}

I've written the second argument as I have because I don't want to assume you'll be referencing every such block.

So the first block above can be written as

\noindent%
\LPblocktag{P.3}{\label{My third LP Block}}%
\begin{minipage}{\linewidth-2cm}
    \begin{flalign}\notag
     & \makebox[0pt][l]{$\displaystyle{}\max \sum\limits_{v \in V} x_v + \sum\limits_{e \in E} y_e + 10000\gamma$} \\
    \label{this line can be referenced}
     & \text{s.t.} & x_v + x_w   & \geq  0                 && \forall \{v,w\} \in E && \\
     &             & y_3         & \geq 0                  && \forall e\in E        && \\
     &             & (\delta(U)) & \geq \frac{1}{2}(|U|-1) && \forall U \subseteq V
    \end{flalign}~
\end{minipage}

I can reference \ref{My third LP Block}

enter image description here


I think the other answer gives you the output you want.

My answer does 3 out of 4 of your requests, but labelling the extra (P) on the left is tricky; my code just demonstrates how you can use alignat to give you most of what you want.

enter image description here

\documentclass{article}
\usepackage{amsmath}
\begin{document}

\subsection*{Original}
\begin{equation*}
    \begin{array}{lrcll}
        \max 
        & \multicolumn{4}{l}{\sum\limits_{v \in V} x_v + \sum\limits_{e \in E} y_e + 10000\gamma } \\
        \text{s.t.}
        & x_v + x_w & \geq & 0 & \forall \{v,w\} \in E \\
        & y_e & \geq & 0 & \forall e \in E \\
        & y(\delta(U)) & \geq & \frac{1}{2}(|U|-1) & \forall U \subseteq V
    \end{array}
\end{equation*}

\subsection*{New}
\begin{alignat}{3}
    \max              &   & \sum_{v \in V} x_v  + & \sum_{e \in E}  y_e + 10000\gamma  &   & \nonumber             \\
    \text{s.t.}\qquad &   & x_v + x_w             & \geq            0                  &   & \forall \{v,w\} \in E \\
                      &   & y_e                   & \geq            0                  &   & \forall e \in E       \\
                      &   & y(\delta(U))          & \geq            \frac{1}{2}(|U|-1) &   & \forall U \subseteq V 
\end{alignat}
\end{document}

I've modified the above to create a new environment that will wrap around a math equation environment. I'm keeping the old solution above because here I use xkeyval package to allow the user to pass arguments to the new environment, but also because the flavor of this solution's approach is rather different. I think this approach is a bit more versatile and suggests other modifications that could be useful.

Also, I've incorporated cmhughes suggested use of mathtools. Finally, as written, this environment seems to require explicit naming of the tag for the left-hand box. It seems that there should be some kind of default approach there. But, I'll leave that also for someone else to dream up.

Here's my re-imagined solution:

\documentclass{article}
\usepackage{amsmath,mathtools,calc}
%..%
\usepackage{xkeyval}
\makeatletter
\newlength{\LP@lh@boxwidth}      %% width of first box, set automatically within environment
\setlength{\LP@lh@boxwidth}{0pt}
\newlength{\LP@lh@boxsep}        %% distance between two boxes.  Default is `2em`.  Can be overridden by using key `boxsep=<length>`
\setlength{\LP@lh@boxsep}{2em}
\newcommand{\LP@lh@content}{}
\newcommand{\LP@lh@tagname}{}    %% set by user using key `tagname=<name of tag>`
\define@key[LP]{lhbox}{boxsep}[2em]{\setlength{\LP@lh@boxsep}{#1}}
\define@key[LP]{lhbox}{content}[]{\renewcommand{\LP@lh@content}{#1}}
\define@key[LP]{lhbox}{tagname}[]{\renewcommand{\LP@lh@tagname}{#1}}
\newenvironment{tagblock}[1][]%
                         {\setkeys[LP]{lhbox}{tagname,boxsep,#1}\relax%
                          \settowidth{\LP@lh@boxwidth}{\tagform@\LP@lh@tagname}%
                          \noindent%
                          \parbox{\LP@lh@boxwidth}{\begin{align}\tag{\LP@lh@tagname}\LP@lh@content\end{align}}%
                          \hspace*{\LP@lh@boxsep}%
                          \begin{minipage}{\linewidth-\LP@lh@boxwidth-\LP@lh@boxsep}}%
                         {~\end{minipage}}
\makeatother
%..%
\begin{document}

\begin{tagblock}[tagname={P.1},content={\label{My first LP Block}}]
    \begin{flalign}\notag
     & \mathrlap{\max \sum\limits_{v \in V} x_v + \sum\limits_{e \in E} y_e + 10000\gamma} \\
    \label{eq01:first_line}
     & \text{s.t.} & x_v + x_w   & \geq  0                 && \forall \{v,w\} \in E && \\
     &             & y_3         & \geq 0                  && \forall e\in E        && \\
     &             & (\delta(U)) & \geq \frac{1}{2}(|U|-1) && \forall U \subseteq V
    \end{flalign}
\end{tagblock}

\begin{tagblock}[tagname={P.2},content=\label{My second LP Block}]
    \begin{flalign}\notag
     & \mathrlap{\max \sum\limits_{v \in V} x_v + \sum\limits_{e \in E} y_e + 10000\gamma} \\
     & \text{s.t.} & x_v + x_w   & \geq  0                 && \forall \{v,w\} \in E && \\
     \label{eq02:second_line}
     &             & y_3         & \geq 0                  && \forall e\in E        && \\
     &             & (\delta(U)) & \geq \frac{1}{2}(|U|-1) && \forall U \subseteq V
    \end{flalign}
\end{tagblock}


Notice that we can reference line~\ref{eq01:first_line} and line~\ref{eq02:second_line}
and both block~\ref{My first LP Block} and block~\ref{My second LP Block}

\end{document}

enter image description here