Quantum Computation And Information by Samuel Lomonaco & Howard Brandt