The Ising Problem Formulation

The goal of the paper "Ising formulations of many NP problems" is simple.  Ising problems are NP-hard, so by formulating known NP problems as an Ising problem and the current state-of-the-art quantum optimization hardware supports solving Ising problems in polynomial time, then we should be able to (in theory) solve these purported NP problems in polynomial time. Given an NP problem, how does one express (map) the problem as an Ising problem?  As it turns out Andy Lucas's paper does not discuss the the Ising formulation in details (and is expected for the readers to get some background on their own).  So before we go any further, let's review Ising problem formulation and here is the standard form for an Ising problem: $$ H(\sigma) = \sum h_j\sigma_j + \sum J_{ij} \sigma_i \sigma_j $$ Where $h_j$ is the bias for node $\sigma_j$ and $J_{ij}$ is the interaction between nodes $\sigma_i$ and $\sigma_j$.  More on this structure later.