Given a high-dimensional data matrix A ∈ R m×n , Approximate Message Passing (AMP) algorithms construct sequences of vectors u t ∈ R n , v t ∈ R m , indexed by t ∈ {0, 1, 2 . . . } by iteratively applying A or A T , and suitable non-linear functions, which depend on the specific application. Special instances of this approach have been developed -among other applicationsfor compressed sensing reconstruction, robust regression, Bayesian estimation, low-rank matrix recovery, phase retrieval, and community detection in graphs. For certain classes of random matrices A, AMP admits an asymptotically exact description in the high-dimensional limit m, n → ∞, which goes under the name of state evolution.Earlier work established state evolution for separable non-linearities (under certain regularity conditions). Nevertheless, empirical work demonstrated several important applications that require non-separable functions. In this paper we generalize state evolution to Lipschitz continuous non-separable nonlinearities, for Gaussian matrices A. Our proof makes use of Bolthausen's conditioning technique along with several approximation arguments. In particular, we introduce a modified algorithm (called LAMP for Long AMP) which is of independent interest.