Book Image

Quantum Chemistry and Computing for the Curious

By : Alex Khan, Keeper L. Sharkey, Alain Chancé
Book Image

Quantum Chemistry and Computing for the Curious

By: Alex Khan, Keeper L. Sharkey, Alain Chancé

Overview of this book

Explore quantum chemical concepts and the postulates of quantum mechanics in a modern fashion, with the intent to see how chemistry and computing intertwine. Along the way you’ll relate these concepts to quantum information theory and computation. We build a framework of computational tools that lead you through traditional computational methods and straight to the forefront of exciting opportunities. These opportunities will rely on achieving next-generation accuracy by going further than the standard approximations such as beyond Born-Oppenheimer calculations. Discover how leveraging quantum chemistry and computing is a key enabler for overcoming major challenges in the broader chemical industry. The skills that you will learn can be utilized to solve new-age business needs that specifically hinge on quantum chemistry
Table of Contents (14 chapters)
Chapter 8: References
Chapter 9:Glossary
Appendix B: Leveraging Jupyter Notebooks on the Cloud
Appendix C: Trademarks

3.4. Preparing a permutation symmetric or antisymmetric state

Given two qubits and , we want to build a symmetrized state that remains invariant under a permutation of the qubits and , or an antisymmetrized state that is multiplied by under a permutation of the qubits and . In this section, we show how to prepare such states in a probabilistic manner with a quantum circuit prepared and simulated with Qiskit:

  • Section 3.4.1, Creating random states
  • Section 3.4.2, Creating a quantum circuit and initializing qubits
  • Section 3.4.3, Creating a circuit that swaps two qubits with a controlled swap gate
  • Section 3.4.4, Post selecting the control qubit until the desired state is obtained
  • Section 3.4.5, Examples of final symmetrized and antisymmetrized states

3.4.1. Creating random states

We define a function called init_random() that creates random 1-qubit states s1 and s2 that we will use later to run experiments with random states:

def init_random...