代写 R Scheme COMP SCI 4413, 4813, 7413

COMP SCI 4413, 4813, 7413
Introduction to Quantum Computing
Assignment 2
Author: Yasir Latif
Submit on MyUni before 11:59pm 11-Sept-2019
Instructions
• Answer all questions. Remember to show your workings in your solutions.
• If necessary, refer to Rieffel and Polak [RP] to help you with the questions.
Submission Instructions
The submission will consists of code (assignment2.zip) and a report (assignment2.pdf) via MyUni. Each question contains a section that needs to be addressed in the report (marked R) and in the code submission (marked C). You will be evaluated on both the code as well as the report.
Question 1 Quantum Simulator 10 marks
In the programming language of your choice, design a quantum simulator. The simulator will take as input a file containing information about the number of qubit, the circuit, and inputs and will generate another file with the intermediate states as output. The input file will be formatted as follow:
• N: The first line will contain the number of qubit that we want to simulate, followed by N lines, all of the same length, describing each wire in the circuit.
• Each wire in the circuit will consists of one of either of the these gates X,Y,Z,H or special symbols: o describing “control” for a controlled gate and “-” corresponds to no-operation. Control acts on all the gates that are in the same column as the control symbol.
• M: The number of inputs to the simulator, followed by M lines, each containing N characters representing inputs. Inputs will be combination one of |0⟩,|1⟩,|+⟩,|−⟩
Sample Input file:
2
-X- -o- 5 00
1

01
10
11
++
which is a circuit on N = 2 qubits (the first line). The first wire (least significant) consists of -X- and the second -o-. Thus implementing a controlled-NOT gate where the second bit is the control bit. The next line contains the number of inputs (M = 5) followed by M N-bit strings representing the inputs that we want to run through the circuit.
The output file generated will contain:
• For each input, the quantum state of size 2N after each step (one per line) in the circuit for which a valid operation has been applied to either of the qubits. We ignore the step on which all lines have a no-op (“-”). An empty line indicates that the current input has been completely processed.
Sample output file:
[1 0 0 0]
[0 1 0 0]
[0 0 0 1]
[0 0 1 0]
[0.5 0.5 0.5 0.5]
The output will contain M × (S + 1) , where S is the number of valid steps in the circuit and there is a blank line to indicate the end of current output.
• R Give details about your implementation and the assumptions that have been made while implementing the simulator. Also highlight any limitations that you think the simulator has.
• C: Submit the code for the simulator, with the main file titled main.cpp (if for example your code is in C++). The executable should be able to take the input file as a command line argument and generate a file named out.txt containing the output.
Question 2 Creating EPR Pairs – 5 Marks
Design a circuit to create an entangled EPR pair. This circuit takes as input |00⟩ and produces
1 (|00⟩+|11⟩). 2
• R: Comment on what happens if the input is something different from |00⟩. Are the states still entangled by this circuit?
2

• C: Submit the input file (question2.txt) for this circuit along with your code.
Question 3 Dense Coding – 5 Marks
Using your simulator, implement a circuits to perform dense coding described in Section. 5.3.1 of [RP]. The circuit takes |00⟩ as input, creates an entangled pair (Question 1) and then perform encoding. The second part of the circuit decodes the incoming bits to extract two classical bits.
• R: Discuss how critical is the choice of input to this circuit. Does the scheme fail is input changes to let’s say |11⟩?
• C: Submit the circuit input file (question3.txt) simulates Alice’s encoding of the 10 state and the decoded result by Bob.
Question 4 Cat state – 5 Marks
An n-qubit cat state is the state 1 (|00 . . . 0⟩ + |11 . . . 1⟩). Design a circuit that, upon input of
2
|00 . . . 0⟩, constructs a cat state.
• R: Describe the circuit components needed to extend a n-qubit cat state to an n+1-qubit cat
state.
• C: Submit the input file (question4.txt) for the circuit.
Question 5 Permutation – 5 Marks
Design a circuit that permutes the values of three qubits in that it sends |φ⟩ |ψ⟩ |η⟩ to |ψ⟩ |η⟩ |φ⟩ for all single qubit states |φ⟩ , |ψ⟩ , and |η⟩ in the standard basis.
• R: Discuss how this circuit can be reused to implement a circuit that sends |φ⟩ |ψ⟩ |η⟩ to |η⟩ |φ⟩ |ψ⟩.
• C:Submittheinputfile(question5.txt)fortheoriginalcircuit,showingallthepossible combination of the standard basis states as inputs.
⇐= End of file =⇒
3