From 19f3b91c5e5e186f383e1b91d7dd7b163c69a092 Mon Sep 17 00:00:00 2001 From: InfamousPlatypus <45645300+InfamousPlatypus@users.noreply.github.com> Date: Tue, 29 Mar 2022 09:29:42 -0400 Subject: [PATCH 1/2] I just took this from the section in 8Q. I figured it's fine since it's both Spooky's and it was Noah's and my work. --- Quantum computing/Quantum Logic Gates.md | 59 ++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 Quantum computing/Quantum Logic Gates.md diff --git a/Quantum computing/Quantum Logic Gates.md b/Quantum computing/Quantum Logic Gates.md new file mode 100644 index 0000000..676669c --- /dev/null +++ b/Quantum computing/Quantum Logic Gates.md @@ -0,0 +1,59 @@ +### Quantum Logic Gates + +#### Primitives + +##### NSx Gate + +Quantum computing is non-linear, however the Pauli Gates are linear, that is to say that they are deterministic gates. In order to achieve quantum computation that is more useful than classical simulation we have to introduce the element of non-linearity, or indeterministic states. To achieve this, we use modified versions of the Non-linear sign-flip gate or NSx Gate. The NSx Gate is a single-qubit operation that performs a phase-shift on one mode conditioned on two ancillary modes. + + +#### Measure + +The measurement gate counts the number of photons in each mode for each qubit, to do this a silicon photomultiplier is used in both H and V modes. + +#### Unitary Gates + +##### Pauli-X Gate + +The Pauli-X Gate performs a NOT operation or bit flip on a single qubit. +X|0> = |1> + +##### Pauli-Y Gate + +The Pauli-Y Gate rotates one qubit around the y axis, it looks similar to an X gate, but with a global phase diffrence of i or -i. +Y|0> = i|1> and Y|1> = -i|0> +Note: This Pauli gate does not invert itself. + +##### Pauli-Z Gate + +The Pauli-X Gate performs a NOT operation or bit flip on a single qubit, this time in the +/- basis. +Z|-> = |+> + +##### Hadamard Gate + +The Hadamard gate swaps basis states between 1/0 and +/-. It is often used to create a superposition. +H|1> = |+> , H|-> = |0> + +#### Controlled Gates + +Controlled gates utilize nonlinear sign-flip gates to introduce non-linearity into our programs. These non-linearities are extremely difficult to simulate as they actually entangle our qubit states, whereas the Unitary qubit transformations are easy to simulate comparatively. Effectively this is what gives our quantum computer an edge over typically digital computing. +They act on two qubits, the Control and Target. If the Control is 1, the operation is carried out otherwise it isn't. + +##### CX Gate + +The Controlled-X Gate (shorthand: CX) performs a controlled NOT operation on two qubits. + +##### CY Gate + +The Controlled-Y Gate (shorthand: CY) performs a controlled Pauli-Y operation on two qubits. + +##### CZ Gate + +The Controlled-Z Gate (shorthand: CZ) performs a controlled Pauli-Z operation on two qubits. + + + +##### CH Gate + +The Controlled-H Gate (shorthand: CH) performs a controlled Hadamard operation on two qubits. + From bcb071c13bff384dc7bab6a945b6aeeba5f6c017 Mon Sep 17 00:00:00 2001 From: InfamousPlatypus <45645300+InfamousPlatypus@users.noreply.github.com> Date: Mon, 11 Apr 2022 09:39:00 -0400 Subject: [PATCH 2/2] More updates --- Quantum computing/Error Correction.md | 1 + Quantum computing/Qbits.md | 13 +++++++++++++ 2 files changed, 14 insertions(+) create mode 100644 Quantum computing/Error Correction.md create mode 100644 Quantum computing/Qbits.md diff --git a/Quantum computing/Error Correction.md b/Quantum computing/Error Correction.md new file mode 100644 index 0000000..10d07d5 --- /dev/null +++ b/Quantum computing/Error Correction.md @@ -0,0 +1 @@ +# Yah yah yah, I know this is empty. writing this takes time. \ No newline at end of file diff --git a/Quantum computing/Qbits.md b/Quantum computing/Qbits.md new file mode 100644 index 0000000..63006a8 --- /dev/null +++ b/Quantum computing/Qbits.md @@ -0,0 +1,13 @@ +### Qbits + +#### What is a Qbit? +##### What is a bit? +A bit is a unit of classical information. It contains a boolien value. It can be 0 or 1. These values can be called many things, True or False, Heads or Tails, On or Off, High or Low. +You can't do much with just a boolien value. But when many are combined, the power can be seen. Say we have two light switches. Each can be on (1) or off (0). If we say the right hand switch being on is a 1, and the left hand one is 2, we can start making larger numbers. +To get the correct value we add the two values together. Thus 00 (both off)=0, 01 (left hand off, right hand on)=1, 10=2 and 11=3. Imagane for a moment, a third bit with the value of 4 when on. How high can this array go? +Two important things to know about classical information, the values of the bit can be checked and copied. Thus if I have an array K I can check the value of K and I do not change it's value. Also, if I have two arrays, L,M and I want L=M I can move the bits form L to M without knowing their state or destroying it. +All information most people encounter is classical and so can be broken up into bits. +##### No really, What is a Qbit? +###### What do you mean by Qbit? +There are two ways that term can be used, logical and physical. +A logical Qbit is a collection of physical Qbits that make up a unit of information. There are many reasons to do this, at this point the main one is error correction. For more information see Error Correction.md (When it is updated.)