One of the earliest proposals for implementing quantum computation was based on encoding each qubit in two optical modes, each containing exactly one photon. However, it is extremely difficult to unitarily couple two optical modes containing few photons. In 2001, Knill, Laflamme, and Milburn (KLM) found a way to circumvent this restriction and implement efficient quantum computation using only passive linear optics, photodetectors, and single photon sources. This efficient linear ...