def prox_likelihood_A(A, step, S=None, Y=None, prox_g=None, W=1):
    return prox_g((A - (step * grad_likelihood_A(A, S, Y, W=W))), step)
def prox_likelihood_A(A, step, S=None, Y=None, prox_g=None, W=1):
    return prox_g((A - (step * grad_likelihood_A(A, S, Y, W=W))), step)