logo Use CA10RAM to get 10%* Discount.
Order Nowlogo
(5/5)

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

INSTRUCTIONS TO CANDIDATES
ANSWER ALL QUESTIONS

Question 1 Quantum Simulator

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

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

Design a circuit to create an entangled EPR pair. This circuit takes as input |00) and produces

√1  (|00) + |11)).

R: Comment on what happens if the input is something different from 00 . Are the states still entangled by this circuit?

C: Submit the input file (txt) for this circuit along with your code.

Question 3 Dense Coding

Using your simulator, implement a circuit 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 performs 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

An n-qubit cat state is the state

|00 . . . 0), constructs a cat state.

√1  (|00 . . . 0) + |11 . . . 1)).  Design a circuit that, upon input of

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 (txt) for the circuit.

Question 5 Permutation

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 |φ) |ψ) |η)

(5/5)
Attachments:

Related Questions

. Introgramming & Unix Fall 2018, CRN 44882, Oakland University Homework Assignment 6 - Using Arrays and Functions in C

DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma

. The standard path finding involves finding the (shortest) path from an origin to a destination, typically on a map. This is an

Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t

. Develop a program to emulate a purchase transaction at a retail store. This program will have two classes, a LineItem class and a Transaction class. The LineItem class will represent an individual

Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th

. SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

. Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

Ask This Question To Be Solved By Our ExpertsGet A+ Grade Solution Guaranteed

expert
Um e HaniScience

850 Answers

Hire Me
expert
Muhammad Ali HaiderFinance

597 Answers

Hire Me
expert
Husnain SaeedComputer science

512 Answers

Hire Me
expert
Atharva PatilComputer science

547 Answers

Hire Me
April
January
February
March
April
May
June
July
August
September
October
November
December
2025
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
SunMonTueWedThuFriSat
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
00:00
00:30
01:00
01:30
02:00
02:30
03:00
03:30
04:00
04:30
05:00
05:30
06:00
06:30
07:00
07:30
08:00
08:30
09:00
09:30
10:00
10:30
11:00
11:30
12:00
12:30
13:00
13:30
14:00
14:30
15:00
15:30
16:00
16:30
17:00
17:30
18:00
18:30
19:00
19:30
20:00
20:30
21:00
21:30
22:00
22:30
23:00
23:30