Given a power grid modeled by a network together with equations describing the power flows, power generation and consumption, and the laws of physics, the so-called N ? k problem asks whether there exists a set of k or fewer arcs whose removal will cause the system to fail. More generally, we are interested in finding small vulnerabilities in the grid. In the first two parts of this work, we present theoretical and computational results involving a mixed-integer model and a continuous non- linear model related to this question. In the third part of this work, we consider the throughput maximization problem in a "lossless" power flow model. We consider both capacitated and uncapacitated networks, present efficient algorithms for the uncapacitated version and show that the capacitated version is NP-hard.