The document discusses the NP-hard Max Cut problem and provides a reduction from the NP-hard NAE-3-SAT problem to Max Cut to prove that Max Cut is also NP-hard. The reduction works by mapping clauses in a NAE-3-SAT instance to a graph instance of Max Cut, such that a solution to one problem can be translated to a solution for the other problem in polynomial time. This shows that any polynomial time algorithm for Max Cut could also be used to solve NAE-3-SAT in polynomial time. The document then provides a simple randomized approximation algorithm for Max Cut that runs in linear time.