'Reduces the atom to an affine expression and list of constraints.
Parameters
arg_objs : list
LinExpr for each argument.
size : tuple
The size of the resulting expression.
data :
Additional data required by the atom.
Returns
tuple
(LinOp for objective, list of constraints)'

@staticmethod
def graph_implementation(arg_objs, size, data=None):

    (w, w_dyad, tree) = data
    t = lu.create_var((1, 1))
    if (arg_objs[0].size[1] == 1):
        x_list = [index.get_index(arg_objs[0], [], i, 0) for i in range(len(w))]
    if (arg_objs[0].size[0] == 1):
        x_list = [index.get_index(arg_objs[0], [], 0, i) for i in range(len(w))]
    return (t, gm_constrs(t, x_list, w))
